@bitmovin/api-sdk
Version:
Bitmovin JS/TS API SDK
90 lines (89 loc) • 3.94 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 TimeBasedTrimmingInputStream_1 = require("../../../../../models/TimeBasedTrimmingInputStream");
const PaginationResponse_1 = require("../../../../../models/PaginationResponse");
const TimeBasedTrimmingInputStreamListQueryParams_1 = require("./TimeBasedTrimmingInputStreamListQueryParams");
/**
* TimeBasedApi - object-oriented interface
* @export
* @class TimeBasedApi
* @extends {BaseAPI}
*/
class TimeBasedApi extends BaseAPI_1.BaseAPI {
constructor(configuration) {
super(configuration);
}
/**
* @summary Add Time-Based Trimming Input Stream
* @param {string} encodingId Id of the encoding.
* @param {TimeBasedTrimmingInputStream} timeBasedTrimmingInputStream The Time-Based Trimming Input Stream to be created
* @throws {BitmovinError}
* @memberof TimeBasedApi
*/
create(encodingId, timeBasedTrimmingInputStream) {
const pathParamMap = {
encoding_id: encodingId
};
return this.restClient.post('/encoding/encodings/{encoding_id}/input-streams/trimming/time-based', pathParamMap, timeBasedTrimmingInputStream).then((response) => {
return (0, Mapper_1.map)(response, TimeBasedTrimmingInputStream_1.default);
});
}
/**
* @summary Delete Time-Based Trimming Input Stream
* @param {string} encodingId Id of the encoding.
* @param {string} inputStreamId Id of the Time-Based Trimming Input Stream.
* @throws {BitmovinError}
* @memberof TimeBasedApi
*/
delete(encodingId, inputStreamId) {
const pathParamMap = {
encoding_id: encodingId,
input_stream_id: inputStreamId
};
return this.restClient.delete('/encoding/encodings/{encoding_id}/input-streams/trimming/time-based/{input_stream_id}', pathParamMap).then((response) => {
return (0, Mapper_1.map)(response, BitmovinResponse_1.default);
});
}
/**
* @summary Time-Based Trimming Input Stream Details
* @param {string} encodingId Id of the encoding.
* @param {string} inputStreamId Id of the Time-Based Trimming Input Stream.
* @throws {BitmovinError}
* @memberof TimeBasedApi
*/
get(encodingId, inputStreamId) {
const pathParamMap = {
encoding_id: encodingId,
input_stream_id: inputStreamId
};
return this.restClient.get('/encoding/encodings/{encoding_id}/input-streams/trimming/time-based/{input_stream_id}', pathParamMap).then((response) => {
return (0, Mapper_1.map)(response, TimeBasedTrimmingInputStream_1.default);
});
}
/**
* @summary List Time-Based Trimming Input Streams
* @param {string} encodingId Id of the encoding.
* @param {*} [queryParameters] query parameters for filtering, sorting and pagination
* @throws {BitmovinError}
* @memberof TimeBasedApi
*/
list(encodingId, queryParameters) {
const pathParamMap = {
encoding_id: encodingId
};
let queryParams = {};
if (typeof queryParameters === 'function') {
queryParams = queryParameters(new TimeBasedTrimmingInputStreamListQueryParams_1.TimeBasedTrimmingInputStreamListQueryParamsBuilder()).buildQueryParams();
}
else if (queryParameters) {
queryParams = queryParameters;
}
return this.restClient.get('/encoding/encodings/{encoding_id}/input-streams/trimming/time-based', pathParamMap, queryParams).then((response) => {
return new PaginationResponse_1.default(response, TimeBasedTrimmingInputStream_1.default);
});
}
}
exports.default = TimeBasedApi;