ravendb
Version:
RavenDB client for Node.js
36 lines • 1.57 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.TimeSeriesCollectionConfiguration = void 0;
const TimeSeriesPolicy_js_1 = require("./TimeSeriesPolicy.js");
const RawTimeSeriesPolicy_js_1 = require("./RawTimeSeriesPolicy.js");
class TimeSeriesCollectionConfiguration {
disabled;
/**
* Specify roll up and retention policy.
* Each policy will create a new time-series aggregated from the previous one
*/
policies = [];
/**
* Specify a policy for the original time-series
*/
rawPolicy = RawTimeSeriesPolicy_js_1.RawTimeSeriesPolicy.DEFAULT_POLICY;
static isRaw(policy) {
return RawTimeSeriesPolicy_js_1.RawTimeSeriesPolicy.DEFAULT_POLICY.name === policy.name;
}
serialize() {
return {
Disabled: this.disabled,
Policies: this.policies ? this.policies.map(p => p.serialize()) : null,
RawPolicy: this.rawPolicy ? this.rawPolicy.serialize() : null
};
}
static parse(collectionRaw) {
const configuration = new TimeSeriesCollectionConfiguration();
configuration.disabled = collectionRaw.Disabled;
configuration.policies = collectionRaw.Policies.map(x => TimeSeriesPolicy_js_1.TimeSeriesPolicy.parse(x));
configuration.rawPolicy = RawTimeSeriesPolicy_js_1.RawTimeSeriesPolicy.parse(collectionRaw.RawPolicy);
return configuration;
}
}
exports.TimeSeriesCollectionConfiguration = TimeSeriesCollectionConfiguration;
//# sourceMappingURL=TimeSeriesCollectionConfiguration.js.map