@freemework/common
Version:
Common library of the Freemework Project.
22 lines • 853 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.FInternalLimitSyncBase = void 0;
const f_disposable_js_1 = require("../../lifecycle/f_disposable.js");
class FInternalLimitSyncBase extends f_disposable_js_1.FDisposableBase {
_listeners = [];
addReleaseTokenListener(cb) { this._listeners.push(cb); }
removeReleaseTokenListener(cb) {
const cbIndex = this._listeners.indexOf(cb);
if (cbIndex !== -1) {
this._listeners.splice(cbIndex, 1);
}
}
raiseReleaseToken() {
const availableTokens = this.availableWeight;
if (this.availableWeight > 0) {
this._listeners.forEach(listener => listener(availableTokens));
}
}
}
exports.FInternalLimitSyncBase = FInternalLimitSyncBase;
//# sourceMappingURL=f_internal_limit_sync_base.js.map