@bitmovin/api-sdk
Version:
Bitmovin JS/TS API SDK
90 lines (89 loc) • 3.88 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const BaseAPI_1 = require("../../../../common/BaseAPI");
const Mapper_1 = require("../../../../common/Mapper");
const BitmovinResponse_1 = require("../../../../models/BitmovinResponse");
const PrewarmedEncoderPoolSchedule_1 = require("../../../../models/PrewarmedEncoderPoolSchedule");
const PaginationResponse_1 = require("../../../../models/PaginationResponse");
const PrewarmedEncoderPoolScheduleListQueryParams_1 = require("./PrewarmedEncoderPoolScheduleListQueryParams");
/**
* SchedulesApi - object-oriented interface
* @export
* @class SchedulesApi
* @extends {BaseAPI}
*/
class SchedulesApi extends BaseAPI_1.BaseAPI {
constructor(configuration) {
super(configuration);
}
/**
* @summary Create prewarmed encoder pool schedule
* @param {string} poolId Id of the scheduled encoder pool
* @param {PrewarmedEncoderPoolSchedule} prewarmedEncoderPoolSchedule The prewarmed encoder pool schedule to be created
* @throws {BitmovinError}
* @memberof SchedulesApi
*/
create(poolId, prewarmedEncoderPoolSchedule) {
const pathParamMap = {
pool_id: poolId
};
return this.restClient.post('/encoding/infrastructure/prewarmed-encoder-pools/{pool_id}/schedules', pathParamMap, prewarmedEncoderPoolSchedule).then((response) => {
return (0, Mapper_1.map)(response, PrewarmedEncoderPoolSchedule_1.default);
});
}
/**
* @summary Delete prewarmed encoder pool schedule
* @param {string} poolId Id of the scheduled encoder pool
* @param {string} scheduleId Id of the prewarmed encoder pool schedule
* @throws {BitmovinError}
* @memberof SchedulesApi
*/
delete(poolId, scheduleId) {
const pathParamMap = {
pool_id: poolId,
schedule_id: scheduleId
};
return this.restClient.delete('/encoding/infrastructure/prewarmed-encoder-pools/{pool_id}/schedules/{schedule_id}', pathParamMap).then((response) => {
return (0, Mapper_1.map)(response, BitmovinResponse_1.default);
});
}
/**
* @summary Prewarmed encoder pool schedule details
* @param {string} poolId Id of the scheduled encoder pool
* @param {string} scheduleId Id of the prewarmed encoder pool schedule
* @throws {BitmovinError}
* @memberof SchedulesApi
*/
get(poolId, scheduleId) {
const pathParamMap = {
pool_id: poolId,
schedule_id: scheduleId
};
return this.restClient.get('/encoding/infrastructure/prewarmed-encoder-pools/{pool_id}/schedules/{schedule_id}', pathParamMap).then((response) => {
return (0, Mapper_1.map)(response, PrewarmedEncoderPoolSchedule_1.default);
});
}
/**
* @summary List prewarmed encoder pool schedules
* @param {string} poolId Id of the scheduled encoder pool
* @param {*} [queryParameters] query parameters for filtering, sorting and pagination
* @throws {BitmovinError}
* @memberof SchedulesApi
*/
list(poolId, queryParameters) {
const pathParamMap = {
pool_id: poolId
};
let queryParams = {};
if (typeof queryParameters === 'function') {
queryParams = queryParameters(new PrewarmedEncoderPoolScheduleListQueryParams_1.PrewarmedEncoderPoolScheduleListQueryParamsBuilder()).buildQueryParams();
}
else if (queryParameters) {
queryParams = queryParameters;
}
return this.restClient.get('/encoding/infrastructure/prewarmed-encoder-pools/{pool_id}/schedules', pathParamMap, queryParams).then((response) => {
return new PaginationResponse_1.default(response, PrewarmedEncoderPoolSchedule_1.default);
});
}
}
exports.default = SchedulesApi;