UNPKG

reliable-zeromq

Version:

A collection of reliable zeromq messaging constructs

34 lines 2.5 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); class Config { static get MaximumLatency() { return this.mMaximumLatency; } static get HeartBeatInterval() { return this.mHeartbeatInterval; } static set MaximumLatency(aMaximumLatency) { if (aMaximumLatency < this.mHeartbeatInterval) { throw new Error("Heartbeat must be lower than maximum latency"); } this.mMaximumLatency = aMaximumLatency; } static set HeartBeatInterval(aHeartbeatInterval) { if (aHeartbeatInterval > this.mMaximumLatency) { throw new Error("Heartbeat must be lower than maximum latency"); } this.mHeartbeatInterval = aHeartbeatInterval; } static SetGlobalConfig(aMaximumLatency = 2000, aHeartbeat = 1000) { if (aMaximumLatency < aHeartbeat) { throw new Error("Heartbeat must be lower than maximum latency"); } this.mMaximumLatency = aMaximumLatency; this.mHeartbeatInterval = aHeartbeat; } } exports.default = Config; // Consider making parameters immutable once first used, to avoid issues like different cache expiries Config.mMaximumLatency = 2000; Config.mHeartbeatInterval = 100; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vU3JjL0NvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLE1BQXFCLE1BQU07SUFNaEIsTUFBTSxLQUFLLGNBQWM7UUFFNUIsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDO0lBQ2hDLENBQUM7SUFFTSxNQUFNLEtBQUssaUJBQWlCO1FBRS9CLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDO0lBQ25DLENBQUM7SUFFTSxNQUFNLEtBQUssY0FBYyxDQUFDLGVBQXVCO1FBRXBELElBQUksZUFBZSxHQUFHLElBQUksQ0FBQyxrQkFBa0IsRUFDN0M7WUFDSSxNQUFNLElBQUksS0FBSyxDQUFDLDhDQUE4QyxDQUFDLENBQUM7U0FDbkU7UUFFRCxJQUFJLENBQUMsZUFBZSxHQUFHLGVBQWUsQ0FBQztJQUMzQyxDQUFDO0lBRU0sTUFBTSxLQUFLLGlCQUFpQixDQUFDLGtCQUEwQjtRQUUxRCxJQUFJLGtCQUFrQixHQUFHLElBQUksQ0FBQyxlQUFlLEVBQzdDO1lBQ0ksTUFBTSxJQUFJLEtBQUssQ0FBQyw4Q0FBOEMsQ0FBQyxDQUFDO1NBQ25FO1FBRUQsSUFBSSxDQUFDLGtCQUFrQixHQUFHLGtCQUFrQixDQUFDO0lBQ2pELENBQUM7SUFFTSxNQUFNLENBQUMsZUFBZSxDQUFDLGtCQUEwQixJQUFJLEVBQUUsYUFBcUIsSUFBSTtRQUVuRixJQUFJLGVBQWUsR0FBRyxVQUFVLEVBQ2hDO1lBQ0ksTUFBTSxJQUFJLEtBQUssQ0FBQyw4Q0FBOEMsQ0FBQyxDQUFDO1NBQ25FO1FBRUQsSUFBSSxDQUFDLGVBQWUsR0FBRyxlQUFlLENBQUM7UUFDdkMsSUFBSSxDQUFDLGtCQUFrQixHQUFHLFVBQVUsQ0FBQztJQUN6QyxDQUFDOztBQTdDTCx5QkE4Q0M7QUE1Q0csc0dBQXNHO0FBQ3ZGLHNCQUFlLEdBQVcsSUFBSSxDQUFDO0FBQy9CLHlCQUFrQixHQUFXLEdBQUcsQ0FBQyJ9