@daiso-tech/core 0.32.0 → 0.33.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.
Files changed (126) hide show
  1. package/dist/async/async.errors.d.ts +14 -0
  2. package/dist/async/async.errors.js +14 -0
  3. package/dist/async/async.errors.js.map +1 -1
  4. package/dist/async/async.events.d.ts +23 -0
  5. package/dist/async/async.events.js +23 -0
  6. package/dist/async/async.events.js.map +1 -1
  7. package/dist/async/backof-policies/_shared.d.ts +1 -1
  8. package/dist/async/backof-policies/constant-backoff-policy/constant-backoff-policy.d.ts +2 -2
  9. package/dist/async/backof-policies/constant-backoff-policy/constant-backoff-policy.js +1 -1
  10. package/dist/async/backof-policies/exponential-backoff-policy/exponential-backoff-policy.d.ts +2 -2
  11. package/dist/async/backof-policies/exponential-backoff-policy/exponential-backoff-policy.js +1 -1
  12. package/dist/async/backof-policies/linear-backoff-policy/linear-backoff-policy.d.ts +2 -2
  13. package/dist/async/backof-policies/linear-backoff-policy/linear-backoff-policy.js +1 -1
  14. package/dist/async/backof-policies/polynomial-backoff-policy/polynomial-backoff-policy.d.ts +2 -2
  15. package/dist/async/backof-policies/polynomial-backoff-policy/polynomial-backoff-policy.js +1 -1
  16. package/dist/async/utilities/lazy-promise/lazy-promise.d.ts +7 -41
  17. package/dist/async/utilities/lazy-promise/lazy-promise.js +7 -8
  18. package/dist/async/utilities/lazy-promise/lazy-promise.js.map +1 -1
  19. package/dist/cache/contracts/cache-factory.contract.d.ts +3 -3
  20. package/dist/cache/contracts/cache.contract.d.ts +0 -22
  21. package/dist/cache/contracts/cache.errors.d.ts +14 -1
  22. package/dist/cache/contracts/cache.errors.js +14 -1
  23. package/dist/cache/contracts/cache.errors.js.map +1 -1
  24. package/dist/cache/contracts/cache.events.d.ts +28 -14
  25. package/dist/cache/contracts/cache.events.js +28 -3
  26. package/dist/cache/contracts/cache.events.js.map +1 -1
  27. package/dist/cache/implementations/adapters/mongodb-cache-adapter/mongodb-cache-adapter-serde.js +3 -3
  28. package/dist/cache/implementations/adapters/mongodb-cache-adapter/mongodb-cache-adapter-serde.js.map +1 -1
  29. package/dist/cache/implementations/adapters/mongodb-cache-adapter/mongodb-cache-adapter.js +0 -1
  30. package/dist/cache/implementations/adapters/mongodb-cache-adapter/mongodb-cache-adapter.js.map +1 -1
  31. package/dist/cache/implementations/adapters/redis-cache-adapter/redis-cache-adapter-serde.js +3 -3
  32. package/dist/cache/implementations/adapters/redis-cache-adapter/redis-cache-adapter-serde.js.map +1 -1
  33. package/dist/cache/implementations/derivables/cache/cache.d.ts +9 -139
  34. package/dist/cache/implementations/derivables/cache/cache.js +38 -229
  35. package/dist/cache/implementations/derivables/cache/cache.js.map +1 -1
  36. package/dist/cache/implementations/derivables/cache-factory/cache-factory.d.ts +6 -6
  37. package/dist/cache/implementations/derivables/cache-factory/cache-factory.js.map +1 -1
  38. package/dist/cache/implementations/test-utilities/cache-adapter.test-suite.d.ts +2 -2
  39. package/dist/cache/implementations/test-utilities/cache-adapter.test-suite.js +1 -1
  40. package/dist/cache/implementations/test-utilities/cache.test-suite.d.ts +4 -4
  41. package/dist/cache/implementations/test-utilities/cache.test-suite.js +239 -433
  42. package/dist/cache/implementations/test-utilities/cache.test-suite.js.map +1 -1
  43. package/dist/cache/implementations/test-utilities/database-cache-dapter.test-suite.d.ts +2 -2
  44. package/dist/cache/implementations/test-utilities/database-cache-dapter.test-suite.js +1 -1
  45. package/dist/collection/contracts/collection.errors.d.ts +17 -0
  46. package/dist/collection/contracts/collection.errors.js +17 -0
  47. package/dist/collection/contracts/collection.errors.js.map +1 -1
  48. package/dist/event-bus/contracts/event-bus-factory.contract.d.ts +3 -3
  49. package/dist/event-bus/contracts/event-bus.contract.d.ts +2 -44
  50. package/dist/event-bus/contracts/event-bus.contract.js.map +1 -1
  51. package/dist/event-bus/contracts/event-bus.errors.d.ts +16 -1
  52. package/dist/event-bus/contracts/event-bus.errors.js +16 -1
  53. package/dist/event-bus/contracts/event-bus.errors.js.map +1 -1
  54. package/dist/event-bus/implementations/derivables/event-bus/event-bus.d.ts +6 -77
  55. package/dist/event-bus/implementations/derivables/event-bus/event-bus.js +11 -131
  56. package/dist/event-bus/implementations/derivables/event-bus/event-bus.js.map +1 -1
  57. package/dist/event-bus/implementations/derivables/event-bus-factory/event-bus-factory.d.ts +4 -4
  58. package/dist/event-bus/implementations/derivables/event-bus-factory/event-bus-factory.js.map +1 -1
  59. package/dist/event-bus/implementations/test-utilities/event-bus-adapter.test-suite.d.ts +2 -2
  60. package/dist/event-bus/implementations/test-utilities/event-bus-adapter.test-suite.js +1 -1
  61. package/dist/event-bus/implementations/test-utilities/event-bus.test-suite.d.ts +4 -4
  62. package/dist/event-bus/implementations/test-utilities/event-bus.test-suite.js +691 -1432
  63. package/dist/event-bus/implementations/test-utilities/event-bus.test-suite.js.map +1 -1
  64. package/dist/lock/contracts/lock-provider-factory.contract.d.ts +3 -3
  65. package/dist/lock/contracts/lock-provider.contract.d.ts +10 -20
  66. package/dist/lock/contracts/lock.contract.d.ts +1 -10
  67. package/dist/lock/contracts/lock.errors.d.ts +18 -0
  68. package/dist/lock/contracts/lock.errors.js +18 -0
  69. package/dist/lock/contracts/lock.errors.js.map +1 -1
  70. package/dist/lock/contracts/lock.events.d.ts +22 -0
  71. package/dist/lock/contracts/lock.events.js +22 -0
  72. package/dist/lock/contracts/lock.events.js.map +1 -1
  73. package/dist/lock/implementations/derivables/lock-provider/lock-provider.d.ts +12 -155
  74. package/dist/lock/implementations/derivables/lock-provider/lock-provider.js +31 -228
  75. package/dist/lock/implementations/derivables/lock-provider/lock-provider.js.map +1 -1
  76. package/dist/lock/implementations/derivables/lock-provider/lock-serde-transformer.d.ts +5 -5
  77. package/dist/lock/implementations/derivables/lock-provider/lock-serde-transformer.js +7 -30
  78. package/dist/lock/implementations/derivables/lock-provider/lock-serde-transformer.js.map +1 -1
  79. package/dist/lock/implementations/derivables/lock-provider/lock.d.ts +8 -58
  80. package/dist/lock/implementations/derivables/lock-provider/lock.js +33 -105
  81. package/dist/lock/implementations/derivables/lock-provider/lock.js.map +1 -1
  82. package/dist/lock/implementations/derivables/lock-provider-factory/lock-provider-factory.d.ts +9 -8
  83. package/dist/lock/implementations/derivables/lock-provider-factory/lock-provider-factory.js.map +1 -1
  84. package/dist/lock/implementations/test-utilities/lock-provider.test-suite.d.ts +2 -2
  85. package/dist/lock/implementations/test-utilities/lock-provider.test-suite.js +178 -659
  86. package/dist/lock/implementations/test-utilities/lock-provider.test-suite.js.map +1 -1
  87. package/dist/serde/contracts/deserializer.contract.d.ts +1 -1
  88. package/dist/serde/contracts/deserializer.contract.js +1 -1
  89. package/dist/serde/contracts/deserializer.contract.js.map +1 -1
  90. package/dist/serde/contracts/serde.errors.d.ts +14 -2
  91. package/dist/serde/contracts/serde.errors.js +16 -4
  92. package/dist/serde/contracts/serde.errors.js.map +1 -1
  93. package/dist/serde/contracts/serializer.contract.d.ts +1 -1
  94. package/dist/serde/contracts/serializer.contract.js +1 -1
  95. package/dist/serde/contracts/serializer.contract.js.map +1 -1
  96. package/dist/serde/implementations/adapters/mongodb-serde/mongodb-serde.js +3 -3
  97. package/dist/serde/implementations/adapters/mongodb-serde/mongodb-serde.js.map +1 -1
  98. package/dist/serde/implementations/adapters/redis-serde/redis-serde.js +3 -3
  99. package/dist/serde/implementations/adapters/redis-serde/redis-serde.js.map +1 -1
  100. package/dist/serde/implementations/adapters/sql-serde/sql-serde.js +3 -3
  101. package/dist/serde/implementations/adapters/sql-serde/sql-serde.js.map +1 -1
  102. package/dist/serde/implementations/adapters/super-json-serde-adapter/super-json-serde-adapter.js +3 -3
  103. package/dist/serde/implementations/adapters/super-json-serde-adapter/super-json-serde-adapter.js.map +1 -1
  104. package/dist/serde/implementations/test-utilities/flexible-serde-adapter.test-suite.d.ts +2 -2
  105. package/dist/serde/implementations/test-utilities/flexible-serde-adapter.test-suite.js +1 -1
  106. package/dist/serde/implementations/test-utilities/flexible-serde.test-suite.d.ts +2 -2
  107. package/dist/serde/implementations/test-utilities/flexible-serde.test-suite.js +1 -1
  108. package/dist/utilities/classes/key-prefixer/_module.d.ts +0 -1
  109. package/dist/utilities/classes/key-prefixer/_module.js +0 -1
  110. package/dist/utilities/classes/key-prefixer/_module.js.map +1 -1
  111. package/dist/utilities/classes/key-prefixer/key-prefixer.d.ts +2 -11
  112. package/dist/utilities/classes/key-prefixer/key-prefixer.js +4 -46
  113. package/dist/utilities/classes/key-prefixer/key-prefixer.js.map +1 -1
  114. package/dist/utilities/errors.d.ts +2 -0
  115. package/dist/utilities/errors.js +2 -0
  116. package/dist/utilities/errors.js.map +1 -1
  117. package/package.json +3 -4
  118. package/dist/async/utilities/lazy-promise/lazy-promise-event-bus.d.ts +0 -15
  119. package/dist/async/utilities/lazy-promise/lazy-promise-event-bus.js +0 -50
  120. package/dist/async/utilities/lazy-promise/lazy-promise-event-bus.js.map +0 -1
  121. package/dist/async/utilities/lazy-promise/lazy-promise-listener.contract.d.ts +0 -23
  122. package/dist/async/utilities/lazy-promise/lazy-promise-listener.contract.js +0 -44
  123. package/dist/async/utilities/lazy-promise/lazy-promise-listener.contract.js.map +0 -1
  124. package/dist/utilities/classes/key-prefixer/key-prefixer.contract.d.ts +0 -28
  125. package/dist/utilities/classes/key-prefixer/key-prefixer.contract.js +0 -5
  126. package/dist/utilities/classes/key-prefixer/key-prefixer.contract.js.map +0 -1
