@bitmovin/api-sdk
Version:
Bitmovin JS/TS API SDK
62 lines (61 loc) • 2.39 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const BaseAPI_1 = require("../../common/BaseAPI");
const Mapper_1 = require("../../common/Mapper");
const CdnApi_1 = require("./cdn/CdnApi");
const DailyApi_1 = require("./daily/DailyApi");
const EncodingsApi_1 = require("./encodings/EncodingsApi");
const LabelsApi_1 = require("./labels/LabelsApi");
const Statistics_1 = require("../../models/Statistics");
const PaginationResponse_1 = require("../../models/PaginationResponse");
const StatisticsListQueryParams_1 = require("./StatisticsListQueryParams");
/**
* StatisticsApi - object-oriented interface
* @export
* @class StatisticsApi
* @extends {BaseAPI}
*/
class StatisticsApi extends BaseAPI_1.BaseAPI {
constructor(configuration) {
super(configuration);
this.cdn = new CdnApi_1.default(configuration);
this.daily = new DailyApi_1.default(configuration);
this.encodings = new EncodingsApi_1.default(configuration);
this.labels = new LabelsApi_1.default(configuration);
}
/**
* @summary Show Overall Statistics
* @throws {BitmovinError}
* @memberof StatisticsApi
*/
get() {
return this.restClient.get('/encoding/statistics', {}).then((response) => {
return (0, Mapper_1.map)(response, Statistics_1.default);
});
}
/**
* @summary Show Overall Statistics Within Specific Dates
* @param {Date} from Start date, format: yyyy-MM-dd
* @param {Date} to End date, format: yyyy-MM-dd
* @param {*} [queryParameters] query parameters for filtering, sorting and pagination
* @throws {BitmovinError}
* @memberof StatisticsApi
*/
list(from, to, queryParameters) {
const pathParamMap = {
from: from,
to: to
};
let queryParams = {};
if (typeof queryParameters === 'function') {
queryParams = queryParameters(new StatisticsListQueryParams_1.StatisticsListQueryParamsBuilder()).buildQueryParams();
}
else if (queryParameters) {
queryParams = queryParameters;
}
return this.restClient.get('/encoding/statistics/{from}/{to}', pathParamMap, queryParams).then((response) => {
return new PaginationResponse_1.default(response, Statistics_1.default);
});
}
}
exports.default = StatisticsApi;