@daiso-tech/core 0.46.0 → 0.48.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cache/contracts/cache-adapter.contract.d.ts +1 -1
- package/dist/cache/contracts/cache.contract.d.ts +3 -1
- package/dist/cache/contracts/cache.events.d.ts +1 -1
- package/dist/cache/contracts/database-cache-adapter.contract.d.ts +1 -1
- package/dist/cache/implementations/adapters/kysely-cache-adapter/kysely-cache-adapter.d.ts +11 -2
- package/dist/cache/implementations/adapters/kysely-cache-adapter/kysely-cache-adapter.js +8 -8
- package/dist/cache/implementations/adapters/kysely-cache-adapter/kysely-cache-adapter.js.map +1 -1
- package/dist/cache/implementations/adapters/memory-cache-adapter/memory-cache-adapter.d.ts +1 -1
- package/dist/cache/implementations/adapters/memory-cache-adapter/memory-cache-adapter.js.map +1 -1
- package/dist/cache/implementations/adapters/mongodb-cache-adapter/mongodb-cache-adapter.d.ts +1 -1
- package/dist/cache/implementations/adapters/mongodb-cache-adapter/mongodb-cache-adapter.js.map +1 -1
- package/dist/cache/implementations/adapters/no-op-cache-adapter/no-op-cache-adapter.d.ts +1 -1
- package/dist/cache/implementations/adapters/no-op-cache-adapter/no-op-cache-adapter.js.map +1 -1
- package/dist/cache/implementations/adapters/redis-cache-adapter/redis-cache-adapter.d.ts +1 -1
- package/dist/cache/implementations/adapters/redis-cache-adapter/redis-cache-adapter.js.map +1 -1
- package/dist/cache/implementations/derivables/cache/cache.d.ts +3 -32
- package/dist/cache/implementations/derivables/cache/cache.js +2 -41
- package/dist/cache/implementations/derivables/cache/cache.js.map +1 -1
- package/dist/cache/implementations/derivables/cache/database-cache-adapter.d.ts +1 -1
- package/dist/cache/implementations/derivables/cache/database-cache-adapter.js.map +1 -1
- package/dist/cache/implementations/derivables/cache/is-database-cache-adapter.js.map +1 -1
- package/dist/cache/implementations/test-utilities/cache.test-suite.js +38 -38
- package/dist/cache/implementations/test-utilities/cache.test-suite.js.map +1 -1
- package/dist/cache/implementations/test-utilities/database-cache-dapter.test-suite.js +8 -4
- package/dist/cache/implementations/test-utilities/database-cache-dapter.test-suite.js.map +1 -1
- package/dist/circuit-breaker/contracts/circuit-breaker-provider.contract.d.ts +3 -1
- package/dist/circuit-breaker/implementations/adapters/kysely-circuit-breaker-storage-adapter/kysely-circuit-breaker-storage-adapter.d.ts +11 -0
- package/dist/circuit-breaker/implementations/adapters/kysely-circuit-breaker-storage-adapter/kysely-circuit-breaker-storage-adapter.js +13 -3
- package/dist/circuit-breaker/implementations/adapters/kysely-circuit-breaker-storage-adapter/kysely-circuit-breaker-storage-adapter.js.map +1 -1
- package/dist/circuit-breaker/implementations/adapters/mongodb-circuit-breaker-storage-adapter/mongodb-circuit-breaker-storage-adapter.d.ts +6 -0
- package/dist/circuit-breaker/implementations/adapters/mongodb-circuit-breaker-storage-adapter/mongodb-circuit-breaker-storage-adapter.js +14 -2
- package/dist/circuit-breaker/implementations/adapters/mongodb-circuit-breaker-storage-adapter/mongodb-circuit-breaker-storage-adapter.js.map +1 -1
- package/dist/circuit-breaker/implementations/derivables/circuit-breaker-provider/circuit-breaker-provider.d.ts +3 -9
- package/dist/circuit-breaker/implementations/derivables/circuit-breaker-provider/circuit-breaker-provider.js +2 -18
- package/dist/circuit-breaker/implementations/derivables/circuit-breaker-provider/circuit-breaker-provider.js.map +1 -1
- package/dist/circuit-breaker/implementations/policies/sampling-breaker/sampling-breaker.d.ts +1 -1
- package/dist/collection/contracts/async-collection.contract.d.ts +1 -1
- package/dist/collection/contracts/collection.contract.d.ts +2 -2
- package/dist/collection/implementations/async-iterable-collection/_shared/async-chunk-iterable.js.map +1 -1
- package/dist/collection/implementations/async-iterable-collection/_shared/async-chunk-while-iterable.js.map +1 -1
- package/dist/collection/implementations/async-iterable-collection/_shared/async-partion-iterable.js.map +1 -1
- package/dist/collection/implementations/async-iterable-collection/_shared/async-split-iterable.js.map +1 -1
- package/dist/collection/implementations/async-iterable-collection/async-iterable-collection.d.ts +1 -1
- package/dist/collection/implementations/async-iterable-collection/async-iterable-collection.js.map +1 -1
- package/dist/collection/implementations/iterable-collection/_shared/chunk-iterable.js.map +1 -1
- package/dist/collection/implementations/iterable-collection/_shared/chunk-while-iterable.js.map +1 -1
- package/dist/collection/implementations/iterable-collection/_shared/partion-iterable.js.map +1 -1
- package/dist/collection/implementations/iterable-collection/_shared/split-iterable.js.map +1 -1
- package/dist/collection/implementations/iterable-collection/iterable-collection.d.ts +1 -1
- package/dist/collection/implementations/list-collection/list-collection.d.ts +1 -1
- package/dist/collection/implementations/list-collection/list-collection.js.map +1 -1
- package/dist/hooks/async-hooks.d.ts +9 -11
- package/dist/hooks/hooks.d.ts +5 -5
- package/dist/lock/contracts/lock-provider.contract.d.ts +3 -1
- package/dist/lock/implementations/adapters/kysely-lock-adapter/kysely-lock-adapter.d.ts +11 -0
- package/dist/lock/implementations/adapters/kysely-lock-adapter/kysely-lock-adapter.js +18 -14
- package/dist/lock/implementations/adapters/kysely-lock-adapter/kysely-lock-adapter.js.map +1 -1
- package/dist/lock/implementations/derivables/lock-provider/lock-provider.d.ts +3 -33
- package/dist/lock/implementations/derivables/lock-provider/lock-provider.js +2 -42
- package/dist/lock/implementations/derivables/lock-provider/lock-provider.js.map +1 -1
- package/dist/lock/implementations/test-utilities/lock-provider.test-suite.js +58 -58
- package/dist/lock/implementations/test-utilities/lock-provider.test-suite.js.map +1 -1
- package/dist/namespace/implementations/namespace.d.ts +1 -1
- package/dist/rate-limiter/contracts/rate-limiter-provider.contract.d.ts +3 -1
- package/dist/rate-limiter/implementations/adapters/kysely-rate-limiter-storage-adapter/kysely-rate-limiter-storage-adapter.d.ts +11 -0
- package/dist/rate-limiter/implementations/adapters/kysely-rate-limiter-storage-adapter/kysely-rate-limiter-storage-adapter.js +13 -3
- package/dist/rate-limiter/implementations/adapters/kysely-rate-limiter-storage-adapter/kysely-rate-limiter-storage-adapter.js.map +1 -1
- package/dist/rate-limiter/implementations/adapters/mongodb-rate-limiter-storage-adapter/mongodb-rate-limiter-storage-adapter.d.ts +6 -0
- package/dist/rate-limiter/implementations/adapters/mongodb-rate-limiter-storage-adapter/mongodb-rate-limiter-storage-adapter.js +14 -2
- package/dist/rate-limiter/implementations/adapters/mongodb-rate-limiter-storage-adapter/mongodb-rate-limiter-storage-adapter.js.map +1 -1
- package/dist/rate-limiter/implementations/derivables/rate-limiter-provider/rate-limiter-provider.d.ts +3 -9
- package/dist/rate-limiter/implementations/derivables/rate-limiter-provider/rate-limiter-provider.js +2 -18
- package/dist/rate-limiter/implementations/derivables/rate-limiter-provider/rate-limiter-provider.js.map +1 -1
- package/dist/resilience/middlewares/dynamic/dynamic.middleware.d.ts +1 -1
- package/dist/resilience/middlewares/fallback/fallback.middleware.d.ts +1 -1
- package/dist/resilience/middlewares/fallback/fallback.types.d.ts +4 -4
- package/dist/resilience/middlewares/observe/observe.middleware.d.ts +1 -1
- package/dist/resilience/middlewares/observe/observe.types.d.ts +7 -7
- package/dist/resilience/middlewares/retry/retry.middleware.d.ts +1 -1
- package/dist/resilience/middlewares/retry/retry.middleware.js.map +1 -1
- package/dist/resilience/middlewares/retry/retry.types.d.ts +6 -6
- package/dist/resilience/middlewares/timeout/timeout.middleware.d.ts +1 -1
- package/dist/resilience/middlewares/timeout/timeout.type.d.ts +4 -4
- package/dist/resilience/resilience.errors.d.ts +1 -1
- package/dist/resilience/resilience.errors.js.map +1 -1
- package/dist/semaphore/contracts/database-semaphore-adapter.contract.d.ts +2 -2
- package/dist/semaphore/contracts/semaphore-provider.contract.d.ts +3 -1
- package/dist/semaphore/contracts/semaphore-state.contract.d.ts +3 -3
- package/dist/semaphore/implementations/adapters/kysely-semaphore-adapter/kysely-semaphore-adapter.d.ts +12 -1
- package/dist/semaphore/implementations/adapters/kysely-semaphore-adapter/kysely-semaphore-adapter.js +18 -14
- package/dist/semaphore/implementations/adapters/kysely-semaphore-adapter/kysely-semaphore-adapter.js.map +1 -1
- package/dist/semaphore/implementations/derivables/semaphore-provider/semaphore-provider.d.ts +3 -33
- package/dist/semaphore/implementations/derivables/semaphore-provider/semaphore-provider.js +2 -42
- package/dist/semaphore/implementations/derivables/semaphore-provider/semaphore-provider.js.map +1 -1
- package/dist/semaphore/implementations/test-utilities/database-semaphore-adapter.test-suite.js.map +1 -1
- package/dist/semaphore/implementations/test-utilities/semaphore-provider.test-suite.js +57 -57
- package/dist/semaphore/implementations/test-utilities/semaphore-provider.test-suite.js.map +1 -1
- package/dist/serde/contracts/flexible-serde.contract.d.ts +1 -1
- package/dist/shared-lock/contracts/database-shared-lock-adapter.contract.d.ts +2 -2
- package/dist/shared-lock/contracts/shared-lock-provider.contract.d.ts +3 -1
- package/dist/shared-lock/contracts/shared-lock-state.contract.d.ts +3 -3
- package/dist/shared-lock/implementations/adapters/kysely-shared-lock-adapter/kysely-shared-lock-adapter.d.ts +11 -0
- package/dist/shared-lock/implementations/adapters/kysely-shared-lock-adapter/kysely-shared-lock-adapter.js +16 -6
- package/dist/shared-lock/implementations/adapters/kysely-shared-lock-adapter/kysely-shared-lock-adapter.js.map +1 -1
- package/dist/shared-lock/implementations/derivables/shared-lock-provider/shared-lock-provider.d.ts +3 -33
- package/dist/shared-lock/implementations/derivables/shared-lock-provider/shared-lock-provider.js +2 -42
- package/dist/shared-lock/implementations/derivables/shared-lock-provider/shared-lock-provider.js.map +1 -1
- package/dist/shared-lock/implementations/test-utilities/database-shared-lock-adapter.test-suite.js.map +1 -1
- package/dist/shared-lock/implementations/test-utilities/shared-lock-provider.test-suite.js +117 -117
- package/dist/shared-lock/implementations/test-utilities/shared-lock-provider.test-suite.js.map +1 -1
- package/dist/task/implementations/task.d.ts +9 -9
- package/dist/task/implementations/task.js.map +1 -1
- package/dist/utilities/contracts/sqlite-database.contract.d.ts +1 -1
- package/dist/utilities/functions/invokable.d.ts +9 -9
- package/dist/utilities/functions/invokable.js.map +1 -1
- package/dist/utilities/functions/resolve-one-or-more.d.ts +1 -1
- package/dist/utilities/types/any-class.type.d.ts +1 -1
- package/dist/utilities/types/none-func.type.d.ts +1 -1
- package/package.json +1 -1
|
@@ -18,7 +18,7 @@ export type SerializedValueBase = {
|
|
|
18
18
|
* @group Contracts
|
|
19
19
|
*/
|
|
20
20
|
export type SerializableClass<TSerializedValue extends SerializedValueBase> = {
|
|
21
|
-
new (...arguments_: any
|
|
21
|
+
new (...arguments_: Array<any>): ISerializable<TSerializedValue>;
|
|
22
22
|
deserialize(serializedValue: TSerializedValue): ISerializable<TSerializedValue>;
|
|
23
23
|
};
|
|
24
24
|
/**
|
|
@@ -95,7 +95,7 @@ export type IDatabaseReaderSemaphoreTransaction = {
|
|
|
95
95
|
* The `findSlots` returns the semaphore slot if it exists otherwise `null` is returned.
|
|
96
96
|
*
|
|
97
97
|
*/
|
|
98
|
-
findSlots(key: string): Promise<IReaderSemaphoreSlotData
|
|
98
|
+
findSlots(key: string): Promise<Array<IReaderSemaphoreSlotData>>;
|
|
99
99
|
/**
|
|
100
100
|
* The `upsertSemaphore` inserts a semaphore if it doesnt exist otherwise it will be updated.
|
|
101
101
|
*/
|
|
@@ -115,7 +115,7 @@ export type IDatabaseReaderSemaphoreTransaction = {
|
|
|
115
115
|
*
|
|
116
116
|
* @returns Returns the slot expiration.
|
|
117
117
|
*/
|
|
118
|
-
removeAllSlots(key: string): Promise<IReaderSemaphoreSlotExpirationData
|
|
118
|
+
removeAllSlots(key: string): Promise<Array<IReaderSemaphoreSlotExpirationData>>;
|
|
119
119
|
/**
|
|
120
120
|
* The `updateExpiration` updates the specified slot expiration as long as it is expireable and unexpired of the given semaphore.
|
|
121
121
|
*
|
|
@@ -46,4 +46,6 @@ export type ISharedLockProviderBase = {
|
|
|
46
46
|
* IMPORT_PATH: `"@daiso-tech/core/shared-lock/contracts"`
|
|
47
47
|
* @group Contracts
|
|
48
48
|
*/
|
|
49
|
-
export type ISharedLockProvider =
|
|
49
|
+
export type ISharedLockProvider = ISharedLockProviderBase & {
|
|
50
|
+
readonly events: ISharedLockListenable;
|
|
51
|
+
};
|
|
@@ -94,7 +94,7 @@ export type ISharedLockReaderUnacquiredState = {
|
|
|
94
94
|
limit: number;
|
|
95
95
|
freeSlotsCount: number;
|
|
96
96
|
acquiredSlotsCount: number;
|
|
97
|
-
acquiredSlots: string
|
|
97
|
+
acquiredSlots: Array<string>;
|
|
98
98
|
};
|
|
99
99
|
/**
|
|
100
100
|
*
|
|
@@ -107,7 +107,7 @@ export type ISharedLockReaderAcquiredState = {
|
|
|
107
107
|
remainingTime: TimeSpan | null;
|
|
108
108
|
freeSlotsCount: number;
|
|
109
109
|
acquiredSlotsCount: number;
|
|
110
|
-
acquiredSlots: string
|
|
110
|
+
acquiredSlots: Array<string>;
|
|
111
111
|
};
|
|
112
112
|
/**
|
|
113
113
|
*
|
|
@@ -117,7 +117,7 @@ export type ISharedLockReaderAcquiredState = {
|
|
|
117
117
|
export type ISharedLockReaderLimitReachedState = {
|
|
118
118
|
type: (typeof SHARED_LOCK_READER_STATE)["READER_LIMIT_REACHED"];
|
|
119
119
|
limit: number;
|
|
120
|
-
acquiredSlots: string
|
|
120
|
+
acquiredSlots: Array<string>;
|
|
121
121
|
};
|
|
122
122
|
/**
|
|
123
123
|
*
|
|
@@ -71,6 +71,15 @@ export type KyselySharedLockAdapterSettings = {
|
|
|
71
71
|
* ```
|
|
72
72
|
*/
|
|
73
73
|
currentDate?: () => Date;
|
|
74
|
+
/**
|
|
75
|
+
* @default
|
|
76
|
+
* ```ts
|
|
77
|
+
* import { Transaction } from "kysely"
|
|
78
|
+
*
|
|
79
|
+
* !(settings.kysely instanceof Transaction)
|
|
80
|
+
* ```
|
|
81
|
+
*/
|
|
82
|
+
enableTransactions?: boolean;
|
|
74
83
|
};
|
|
75
84
|
/**
|
|
76
85
|
* To utilize the `KyselySharedLockAdapter`, you must install the [`"kysely"`](https://www.npmjs.com/package/kysely) package and configure a `Kysely` class instance.
|
|
@@ -87,6 +96,7 @@ export declare class KyselySharedLockAdapter implements IDatabaseSharedLockAdapt
|
|
|
87
96
|
private readonly shouldRemoveExpiredKeys;
|
|
88
97
|
private intervalId;
|
|
89
98
|
private readonly currentDate;
|
|
99
|
+
private readonly enableTransactions;
|
|
90
100
|
/**
|
|
91
101
|
* @example
|
|
92
102
|
* ```ts
|
|
@@ -106,6 +116,7 @@ export declare class KyselySharedLockAdapter implements IDatabaseSharedLockAdapt
|
|
|
106
116
|
* ```
|
|
107
117
|
*/
|
|
108
118
|
constructor(settings: KyselySharedLockAdapterSettings);
|
|
119
|
+
private _transaction;
|
|
109
120
|
init(): Promise<void>;
|
|
110
121
|
/**
|
|
111
122
|
* Removes all related shared-lock tables and their rows.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @module SharedLock
|
|
3
3
|
*/
|
|
4
|
-
import { MysqlAdapter } from "kysely";
|
|
4
|
+
import { MysqlAdapter, Transaction } from "kysely";
|
|
5
5
|
import {} from "../../../../shared-lock/contracts/_module.js";
|
|
6
6
|
import {} from "../../../../time-span/contracts/_module.js";
|
|
7
7
|
import { TimeSpan } from "../../../../time-span/implementations/_module.js";
|
|
@@ -320,6 +320,7 @@ export class KyselySharedLockAdapter {
|
|
|
320
320
|
shouldRemoveExpiredKeys;
|
|
321
321
|
intervalId = null;
|
|
322
322
|
currentDate;
|
|
323
|
+
enableTransactions;
|
|
323
324
|
/**
|
|
324
325
|
* @example
|
|
325
326
|
* ```ts
|
|
@@ -339,11 +340,23 @@ export class KyselySharedLockAdapter {
|
|
|
339
340
|
* ```
|
|
340
341
|
*/
|
|
341
342
|
constructor(settings) {
|
|
342
|
-
const { kysely, expiredKeysRemovalInterval = TimeSpan.fromMinutes(1), shouldRemoveExpiredKeys = true, currentDate = () => new Date(), } = settings;
|
|
343
|
+
const { kysely, expiredKeysRemovalInterval = TimeSpan.fromMinutes(1), shouldRemoveExpiredKeys = true, currentDate = () => new Date(), enableTransactions = !(settings.kysely instanceof Transaction), } = settings;
|
|
343
344
|
this.expiredKeysRemovalInterval = TimeSpan.fromTimeSpan(expiredKeysRemovalInterval);
|
|
344
345
|
this.shouldRemoveExpiredKeys = shouldRemoveExpiredKeys;
|
|
345
346
|
this.kysely = kysely;
|
|
346
347
|
this.currentDate = currentDate;
|
|
348
|
+
this.enableTransactions = enableTransactions;
|
|
349
|
+
}
|
|
350
|
+
_transaction(trxFn) {
|
|
351
|
+
if (this.enableTransactions) {
|
|
352
|
+
return this.kysely
|
|
353
|
+
.transaction()
|
|
354
|
+
.setIsolationLevel("serializable")
|
|
355
|
+
.execute(async (trx) => {
|
|
356
|
+
return await trxFn(trx);
|
|
357
|
+
});
|
|
358
|
+
}
|
|
359
|
+
return trxFn(this.kysely);
|
|
347
360
|
}
|
|
348
361
|
async init() {
|
|
349
362
|
// Should throw if the table already exists thats why the try catch is used.
|
|
@@ -489,10 +502,7 @@ export class KyselySharedLockAdapter {
|
|
|
489
502
|
]);
|
|
490
503
|
}
|
|
491
504
|
async transaction(fn) {
|
|
492
|
-
return await this.
|
|
493
|
-
.transaction()
|
|
494
|
-
.setIsolationLevel("serializable")
|
|
495
|
-
.execute(async (trx) => {
|
|
505
|
+
return await this._transaction(async (trx) => {
|
|
496
506
|
return await fn({
|
|
497
507
|
reader: new DatabaseReaderSemaphoreTransaction(trx),
|
|
498
508
|
writer: new DatabaseWriterLockTransaction(trx),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kysely-shared-lock-adapter.js","sourceRoot":"","sources":["../../../../../src/shared-lock/implementations/adapters/kysely-shared-lock-adapter/kysely-shared-lock-adapter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"kysely-shared-lock-adapter.js","sourceRoot":"","sources":["../../../../../src/shared-lock/implementations/adapters/kysely-shared-lock-adapter/kysely-shared-lock-adapter.ts"],"names":[],"mappings":"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"}
|
package/dist/shared-lock/implementations/derivables/shared-lock-provider/shared-lock-provider.d.ts
CHANGED
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @module SharedLock
|
|
3
3
|
*/
|
|
4
|
-
import { type
|
|
4
|
+
import { type IEventBus } from "../../../../event-bus/contracts/_module.js";
|
|
5
5
|
import { type INamespace } from "../../../../namespace/contracts/_module.js";
|
|
6
6
|
import { type ISerderRegister } from "../../../../serde/contracts/_module.js";
|
|
7
|
-
import { type ISharedLock, type
|
|
8
|
-
import { type ITask } from "../../../../task/contracts/_module.js";
|
|
7
|
+
import { type ISharedLock, type SharedLockProviderCreateSettings, type ISharedLockProvider, type SharedLockAdapterVariants, type ISharedLockListenable } from "../../../../shared-lock/contracts/_module.js";
|
|
9
8
|
import { type ITimeSpan } from "../../../../time-span/contracts/_module.js";
|
|
10
9
|
import { type Invokable, type OneOrMore } from "../../../../utilities/_module.js";
|
|
11
10
|
/**
|
|
@@ -157,36 +156,7 @@ export declare class SharedLockProvider implements ISharedLockProvider {
|
|
|
157
156
|
*/
|
|
158
157
|
constructor(settings: SharedLockProviderSettings);
|
|
159
158
|
private registerToSerde;
|
|
160
|
-
|
|
161
|
-
* You can listen to the following {@link SharedLockEventMap | `SharedLockEventMap`} of all {@link ISharedLock | `ISharedLock`} instances created by the {@link ISharedLockProvider | `ISharedLockProvider`}.
|
|
162
|
-
* To understand how this method works, refer to {@link IEventListenable | `IEventListenable `}.
|
|
163
|
-
*/
|
|
164
|
-
addListener<TEventName extends keyof SharedLockEventMap>(eventName: TEventName, listener: EventListener<SharedLockEventMap[TEventName]>): ITask<void>;
|
|
165
|
-
/**
|
|
166
|
-
* You can listen to the following {@link SharedLockEventMap | `SharedLockEventMap`} of all {@link ISharedLock | `ISharedLock`} instances created by the {@link ISharedLockProvider | `ISharedLockProvider`}.
|
|
167
|
-
* To understand how this method works, refer to {@link IEventListenable | `IEventListenable `}.
|
|
168
|
-
*/
|
|
169
|
-
removeListener<TEventName extends keyof SharedLockEventMap>(eventName: TEventName, listener: EventListener<SharedLockEventMap[TEventName]>): ITask<void>;
|
|
170
|
-
/**
|
|
171
|
-
* You can listen to the following {@link SharedLockEventMap | `SharedLockEventMap`} of all {@link ISharedLock | `ISharedLock`} instances created by the {@link ISharedLockProvider | `ISharedLockProvider`}.
|
|
172
|
-
* To understand how this method works, refer to {@link IEventListenable | `IEventListenable `}.
|
|
173
|
-
*/
|
|
174
|
-
listenOnce<TEventName extends keyof SharedLockEventMap>(eventName: TEventName, listener: EventListener<SharedLockEventMap[TEventName]>): ITask<void>;
|
|
175
|
-
/**
|
|
176
|
-
* You can listen to the following {@link SharedLockEventMap | `SharedLockEventMap`} of all {@link ISharedLock | `ISharedLock`} instances created by the {@link ISharedLockProvider | `ISharedLockProvider`}.
|
|
177
|
-
* To understand how this method works, refer to {@link IEventListenable | `IEventListenable `}.
|
|
178
|
-
*/
|
|
179
|
-
asTask<TEventName extends keyof SharedLockEventMap>(eventName: TEventName): ITask<SharedLockEventMap[TEventName]>;
|
|
180
|
-
/**
|
|
181
|
-
* You can listen to the following {@link SharedLockEventMap | `SharedLockEventMap`} of all {@link ISharedLock | `ISharedLock`} instances created by the {@link ISharedLockProvider | `ISharedLockProvider`}.
|
|
182
|
-
* To understand how this method works, refer to {@link IEventListenable | `IEventListenable `}.
|
|
183
|
-
*/
|
|
184
|
-
subscribeOnce<TEventName extends keyof SharedLockEventMap>(eventName: TEventName, listener: EventListener<SharedLockEventMap[TEventName]>): ITask<Unsubscribe>;
|
|
185
|
-
/**
|
|
186
|
-
* You can listen to the following {@link SharedLockEventMap | `SharedLockEventMap`} of all {@link ISharedLock | `ISharedLock`} instances created by the {@link ISharedLockProvider | `ISharedLockProvider`}.
|
|
187
|
-
* To understand how this method works, refer to {@link IEventListenable | `IEventListenable `}.
|
|
188
|
-
*/
|
|
189
|
-
subscribe<TEventName extends keyof SharedLockEventMap>(eventName: TEventName, listener: EventListener<SharedLockEventMap[TEventName]>): ITask<Unsubscribe>;
|
|
159
|
+
get events(): ISharedLockListenable;
|
|
190
160
|
/**
|
|
191
161
|
* @example
|
|
192
162
|
* ```ts
|
package/dist/shared-lock/implementations/derivables/shared-lock-provider/shared-lock-provider.js
CHANGED
|
@@ -14,7 +14,6 @@ import {} from "../../../../shared-lock/contracts/_module.js";
|
|
|
14
14
|
import { resolveSharedLockAdapter } from "../../../../shared-lock/implementations/derivables/shared-lock-provider/resolve-shared-lock-adapter.js";
|
|
15
15
|
import { SharedLockSerdeTransformer } from "../../../../shared-lock/implementations/derivables/shared-lock-provider/shared-lock-serde-transformer.js";
|
|
16
16
|
import { SharedLock } from "../../../../shared-lock/implementations/derivables/shared-lock-provider/shared-lock.js";
|
|
17
|
-
import {} from "../../../../task/contracts/_module.js";
|
|
18
17
|
import {} from "../../../../time-span/contracts/_module.js";
|
|
19
18
|
import { TimeSpan } from "../../../../time-span/implementations/_module.js";
|
|
20
19
|
import { CORE, resolveOneOrMore, callInvokable, } from "../../../../utilities/_module.js";
|
|
@@ -100,47 +99,8 @@ export class SharedLockProvider {
|
|
|
100
99
|
serde.registerCustom(transformer, CORE);
|
|
101
100
|
}
|
|
102
101
|
}
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
* To understand how this method works, refer to {@link IEventListenable | `IEventListenable `}.
|
|
106
|
-
*/
|
|
107
|
-
addListener(eventName, listener) {
|
|
108
|
-
return this.eventBus.addListener(eventName, listener);
|
|
109
|
-
}
|
|
110
|
-
/**
|
|
111
|
-
* You can listen to the following {@link SharedLockEventMap | `SharedLockEventMap`} of all {@link ISharedLock | `ISharedLock`} instances created by the {@link ISharedLockProvider | `ISharedLockProvider`}.
|
|
112
|
-
* To understand how this method works, refer to {@link IEventListenable | `IEventListenable `}.
|
|
113
|
-
*/
|
|
114
|
-
removeListener(eventName, listener) {
|
|
115
|
-
return this.eventBus.removeListener(eventName, listener);
|
|
116
|
-
}
|
|
117
|
-
/**
|
|
118
|
-
* You can listen to the following {@link SharedLockEventMap | `SharedLockEventMap`} of all {@link ISharedLock | `ISharedLock`} instances created by the {@link ISharedLockProvider | `ISharedLockProvider`}.
|
|
119
|
-
* To understand how this method works, refer to {@link IEventListenable | `IEventListenable `}.
|
|
120
|
-
*/
|
|
121
|
-
listenOnce(eventName, listener) {
|
|
122
|
-
return this.eventBus.listenOnce(eventName, listener);
|
|
123
|
-
}
|
|
124
|
-
/**
|
|
125
|
-
* You can listen to the following {@link SharedLockEventMap | `SharedLockEventMap`} of all {@link ISharedLock | `ISharedLock`} instances created by the {@link ISharedLockProvider | `ISharedLockProvider`}.
|
|
126
|
-
* To understand how this method works, refer to {@link IEventListenable | `IEventListenable `}.
|
|
127
|
-
*/
|
|
128
|
-
asTask(eventName) {
|
|
129
|
-
return this.eventBus.asTask(eventName);
|
|
130
|
-
}
|
|
131
|
-
/**
|
|
132
|
-
* You can listen to the following {@link SharedLockEventMap | `SharedLockEventMap`} of all {@link ISharedLock | `ISharedLock`} instances created by the {@link ISharedLockProvider | `ISharedLockProvider`}.
|
|
133
|
-
* To understand how this method works, refer to {@link IEventListenable | `IEventListenable `}.
|
|
134
|
-
*/
|
|
135
|
-
subscribeOnce(eventName, listener) {
|
|
136
|
-
return this.eventBus.subscribeOnce(eventName, listener);
|
|
137
|
-
}
|
|
138
|
-
/**
|
|
139
|
-
* You can listen to the following {@link SharedLockEventMap | `SharedLockEventMap`} of all {@link ISharedLock | `ISharedLock`} instances created by the {@link ISharedLockProvider | `ISharedLockProvider`}.
|
|
140
|
-
* To understand how this method works, refer to {@link IEventListenable | `IEventListenable `}.
|
|
141
|
-
*/
|
|
142
|
-
subscribe(eventName, listener) {
|
|
143
|
-
return this.eventBus.subscribe(eventName, listener);
|
|
102
|
+
get events() {
|
|
103
|
+
return this.eventBus;
|
|
144
104
|
}
|
|
145
105
|
/**
|
|
146
106
|
* @example
|
package/dist/shared-lock/implementations/derivables/shared-lock-provider/shared-lock-provider.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared-lock-provider.js","sourceRoot":"","sources":["../../../../../src/shared-lock/implementations/derivables/shared-lock-provider/shared-lock-provider.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,EAAE,EAAE,MAAM,MAAM,CAAC;AAE1B,OAAO,
|
|
1
|
+
{"version":3,"file":"shared-lock-provider.js","sourceRoot":"","sources":["../../../../../src/shared-lock/implementations/derivables/shared-lock-provider/shared-lock-provider.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"database-shared-lock-adapter.test-suite.js","sourceRoot":"","sources":["../../../../src/shared-lock/implementations/test-utilities/database-shared-lock-adapter.test-suite.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"database-shared-lock-adapter.test-suite.js","sourceRoot":"","sources":["../../../../src/shared-lock/implementations/test-utilities/database-shared-lock-adapter.test-suite.ts"],"names":[],"mappings":"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"}
|