@@ -2,10 +2,9 @@
2
2
  /**
3
3
  * @module Cache
4
4
  */
5
- import { KeyFoundCacheEvent, KeyNotFoundCacheEvent, KeyAddedCacheEvent, KeyUpdatedCacheEvent, KeyRemovedCacheEvent, KeyIncrementedCacheEvent, KeyDecrementedCacheEvent, KeysClearedCacheEvent, UnexpectedCacheErrorEvent, } from "../../../../cache/contracts/_module-exports.js";
5
+ import { KeyFoundCacheEvent, KeyNotFoundCacheEvent, KeyAddedCacheEvent, KeyUpdatedCacheEvent, KeyRemovedCacheEvent, KeyIncrementedCacheEvent, KeyDecrementedCacheEvent, KeysClearedCacheEvent, UnexpectedErrorCacheEvent, } from "../../../../cache/contracts/_module-exports.js";
6
6
  import { KeyNotFoundCacheError, TypeCacheError, } from "../../../../cache/contracts/_module-exports.js";
7
- import {} from "../../../../cache/contracts/_module-exports.js";
8
- import { isAsyncFactory, resolveAsyncFactoryable, resolveAsyncLazyable, resolveFactory, } from "../../../../utilities/_module-exports.js";
7
+ import { isAsyncFactory, resolveAsyncLazyable, resolveFactory, } from "../../../../utilities/_module-exports.js";
9
8
  import {} from "../../../../utilities/_module-exports.js";
