UNPKG

@bitmovin/api-sdk

Version:

Bitmovin JS/TS API SDK

98 lines (97 loc) 4.26 kB
"use strict"; 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 CustomXmlElement_1 = require("../../../../../models/CustomXmlElement"); const PaginationResponse_1 = require("../../../../../models/PaginationResponse"); const CustomXmlElementListQueryParams_1 = require("./CustomXmlElementListQueryParams"); /** * CustomXmlElementsApi - object-oriented interface * @export * @class CustomXmlElementsApi * @extends {BaseAPI} */ class CustomXmlElementsApi extends BaseAPI_1.BaseAPI { constructor(configuration) { super(configuration); } /** * @summary Add Custom XML Element to Period * @param {string} manifestId Id of the manifest * @param {string} periodId Id of the period * @param {CustomXmlElement} customXmlElement Data of the custom XML element to be added to the period * @throws {BitmovinError} * @memberof CustomXmlElementsApi */ create(manifestId, periodId, customXmlElement) { const pathParamMap = { manifest_id: manifestId, period_id: periodId }; return this.restClient.post('/encoding/manifests/dash/{manifest_id}/periods/{period_id}/custom-xml-elements', pathParamMap, customXmlElement).then((response) => { return (0, Mapper_1.map)(response, CustomXmlElement_1.default); }); } /** * @summary Delete Custom XML Element * @param {string} manifestId Id of the manifest * @param {string} periodId Id of the period * @param {string} customXmlElementId Id of the Custom XML Element * @throws {BitmovinError} * @memberof CustomXmlElementsApi */ delete(manifestId, periodId, customXmlElementId) { const pathParamMap = { manifest_id: manifestId, period_id: periodId, custom_xml_element_id: customXmlElementId }; return this.restClient.delete('/encoding/manifests/dash/{manifest_id}/periods/{period_id}/custom-xml-elements/{custom_xml_element_id}', pathParamMap).then((response) => { return (0, Mapper_1.map)(response, BitmovinResponse_1.default); }); } /** * @summary Custom XML Element Details * @param {string} manifestId Id of the manifest * @param {string} periodId Id of the period * @param {string} customXmlElementId Id of the Custom XML Element * @throws {BitmovinError} * @memberof CustomXmlElementsApi */ get(manifestId, periodId, customXmlElementId) { const pathParamMap = { manifest_id: manifestId, period_id: periodId, custom_xml_element_id: customXmlElementId }; return this.restClient.get('/encoding/manifests/dash/{manifest_id}/periods/{period_id}/custom-xml-elements/{custom_xml_element_id}', pathParamMap).then((response) => { return (0, Mapper_1.map)(response, CustomXmlElement_1.default); }); } /** * @summary List all Custom XML Elements of Period * @param {string} manifestId Id of the manifest * @param {string} periodId Id of the period * @param {*} [queryParameters] query parameters for filtering, sorting and pagination * @throws {BitmovinError} * @memberof CustomXmlElementsApi */ list(manifestId, periodId, queryParameters) { const pathParamMap = { manifest_id: manifestId, period_id: periodId }; let queryParams = {}; if (typeof queryParameters === 'function') { queryParams = queryParameters(new CustomXmlElementListQueryParams_1.CustomXmlElementListQueryParamsBuilder()).buildQueryParams(); } else if (queryParameters) { queryParams = queryParameters; } return this.restClient.get('/encoding/manifests/dash/{manifest_id}/periods/{period_id}/custom-xml-elements', pathParamMap, queryParams).then((response) => { return new PaginationResponse_1.default(response, CustomXmlElement_1.default); }); } } exports.default = CustomXmlElementsApi;