mirror of
https://github.com/JasonYANG170/IOTConnect-Web.git
synced 2024-11-27 14:16:34 +00:00
26 lines
755 B
JavaScript
26 lines
755 B
JavaScript
|
"use strict";
|
||
|
Object.defineProperty(exports, "__esModule", { value: true });
|
||
|
const number_allocator_1 = require("number-allocator");
|
||
|
class UniqueMessageIdProvider {
|
||
|
constructor() {
|
||
|
this.numberAllocator = new number_allocator_1.NumberAllocator(1, 65535);
|
||
|
}
|
||
|
allocate() {
|
||
|
this.lastId = this.numberAllocator.alloc();
|
||
|
return this.lastId;
|
||
|
}
|
||
|
getLastAllocated() {
|
||
|
return this.lastId;
|
||
|
}
|
||
|
register(messageId) {
|
||
|
return this.numberAllocator.use(messageId);
|
||
|
}
|
||
|
deallocate(messageId) {
|
||
|
this.numberAllocator.free(messageId);
|
||
|
}
|
||
|
clear() {
|
||
|
this.numberAllocator.clear();
|
||
|
}
|
||
|
}
|
||
|
exports.default = UniqueMessageIdProvider;
|
||
|
//# sourceMappingURL=unique-message-id-provider.js.map
|