10
9
  import { KeyPrefixer, } from "../../../../utilities/_module-exports.js";
11
10
  import { LazyPromise } from "../../../../async/_module-exports.js";
@@ -19,24 +18,13 @@ import { DatabaseCacheAdapter } from "../../../../cache/implementations/derivabl
19
18
  * @group Derivables
20
19
  */
21
20
  export class Cache {
22
- static resolveCacheAdapter(adapter) {
23
- if (isDatabaseCacheAdapter(adapter)) {
24
- return new DatabaseCacheAdapter(adapter);
25
- }
26
- return adapter;
27
- }
28
- static async resolveCacheAdapterFactoryable(factoryable, rootPrefix) {
29
- const adapter = await resolveAsyncFactoryable(factoryable, rootPrefix);
30
- return Cache.resolveCacheAdapter(adapter);
31
- }
32
21
  static defaultRetryPolicy = (error) => {
33
22
  return !(error instanceof TypeCacheError ||
34
23
  error instanceof KeyNotFoundCacheError);
35
24
  };
36
- groupdEventBus;
37
25
  eventBus;
38
26
  adapterFactoryable;
39
- adapterPromise;
27
+ adapter;
40
28
  defaultTtl;
41
29
  keyPrefixer;
42
30
  lazyPromiseFactory;
@@ -65,91 +53,23 @@ export class Cache {
65
53
  * adapter: cacheAdapter,
66
54
  * });
