@bitmovin/api-sdk
Version:
Bitmovin JS/TS API SDK
79 lines (78 loc) • 3.17 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const BaseAPI_1 = require("../../../common/BaseAPI");
const Mapper_1 = require("../../../common/Mapper");
const CustomdataApi_1 = require("./customdata/CustomdataApi");
const S3RoleBasedOutput_1 = require("../../../models/S3RoleBasedOutput");
const PaginationResponse_1 = require("../../../models/PaginationResponse");
const S3RoleBasedOutputListQueryParams_1 = require("./S3RoleBasedOutputListQueryParams");
/**
* S3RoleBasedApi - object-oriented interface
* @export
* @class S3RoleBasedApi
* @extends {BaseAPI}
*/
class S3RoleBasedApi extends BaseAPI_1.BaseAPI {
constructor(configuration) {
super(configuration);
this.customdata = new CustomdataApi_1.default(configuration);
}
/**
* @summary Create S3 Role-based Output
* @param {S3RoleBasedOutput} s3RoleBasedOutput The S3 Role-based output to be created The following permissions are required for S3 Role-based output: * s3:PutObject * s3:PutObjectAcl * s3:ListBucket * s3:GetBucketLocation
* @throws {BitmovinError}
* @memberof S3RoleBasedApi
*/
create(s3RoleBasedOutput) {
return this.restClient.post('/encoding/outputs/s3-role-based', {}, s3RoleBasedOutput).then((response) => {
return (0, Mapper_1.map)(response, S3RoleBasedOutput_1.default);
});
}
/**
* @summary Delete S3 Role-based Output
* @param {string} outputId Id of the output
* @throws {BitmovinError}
* @memberof S3RoleBasedApi
*/
delete(outputId) {
const pathParamMap = {
output_id: outputId
};
return this.restClient.delete('/encoding/outputs/s3-role-based/{output_id}', pathParamMap).then((response) => {
return (0, Mapper_1.map)(response, S3RoleBasedOutput_1.default);
});
}
/**
* @summary S3 Role-based Output Details
* @param {string} outputId Id of the input
* @throws {BitmovinError}
* @memberof S3RoleBasedApi
*/
get(outputId) {
const pathParamMap = {
output_id: outputId
};
return this.restClient.get('/encoding/outputs/s3-role-based/{output_id}', pathParamMap).then((response) => {
return (0, Mapper_1.map)(response, S3RoleBasedOutput_1.default);
});
}
/**
* @summary List S3 Role-based Outputs
* @param {*} [queryParameters] query parameters for filtering, sorting and pagination
* @throws {BitmovinError}
* @memberof S3RoleBasedApi
*/
list(queryParameters) {
let queryParams = {};
if (typeof queryParameters === 'function') {
queryParams = queryParameters(new S3RoleBasedOutputListQueryParams_1.S3RoleBasedOutputListQueryParamsBuilder()).buildQueryParams();
}
else if (queryParameters) {
queryParams = queryParameters;
}
return this.restClient.get('/encoding/outputs/s3-role-based', {}, queryParams).then((response) => {
return new PaginationResponse_1.default(response, S3RoleBasedOutput_1.default);
});
}
}
exports.default = S3RoleBasedApi;