@daiso-tech/core 0.20.0 → 0.21.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 (50) hide show
  1. package/dist/cjs/cache/contracts/cache.errors.js +13 -0
  2. package/dist/cjs/cache/contracts/cache.errors.js.map +1 -1
  3. package/dist/cjs/cache/contracts/cache.events.js +17 -0
  4. package/dist/cjs/cache/contracts/cache.events.js.map +1 -1
  5. package/dist/cjs/cache/implementations/_shared/cache.test-suite.js.map +1 -1
  6. package/dist/cjs/cache/implementations/derivables/cache/cache-settings.js +0 -18
  7. package/dist/cjs/cache/implementations/derivables/cache/cache-settings.js.map +1 -1
  8. package/dist/cjs/cache/implementations/derivables/cache/cache.js +1 -67
  9. package/dist/cjs/cache/implementations/derivables/cache/cache.js.map +1 -1
  10. package/dist/cjs/cache/implementations/derivables/cache-factory/cache-factory.js +17 -13
  11. package/dist/cjs/cache/implementations/derivables/cache-factory/cache-factory.js.map +1 -1
  12. package/dist/cjs/event-bus/contracts/event-bus.errors.js +14 -0
  13. package/dist/cjs/event-bus/contracts/event-bus.errors.js.map +1 -1
  14. package/dist/cjs/event-bus/implementations/derivables/event-bus/event-bus-settings.js +0 -12
  15. package/dist/cjs/event-bus/implementations/derivables/event-bus/event-bus-settings.js.map +1 -1
  16. package/dist/cjs/event-bus/implementations/derivables/event-bus/event-bus.js +1 -29
  17. package/dist/cjs/event-bus/implementations/derivables/event-bus/event-bus.js.map +1 -1
  18. package/dist/cjs/event-bus/implementations/derivables/event-bus-factory/event-bus-factory.js +17 -15
  19. package/dist/cjs/event-bus/implementations/derivables/event-bus-factory/event-bus-factory.js.map +1 -1
  20. package/dist/esm/cache/contracts/cache.errors.js +12 -0
  21. package/dist/esm/cache/contracts/cache.errors.js.map +1 -1
  22. package/dist/esm/cache/contracts/cache.events.js +16 -0
  23. package/dist/esm/cache/contracts/cache.events.js.map +1 -1
  24. package/dist/esm/cache/implementations/_shared/cache.test-suite.js.map +1 -1
  25. package/dist/esm/cache/implementations/derivables/cache/cache-settings.js +0 -18
  26. package/dist/esm/cache/implementations/derivables/cache/cache-settings.js.map +1 -1
  27. package/dist/esm/cache/implementations/derivables/cache/cache.js +2 -68
  28. package/dist/esm/cache/implementations/derivables/cache/cache.js.map +1 -1
  29. package/dist/esm/cache/implementations/derivables/cache-factory/cache-factory.js +17 -13
  30. package/dist/esm/cache/implementations/derivables/cache-factory/cache-factory.js.map +1 -1
  31. package/dist/esm/event-bus/contracts/event-bus.errors.js +13 -0
  32. package/dist/esm/event-bus/contracts/event-bus.errors.js.map +1 -1
  33. package/dist/esm/event-bus/implementations/derivables/event-bus/event-bus-settings.js +0 -12
  34. package/dist/esm/event-bus/implementations/derivables/event-bus/event-bus-settings.js.map +1 -1
  35. package/dist/esm/event-bus/implementations/derivables/event-bus/event-bus.js +2 -30
  36. package/dist/esm/event-bus/implementations/derivables/event-bus/event-bus.js.map +1 -1
  37. package/dist/esm/event-bus/implementations/derivables/event-bus-factory/event-bus-factory.js +14 -12
  38. package/dist/esm/event-bus/implementations/derivables/event-bus-factory/event-bus-factory.js.map +1 -1
  39. package/dist/types/cache/contracts/cache.errors.d.ts +7 -2
  40. package/dist/types/cache/contracts/cache.events.d.ts +7 -1
  41. package/dist/types/cache/implementations/_shared/cache.test-suite.d.ts +4 -8
  42. package/dist/types/cache/implementations/derivables/cache/cache-settings.d.ts +2 -29
  43. package/dist/types/cache/implementations/derivables/cache/cache.d.ts +5 -33
  44. package/dist/types/cache/implementations/derivables/cache-factory/cache-factory-settings.d.ts +1 -1
  45. package/dist/types/cache/implementations/derivables/cache-factory/cache-factory.d.ts +4 -5
  46. package/dist/types/event-bus/contracts/event-bus.errors.d.ts +7 -2
  47. package/dist/types/event-bus/implementations/derivables/event-bus/event-bus-settings.d.ts +1 -19
  48. package/dist/types/event-bus/implementations/derivables/event-bus/event-bus.d.ts +16 -14
  49. package/dist/types/event-bus/implementations/derivables/event-bus-factory/event-bus-factory.d.ts +30 -5
  50. package/package.json +1 -1
@@ -1,27 +1,9 @@
1
1
  import { KeyFoundCacheEvent, KeyNotFoundCacheEvent, KeyAddedCacheEvent, KeyUpdatedCacheEvent, KeyRemovedCacheEvent, KeyIncrementedCacheEvent, KeyDecrementedCacheEvent, KeysClearedCacheEvent, } from "../../../../cache/contracts/_module";
2
- import { CacheError, KeyNotFoundCacheError, TypeCacheError, UnexpectedCacheError, } from "../../../../cache/contracts/_module";
2
+ import { KeyNotFoundCacheError, TypeCacheError, UnexpectedCacheError, } from "../../../../cache/contracts/_module";
3
3
  import { isArrayEmpty, isObjectEmpty, simplifyAsyncLazyable, simplifyGroupName, } from "../../../../utilities/_module";
4
4
  import { LazyPromise } from "../../../../async/_module";
5
- import { EventBus, NoOpEventBusAdapter, } from "../../../../event-bus/implementations/_module";
6
5
  import { CacheSettingsBuilder } from "../../../../cache/implementations/derivables/cache/cache-settings";