67
55
  * ```
68
- *
69
- * You can pass factory function that will create an adapter for every group.
70
- * @example
71
- * ```ts
72
- * import { SqliteCacheAdapter } from "@daiso-tech/core/cache/adapters";
73
- * import type { IDatabaseCacheAdapter } from "@daiso-tech/core/cache/contracts";
74
- * import { Serde } from "@daiso-tech/core/serde";
75
- * import type { ISerde } from "@daiso-tech/core/serde/contracts";
76
- * import { SuperJsonSerdeAdapter } from "@daiso-tech/core/serde/adapters"
77
- * import Sqlite from "better-sqlite3";
78
- * import { Cache } from "@daiso-tech/core/cache";
79
- * import { KeyPrefixer, type ISqliteDatabase, type AsyncFactoryFn } from "@daiso-tech/core/utilities";
80
- *
81
- * function cahceAdapterFactory(database: ISqliteDatabase, serde: ISerde<string>): AsyncFactoryFn<string, IDatabaseCacheAdapter> {
82
- * return async (prefix) => {
83
- * const cacheAdapter = new SqliteCacheAdapter({
84
- * database,
85
- * serde,
86
- * tableName: `cache_${prefix}`
87
- * });
88
- * await cacheAdapter.init();
89
- * return cacheAdapter;
90
- * }
91
- * }
92
- *
93
- * const database = new Sqlite("local.db");
94
- * const serde = new Serde(new SuperJsonSerdeAdapter());
95
- * const cache = new Cache({
96
- * keyPrefixer: new KeyPrefixer("cache"),
97
- * adapter: cahceAdapterFactory(database, serde),
98
- * });
99
- * ```
100
- *
101
- * You can also pass factory object that implements <i>{@link IFactoryObject}</i> contract. This useful for depedency injection libraries.
102
- * @example
103
- * ```ts
104
- * import { SqliteCacheAdapter } from "@daiso-tech/core/cache/adapters";
105
- * import type { IDatabaseCacheAdapter } from "@daiso-tech/core/cache/contracts";
106
- * import { Serde } from "@daiso-tech/core/serde";
107
- * import type { ISerde } from "@daiso-tech/core/serde/contracts";
108
- * import { SuperJsonSerdeAdapter } from "@daiso-tech/core/serde/adapters"
109
- * import Sqlite from "better-sqlite3";
110
- * import { Cache } from "@daiso-tech/core/cache";
111
- * import { KeyPrefixer, type ISqliteDatabase, type IAsyncFactoryObject } from "@daiso-tech/core/utilities";
112
- *
113
- * class CahceAdapterFactory implements IAsyncFactoryObject<string, IDatabaseCacheAdapter> {
114
- * constructor(private readonly database: ISqliteDatabase, private readonly serde: ISerde<string>) {}
115
- *
116
- * async use(prefix: string): Promise<IDatabaseCacheAdapter> {
117
- * const cacheAdapter = new SqliteCacheAdapter({
118
- * database: this.database,
119
- * serde: this.serde,
120
- * tableName: `cache_${prefix}`
121
- * });
122
- * await cacheAdapter.init();
123
- * return cacheAdapter;
124
- * }
125
- * }
126
- *
127
- * const database = new Sqlite("local.db");
128
- * const serde = new Serde(new SuperJsonSerdeAdapter());
129
- * const cache = new Cache({
130
- * keyPrefixer: new KeyPrefixer("cache"),
131
- * adapter: new CahceAdapterFactory(database, serde),
132
- * });
133
- * ```
134
56
  */
135
57
  constructor(settings) {
136
- const { keyPrefixer, adapter, eventBus: groupdEventBus = new EventBus({
58
+ const { keyPrefixer, adapter, eventBus = new EventBus({
137
59
  keyPrefixer: new KeyPrefixer("event-bus"),
138
60
  adapter: new MemoryEventBusAdapter(),
139
61
  }), defaultTtl = null, lazyPromiseFactory = (invokable) => new LazyPromise(invokable), } = settings;
140
62
  this.keyPrefixer = keyPrefixer;
141
- this.groupdEventBus = groupdEventBus;
142
63
  this.adapterFactoryable = adapter;
143
64
  this.defaultTtl = defaultTtl;
144
65
  this.lazyPromiseFactory = resolveFactory(lazyPromiseFactory);
145
- this.eventBus = this.groupdEventBus.withGroup(this.keyPrefixer.resolvedRootPrefix);
146
- if (this.keyPrefixer.resolvedGroup) {
147
- this.eventBus = this.groupdEventBus.withGroup([
148
- this.keyPrefixer.resolvedRootPrefix,
149
- this.keyPrefixer.resolvedGroup,
150
- ]);
66
+ this.eventBus = eventBus;
67
+ if (isDatabaseCacheAdapter(adapter)) {
68
+ this.adapter = new DatabaseCacheAdapter(adapter);
69
+ }
70
+ else {
71
+ this.adapter = adapter;
151
72
  }
152
- this.adapterPromise = new LazyPromise(() => Cache.resolveCacheAdapterFactoryable(this.adapterFactoryable, this.keyPrefixer.keyPrefix));
153
73
  }
154
74
  /**
155
75
  * You can listen to the following <i>{@link CacheEvents}</i> of the <i>{@link ICache}</i> instance.
@@ -158,13 +78,6 @@ export class Cache {
158
78
  addListener(event, listener) {
159
79
  return this.eventBus.addListener(event, listener);
160
80
  }
161
- /**
162
- * You can listen to the following <i>{@link CacheEvents}</i> of the <i>{@link ICache}</i> instance.
163
- * To understand how this method works, refer to <i>{@link IEventListenable}</i>.
164
- */
165
- addListenerMany(events, listener) {
166
- return this.eventBus.addListenerMany(events, listener);
167
- }
168
81
  /**
169
82
  * You can listen to the following <i>{@link CacheEvents}</i> of the <i>{@link ICache}</i> instance.
170
83
  * To understand how this method works, refer to <i>{@link IEventListenable}</i>.
@@ -172,13 +85,6 @@ export class Cache {
172
85
  removeListener(event, listener) {
173
86
  return this.eventBus.removeListener(event, listener);
174
87
  }
175
- /**
176
- * You can listen to the following <i>{@link CacheEvents}</i> of the <i>{@link ICache}</i> instance.
177
- * To understand how this method works, refer to <i>{@link IEventListenable}</i>.
178
- */
179
- removeListenerMany(events, listener) {
180
- return this.eventBus.removeListenerMany(events, listener);
181
- }
182
88
  /**
183
89
  * You can listen to the following <i>{@link CacheEvents}</i> of the <i>{@link ICache}</i> instance.
184
90
  * To understand how this method works, refer to <i>{@link IEventListenable}</i>.
@@ -207,13 +113,6 @@ export class Cache {
207
113
  subscribe(event, listener) {
208
114
  return this.eventBus.subscribe(event, listener);
209
115
  }
210
- /**
211
- * You can listen to the following <i>{@link CacheEvents}</i> of the <i>{@link ICache}</i> instance.
212
- * To understand how this method works, refer to <i>{@link IEventListenable}</i>.
213
- */
214
- subscribeMany(events, listener) {
215
- return this.eventBus.subscribeMany(events, listener);
216
- }
217
116
  createLazyPromise(asyncFn) {
218
117
  return this.lazyPromiseFactory(asyncFn).setRetryPolicy(Cache.defaultRetryPolicy);
219
118
  }
@@ -233,12 +132,10 @@ export class Cache {
233
132
  return this.createLazyPromise(async () => {
234
133
  const keyObj = this.keyPrefixer.create(key);
235
134
  try {
236
- const adapter = await this.adapterPromise;
237
- const value = await adapter.get(keyObj.prefixed);
135
+ const value = await this.adapter.get(keyObj.prefixed);
238
136
  if (value === null) {
239
137
  this.eventBus
240
138
  .dispatch(new KeyNotFoundCacheEvent({
241
- group: this.getGroup(),
242
139
  key: keyObj.resolved,
243
140
  }))
244
141
  .defer();
@@ -246,7 +143,6 @@ export class Cache {
246
143
  else {
247
144
  this.eventBus
248
145
  .dispatch(new KeyFoundCacheEvent({
249
- group: this.getGroup(),
250
146
  key: keyObj.resolved,
251
147
  value,
252
148
  }))
@@ -256,8 +152,7 @@ export class Cache {
256
152
  }
257
153
  catch (error) {
258
154
  this.eventBus
259
- .dispatch(new UnexpectedCacheErrorEvent({
260
- group: this.getGroup(),
155
+ .dispatch(new UnexpectedErrorCacheEvent({
261
156
  keys: [keyObj.resolved],
262
157
  method: this.get.name,
263
158
  error,
@@ -280,12 +175,10 @@ export class Cache {
280
175
  return this.createLazyPromise(async () => {
281
176
  const keyObj = this.keyPrefixer.create(key);
282
177
  try {
283
- const adapter = await this.adapterPromise;
284
- const value = await adapter.getAndRemove(keyObj.prefixed);
178
+ const value = await this.adapter.getAndRemove(keyObj.prefixed);
285
179
  if (value === null) {
286
180
  this.eventBus
287
181
  .dispatch(new KeyNotFoundCacheEvent({
288
- group: this.getGroup(),
289
182
  key: keyObj.resolved,
290
183
  }))
291
184
  .defer();
@@ -293,14 +186,12 @@ export class Cache {
293
186
  else {
294
187
  this.eventBus
295
188
  .dispatch(new KeyFoundCacheEvent({
296
- group: this.getGroup(),
297
189
  key: keyObj.resolved,
298
190
  value,
299
191
  }))
300
192
  .defer();
301
193
  this.eventBus
302
194
  .dispatch(new KeyRemovedCacheEvent({
303
- group: this.getGroup(),
304
195
  key: keyObj.resolved,
305
196
  }))
306
197
  .defer();
@@ -309,8 +200,7 @@ export class Cache {
309
200
  }
310
201
  catch (error) {
311
202
  this.eventBus
312
- .dispatch(new UnexpectedCacheErrorEvent({
313
- group: this.getGroup(),
203
+ .dispatch(new UnexpectedErrorCacheEvent({
314
204
  keys: [keyObj.resolved],
315
205
  method: this.get.name,
316
206
  error,
@@ -345,12 +235,10 @@ export class Cache {
345
235
  return this.createLazyPromise(async () => {
346
236
  const keyObj = this.keyPrefixer.create(key);
347
237
  try {
348
- const adapter = await this.adapterPromise;
349
- const hasAdded = await adapter.add(keyObj.prefixed, value, ttl);
238
+ const hasAdded = await this.adapter.add(keyObj.prefixed, value, ttl);
350
239
  if (hasAdded) {
351
240
  this.eventBus
352
241
  .dispatch(new KeyAddedCacheEvent({
353
- group: this.getGroup(),
354
242
  key: keyObj.resolved,
355
243
  value,
356
244
  ttl,
@@ -361,8 +249,7 @@ export class Cache {
361
249
  }
362
250
  catch (error) {
363
251
  this.eventBus
364
- .dispatch(new UnexpectedCacheErrorEvent({
365
- group: this.getGroup(),
252
+ .dispatch(new UnexpectedErrorCacheEvent({
366
253
  keys: [keyObj.resolved],
367
254
  value,
368
255
  method: this.add.name,
@@ -377,12 +264,10 @@ export class Cache {
377
264
  return this.createLazyPromise(async () => {
378
265
  const keyObj = this.keyPrefixer.create(key);
379
266
  try {
380
- const adapter = await this.adapterPromise;
381
- const hasUpdated = await adapter.put(keyObj.prefixed, value, ttl);
267
+ const hasUpdated = await this.adapter.put(keyObj.prefixed, value, ttl);
382
268
  if (hasUpdated) {
383
269
  this.eventBus
384
270
  .dispatch(new KeyUpdatedCacheEvent({
385
- group: this.getGroup(),
386
271
  key: keyObj.resolved,
387
272
  value,
388
273
  }))
@@ -391,7 +276,6 @@ export class Cache {
391
276
  else {
392
277
  this.eventBus
393
278
  .dispatch(new KeyAddedCacheEvent({
394
- group: this.getGroup(),
395
279
  key: keyObj.resolved,
396
280
  value,
397
281
  ttl,
@@ -402,8 +286,7 @@ export class Cache {
402
286
  }
403
287
  catch (error) {
404
288
  this.eventBus
405
- .dispatch(new UnexpectedCacheErrorEvent({
406
- group: this.getGroup(),
289
+ .dispatch(new UnexpectedErrorCacheEvent({
407
290
  keys: [keyObj.resolved],
408
291
  value,
409
292
  method: this.put.name,
@@ -418,12 +301,10 @@ export class Cache {
418
301
  return this.createLazyPromise(async () => {
419
302
  const keyObj = this.keyPrefixer.create(key);
420
303
  try {
421
- const adapter = await this.adapterPromise;
422
- const hasUpdated = await adapter.update(keyObj.prefixed, value);
304
+ const hasUpdated = await this.adapter.update(keyObj.prefixed, value);
423
305
  if (hasUpdated) {
424
306
  this.eventBus
425
307
  .dispatch(new KeyUpdatedCacheEvent({
426
- group: this.getGroup(),
427
308
  key: keyObj.resolved,
428
309
  value,
429
310
  }))
@@ -432,7 +313,6 @@ export class Cache {
432
313
  else {
433
314
  this.eventBus
434
315
  .dispatch(new KeyNotFoundCacheEvent({
435
- group: this.getGroup(),
436
316
  key: keyObj.resolved,
437
317
  }))
438
318
  .defer();
@@ -441,8 +321,7 @@ export class Cache {
441
321
  }
442
322
  catch (error) {
443
323
  this.eventBus
444
- .dispatch(new UnexpectedCacheErrorEvent({
445
- group: this.getGroup(),
324
+ .dispatch(new UnexpectedErrorCacheEvent({
446
325
  keys: [keyObj.resolved],
447
326
  value,
448
327
  method: this.update.name,
@@ -457,12 +336,10 @@ export class Cache {
457
336
  return this.createLazyPromise(async () => {
458
337
  const keyObj = this.keyPrefixer.create(key);
459
338
  try {
460
- const adapter = await this.adapterPromise;
461
- const hasUpdated = await adapter.increment(keyObj.prefixed, value);
339
+ const hasUpdated = await this.adapter.increment(keyObj.prefixed, value);
462
340
  if (hasUpdated && value > 0) {
463
341
  this.eventBus
464
342
  .dispatch(new KeyIncrementedCacheEvent({
465
- group: this.getGroup(),
466
343
  key: keyObj.resolved,
467
344
  value,
468
345
  }))
@@ -471,7 +348,6 @@ export class Cache {
471
348
  if (hasUpdated && value < 0) {
472
349
  this.eventBus
473
350
  .dispatch(new KeyDecrementedCacheEvent({
474
- group: this.getGroup(),
475
351
  key: keyObj.resolved,
476
352
  value: -value,
477
353
  }))
@@ -480,7 +356,6 @@ export class Cache {
480
356
  if (!hasUpdated) {
481
357
  this.eventBus
482
358
  .dispatch(new KeyNotFoundCacheEvent({
483
- group: this.getGroup(),
484
359
  key: keyObj.resolved,
485
360
  }))
486
361
  .defer();
@@ -489,8 +364,7 @@ export class Cache {
489
364
  }
490
365
  catch (error) {
491
366
  this.eventBus
492
- .dispatch(new UnexpectedCacheErrorEvent({
493
- group: this.getGroup(),
367
+ .dispatch(new UnexpectedErrorCacheEvent({
494
368
  keys: [keyObj.resolved],
495
369
  value,
496
370
  method: this.increment.name,
@@ -510,12 +384,12 @@ export class Cache {
510
384
  return this.createLazyPromise(async () => {
511
385
  const keyObj = this.keyPrefixer.create(key);
512
386
  try {
513
- const adapter = await this.adapterPromise;
514
- const hasRemoved = await adapter.removeMany([keyObj.prefixed]);
387
+ const hasRemoved = await this.adapter.removeMany([
388
+ keyObj.prefixed,
389
+ ]);
515
390
  if (hasRemoved) {
516
391
  this.eventBus
517
392
  .dispatch(new KeyRemovedCacheEvent({
518
- group: this.getGroup(),
519
393
  key: keyObj.resolved,
520
394
  }))
521
395
  .defer();
@@ -523,7 +397,6 @@ export class Cache {
523
397
  else {
524
398
  this.eventBus
525
399
  .dispatch(new KeyNotFoundCacheEvent({
526
- group: this.getGroup(),
527
400
  key: keyObj.resolved,
528
401
  }))
529
402
  .defer();
@@ -532,8 +405,7 @@ export class Cache {
532
405
  }
533
406
  catch (error) {
534
407
  this.eventBus
535
- .dispatch(new UnexpectedCacheErrorEvent({
536
- group: this.getGroup(),
408
+ .dispatch(new UnexpectedErrorCacheEvent({
537
409
  keys: [keyObj.resolved],
538
410
  method: this.remove.name,
539
411
  error,
@@ -551,28 +423,28 @@ export class Cache {
551
423
  }
552
424
  const keyObjArr = keysArr.map((key) => this.keyPrefixer.create(key));
553
425
  try {
554
- const adapter = await this.adapterPromise;
555
- const hasRemovedAtLeastOne = await adapter.removeMany(keyObjArr.map((keyObj) => keyObj.prefixed));
426
+ const hasRemovedAtLeastOne = await this.adapter.removeMany(keyObjArr.map((keyObj) => keyObj.prefixed));
556
427
  if (hasRemovedAtLeastOne) {
557
428
  const events = keyObjArr.map((keyObj) => new KeyRemovedCacheEvent({
558
- group: this.getGroup(),
559
429
  key: keyObj.resolved,
560
430
  }));
561
- this.eventBus.dispatchMany(events).defer();
431
+ for (const event of events) {
432
+ this.eventBus.dispatch(event).defer();
433
+ }
562
434
  }
563
435
  else {
564
436
  const events = keyObjArr.map((keyObj) => new KeyNotFoundCacheEvent({
565
- group: this.getGroup(),
566
437
  key: keyObj.resolved,
567
438
  }));
568
- this.eventBus.dispatchMany(events).defer();
439
+ for (const event of events) {
440
+ this.eventBus.dispatch(event).defer();
441
+ }
569
442
  }
570
443
  return hasRemovedAtLeastOne;
571
444
  }
572
445
  catch (error) {
573
446
  this.eventBus
574
- .dispatch(new UnexpectedCacheErrorEvent({
575
- group: this.getGroup(),
447
+ .dispatch(new UnexpectedErrorCacheEvent({
576
448
  keys: keyObjArr.map((keyObj) => keyObj.resolved),
577
449
  method: this.remove.name,
578
450
  error,
@@ -585,22 +457,18 @@ export class Cache {
585
457
  clear() {
586
458
  return this.createLazyPromise(async () => {
587
459
  try {
588
- const adapter = await this.adapterPromise;
589
- const promise = this.eventBus.dispatch(new KeysClearedCacheEvent({
590
- group: this.getGroup(),
591
- }));
460
+ const promise = this.eventBus.dispatch(new KeysClearedCacheEvent({}));
592
461
  if (isAsyncFactory(this.adapterFactoryable)) {
593
- await adapter.removeAll();
462
+ await this.adapter.removeAll();
594
463
  promise.defer();
595
464
  return;
596
465
  }
597
- await adapter.removeByKeyPrefix(this.keyPrefixer.keyPrefix);
466
+ await this.adapter.removeByKeyPrefix(this.keyPrefixer.keyPrefix);
598
467
  promise.defer();
599
468
  }
600
469
  catch (error) {
601
470
  this.eventBus
602
- .dispatch(new UnexpectedCacheErrorEvent({
603
- group: this.getGroup(),
471
+ .dispatch(new UnexpectedErrorCacheEvent({
604
472
  method: this.clear.name,
605
473
  error,
606
474
  }))
@@ -609,64 +477,5 @@ export class Cache {
609
477
  }
610
478
  });
611
479
  }
612
- /**
613
- * @example
614
- * ```ts
615
- * import { Cache } from "@daiso-tech/core/cache";
616
- * import { MemoryCacheAdapter } from "@daiso-tech/core/cache/adapters";
617
- * import { KeyPrefixer } from "@daiso-tech/core/utilities";
618
- *
619
- * const cache = new Cache({
620
- * adapter: new MemoryCacheAdapter(),
621
- * keyPrefixer: new KeyPrefixer("cache")
622
- * });
623
- *
624
- * // Will log null because the cache is not in a group
625
- * console.log(cache.getGroup());
626
- *
627
- * const groupedCache = cache.withGroup("group-a");
628
- *
629
- * // Will log "group-a" because the groupedCache is in a group
630
- * console.log(groupedCache.getGroup());
631
- * ```
632
- */
633
- getGroup() {
634
- if (this.keyPrefixer.resolvedGroup) {
635
- return this.keyPrefixer.resolvedGroup;
636
- }
637
- return null;
638
- }
639
- /**
640
- * @example
641
- * ```ts
642
- * import { Cache } from "@daiso-tech/core/cache";
643
- * import { MemoryCacheAdapter } from "@daiso-tech/core/cache/adapters";
644
- * import { KeyPrefixer } from "@daiso-tech/core/utilities";
645
- *
646
- * const cache = new Cache({
647
- * adapter: new MemoryCacheAdapter(),
648
- * keyPrefixer: new KeyPrefixer("cache")
649
- * });
650
- *
651
- * const groupedCache = cache.withGroup("group-a");
652
- * await groupedCache.add("a", 1);
653
- *
654
- * // Will log "a".
655
- * console.log(await groupedCache.get("a"));
656
- *
657
- * // Will log null because the caches are in different groups.
658
- * console.log(await cache.get("a"));
659
- * ```
660
- */
661
- withGroup(group) {
662
- const cache = new Cache({
663
- keyPrefixer: this.keyPrefixer.withGroup(group),
664
- adapter: this.adapterFactoryable,
665
- eventBus: this.groupdEventBus,
666
- defaultTtl: this.defaultTtl,
667
- lazyPromiseFactory: this.lazyPromiseFactory,
668
- });
669
- return cache;
670
- }
671
480
  }
672
481
  //# sourceMappingURL=cache.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cache.js","sourceRoot":"","sources":["../../../../../src/cache/implementations/derivables/cache/cache.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cache.js","sourceRoot":"","sources":["../../../../../src/cache/implementations/derivables/cache/cache.ts"],"names":[],"mappings":"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"}
@@ -2,9 +2,9 @@
2
2
  * @module Cache
3
3
  */
4
4
  import { type AsyncLazy, type Factory } from "../../../../utilities/_module-exports.js";
5
- import type { IGroupableEventBus } from "../../../../event-bus/contracts/_module-exports.js";
6
- import type { IGroupableCache, ICacheFactory } from "../../../../cache/contracts/_module-exports.js";
7
- import { type CacheSettingsBase, type CacheAdapterFactoryable } from "../../../../cache/implementations/derivables/cache/_module.js";
5
+ import type { IEventBus } from "../../../../event-bus/contracts/_module-exports.js";
6
+ import type { ICache, ICacheFactory } from "../../../../cache/contracts/_module-exports.js";
7
+ import { type CacheSettingsBase, type CacheAdapter } from "../../../../cache/implementations/derivables/cache/_module.js";
8
8
  import { KeyPrefixer, type TimeSpan } from "../../../../utilities/_module-exports.js";
9
9
  import type { LazyPromise } from "../../../../async/_module-exports.js";
10
10
  /**
@@ -12,7 +12,7 @@ import type { LazyPromise } from "../../../../async/_module-exports.js";
12
12
  * IMPORT_PATH: ```"@daiso-tech/core/cache"```
13
13
  * @group Derivables
14
14
  */
15
- export type CacheAdapters<TAdapters extends string = string> = Partial<Record<TAdapters, CacheAdapterFactoryable<any>>>;
15
+ export type CacheAdapters<TAdapters extends string = string> = Partial<Record<TAdapters, CacheAdapter<any>>>;
16
16
  /**
17
17
  *
18
18
  * IMPORT_PATH: ```"@daiso-tech/core/cache"```
@@ -72,7 +72,7 @@ export declare class CacheFactory<TAdapters extends string = string> implements
72
72
  constructor(settings: CacheFactorySettings<TAdapters>);
73
73
  setKeyPrefixer(keyPrefixer: KeyPrefixer): CacheFactory<TAdapters>;
74
74
  setDefaultTtl(ttl: TimeSpan): CacheFactory<TAdapters>;
75
- setEventBus(eventBus: IGroupableEventBus<any>): CacheFactory<TAdapters>;
75
+ setEventBus(eventBus: IEventBus<any>): CacheFactory<TAdapters>;
76
76
  setlazyPromiseFactory(factory: Factory<AsyncLazy<any>, LazyPromise<any>>): CacheFactory<TAdapters>;
77
77
  /**
78
78
  * @example
@@ -131,5 +131,5 @@ export declare class CacheFactory<TAdapters extends string = string> implements
131
131
  * .add("a", 1);
132
132
  * ```
