@bitmovin/api-sdk
Version:
Bitmovin JS/TS API SDK
91 lines (90 loc) • 3.89 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const BaseAPI_1 = require("../../../../common/BaseAPI");
const Mapper_1 = require("../../../../common/Mapper");
const AkamaiAccountRegionSettings_1 = require("../../../../models/AkamaiAccountRegionSettings");
const PaginationResponse_1 = require("../../../../models/PaginationResponse");
const AkamaiAccountRegionSettingsListQueryParams_1 = require("./AkamaiAccountRegionSettingsListQueryParams");
/**
* RegionsApi - object-oriented interface
* @export
* @class RegionsApi
* @extends {BaseAPI}
*/
class RegionsApi extends BaseAPI_1.BaseAPI {
constructor(configuration) {
super(configuration);
}
/**
* @summary Add Akamai account region settings
* @param {string} infrastructureId Id of the Akamai account
* @param {AkamaiCloudRegion} region Akamai region
* @param {AkamaiAccountRegionSettings} akamaiAccountRegionSettings The Akamai account region settings to be added
* @throws {BitmovinError}
* @memberof RegionsApi
*/
create(infrastructureId, region, akamaiAccountRegionSettings) {
const pathParamMap = {
infrastructure_id: infrastructureId,
region: region
};
return this.restClient.post('/encoding/infrastructure/akamai/{infrastructure_id}/regions/{region}', pathParamMap, akamaiAccountRegionSettings).then((response) => {
return (0, Mapper_1.map)(response, AkamaiAccountRegionSettings_1.default);
});
}
/**
* @summary Delete Akamai account region settings
* @param {string} infrastructureId Id of the Akamai account
* @param {AkamaiCloudRegion} region Akamai region
* @throws {BitmovinError}
* @memberof RegionsApi
*/
delete(infrastructureId, region) {
const pathParamMap = {
infrastructure_id: infrastructureId,
region: region
};
return this.restClient.delete('/encoding/infrastructure/akamai/{infrastructure_id}/regions/{region}', pathParamMap).then((response) => {
return (0, Mapper_1.map)(response, AkamaiAccountRegionSettings_1.default);
});
}
/**
* @summary Akamai account region settings details
* @param {string} infrastructureId Id of the Akamai account
* @param {AkamaiCloudRegion} region Akamai region
* @throws {BitmovinError}
* @memberof RegionsApi
*/
get(infrastructureId, region) {
const pathParamMap = {
infrastructure_id: infrastructureId,
region: region
};
return this.restClient.get('/encoding/infrastructure/akamai/{infrastructure_id}/regions/{region}', pathParamMap).then((response) => {
return (0, Mapper_1.map)(response, AkamaiAccountRegionSettings_1.default);
});
}
/**
* @summary List Akamai account region settings
* @param {string} infrastructureId Id of the Akamai account
* @param {*} [queryParameters] query parameters for filtering, sorting and pagination
* @throws {BitmovinError}
* @memberof RegionsApi
*/
list(infrastructureId, queryParameters) {
const pathParamMap = {
infrastructure_id: infrastructureId
};
let queryParams = {};
if (typeof queryParameters === 'function') {
queryParams = queryParameters(new AkamaiAccountRegionSettingsListQueryParams_1.AkamaiAccountRegionSettingsListQueryParamsBuilder()).buildQueryParams();
}
else if (queryParameters) {
queryParams = queryParameters;
}
return this.restClient.get('/encoding/infrastructure/akamai/{infrastructure_id}/regions', pathParamMap, queryParams).then((response) => {
return new PaginationResponse_1.default(response, AkamaiAccountRegionSettings_1.default);
});
}
}
exports.default = RegionsApi;