7
- import { NoOpSerde } from "../../../../serde/implementations/_module";
8
6
  export class Cache {
9
- static errors = {
10
- Error: CacheError,
11
- Unexpected: UnexpectedCacheError,
12
- Type: TypeCacheError,
13
- KeyNotFound: KeyNotFoundCacheError,
14
- };
15
- static events = {
16
- KeyFound: KeyFoundCacheEvent,
17
- KeyNotFound: KeyNotFoundCacheEvent,
18
- KeyAdded: KeyAddedCacheEvent,
19
- KeyUpdated: KeyUpdatedCacheEvent,
20
- KeyRemoved: KeyRemovedCacheEvent,
21
- KeyIncremented: KeyIncrementedCacheEvent,
22
- KeyDecremented: KeyDecrementedCacheEvent,
23
- KeysCleared: KeysClearedCacheEvent,
24
- };
25
7
  static settings() {
26
8
  return new CacheSettingsBuilder();
27
9
  }
@@ -37,15 +19,8 @@ export class Cache {
37
19
  backoffPolicy;
38
20
  retryPolicy;
39
21
  timeout;
40
- serde;
41
- shouldRegisterErrors;
42
- shouldRegisterEvents;
43
22
  constructor(settings) {
44
- const { shouldRegisterErrors = true, shouldRegisterEvents = true, serde, adapter, eventBus: groupdEventBus = new EventBus({
45
- adapter: new NoOpEventBusAdapter(),
46
- serde: new NoOpSerde(),
47
- }), defaultTtl = null, retryAttempts = null, backoffPolicy = null, retryPolicy = Cache.defaultRetryPolicy, timeout = null, } = settings;
48
- this.serde = serde;
23
+ const { adapter, eventBus: groupdEventBus, defaultTtl = null, retryAttempts = null, backoffPolicy = null, retryPolicy = Cache.defaultRetryPolicy, timeout = null, } = settings;
49
24
  this.groupdEventBus = groupdEventBus;
50
25
  this.eventBus = groupdEventBus.withGroup(adapter.getGroup());
51
26
  this.adapter = adapter;
@@ -54,46 +29,6 @@ export class Cache {
54
29
  this.backoffPolicy = backoffPolicy;
55
30
  this.retryPolicy = retryPolicy;
56
31
  this.timeout = timeout;
57
- this.shouldRegisterErrors = shouldRegisterErrors;
58
- this.shouldRegisterEvents = shouldRegisterEvents;
59
- this.registerEvents();
60
- this.registerErrors();
61
- }
62
- registerEvents() {
63
- if (!this.shouldRegisterEvents) {
64
- return;
65
- }
66
- let array = this.serde;
67
- if (!Array.isArray(array)) {
68
- array = [array];
69
- }
70
- for (const serde of array) {
71
- serde
72
- .registerClass(KeyFoundCacheEvent)
73
- .registerClass(KeyNotFoundCacheEvent)
74
- .registerClass(KeyAddedCacheEvent)
75
- .registerClass(KeyUpdatedCacheEvent)
76
- .registerClass(KeyRemovedCacheEvent)
77
- .registerClass(KeyIncrementedCacheEvent)
78
- .registerClass(KeyDecrementedCacheEvent)
79
- .registerClass(KeysClearedCacheEvent);
80
- }
81
- }
82
- registerErrors() {
83
- if (!this.shouldRegisterErrors) {
84
- return;
85
- }
86
- let array = this.serde;
87
- if (!Array.isArray(array)) {
88
- array = [array];
89
- }
90
- for (const serde of array) {
91
- serde
92
- .registerClass(CacheError)
93
- .registerClass(UnexpectedCacheError)
94
- .registerClass(TypeCacheError)
95
- .registerClass(KeyNotFoundCacheError);
96
- }
97
32
  }
98
33
  createLayPromise(asyncFn) {
99
34
  return new LazyPromise(asyncFn)
@@ -178,7 +113,6 @@ export class Cache {
178
113
  }
179
114
  withGroup(group) {
180
115
  return new Cache({
181
- serde: this.serde,
182
116
  adapter: this.adapter.withGroup(simplifyGroupName(group)),
183
117
  defaultTtl: this.defaultTtl,
184
118
  eventBus: this.groupdEventBus,
@@ -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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"}
@@ -1,12 +1,12 @@
1
1
  import { DefaultAdapterNotDefinedError, UnregisteredAdapterError, } from "../../../../utilities/_module";
2
+ import { registerCacheErrors, registerCacheEvents, } from "../../../../cache/contracts/_module";
2
3
  import { Cache } from "../../../../cache/implementations/derivables/cache/cache";
3
4
  import { CacheFactorySettingsBuilder } from "../../../../cache/implementations/derivables/cache-factory/cache-factory-settings";
4
5
  export class CacheFactory {
5
6
  static settings() {
6
7
  return new CacheFactorySettingsBuilder();
7
8
  }
8
- caches = {};
9
- adapters;
9
+ cacheRecord = {};
10
10
  defaultAdapter;
11
11
  eventBus;
12
12
  defaultTtl;
@@ -18,11 +18,10 @@ export class CacheFactory {
18
18
  shouldRegisterErrors;
19
19
  shouldRegisterEvents;
20
20
  constructor(settings) {
21
- const { shouldRegisterErrors, shouldRegisterEvents, serde, adapters, defaultAdapter, eventBus, defaultTtl = null, retryAttempts, backoffPolicy, retryPolicy, timeout, } = settings;
21
+ const { shouldRegisterErrors = true, shouldRegisterEvents = true, serde, adapters, defaultAdapter, eventBus, defaultTtl = null, retryAttempts, backoffPolicy, retryPolicy, timeout, } = settings;
22
22
  this.shouldRegisterErrors = shouldRegisterErrors;
23
23
  this.shouldRegisterEvents = shouldRegisterEvents;
24
24
  this.serde = serde;
25
- this.adapters = adapters;
26
25
  this.defaultAdapter = defaultAdapter;
27
26
  this.eventBus = eventBus;
28
27
  this.defaultTtl = defaultTtl;
@@ -30,33 +29,38 @@ export class CacheFactory {
30
29
  this.backoffPolicy = backoffPolicy;
31
30
  this.retryPolicy = retryPolicy;
32
31
  this.timeout = timeout;
33
- this.initCaches();
32
+ this.cacheRecord = this.init(adapters);
34
33
  }
35
- initCaches() {
36
- for (const key in this.adapters) {
37
- const { [key]: adapter } = this.adapters;
34
+ init(adapters) {
35
+ if (this.shouldRegisterErrors) {
36
+ registerCacheErrors(this.serde);
37
+ }
38
+ if (this.shouldRegisterEvents) {
39
+ registerCacheEvents(this.serde);
40
+ }
41
+ const cacheRecord = {};
42
+ for (const key in adapters) {
43
+ const { [key]: adapter } = adapters;
38
44
  if (adapter === undefined) {
39
45
  continue;
40
46
  }
41
- this.caches[key] = new Cache({
47
+ cacheRecord[key] = new Cache({
42
48
  adapter,
43
- serde: this.serde,
44
49
  eventBus: this.eventBus,
45
50
  defaultTtl: this.defaultTtl,
46
51
  retryAttempts: this.retryAttempts,
47
52
  backoffPolicy: this.backoffPolicy,
48
53
  retryPolicy: this.retryPolicy,
49
54
  timeout: this.timeout,
50
- shouldRegisterErrors: this.shouldRegisterErrors,
51
- shouldRegisterEvents: this.shouldRegisterEvents,
52
55
  });
53
56
  }
57
+ return cacheRecord;
54
58
  }
55
59
  use(adapterName = this.defaultAdapter) {
56
60
  if (adapterName === undefined) {
57
61
  throw new DefaultAdapterNotDefinedError(CacheFactory.name);
58
62
  }
59
- const cache = this.caches[adapterName];
63
+ const cache = this.cacheRecord[adapterName];
60
64
  if (cache === undefined) {
61
65
  throw new UnregisteredAdapterError(adapterName);
62
66
  }
@@ -1 +1 @@
1
- {"version":3,"file":"cache-factory.js","sourceRoot":"","sources":["../../../../../../src/cache/implementations/derivables/cache-factory/cache-factory.ts"],"names":[],"mappings":"AAIA,OAAO,EACH,6BAA6B,EAC7B,wBAAwB,GAC3B,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAAE,KAAK,EAAE,MAAM,gDAAgD,CAAC;AAOvE,OAAO,EAAE,2BAA2B,EAAE,MAAM,yEAAyE,CAAC;AActH,MAAM,OAAO,YAAY;IA2BrB,MAAM,CAAC,QAAQ;QAIX,OAAO,IAAI,2BAA2B,EAAE,CAAC;IAC7C,CAAC;IAEgB,MAAM,GAAG,EAAuB,CAAC;IACjC,QAAQ,CAA2B;IACnC,cAAc,CAAa;IAC3B,QAAQ,CAA2B;IACnC,UAAU,CAAkB;IAC5B,aAAa,CAAiB;IAC9B,aAAa,CAAwB;IACrC,WAAW,CAAsB;IACjC,OAAO,CAAmB;IAC1B,KAAK,CAA4B;IACjC,oBAAoB,CAAW;IAC/B,oBAAoB,CAAW;IA6BhD,YAAY,QAAyC;QACjD,MAAM,EACF,oBAAoB,EACpB,oBAAoB,EACpB,KAAK,EACL,QAAQ,EACR,cAAc,EACd,QAAQ,EACR,UAAU,GAAG,IAAI,EACjB,aAAa,EACb,aAAa,EACb,WAAW,EACX,OAAO,GACV,GAAG,QAAQ,CAAC;QAEb,IAAI,CAAC,oBAAoB,GAAG,oBAAoB,CAAC;QACjD,IAAI,CAAC,oBAAoB,GAAG,oBAAoB,CAAC;QACjD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,UAAU,EAAE,CAAC;IACtB,CAAC;IAEO,UAAU;QACd,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC9B,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC;YACzC,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;gBACxB,SAAS;YACb,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,KAAK,CAAM;gBAC9B,OAAO;gBACP,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,aAAa,EAAE,IAAI,CAAC,aAAa;gBACjC,aAAa,EAAE,IAAI,CAAC,aAAa;gBACjC,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,oBAAoB,EAAE,IAAI,CAAC,oBAAoB;gBAC/C,oBAAoB,EAAE,IAAI,CAAC,oBAAoB;aAClD,CAAC,CAAC;QACP,CAAC;IACL,CAAC;IAED,GAAG,CACC,cAAqC,IAAI,CAAC,cAAc;QAExD,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC5B,MAAM,IAAI,6BAA6B,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAC/D,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QACvC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACtB,MAAM,IAAI,wBAAwB,CAAC,WAAW,CAAC,CAAC;QACpD,CAAC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;CACJ"}
1
+ {"version":3,"file":"cache-factory.js","sourceRoot":"","sources":["../../../../../../src/cache/implementations/derivables/cache-factory/cache-factory.ts"],"names":[],"mappings":"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"}
@@ -47,4 +47,17 @@ export class UnableToDispatchEventBusError extends UnexpectedEventBusError {
47
47
  this.name = UnableToDispatchEventBusError.name;
48
48
  }
49
49
  }
50
+ export function registerEventBusErrors(serde) {
51
+ if (!Array.isArray(serde)) {
52
+ serde = [serde];
53
+ }
54
+ for (const serde_ of serde) {
55
+ serde_
56
+ .registerClass(EventBusError)
57
+ .registerClass(UnexpectedEventBusError)
58
+ .registerClass(UnableToRemoveListenerEventBusError)
59
+ .registerClass(UnableToAddListenerEventBusError)
60
+ .registerClass(UnableToDispatchEventBusError);
61
+ }
62
+ }
50
63
  //# sourceMappingURL=event-bus.errors.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"event-bus.errors.js","sourceRoot":"","sources":["../../../../src/event-bus/contracts/event-bus.errors.ts"],"names":[],"mappings":"AAUA,MAAM,OAAO,aACT,SAAQ,KAAK;IAGb,MAAM,CAAC,WAAW,CAAC,iBAAmC;QAClD,OAAO,IAAI,aAAa,CACpB,iBAAiB,CAAC,OAAO,EACzB,iBAAiB,CAAC,KAAK,CAC1B,CAAC;IACN,CAAC;IAED,YAAY,OAAe,EAAE,KAAe;QACxC,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC;IACnC,CAAC;IAED,SAAS;QACL,OAAO;YACH,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,KAAK,EAAE,IAAI,CAAC,KAAK;SACpB,CAAC;IACN,CAAC;CACJ;AAKD,MAAM,OAAO,uBAAwB,SAAQ,aAAa;IACtD,MAAM,CAAU,WAAW,CACvB,iBAAmC;QAEnC,OAAO,IAAI,uBAAuB,CAC9B,iBAAiB,CAAC,OAAO,EACzB,iBAAiB,CAAC,KAAK,CAC1B,CAAC;IACN,CAAC;IAED,YAAY,OAAe,EAAE,KAAe;QACxC,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,uBAAuB,CAAC,IAAI,CAAC;IAC7C,CAAC;CACJ;AAKD,MAAM,OAAO,mCAAoC,SAAQ,uBAAuB;IAC5E,MAAM,CAAU,WAAW,CACvB,iBAAmC;QAEnC,OAAO,IAAI,mCAAmC,CAC1C,iBAAiB,CAAC,OAAO,EACzB,iBAAiB,CAAC,KAAK,CAC1B,CAAC;IACN,CAAC;IAED,YAAY,OAAe,EAAE,KAAe;QACxC,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,mCAAmC,CAAC,IAAI,CAAC;IACzD,CAAC;CACJ;AAKD,MAAM,OAAO,gCAAiC,SAAQ,uBAAuB;IACzE,MAAM,CAAU,WAAW,CACvB,iBAAmC;QAEnC,OAAO,IAAI,gCAAgC,CACvC,iBAAiB,CAAC,OAAO,EACzB,iBAAiB,CAAC,KAAK,CAC1B,CAAC;IACN,CAAC;IAED,YAAY,OAAe,EAAE,KAAe;QACxC,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,gCAAgC,CAAC,IAAI,CAAC;IACtD,CAAC;CACJ;AAKD,MAAM,OAAO,6BAA8B,SAAQ,uBAAuB;IACtE,YAAY,OAAe,EAAE,KAAe;QACxC,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,6BAA6B,CAAC,IAAI,CAAC;IACnD,CAAC;CACJ"}
1
+ {"version":3,"file":"event-bus.errors.js","sourceRoot":"","sources":["../../../../src/event-bus/contracts/event-bus.errors.ts"],"names":[],"mappings":"AAYA,MAAM,OAAO,aACT,SAAQ,KAAK;IAGb,MAAM,CAAC,WAAW,CAAC,iBAAmC;QAClD,OAAO,IAAI,aAAa,CACpB,iBAAiB,CAAC,OAAO,EACzB,iBAAiB,CAAC,KAAK,CAC1B,CAAC;IACN,CAAC;IAED,YAAY,OAAe,EAAE,KAAe;QACxC,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC;IACnC,CAAC;IAED,SAAS;QACL,OAAO;YACH,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,KAAK,EAAE,IAAI,CAAC,KAAK;SACpB,CAAC;IACN,CAAC;CACJ;AAKD,MAAM,OAAO,uBAAwB,SAAQ,aAAa;IACtD,MAAM,CAAU,WAAW,CACvB,iBAAmC;QAEnC,OAAO,IAAI,uBAAuB,CAC9B,iBAAiB,CAAC,OAAO,EACzB,iBAAiB,CAAC,KAAK,CAC1B,CAAC;IACN,CAAC;IAED,YAAY,OAAe,EAAE,KAAe;QACxC,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,uBAAuB,CAAC,IAAI,CAAC;IAC7C,CAAC;CACJ;AAKD,MAAM,OAAO,mCAAoC,SAAQ,uBAAuB;IAC5E,MAAM,CAAU,WAAW,CACvB,iBAAmC;QAEnC,OAAO,IAAI,mCAAmC,CAC1C,iBAAiB,CAAC,OAAO,EACzB,iBAAiB,CAAC,KAAK,CAC1B,CAAC;IACN,CAAC;IAED,YAAY,OAAe,EAAE,KAAe;QACxC,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,mCAAmC,CAAC,IAAI,CAAC;IACzD,CAAC;CACJ;AAKD,MAAM,OAAO,gCAAiC,SAAQ,uBAAuB;IACzE,MAAM,CAAU,WAAW,CACvB,iBAAmC;QAEnC,OAAO,IAAI,gCAAgC,CACvC,iBAAiB,CAAC,OAAO,EACzB,iBAAiB,CAAC,KAAK,CAC1B,CAAC;IACN,CAAC;IAED,YAAY,OAAe,EAAE,KAAe;QACxC,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,gCAAgC,CAAC,IAAI,CAAC;IACtD,CAAC;CACJ;AAKD,MAAM,OAAO,6BAA8B,SAAQ,uBAAuB;IACtE,YAAY,OAAe,EAAE,KAAe;QACxC,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,6BAA6B,CAAC,IAAI,CAAC;IACnD,CAAC;CACJ;AAMD,MAAM,UAAU,sBAAsB,CAAC,KAAgC;IACnE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACxB,KAAK,GAAG,CAAC,KAAK,CAAC,CAAC;IACpB,CAAC;IACD,KAAK,MAAM,MAAM,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM;aACD,aAAa,CAAC,aAAa,CAAC;aAC5B,aAAa,CAAC,uBAAuB,CAAC;aACtC,aAAa,CAAC,mCAAmC,CAAC;aAClD,aAAa,CAAC,gCAAgC,CAAC;aAC/C,aAAa,CAAC,6BAA6B,CAAC,CAAC;IACtD,CAAC;AACL,CAAC"}
@@ -3,18 +3,6 @@ export class EventBusSettingsBuilder {
3
3
  constructor(settings = {}) {
4
4
  this.settings = settings;
5
5
  }
6
- setShouldRegisterErrors(shouldRegisterErrors) {
7
- return new EventBusSettingsBuilder({
8
- ...this.settings,
9
- shouldRegisterErrors,
10
- });
11
- }
12
- setSerde(serde) {
13
- return new EventBusSettingsBuilder({
14
- ...this.settings,
15
- serde,
16
- });
17
- }
18
6
  setAdapter(adapter) {
19
7
  return new EventBusSettingsBuilder({
20
8
  ...this.settings,
@@ -1 +1 @@
1
- {"version":3,"file":"event-bus-settings.js","sourceRoot":"","sources":["../../../../../../src/event-bus/implementations/derivables/event-bus/event-bus-settings.ts"],"names":[],"mappings":"AA6DA,MAAM,OAAO,uBAAuB;IAIH;IAA7B,YAA6B,WAAsB,EAAe;QAArC,aAAQ,GAAR,QAAQ,CAA6B;IAAG,CAAC;IAGtE,uBAAuB,CAAC,oBAA6B;QACjD,OAAO,IAAI,uBAAuB,CAAC;YAC/B,GAAG,IAAI,CAAC,QAAQ;YAChB,oBAAoB;SACvB,CAAC,CAAC;IACP,CAAC;IAGD,QAAQ,CAAC,KAAgC;QACrC,OAAO,IAAI,uBAAuB,CAAC;YAC/B,GAAG,IAAI,CAAC,QAAQ;YAChB,KAAK;SACR,CAAC,CAAC;IACP,CAAC;IAGD,UAAU,CAAC,OAAyB;QAChC,OAAO,IAAI,uBAAuB,CAAC;YAC/B,GAAG,IAAI,CAAC,QAAQ;YAChB,OAAO;SACV,CAAC,CAAC;IACP,CAAC;IAGD,WAAW,CAAC,QAAiC;QACzC,OAAO,IAAI,uBAAuB,CAAC;YAC/B,GAAG,IAAI,CAAC,QAAQ;YAChB,QAAQ;SACX,CAAC,CAAC;IACP,CAAC;IAGD,YAAY,CAAC,IAAc;QACvB,OAAO,IAAI,uBAAuB,CAAC;YAC/B,GAAG,IAAI,CAAC,QAAQ;YAChB,UAAU,EAAE,IAAI;SACnB,CAAC,CAAC;IACP,CAAC;IAGD,gBAAgB,CAAC,QAAuB;QACpC,OAAO,IAAI,uBAAuB,CAAC;YAC/B,GAAG,IAAI,CAAC,QAAQ;YAChB,aAAa,EAAE,QAAQ;SAC1B,CAAC,CAAC;IACP,CAAC;IAGD,gBAAgB,CAAC,MAA4B;QACzC,OAAO,IAAI,uBAAuB,CAAC;YAC/B,GAAG,IAAI,CAAC,QAAQ;YAChB,aAAa,EAAE,MAAM;SACxB,CAAC,CAAC;IACP,CAAC;IAGD,cAAc,CAAC,MAA0B;QACrC,OAAO,IAAI,uBAAuB,CAAC;YAC/B,GAAG,IAAI,CAAC,QAAQ;YAChB,WAAW,EAAE,MAAM;SACtB,CAAC,CAAC;IACP,CAAC;IAGD,UAAU,CAAC,IAAqB;QAC5B,OAAO,IAAI,uBAAuB,CAAC;YAC/B,GAAG,IAAI,CAAC,QAAQ;YAChB,OAAO,EAAE,IAAI;SAChB,CAAC,CAAC;IACP,CAAC;IAED,KAAK;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;CACJ"}
1
+ {"version":3,"file":"event-bus-settings.js","sourceRoot":"","sources":["../../../../../../src/event-bus/implementations/derivables/event-bus/event-bus-settings.ts"],"names":[],"mappings":"AA+CA,MAAM,OAAO,uBAAuB;IAIH;IAA7B,YAA6B,WAAsB,EAAe;QAArC,aAAQ,GAAR,QAAQ,CAA6B;IAAG,CAAC;IAGtE,UAAU,CAAC,OAAyB;QAChC,OAAO,IAAI,uBAAuB,CAAC;YAC/B,GAAG,IAAI,CAAC,QAAQ;YAChB,OAAO;SACV,CAAC,CAAC;IACP,CAAC;IAGD,WAAW,CAAC,QAAiC;QACzC,OAAO,IAAI,uBAAuB,CAAC;YAC/B,GAAG,IAAI,CAAC,QAAQ;YAChB,QAAQ;SACX,CAAC,CAAC;IACP,CAAC;IAGD,YAAY,CAAC,IAAc;QACvB,OAAO,IAAI,uBAAuB,CAAC;YAC/B,GAAG,IAAI,CAAC,QAAQ;YAChB,UAAU,EAAE,IAAI;SACnB,CAAC,CAAC;IACP,CAAC;IAGD,gBAAgB,CAAC,QAAuB;QACpC,OAAO,IAAI,uBAAuB,CAAC;YAC/B,GAAG,IAAI,CAAC,QAAQ;YAChB,aAAa,EAAE,QAAQ;SAC1B,CAAC,CAAC;IACP,CAAC;IAGD,gBAAgB,CAAC,MAA4B;QACzC,OAAO,IAAI,uBAAuB,CAAC;YAC/B,GAAG,IAAI,CAAC,QAAQ;YAChB,aAAa,EAAE,MAAM;SACxB,CAAC,CAAC;IACP,CAAC;IAGD,cAAc,CAAC,MAA0B;QACrC,OAAO,IAAI,uBAAuB,CAAC;YAC/B,GAAG,IAAI,CAAC,QAAQ;YAChB,WAAW,EAAE,MAAM;SACtB,CAAC,CAAC;IACP,CAAC;IAGD,UAAU,CAAC,IAAqB;QAC5B,OAAO,IAAI,uBAAuB,CAAC;YAC/B,GAAG,IAAI,CAAC,QAAQ;YAChB,OAAO,EAAE,IAAI;SAChB,CAAC,CAAC;IACP,CAAC;IAED,KAAK;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;CACJ"}
@@ -1,50 +1,23 @@
1
1
  import { LazyPromise } from "../../../../async/_module";
2
- import { UnableToDispatchEventBusError, UnableToRemoveListenerEventBusError, UnableToAddListenerEventBusError, UnexpectedEventBusError, EventBusError, } from "../../../../event-bus/contracts/_module";
2
+ import { UnableToDispatchEventBusError, UnableToRemoveListenerEventBusError, UnableToAddListenerEventBusError, } from "../../../../event-bus/contracts/_module";
3
3
  import { getConstructorName, isArrayEmpty, simplifyGroupName, } from "../../../../utilities/_module";
4
4
  import { EventBusSettingsBuilder } from "../../../../event-bus/implementations/derivables/event-bus/event-bus-settings";
5
5
  export class EventBus {
6
- static errors = {
7
- Error: EventBusError,
8
- Unexpected: UnexpectedEventBusError,
9
- RemoveListener: UnableToRemoveListenerEventBusError,
10
- AddListener: UnableToAddListenerEventBusError,
11
- };
12
6
  static settings() {
13
7
  return new EventBusSettingsBuilder();
14
8
  }
15
- serde;
16
9
  adapter;
17
10
  retryAttempts;
18
11
  backoffPolicy;
19
12
  retryPolicy;
20
13
  timeout;
21
- shouldRegisterErrors;
22
14
  constructor(settings) {
23
- const { serde, adapter, retryAttempts = null, backoffPolicy = null, retryPolicy = null, timeout = null, shouldRegisterErrors = false, } = settings;
24
- this.shouldRegisterErrors = shouldRegisterErrors;
25
- this.serde = serde;
15
+ const { adapter, retryAttempts = null, backoffPolicy = null, retryPolicy = null, timeout = null, } = settings;
26
16
  this.retryAttempts = retryAttempts;
27
17
  this.backoffPolicy = backoffPolicy;
28
18
  this.retryPolicy = retryPolicy;
29
19
  this.timeout = timeout;
30
20
  this.adapter = adapter;
31
- this.registerErrors();
32
- }
33
- registerErrors() {
34
- if (!this.shouldRegisterErrors) {
35
- return;
36
- }
37
- let array = this.serde;
38
- if (!Array.isArray(array)) {
39
- array = [array];
40
- }
41
- for (const serde of array) {
42
- serde
43
- .registerClass(EventBusError)
44
- .registerClass(UnexpectedEventBusError)
45
- .registerClass(UnableToRemoveListenerEventBusError)
46
- .registerClass(UnableToAddListenerEventBusError);
47
- }
48
21
  }
49
22
  createLayPromise(asyncFn) {
50
23
  return new LazyPromise(asyncFn)
@@ -55,7 +28,6 @@ export class EventBus {
55
28
  }
56
29
  withGroup(group) {
57
30
  return new EventBus({
58
- serde: this.serde,
59
31
  adapter: this.adapter.withGroup(simplifyGroupName(group)),
60
32
  retryAttempts: this.retryAttempts,
61
33
  backoffPolicy: this.backoffPolicy,
@@ -1 +1 @@
1
- {"version":3,"file":"event-bus.js","sourceRoot":"","sources":["../../../../../../src/event-bus/implementations/derivables/event-bus/event-bus.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAM9C,OAAO,EAMH,6BAA6B,EAC7B,mCAAmC,EACnC,gCAAgC,EAChC,uBAAuB,EACvB,aAAa,GAChB,MAAM,+BAA+B,CAAC;AAGvC,OAAO,EACH,kBAAkB,EAClB,YAAY,EACZ,iBAAiB,GACpB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,uBAAuB,EAAE,MAAM,qEAAqE,CAAC;AAO9G,MAAM,OAAO,QAAQ;IAGjB,MAAM,CAAU,MAAM,GAAG;QACrB,KAAK,EAAE,aAAa;QACpB,UAAU,EAAE,uBAAuB;QACnC,cAAc,EAAE,mCAAmC;QACnD,WAAW,EAAE,gCAAgC;KACvC,CAAC;IAeX,MAAM,CAAC,QAAQ;QAGX,OAAO,IAAI,uBAAuB,EAAE,CAAC;IACzC,CAAC;IAEgB,KAAK,CAA4B;IACjC,OAAO,CAAmB;IAC1B,aAAa,CAAgB;IAC7B,aAAa,CAAuB;IACpC,WAAW,CAAqB;IAChC,OAAO,CAAkB;IACzB,oBAAoB,CAAU;IAE/C,YAAY,QAA0B;QAClC,MAAM,EACF,KAAK,EACL,OAAO,EACP,aAAa,GAAG,IAAI,EACpB,aAAa,GAAG,IAAI,EACpB,WAAW,GAAG,IAAI,EAClB,OAAO,GAAG,IAAI,EACd,oBAAoB,GAAG,KAAK,GAC/B,GAAG,QAAQ,CAAC;QACb,IAAI,CAAC,oBAAoB,GAAG,oBAAoB,CAAC;QACjD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,cAAc,EAAE,CAAC;IAC1B,CAAC;IAKO,cAAc;QAClB,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC7B,OAAO;QACX,CAAC;QACD,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACvB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACxB,KAAK,GAAG,CAAC,KAAK,CAAC,CAAC;QACpB,CAAC;QACD,KAAK,MAAM,KAAK,IAAI,KAAK,EAAE,CAAC;YACxB,KAAK;iBACA,aAAa,CAAC,aAAa,CAAC;iBAC5B,aAAa,CAAC,uBAAuB,CAAC;iBACtC,aAAa,CAAC,mCAAmC,CAAC;iBAClD,aAAa,CAAC,gCAAgC,CAAC,CAAC;QACzD,CAAC;IACL,CAAC;IAEO,gBAAgB,CACpB,OAAkC;QAElC,OAAO,IAAI,WAAW,CAAC,OAAO,CAAC;aAC1B,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC;aACpC,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC;aACpC,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC;aAChC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAClC,CAAC;IAED,SAAS,CAAC,KAAwB;QAC9B,OAAO,IAAI,QAAQ,CAAC;YAChB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;YACzD,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,OAAO,EAAE,IAAI,CAAC,OAAO;SACxB,CAAC,CAAC;IACP,CAAC;IAED,QAAQ;QACJ,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;IACnC,CAAC;IAED,WAAW,CACP,KAAkB,EAClB,QAA8C;QAE9C,OAAO,IAAI,CAAC,gBAAgB,CAAC,KAAK,IAAI,EAAE;YACpC,IAAI,CAAC;gBACD,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAC1B,KAAK,CAAC,IAAI,EACV,QAA+B,CAClC,CAAC;YACN,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACtB,MAAM,IAAI,gCAAgC,CACtC,4BAA4B,QAAQ,CAAC,IAAI,0BAA0B,MAAM,CAAC,KAAK,CAAC,SAAS,EACzF,KAAK,CACR,CAAC;YACN,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAED,cAAc,CACV,KAAkB,EAClB,QAA8C;QAE9C,OAAO,IAAI,CAAC,gBAAgB,CAAC,KAAK,IAAI,EAAE;YACpC,IAAI,CAAC;gBACD,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,CAC7B,KAAK,CAAC,IAAI,EACV,QAA+B,CAClC,CAAC;YACN,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACtB,MAAM,IAAI,mCAAmC,CACzC,4BAA4B,QAAQ,CAAC,IAAI,2BAA2B,MAAM,CAAC,KAAK,CAAC,SAAS,EAC1F,KAAK,CACR,CAAC;YACN,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAED,eAAe,CACX,MAAqB,EACrB,QAA8C;QAE9C,OAAO,IAAI,CAAC,gBAAgB,CAAC,KAAK,IAAI,EAAE;YACpC,IAAI,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC;gBACvB,OAAO;YACX,CAAC;YACD,MAAM,QAAQ,GAAwB,EAAE,CAAC;YACzC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBACzB,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;YACrD,CAAC;YACD,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;IACP,CAAC;IAED,kBAAkB,CACd,MAAqB,EACrB,QAA8C;QAE9C,OAAO,IAAI,CAAC,gBAAgB,CAAC,KAAK,IAAI,EAAE;YACpC,IAAI,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC;gBACvB,OAAO;YACX,CAAC;YACD,MAAM,QAAQ,GAAwB,EAAE,CAAC;YACzC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBACzB,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;YACxD,CAAC;YACD,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;IACP,CAAC;IAED,UAAU,CACN,KAAkB,EAClB,QAA8C;QAE9C,OAAO,IAAI,CAAC,gBAAgB,CAAC,KAAK,IAAI,EAAE;YACpC,MAAM,eAAe,GAAG,KAAK,EACzB,MAAkC,EACpC,EAAE;gBACA,IAAI,CAAC;oBACD,MAAM,QAAQ,CAAC,MAAM,CAAC,CAAC;gBAC3B,CAAC;wBAAS,CAAC;oBACP,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC;gBACtD,CAAC;YACL,CAAC,CAAC;YACF,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC;QACnD,CAAC,CAAC,CAAC;IACP,CAAC;IAED,SAAS,CACL,KAAkB,EAClB,QAA8C;QAE9C,OAAO,IAAI,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,CAAC;IACjD,CAAC;IAED,aAAa,CACT,MAAqB,EACrB,QAA8C;QAE9C,OAAO,IAAI,CAAC,gBAAgB,CAAC,KAAK,IAAI,EAAE;YACpC,MAAM,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YAC7C,MAAM,WAAW,GAAG,GAAG,EAAE;gBACrB,OAAO,IAAI,CAAC,gBAAgB,CAAC,KAAK,IAAI,EAAE;oBACpC,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;gBACpD,CAAC,CAAC,CAAC;YACP,CAAC,CAAC;YACF,OAAO,WAAW,CAAC;QACvB,CAAC,CAAC,CAAC;IACP,CAAC;IAED,YAAY,CAAC,MAAiB;QAC1B,OAAO,IAAI,CAAC,gBAAgB,CAAC,KAAK,IAAI,EAAE;YACpC,IAAI,CAAC;gBACD,MAAM,QAAQ,GAAwB,EAAE,CAAC;gBACzC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;oBACzB,QAAQ,CAAC,IAAI,CACT,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAC1D,CAAC;gBACN,CAAC;gBACD,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAChC,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACtB,MAAM,IAAI,6BAA6B,CACnC,oBAAoB,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,2BAA2B,EAC1G,KAAK,CACR,CAAC;YACN,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAED,QAAQ,CAAC,KAAc;QACnB,OAAO,IAAI,CAAC,gBAAgB,CAAC,KAAK,IAAI,EAAE;YACpC,IAAI,CAAC;gBACD,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC;YAClE,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACtB,MAAM,IAAI,6BAA6B,CACnC,kBAAkB,MAAM,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,2BAA2B,EAC9E,KAAK,CACR,CAAC;YACN,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC"}
1
+ {"version":3,"file":"event-bus.js","sourceRoot":"","sources":["../../../../../../src/event-bus/implementations/derivables/event-bus/event-bus.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { registerEventBusErrors, } from "../../../../event-bus/contracts/_module";
1
2
  import { EventBus } from "../../../../event-bus/implementations/derivables/event-bus/event-bus";
2
3
  import { DefaultAdapterNotDefinedError, UnregisteredAdapterError, } from "../../../../utilities/_module";
3
4
  import { EventBusFactorySettingsBuilder, } from "../../../../event-bus/implementations/derivables/event-bus-factory/event-bus-factory-settings";
@@ -5,9 +6,8 @@ export class EventBusFactory {
5
6
  static settings() {
6
7
  return new EventBusFactorySettingsBuilder();
7
8
  }
8
- eventBuses = {};
9
+ eventBusRecord = {};
9
10
  serde;
10
- adapters;
11
11
  defaultAdapter;
12
12
  retryAttempts;
13
13
  backoffPolicy;
@@ -15,39 +15,41 @@ export class EventBusFactory {
15
15
  timeout;
16
16
  shouldRegisterErrors;
17
17
  constructor(settings) {
18
- const { shouldRegisterErrors, serde, adapters, defaultAdapter, retryAttempts, backoffPolicy, retryPolicy, timeout, } = settings;
18
+ const { adapters, shouldRegisterErrors = true, serde, defaultAdapter, retryAttempts, backoffPolicy, retryPolicy, timeout, } = settings;
19
19
  this.shouldRegisterErrors = shouldRegisterErrors;
20
20
  this.serde = serde;
21
21
  this.retryAttempts = retryAttempts;
22
22
  this.backoffPolicy = backoffPolicy;
23
23
  this.retryPolicy = retryPolicy;
24
24
  this.timeout = timeout;
25
- this.adapters = adapters;
26
25
  this.defaultAdapter = defaultAdapter;
27
- this.initCaches();
26
+ this.eventBusRecord = this.init(adapters);
28
27
  }
29
- initCaches() {
30
- for (const key in this.adapters) {
31
- const { [key]: adapter } = this.adapters;
28
+ init(adapters) {
29
+ if (this.shouldRegisterErrors) {
30
+ registerEventBusErrors(this.serde);
31
+ }
32
+ const eventBusRecord = {};
33
+ for (const key in adapters) {
34
+ const { [key]: adapter } = adapters;
32
35
  if (adapter === undefined) {
33
36
  continue;
34
37
  }
35
- this.eventBuses[key] = new EventBus({
36
- serde: this.serde,
38
+ eventBusRecord[key] = new EventBus({
37
39
  adapter,
38
40
  retryAttempts: this.retryAttempts,
39
41
  backoffPolicy: this.backoffPolicy,
40
42
  retryPolicy: this.retryPolicy,
41
43
  timeout: this.timeout,
42
- shouldRegisterErrors: this.shouldRegisterErrors,
43
44
  });
44
45
  }
46
+ return eventBusRecord;
45
47
  }
46
48
  use(adapterName = this.defaultAdapter) {
47
49
  if (adapterName === undefined) {
48
50
  throw new DefaultAdapterNotDefinedError(EventBusFactory.name);
49
51
  }
50
- const eventBus = this.eventBuses[adapterName];
52
+ const eventBus = this.eventBusRecord[adapterName];
51
53
  if (eventBus === undefined) {
52
54
  throw new UnregisteredAdapterError(adapterName);
53
55
  }
@@ -1 +1 @@
1
- {"version":3,"file":"event-bus-factory.js","sourceRoot":"","sources":["../../../../../../src/event-bus/implementations/derivables/event-bus-factory/event-bus-factory.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,QAAQ,EAAE,MAAM,4DAA4D,CAAC;AAEtF,OAAO,EACH,6BAA6B,EAC7B,wBAAwB,GAC3B,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAEH,8BAA8B,GACjC,MAAM,qFAAqF,CAAC;AAgC7F,MAAM,OAAO,eAAe;IA0BxB,MAAM,CAAC,QAAQ;QAIX,OAAO,IAAI,8BAA8B,EAAE,CAAC;IAChD,CAAC;IAEgB,UAAU,GAAG,EAA2B,CAAC;IACzC,KAAK,CAA4B;IACjC,QAAQ,CAA8B;IACtC,cAAc,CAAa;IAC3B,aAAa,CAAiB;IAC9B,aAAa,CAAwB;IACrC,WAAW,CAAsB;IACjC,OAAO,CAAmB;IAC1B,oBAAoB,CAAW;IAEhD,YAAY,QAA4C;QACpD,MAAM,EACF,oBAAoB,EACpB,KAAK,EACL,QAAQ,EACR,cAAc,EACd,aAAa,EACb,aAAa,EACb,WAAW,EACX,OAAO,GACV,GAAG,QAAQ,CAAC;QACb,IAAI,CAAC,oBAAoB,GAAG,oBAAoB,CAAC;QACjD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,UAAU,EAAE,CAAC;IACtB,CAAC;IAEO,UAAU;QACd,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC9B,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC;YACzC,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;gBACxB,SAAS;YACb,CAAC;YACD,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,IAAI,QAAQ,CAAC;gBAChC,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,OAAO;gBACP,aAAa,EAAE,IAAI,CAAC,aAAa;gBACjC,aAAa,EAAE,IAAI,CAAC,aAAa;gBACjC,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,oBAAoB,EAAE,IAAI,CAAC,oBAAoB;aAClD,CAAC,CAAC;QACP,CAAC;IACL,CAAC;IAED,GAAG,CACC,cAAqC,IAAI,CAAC,cAAc;QAExD,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC5B,MAAM,IAAI,6BAA6B,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QAClE,CAAC;QACD,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAC9C,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,IAAI,wBAAwB,CAAC,WAAW,CAAC,CAAC;QACpD,CAAC;QACD,OAAO,QAAQ,CAAC;IACpB,CAAC;CACJ"}
1
+ {"version":3,"file":"event-bus-factory.js","sourceRoot":"","sources":["../../../../../../src/event-bus/implementations/derivables/event-bus-factory/event-bus-factory.ts"],"names":[],"mappings":"AAKA,OAAO,EAIH,sBAAsB,GACzB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,4DAA4D,CAAC;AAEtF,OAAO,EACH,6BAA6B,EAC7B,wBAAwB,GAC3B,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAEH,8BAA8B,GACjC,MAAM,qFAAqF,CAAC;AAiC7F,MAAM,OAAO,eAAe;IA4BxB,MAAM,CAAC,QAAQ;QAIX,OAAO,IAAI,8BAA8B,EAAE,CAAC;IAChD,CAAC;IAEgB,cAAc,GAAG,EAA+B,CAAC;IACjD,KAAK,CAA4B;IACjC,cAAc,CAAa;IAC3B,aAAa,CAAiB;IAC9B,aAAa,CAAwB;IACrC,WAAW,CAAsB;IACjC,OAAO,CAAmB;IAC1B,oBAAoB,CAAW;IAyBhD,YAAY,QAA4C;QACpD,MAAM,EACF,QAAQ,EACR,oBAAoB,GAAG,IAAI,EAC3B,KAAK,EACL,cAAc,EACd,aAAa,EACb,aAAa,EACb,WAAW,EACX,OAAO,GACV,GAAG,QAAQ,CAAC;QACb,IAAI,CAAC,oBAAoB,GAAG,oBAAoB,CAAC;QACjD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC9C,CAAC;IAEO,IAAI,CACR,QAAqC;QAErC,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC5B,sBAAsB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvC,CAAC;QACD,MAAM,cAAc,GAA8B,EAAE,CAAC;QACrD,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;YACzB,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,GAAG,QAAQ,CAAC;YACpC,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;gBACxB,SAAS;YACb,CAAC;YACD,cAAc,CAAC,GAAG,CAAC,GAAG,IAAI,QAAQ,CAAC;gBAC/B,OAAO;gBACP,aAAa,EAAE,IAAI,CAAC,aAAa;gBACjC,aAAa,EAAE,IAAI,CAAC,aAAa;gBACjC,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,OAAO,EAAE,IAAI,CAAC,OAAO;aACxB,CAAC,CAAC;QACP,CAAC;QACD,OAAO,cAAc,CAAC;IAC1B,CAAC;IAED,GAAG,CACC,cAAqC,IAAI,CAAC,cAAc;QAExD,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC5B,MAAM,IAAI,6BAA6B,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QAClE,CAAC;QACD,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QAClD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,IAAI,wBAAwB,CAAC,WAAW,CAAC,CAAC;QACpD,CAAC;QACD,OAAO,QAAQ,CAAC;IACpB,CAAC;CACJ"}
@@ -1,8 +1,8 @@
1
1
  /**
2
2
  * @module Cache
3
3
  */
4
- import type { ISerializable } from "../../serde/contracts/_module";
5
- import type { ISerializedError } from "../../utilities/_module";
4
+ import type { IFlexibleSerde, ISerializable } from "../../serde/contracts/_module";
5
+ import type { ISerializedError, OneOrMore } from "../../utilities/_module";
6
6
  /**
7
7
  * @group Errors
8
8
  */
@@ -32,3 +32,8 @@ export declare class KeyNotFoundCacheError extends CacheError implements ISerial
32
32
  static deserialize(deserializedValue: ISerializedError): CacheError;
33
33
  constructor(message: string, cause?: unknown);
34
34
  }
35
+ /**
36
+ * The <i>registerCacheErrors</i> function registers all <i>{@link IGroupableCache}</i> related errors with <i>IFlexibleSerde</i>, ensuring they will properly be serialized and deserialized.
37
+ * @group Errors
38
+ */
39
+ export declare function registerCacheErrors(serde: OneOrMore<IFlexibleSerde>): void;
@@ -2,7 +2,8 @@
2
2
  * @module Cache
3
3
  */
4
4
  import { BaseEvent } from "../../event-bus/contracts/_module";
5
- import type { TimeSpan } from "../../utilities/_module";
5
+ import type { IFlexibleSerde } from "../../serde/contracts/_module";
6
+ import type { OneOrMore, TimeSpan } from "../../utilities/_module";
6
7
  /**
7
8
  * @group Events
8
9
  */
@@ -153,3 +154,8 @@ export declare class KeysClearedCacheEvent extends BaseEvent<KeysClearedCacheEve
153
154
  * @group Events
154
155
  */
155
156
  export type CacheEvents<TType = unknown> = KeyFoundCacheEvent<TType> | KeyNotFoundCacheEvent | KeyAddedCacheEvent<TType> | KeyUpdatedCacheEvent<TType> | KeyRemovedCacheEvent | KeyIncrementedCacheEvent | KeyDecrementedCacheEvent | KeysClearedCacheEvent;
157
+ /**
158
+ * The <i>registerCacheEvents</i> function registers all <i>{@link IGroupableCache}</i> related events with <i>IFlexibleSerde</i>, ensuring they will properly be serialized and deserialized.
159
+ * @group Events
160
+ */
161
+ export declare function registerCacheEvents(serde: OneOrMore<IFlexibleSerde>): void;
@@ -49,22 +49,18 @@ export type CacheTestSuiteSettings = {
49
49
  * new RedisCacheAdapter({
50
50
  * database,
51
51
  * serde,
52
- * }),
53
- * {
54
52
  * rootGroup: "@a",
55
- * eventBus,
56
- * }
53
+ * }),
54
+ * { eventBus }
57
55
  * ),
58
56
  * createCacheB: () =>
59
57
  * new Cache(
60
58
  * new RedisCacheAdapter({
61
59
  * database,
62
60
  * serde,
63
- * }),
64
- * {
65
61
  * rootGroup: "@b",
66
- * eventBus,
67
- * }
62
+ * }),
63
+ * { eventBus }
68
64
  * ),
69
65
  * test,
70
66
  * beforeEach,
@@ -2,37 +2,19 @@
2
2
  * @module Cache
3
3
  */
4
4
  import type { ICacheAdapter } from "../../../../cache/contracts/_module";
5
- import type { IBuildable, OneOrMore } from "../../../../utilities/_module";
5
+ import type { IBuildable } from "../../../../utilities/_module";
6
6
  import type { TimeSpan } from "../../../../utilities/_module";
7
7
  import type { BackoffPolicy, RetryPolicy } from "../../../../async/_module";
8
8
  import type { IGroupableEventBus } from "../../../../event-bus/contracts/_module";
9
- import type { IFlexibleSerde } from "../../../../serde/contracts/_module";
10
9
  /**
11
10
  * @group Derivables
12
11
  */
13
12
  export type CacheSettings = {
14
- /**
15
- * You can pass one or more <i>{@link IFlexibleSerde}</i> that will be used to register all <i>{@link IGroupableCache}</i> related errors and events.
16
- * @default {true}
17
- */
18
- serde: OneOrMore<IFlexibleSerde>;
19
- /**
20
- * If set to true, all <i>{@link IGroupableCache}</i> related errors will be registered with the specified <i>IFlexibleSerde</i> during constructor initialization.
21
- * This ensures that all <i>{@link IGroupableCache}</i> related errors will be serialized correctly.
22
- * @default {true}
23
- */
24
- shouldRegisterErrors?: boolean;
25
- /**
26
- * If set to true, all <i>{@link IGroupableCache}</i> related events will be registered with the specified <i>IFlexibleSerde</i> during constructor initialization.
27
- * This ensures that all <i>{@link IGroupableCache}</i> related events will be serialized correctly.
28
- * @default {true}
29
- */
30
- shouldRegisterEvents?: boolean;
31
13
  adapter: ICacheAdapter<any>;
32
14
  /**
33
15
  * In order to listen to events of <i>{@link Cache}</i> class you must pass in <i>{@link IGroupableEventBus}</i>.
34
16
  */
35
- eventBus?: IGroupableEventBus<any>;
17
+ eventBus: IGroupableEventBus<any>;
36
18
  /**
37
19
  * You can decide the default ttl value. If null is passed then no ttl will be used by default.
38
20
  * @default {null}
@@ -66,15 +48,6 @@ export type CacheSettings = {
66
48
  export declare class CacheSettingsBuilder<TSettings extends Partial<CacheSettings>> implements IBuildable<CacheSettings> {
67
49
  private readonly settings;
68
50
  constructor(settings?: TSettings);
69
- setShouldRegisterErrors(shouldRegisterErrors: boolean): CacheSettingsBuilder<TSettings & {
70
- shouldRegisterErrors: boolean;
71
- }>;
72
- setShouldRegisterEvents(shouldRegisterEvents: boolean): CacheSettingsBuilder<TSettings & {
73
- shouldRegisterEvents: boolean;
74
- }>;
75
- setSerde(serde: OneOrMore<IFlexibleSerde>): CacheSettingsBuilder<TSettings & {
76
- serde: OneOrMore<IFlexibleSerde>;
77
- }>;
78
51
  setAdapter(adapter: ICacheAdapter<any>): CacheSettingsBuilder<TSettings & {
79
52
  adapter: ICacheAdapter<any>;
80
53
  }>;