133
133
  */
134
- use<TType = unknown>(adapterName?: TAdapters | undefined): IGroupableCache<TType>;
134
+ use<TType = unknown>(adapterName?: TAdapters | undefined): ICache<TType>;
135
135
  }
@@ -1 +1 @@
1
- {"version":3,"file":"cache-factory.js","sourceRoot":"","sources":["../../../../../src/cache/implementations/derivables/cache-factory/cache-factory.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACH,6BAA6B,EAC7B,gBAAgB,EAChB,wBAAwB,GAG3B,MAAM,gCAAgC,CAAC;AAMxC,OAAO,EACH,KAAK,GAGR,MAAM,qDAAqD,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAiB,MAAM,gCAAgC,CAAC;AAwB5E;;;;GAIG;AACH,MAAM,OAAO,YAAY;IA2CQ;IAxC7B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAuCG;IACH,YAA6B,QAAyC;QAAzC,aAAQ,GAAR,QAAQ,CAAiC;IAAG,CAAC;IAE1E,cAAc,CAAC,WAAwB;QACnC,OAAO,IAAI,YAAY,CAAC;YACpB,GAAG,IAAI,CAAC,QAAQ;YAChB,WAAW;SACd,CAAC,CAAC;IACP,CAAC;IAED,aAAa,CAAC,GAAa;QACvB,OAAO,IAAI,YAAY,CAAC;YACpB,GAAG,IAAI,CAAC,QAAQ;YAChB,UAAU,EAAE,GAAG;SAClB,CAAC,CAAC;IACP,CAAC;IAED,WAAW,CAAC,QAAiC;QACzC,OAAO,IAAI,YAAY,CAAC;YACpB,GAAG,IAAI,CAAC,QAAQ;YAChB,QAAQ;SACX,CAAC,CAAC;IACP,CAAC;IAED,qBAAqB,CACjB,OAAkD;QAElD,OAAO,IAAI,YAAY,CAAC;YACpB,GAAG,IAAI,CAAC,QAAQ;YAChB,kBAAkB,EAAE,OAAO;SAC9B,CAAC,CAAC;IACP,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAwDG;IACH,GAAG,CACC,cAAqC,IAAI,CAAC,QAAQ,CAAC,cAAc;QAEjE,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC5B,MAAM,IAAI,6BAA6B,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAC/D,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QACpD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,IAAI,wBAAwB,CAAC,WAAW,CAAC,CAAC;QACpD,CAAC;QACD,MAAM,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC;QACtC,OAAO,IAAI,KAAK,CAAC;YACb,GAAG,IAAI,CAAC,QAAQ;YAChB,OAAO;YACP,WAAW,EAAE,IAAI,WAAW,CAAC;gBACzB,GAAG,gBAAgB,CAAC,WAAW,CAAC,kBAAkB,CAAC;gBACnD,WAAW;aACd,CAAC;SACL,CAAC,CAAC;IACP,CAAC;CACJ"}
1
+ {"version":3,"file":"cache-factory.js","sourceRoot":"","sources":["../../../../../src/cache/implementations/derivables/cache-factory/cache-factory.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACH,6BAA6B,EAC7B,gBAAgB,EAChB,wBAAwB,GAG3B,MAAM,gCAAgC,CAAC;AAMxC,OAAO,EACH,KAAK,GAGR,MAAM,qDAAqD,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAiB,MAAM,gCAAgC,CAAC;AAwB5E;;;;GAIG;AACH,MAAM,OAAO,YAAY;IA2CQ;IAxC7B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAuCG;IACH,YAA6B,QAAyC;QAAzC,aAAQ,GAAR,QAAQ,CAAiC;IAAG,CAAC;IAE1E,cAAc,CAAC,WAAwB;QACnC,OAAO,IAAI,YAAY,CAAC;YACpB,GAAG,IAAI,CAAC,QAAQ;YAChB,WAAW;SACd,CAAC,CAAC;IACP,CAAC;IAED,aAAa,CAAC,GAAa;QACvB,OAAO,IAAI,YAAY,CAAC;YACpB,GAAG,IAAI,CAAC,QAAQ;YAChB,UAAU,EAAE,GAAG;SAClB,CAAC,CAAC;IACP,CAAC;IAED,WAAW,CAAC,QAAwB;QAChC,OAAO,IAAI,YAAY,CAAC;YACpB,GAAG,IAAI,CAAC,QAAQ;YAChB,QAAQ;SACX,CAAC,CAAC;IACP,CAAC;IAED,qBAAqB,CACjB,OAAkD;QAElD,OAAO,IAAI,YAAY,CAAC;YACpB,GAAG,IAAI,CAAC,QAAQ;YAChB,kBAAkB,EAAE,OAAO;SAC9B,CAAC,CAAC;IACP,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAwDG;IACH,GAAG,CACC,cAAqC,IAAI,CAAC,QAAQ,CAAC,cAAc;QAEjE,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC5B,MAAM,IAAI,6BAA6B,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAC/D,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QACpD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,IAAI,wBAAwB,CAAC,WAAW,CAAC,CAAC;QACpD,CAAC;QACD,MAAM,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC;QACtC,OAAO,IAAI,KAAK,CAAC;YACb,GAAG,IAAI,CAAC,QAAQ;YAChB,OAAO;YACP,WAAW,EAAE,IAAI,WAAW,CAAC;gBACzB,GAAG,gBAAgB,CAAC,WAAW,CAAC,kBAAkB,CAAC;gBACnD,WAAW;aACd,CAAC;SACL,CAAC,CAAC;IACP,CAAC;CACJ"}