@hotmeshio/hotmesh
Version:
Permanent-Memory Workflows & AI Agents
37 lines (36 loc) • 3.15 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.MAX_STREAM_RETRIES = exports.INITIAL_STREAM_BACKOFF = exports.MAX_STREAM_BACKOFF = exports.MAX_DELAY = exports.HMSH_XPENDING_COUNT = exports.HMSH_XCLAIM_DELAY_MS = exports.HMSH_XCLAIM_COUNT = exports.HMSH_STATUS_UNKNOWN = exports.HMSH_CODE_UNKNOWN = exports.HMSH_CODE_UNACKED = exports.HMSH_GRADUATED_INTERVAL_MS = exports.HMSH_MAX_TIMEOUT_MS = exports.HMSH_MAX_RETRIES = exports.HMSH_BLOCK_TIME_MS = exports.RouterConfigManager = void 0;
const enums_1 = require("../../../modules/enums");
Object.defineProperty(exports, "HMSH_BLOCK_TIME_MS", { enumerable: true, get: function () { return enums_1.HMSH_BLOCK_TIME_MS; } });
Object.defineProperty(exports, "HMSH_MAX_RETRIES", { enumerable: true, get: function () { return enums_1.HMSH_MAX_RETRIES; } });
Object.defineProperty(exports, "HMSH_MAX_TIMEOUT_MS", { enumerable: true, get: function () { return enums_1.HMSH_MAX_TIMEOUT_MS; } });
Object.defineProperty(exports, "HMSH_GRADUATED_INTERVAL_MS", { enumerable: true, get: function () { return enums_1.HMSH_GRADUATED_INTERVAL_MS; } });
Object.defineProperty(exports, "HMSH_CODE_UNACKED", { enumerable: true, get: function () { return enums_1.HMSH_CODE_UNACKED; } });
Object.defineProperty(exports, "HMSH_CODE_UNKNOWN", { enumerable: true, get: function () { return enums_1.HMSH_CODE_UNKNOWN; } });
Object.defineProperty(exports, "HMSH_STATUS_UNKNOWN", { enumerable: true, get: function () { return enums_1.HMSH_STATUS_UNKNOWN; } });
Object.defineProperty(exports, "HMSH_XCLAIM_COUNT", { enumerable: true, get: function () { return enums_1.HMSH_XCLAIM_COUNT; } });
Object.defineProperty(exports, "HMSH_XCLAIM_DELAY_MS", { enumerable: true, get: function () { return enums_1.HMSH_XCLAIM_DELAY_MS; } });
Object.defineProperty(exports, "HMSH_XPENDING_COUNT", { enumerable: true, get: function () { return enums_1.HMSH_XPENDING_COUNT; } });
Object.defineProperty(exports, "MAX_DELAY", { enumerable: true, get: function () { return enums_1.MAX_DELAY; } });
Object.defineProperty(exports, "MAX_STREAM_BACKOFF", { enumerable: true, get: function () { return enums_1.MAX_STREAM_BACKOFF; } });
Object.defineProperty(exports, "INITIAL_STREAM_BACKOFF", { enumerable: true, get: function () { return enums_1.INITIAL_STREAM_BACKOFF; } });
Object.defineProperty(exports, "MAX_STREAM_RETRIES", { enumerable: true, get: function () { return enums_1.MAX_STREAM_RETRIES; } });
class RouterConfigManager {
static validateThrottle(delayInMillis) {
if (!Number.isInteger(delayInMillis) ||
delayInMillis < 0 ||
delayInMillis > enums_1.MAX_DELAY) {
throw new Error(`Throttle must be a non-negative integer and not exceed ${enums_1.MAX_DELAY} ms; send -1 to throttle indefinitely`);
}
}
static setDefaults(config) {
return {
...config,
reclaimDelay: config.reclaimDelay || enums_1.HMSH_XCLAIM_DELAY_MS,
reclaimCount: config.reclaimCount || enums_1.HMSH_XCLAIM_COUNT,
readonly: config.readonly || false,
};
}
}
exports.RouterConfigManager = RouterConfigManager;