UNPKG

azure-devops-node-api

Version:
39 lines (38 loc) 1.73 kB
"use strict"; // Copyright (c) Microsoft. All rights reserved. // Licensed under the MIT license. See LICENSE file in the project root for full license information. Object.defineProperty(exports, "__esModule", { value: true }); exports.ClientApiBase = void 0; const vsom = require("./VsoClient"); const serm = require("./Serialization"); const AdoHttpClientBases = require("./AdoHttpClientBases"); const RateLimitUtils_1 = require("./RateLimitUtils"); class ClientApiBase { constructor(baseUrl, handlers, userAgent, options) { this.baseUrl = baseUrl; this.http = new AdoHttpClientBases.AdoHttpClient(userAgent, handlers, options); this.rest = new AdoHttpClientBases.AdoRestClient(userAgent, null, handlers, options); this.vsoClient = new vsom.VsoClient(baseUrl, this.rest); this.userAgent = userAgent; } createAcceptHeader(type, apiVersion) { return type + (apiVersion ? (';api-version=' + apiVersion) : ''); } createRequestOptions(type, apiVersion) { let options = {}; options.acceptHeader = this.createAcceptHeader(type, apiVersion); return options; } formatResponse(data, responseTypeMetadata, isCollection) { let serializationData = { responseTypeMetadata: responseTypeMetadata, responseIsCollection: isCollection }; let deserializedResult = serm.ContractSerializer.deserialize(data, serializationData.responseTypeMetadata, false, serializationData.responseIsCollection); return deserializedResult; } extractRateLimitHeaders(headers, target) { RateLimitUtils_1.extractRateLimitHeaders(headers, target); } } exports.ClientApiBase = ClientApiBase;