@daiso-tech/core 0.22.2 → 0.23.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 (78) hide show
  1. package/dist/cjs/lock/contracts/lock.errors.js +4 -4
  2. package/dist/cjs/lock/contracts/lock.errors.js.map +1 -1
  3. package/dist/cjs/lock/implementations/_shared/lock-adapter.test-suite.js +0 -129
  4. package/dist/cjs/lock/implementations/_shared/lock-adapter.test-suite.js.map +1 -1
  5. package/dist/cjs/lock/implementations/_shared/lock-provider.test-suite.js +487 -489
  6. package/dist/cjs/lock/implementations/_shared/lock-provider.test-suite.js.map +1 -1
  7. package/dist/cjs/lock/implementations/adapters/kysely-lock-adapter/kysely-lock-adapter.js.map +1 -1
  8. package/dist/cjs/lock/implementations/adapters/libsql-lock-adapter/libsql-lock-adapter.js.map +1 -1
  9. package/dist/cjs/lock/implementations/adapters/memory-lock-adapter/memory-lock-adapter.js +0 -16
  10. package/dist/cjs/lock/implementations/adapters/memory-lock-adapter/memory-lock-adapter.js.map +1 -1
  11. package/dist/cjs/lock/implementations/adapters/mongodb-lock-adapter/mongodb-lock-adapter.js +5 -5
  12. package/dist/cjs/lock/implementations/adapters/mongodb-lock-adapter/mongodb-lock-adapter.js.map +1 -1
  13. package/dist/cjs/lock/implementations/adapters/redis-lock-adapter/redis-lock-adapter.js +0 -13
  14. package/dist/cjs/lock/implementations/adapters/redis-lock-adapter/redis-lock-adapter.js.map +1 -1
  15. package/dist/cjs/lock/implementations/adapters/sqlite-lock-adapter/sqlite-lock-adapter.js.map +1 -1
  16. package/dist/cjs/lock/implementations/derivables/lock-provider/database-lock-adapter.js +0 -32
  17. package/dist/cjs/lock/implementations/derivables/lock-provider/database-lock-adapter.js.map +1 -1
  18. package/dist/cjs/lock/implementations/derivables/lock-provider/lock-provider.js +22 -12
  19. package/dist/cjs/lock/implementations/derivables/lock-provider/lock-provider.js.map +1 -1
  20. package/dist/cjs/lock/implementations/derivables/lock-provider/lock-state.js +58 -0
  21. package/dist/cjs/lock/implementations/derivables/lock-provider/lock-state.js.map +1 -0
  22. package/dist/cjs/lock/implementations/derivables/lock-provider/lock.js +32 -39
  23. package/dist/cjs/lock/implementations/derivables/lock-provider/lock.js.map +1 -1
  24. package/dist/cjs/lock/implementations/derivables/lock-provider-factory/lock-provider-factory.js +1 -1
  25. package/dist/cjs/lock/implementations/derivables/lock-provider-factory/lock-provider-factory.js.map +1 -1
  26. package/dist/cjs/utilities/contracts/_module.js +0 -1
  27. package/dist/cjs/utilities/contracts/_module.js.map +1 -1
  28. package/dist/esm/lock/contracts/lock.errors.js +2 -2
  29. package/dist/esm/lock/contracts/lock.errors.js.map +1 -1
  30. package/dist/esm/lock/implementations/_shared/lock-adapter.test-suite.js +0 -129
  31. package/dist/esm/lock/implementations/_shared/lock-adapter.test-suite.js.map +1 -1
  32. package/dist/esm/lock/implementations/_shared/lock-provider.test-suite.js +488 -490
  33. package/dist/esm/lock/implementations/_shared/lock-provider.test-suite.js.map +1 -1
  34. package/dist/esm/lock/implementations/adapters/kysely-lock-adapter/kysely-lock-adapter.js +1 -1
  35. package/dist/esm/lock/implementations/adapters/kysely-lock-adapter/kysely-lock-adapter.js.map +1 -1
  36. package/dist/esm/lock/implementations/adapters/libsql-lock-adapter/libsql-lock-adapter.js +1 -1
  37. package/dist/esm/lock/implementations/adapters/libsql-lock-adapter/libsql-lock-adapter.js.map +1 -1
  38. package/dist/esm/lock/implementations/adapters/memory-lock-adapter/memory-lock-adapter.js +1 -17
  39. package/dist/esm/lock/implementations/adapters/memory-lock-adapter/memory-lock-adapter.js.map +1 -1
  40. package/dist/esm/lock/implementations/adapters/mongodb-lock-adapter/mongodb-lock-adapter.js +6 -6
  41. package/dist/esm/lock/implementations/adapters/mongodb-lock-adapter/mongodb-lock-adapter.js.map +1 -1
  42. package/dist/esm/lock/implementations/adapters/redis-lock-adapter/redis-lock-adapter.js +1 -14
  43. package/dist/esm/lock/implementations/adapters/redis-lock-adapter/redis-lock-adapter.js.map +1 -1
  44. package/dist/esm/lock/implementations/adapters/sqlite-lock-adapter/sqlite-lock-adapter.js +1 -1
  45. package/dist/esm/lock/implementations/adapters/sqlite-lock-adapter/sqlite-lock-adapter.js.map +1 -1
  46. package/dist/esm/lock/implementations/derivables/lock-provider/database-lock-adapter.js +1 -33
  47. package/dist/esm/lock/implementations/derivables/lock-provider/database-lock-adapter.js.map +1 -1
  48. package/dist/esm/lock/implementations/derivables/lock-provider/lock-provider.js +22 -12
  49. package/dist/esm/lock/implementations/derivables/lock-provider/lock-provider.js.map +1 -1
  50. package/dist/esm/lock/implementations/derivables/lock-provider/lock-state.js +54 -0
  51. package/dist/esm/lock/implementations/derivables/lock-provider/lock-state.js.map +1 -0
  52. package/dist/esm/lock/implementations/derivables/lock-provider/lock.js +33 -40
  53. package/dist/esm/lock/implementations/derivables/lock-provider/lock.js.map +1 -1
  54. package/dist/esm/lock/implementations/derivables/lock-provider-factory/lock-provider-factory.js +1 -1
  55. package/dist/esm/lock/implementations/derivables/lock-provider-factory/lock-provider-factory.js.map +1 -1
  56. package/dist/esm/utilities/contracts/_module.js +0 -1
  57. package/dist/esm/utilities/contracts/_module.js.map +1 -1
  58. package/dist/types/lock/contracts/database-lock-adapter.contract.d.ts +1 -2
  59. package/dist/types/lock/contracts/lock-adapter.contract.d.ts +0 -9
  60. package/dist/types/lock/contracts/lock.contract.d.ts +1 -1
  61. package/dist/types/lock/contracts/lock.errors.d.ts +2 -2
  62. package/dist/types/lock/implementations/adapters/kysely-lock-adapter/kysely-lock-adapter.d.ts +2 -2
  63. package/dist/types/lock/implementations/adapters/libsql-lock-adapter/libsql-lock-adapter.d.ts +2 -2
  64. package/dist/types/lock/implementations/adapters/memory-lock-adapter/memory-lock-adapter.d.ts +1 -3
  65. package/dist/types/lock/implementations/adapters/mongodb-lock-adapter/mongodb-lock-adapter.d.ts +2 -1
  66. package/dist/types/lock/implementations/adapters/redis-lock-adapter/redis-lock-adapter.d.ts +1 -3
  67. package/dist/types/lock/implementations/adapters/sqlite-lock-adapter/sqlite-lock-adapter.d.ts +2 -2
  68. package/dist/types/lock/implementations/derivables/lock-provider/database-lock-adapter.d.ts +2 -7
  69. package/dist/types/lock/implementations/derivables/lock-provider/lock-provider.d.ts +8 -10
  70. package/dist/types/lock/implementations/derivables/lock-provider/lock-state.d.ts +40 -0
  71. package/dist/types/lock/implementations/derivables/lock-provider/lock.d.ts +8 -2
  72. package/dist/types/utilities/contracts/_module.d.ts +0 -1
  73. package/package.json +1 -1
  74. package/dist/cjs/utilities/contracts/serde-registrable.contract.js +0 -3
  75. package/dist/cjs/utilities/contracts/serde-registrable.contract.js.map +0 -1
  76. package/dist/esm/utilities/contracts/serde-registrable.contract.js +0 -1
  77. package/dist/esm/utilities/contracts/serde-registrable.contract.js.map +0 -1
  78. package/dist/types/utilities/contracts/serde-registrable.contract.d.ts +0 -11
@@ -30,6 +30,7 @@ class LockProvider {
30
30
  typeof adapter_["withGroup"] === "function" &&
31
31
  adapter_["withGroup"].length === 1);
32
32
  }
33
+ serde;
33
34
  createOwnerId;
34
35
  adapter;
35
36
  defaultTtl;
@@ -40,13 +41,11 @@ class LockProvider {
40
41
  timeout;
41
42
  eventBus;
42
43
  lockProviderEventBus;
43
- get name() {
44
- return lock_1.Lock.name;
45
- }
44
+ stateRecord = {};
46
45
  constructor(settings) {
47
46
  const { createOwnerId = () => (0, uuid_1.v4)(), adapter, defaultTtl = LockProvider.DEFAULT_TTL, defaultRefreshTime = LockProvider.DEFAULT_REFRESH_TIME, retryAttempts = null, backoffPolicy = null, retryPolicy = null, timeout = null, eventBus = new _module_2.EventBus({
48
47
  adapter: new _module_2.NoOpEventBusAdapter(),
49
- }), } = settings;
48
+ }), serde, } = settings;
50
49
  this.createOwnerId = createOwnerId;
51
50
  if (LockProvider.isDatabaseAdapter(adapter)) {
52
51
  this.adapter = new database_lock_adapter_1.DatabaseLockAdapter(adapter);
@@ -54,6 +53,7 @@ class LockProvider {
54
53
  else {
55
54
  this.adapter = adapter;
56
55
  }
56
+ this.serde = serde;
57
57
  this.defaultTtl = defaultTtl ?? LockProvider.DEFAULT_TTL;
58
58
  this.defaultRefreshTime = defaultRefreshTime;
59
59
  this.retryAttempts = retryAttempts;
@@ -62,6 +62,16 @@ class LockProvider {
62
62
  this.timeout = timeout;
63
63
  this.eventBus = eventBus;
64
64
  this.lockProviderEventBus = eventBus.withGroup(adapter.getGroup());
65
+ this.registerToSerde();
66
+ }
67
+ registerToSerde() {
68
+ let serde = this.serde;
69
+ if (!Array.isArray(serde)) {
70
+ serde = [serde];
71
+ }
72
+ for (const serde_ of serde) {
73
+ serde_.registerCustom(this);
74
+ }
65
75
  }
66
76
  addListener(event, listener) {
67
77
  return this.lockProviderEventBus.addListener(event, listener);
@@ -84,6 +94,9 @@ class LockProvider {
84
94
  subscribeMany(events, listener) {
85
95
  return this.lockProviderEventBus.subscribeMany(events, listener);
86
96
  }
97
+ get name() {
98
+ return lock_1.Lock.name;
99
+ }
87
100
  isApplicable(value) {
88
101
  return value instanceof lock_1.Lock && (0, _module_1.getConstructorName)(value) === lock_1.Lock.name;
89
102
  }
@@ -114,6 +127,8 @@ class LockProvider {
114
127
  retryPolicy: this.retryPolicy,
115
128
  timeout: this.timeout,
116
129
  },
130
+ stateRecord: this.stateRecord,
131
+ expirationInMs: serializedValue.expirationInMs,
117
132
  });
118
133
  }
119
134
  create(key, settings = {}) {
@@ -132,6 +147,8 @@ class LockProvider {
132
147
  retryPolicy: this.retryPolicy,
133
148
  timeout: this.timeout,
134
149
  },
150
+ stateRecord: this.stateRecord,
151
+ expirationInMs: null,
135
152
  });
136
153
  }
137
154
  getGroup() {
@@ -147,16 +164,9 @@ class LockProvider {
147
164
  backoffPolicy: this.backoffPolicy,
148
165
  retryPolicy: this.retryPolicy,
149
166
  timeout: this.timeout,
167
+ serde: this.serde,
150
168
  });
151
169
  }
152
- registerToSerde(serde) {
153
- if (!Array.isArray(serde)) {
154
- serde = [serde];
155
- }
156
- for (const serde_ of serde) {
157
- serde_.registerCustom(this);
158
- }
159
- }
160
170
  }
161
171
  exports.LockProvider = LockProvider;
162
172
  //# sourceMappingURL=lock-provider.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"lock-provider.js","sourceRoot":"","sources":["../../../../../../src/lock/implementations/derivables/lock-provider/lock-provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lock-provider.js","sourceRoot":"","sources":["../../../../../../src/lock/implementations/derivables/lock-provider/lock-provider.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.LockState = void 0;
4
+ const _module_1 = require("../../../../utilities/_module");
5
+ class LockState {
6
+ stateRecord;
7
+ key;
8
+ constructor(stateRecord, key) {
9
+ this.stateRecord = stateRecord;
10
+ this.key = key;
11
+ }
12
+ get() {
13
+ const state = this.stateRecord[this.key];
14
+ if (state === undefined) {
15
+ return null;
16
+ }
17
+ const { expiration } = state;
18
+ return expiration;
19
+ }
20
+ set(ttl) {
21
+ if (typeof ttl === "number") {
22
+ this.stateRecord[this.key] = {
23
+ expiration: new Date(ttl),
24
+ };
25
+ return;
26
+ }
27
+ this.stateRecord[this.key] = {
28
+ expiration: ttl?.toEndDate() ?? null,
29
+ };
30
+ }
31
+ isExpired() {
32
+ const state = this.stateRecord[this.key];
33
+ if (state === undefined) {
34
+ return true;
35
+ }
36
+ const { expiration } = state;
37
+ if (expiration === null) {
38
+ return false;
39
+ }
40
+ return expiration.getTime() < Date.now();
41
+ }
42
+ getRemainingTime() {
43
+ const state = this.stateRecord[this.key];
44
+ if (state === undefined) {
45
+ return null;
46
+ }
47
+ const { expiration } = state;
48
+ if (expiration === null) {
49
+ return null;
50
+ }
51
+ return _module_1.TimeSpan.fromDateRange(new Date(), expiration);
52
+ }
53
+ remove() {
54
+ delete this.stateRecord[this.key];
55
+ }
56
+ }
57
+ exports.LockState = LockState;
58
+ //# sourceMappingURL=lock-state.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lock-state.js","sourceRoot":"","sources":["../../../../../../src/lock/implementations/derivables/lock-provider/lock-state.ts"],"names":[],"mappings":";;;AAAA,iDAA+C;AAiB/C,MAAa,SAAS;IAEN;IACS;IAFrB,YACY,WAA6B,EACpB,GAAW;QADpB,gBAAW,GAAX,WAAW,CAAkB;QACpB,QAAG,GAAH,GAAG,CAAQ;IAC7B,CAAC;IAKJ,GAAG;QACC,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACzC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACtB,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,MAAM,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC;QAC7B,OAAO,UAAU,CAAC;IACtB,CAAC;IAMD,GAAG,CAAC,GAA6B;QAC7B,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;YAC1B,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG;gBACzB,UAAU,EAAE,IAAI,IAAI,CAAC,GAAG,CAAC;aAC5B,CAAC;YACF,OAAO;QACX,CAAC;QACD,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG;YACzB,UAAU,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,IAAI;SACvC,CAAC;IACN,CAAC;IAKD,SAAS;QACL,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACzC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACtB,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,MAAM,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC;QAC7B,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;YACtB,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,OAAO,UAAU,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC7C,CAAC;IAKD,gBAAgB;QACZ,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACzC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACtB,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,MAAM,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC;QAC7B,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;YACtB,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,OAAO,kBAAQ,CAAC,aAAa,CAAC,IAAI,IAAI,EAAE,EAAE,UAAU,CAAC,CAAC;IAC1D,CAAC;IAKD,MAAM;QAEF,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACtC,CAAC;CACJ;AAvED,8BAuEC"}
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Lock = void 0;
4
4
  const _module_1 = require("../../../../async/_module");
5
5
  const _module_2 = require("../../../../lock/contracts/_module");
6
+ const lock_state_1 = require("../../../../lock/implementations/derivables/lock-provider/lock-state");
6
7
  class Lock {
7
8
  static serialize(deserializedValue) {
8
9
  return {
@@ -10,6 +11,7 @@ class Lock {
10
11
  key: deserializedValue.key,
11
12
  owner: deserializedValue.owner,
12
13
  ttlInMs: deserializedValue.ttl?.toMilliseconds() ?? null,
14
+ expirationInMs: deserializedValue.state.get()?.getTime() ?? null,
13
15
  };
14
16
  }
15
17
  lockProviderEventDispatcher;
@@ -20,8 +22,11 @@ class Lock {
20
22
  ttl;
21
23
  defaultRefreshTime;
22
24
  lazyPromiseSettings;
25
+ state;
26
+ expirationInMs;
23
27
  constructor(settings) {
24
- const { lockProviderEventDispatcher, lockEventBus, defaultRefreshTime, adapter, key, owner, ttl, lazyPromiseSettings, } = settings;
28
+ const { lockProviderEventDispatcher, lockEventBus, defaultRefreshTime, adapter, key, owner, ttl, lazyPromiseSettings, stateRecord, expirationInMs, } = settings;
29
+ this.expirationInMs = expirationInMs;
25
30
  this.lockProviderEventDispatcher = lockProviderEventDispatcher;
26
31
  this.lockEventBus = lockEventBus.withGroup([adapter.getGroup(), key]);
27
32
  this.defaultRefreshTime = defaultRefreshTime;
@@ -30,6 +35,8 @@ class Lock {
30
35
  this.owner = owner;
31
36
  this.ttl = ttl;
32
37
  this.lazyPromiseSettings = lazyPromiseSettings;
38
+ this.state = new lock_state_1.LockState(stateRecord, key);
39
+ this.state.set(expirationInMs);
33
40
  }
34
41
  createLayPromise(asyncFn) {
35
42
  return new _module_1.LazyPromise(asyncFn)
@@ -38,7 +45,7 @@ class Lock {
38
45
  .setRetryPolicy(this.lazyPromiseSettings.retryPolicy)
39
46
  .setTimeout(this.lazyPromiseSettings.timeout);
40
47
  }
41
- run(asyncFn, shouldTimeout = false) {
48
+ run(asyncFn) {
42
49
  return this.createLayPromise(async () => {
43
50
  if (typeof asyncFn === "function") {
44
51
  asyncFn = new _module_1.LazyPromise(asyncFn);
@@ -48,12 +55,9 @@ class Lock {
48
55
  if (!hasAquired) {
49
56
  return [
50
57
  null,
51
- new _module_2.KeyAlreadyAcquiredLockError("!!__message__!!"),
58
+ new _module_2.KeyAlreadyAcquiredLockError(`Key "${this.key}" already acquired`),
52
59
  ];
53
60
  }
54
- if (shouldTimeout) {
55
- asyncFn.setTimeout(this.ttl);
56
- }
57
61
  return [await asyncFn, null];
58
62
  }
59
63
  finally {
@@ -61,16 +65,13 @@ class Lock {
61
65
  }
62
66
  }).setRetryPolicy((error) => error instanceof _module_2.UnableToAquireLockError);
63
67
  }
64
- runOrFail(asyncFn, shouldTimeout = false) {
68
+ runOrFail(asyncFn) {
65
69
  return this.createLayPromise(async () => {
66
70
  try {
67
71
  if (typeof asyncFn === "function") {
68
72
  asyncFn = new _module_1.LazyPromise(asyncFn);
69
73
  }
70
74
  await this.acquireOrFail();
71
- if (shouldTimeout) {
72
- asyncFn.setTimeout(this.ttl);
73
- }
74
75
  return await asyncFn;
75
76
  }
76
77
  finally {
@@ -82,8 +83,10 @@ class Lock {
82
83
  acquire() {
83
84
  return this.createLayPromise(async () => {
84
85
  try {
86
+ this.state.remove();
85
87
  const hasAquired = await this.adapter.acquire(this.key, this.owner, this.ttl);
86
88
  if (hasAquired) {
89
+ this.state.set(this.ttl);
87
90
  const event = new _module_2.KeyAcquiredLockEvent({
88
91
  key: this.key,
89
92
  owner: this.owner,
@@ -119,7 +122,7 @@ class Lock {
119
122
  return this.createLayPromise(async () => {
120
123
  const hasAquired = await this.acquire();
121
124
  if (!hasAquired) {
122
- throw new _module_2.KeyAlreadyAcquiredLockError("!!__message__!!");
125
+ throw new _module_2.KeyAlreadyAcquiredLockError(`Key "${this.key}" already acquired`);
123
126
  }
124
127
  });
125
128
  }
@@ -128,6 +131,7 @@ class Lock {
128
131
  try {
129
132
  const hasReleased = await this.adapter.release(this.key, this.owner);
130
133
  if (hasReleased) {
134
+ this.state.remove();
131
135
  const event = new _module_2.KeyReleasedLockEvent({
132
136
  key: this.key,
133
137
  owner: this.owner,
@@ -162,7 +166,7 @@ class Lock {
162
166
  return this.createLayPromise(async () => {
163
167
  const hasRelased = await this.release();
164
168
  if (!hasRelased) {
165
- throw new _module_2.UnownedReleaseLockError("!!__message__!!");
169
+ throw new _module_2.UnownedReleaseLockError(`Unonwed release on key "${this.key}" by owner "${this.owner}"`);
166
170
  }
167
171
  });
168
172
  }
@@ -170,6 +174,7 @@ class Lock {
170
174
  return this.createLayPromise(async () => {
171
175
  try {
172
176
  await this.adapter.forceRelease(this.key);
177
+ this.state.remove();
173
178
  const event = new _module_2.KeyForceReleasedLockEvent({
174
179
  key: this.key,
175
180
  });
@@ -190,15 +195,9 @@ class Lock {
190
195
  });
191
196
  }
192
197
  isExpired() {
193
- return this.createLayPromise(async () => {
194
- const isLocked = await this.isLocked();
195
- return !isLocked;
196
- });
197
- }
198
- isLocked() {
199
198
  return this.createLayPromise(async () => {
200
199
  try {
201
- return await this.adapter.isLocked(this.key);
200
+ return this.state.isExpired();
202
201
  }
203
202
  catch (error) {
204
203
  const event = new _module_2.UnexpectedErrorLockEvent({
@@ -213,16 +212,23 @@ class Lock {
213
212
  }
214
213
  });
215
214
  }
215
+ isLocked() {
216
+ return this.createLayPromise(async () => {
217
+ const isExpired = await this.isExpired();
218
+ return !isExpired;
219
+ });
220
+ }
216
221
  refresh(ttl = this.defaultRefreshTime) {
217
222
  return this.createLayPromise(async () => {
218
223
  try {
219
- const hasExtended = await this.adapter.refresh(this.key, this.owner, ttl);
220
- if (hasExtended) {
224
+ const hasRefreshed = await this.adapter.refresh(this.key, this.owner, ttl);
225
+ if (hasRefreshed) {
221
226
  const event = new _module_2.KeyRefreshedLockEvent({
222
227
  key: this.key,
223
228
  owner: this.owner,
224
229
  ttl,
225
230
  });
231
+ this.state.set(ttl);
226
232
  this.lockEventBus.dispatch(event).defer();
227
233
  this.lockProviderEventDispatcher.dispatch(event).defer();
228
234
  }
@@ -234,7 +240,7 @@ class Lock {
234
240
  this.lockEventBus.dispatch(event).defer();
235
241
  this.lockProviderEventDispatcher.dispatch(event).defer();
236
242
  }
237
- return hasExtended;
243
+ return hasRefreshed;
238
244
  }
239
245
  catch (error) {
240
246
  const event = new _module_2.UnexpectedErrorLockEvent({
@@ -251,28 +257,15 @@ class Lock {
251
257
  }
252
258
  refreshOrFail(ttl) {
253
259
  return this.createLayPromise(async () => {
254
- const hasExtended = await this.refresh(ttl);
255
- if (!hasExtended) {
256
- throw new _module_2.UnownedExtendLockError("!!__message__!!");
260
+ const hasRefreshed = await this.refresh(ttl);
261
+ if (!hasRefreshed) {
262
+ throw new _module_2.UnownedRefreshLockError(`Unonwed refresh on key "${this.key}" by owner "${this.owner}"`);
257
263
  }
258
264
  });
259
265
  }
260
266
  getRemainingTime() {
261
267
  return this.createLayPromise(async () => {
262
- try {
263
- return await this.adapter.getRemainingTime(this.key);
264
- }
265
- catch (error) {
266
- const event = new _module_2.UnexpectedErrorLockEvent({
267
- key: this.key,
268
- owner: this.owner,
269
- ttl: this.ttl,
270
- error,
271
- });
272
- this.lockEventBus.dispatch(event).defer();
273
- this.lockProviderEventDispatcher.dispatch(event).defer();
274
- throw error;
275
- }
268
+ return this.state.getRemainingTime();
276
269
  });
277
270
  }
278
271
  getOwner() {
@@ -1 +1 @@
1
- {"version":3,"file":"lock.js","sourceRoot":"","sources":["../../../../../../src/lock/implementations/derivables/lock-provider/lock.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lock.js","sourceRoot":"","sources":["../../../../../../src/lock/implementations/derivables/lock-provider/lock.ts"],"names":[],"mappings":"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"}
@@ -49,6 +49,7 @@ class LockProviderFactory {
49
49
  }
50
50
  const lockProvider = new _module_3.LockProvider({
51
51
  adapter,
52
+ serde: this.serde,
52
53
  eventBus: this.eventBus,
53
54
  defaultTtl: this.defaultTtl,
54
55
  retryAttempts: this.retryAttempts,
@@ -58,7 +59,6 @@ class LockProviderFactory {
58
59
  defaultRefreshTime: this.defaultExtendTime,
59
60
  createOwnerId: this.createOwnerId,
60
61
  });
61
- lockProvider.registerToSerde(this.serde);
62
62
  cacheRecord[key] = lockProvider;
63
63
  }
64
64
  return cacheRecord;
@@ -1 +1 @@
1
- {"version":3,"file":"lock-provider-factory.js","sourceRoot":"","sources":["../../../../../../src/lock/implementations/derivables/lock-provider-factory/lock-provider-factory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lock-provider-factory.js","sourceRoot":"","sources":["../../../../../../src/lock/implementations/derivables/lock-provider-factory/lock-provider-factory.ts"],"names":[],"mappings":"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"}
@@ -18,5 +18,4 @@ __exportStar(require("../../utilities/contracts/serialized-error.contract"), exp
18
18
  __exportStar(require("../../utilities/contracts/buildable.contract"), exports);
19
19
  __exportStar(require("../../utilities/contracts/deinitizable.contract"), exports);
20
20
  __exportStar(require("../../utilities/contracts/initizable.contract"), exports);
21
- __exportStar(require("../../utilities/contracts/serde-registrable.contract"), exports);
22
21
  //# sourceMappingURL=_module.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_module.js","sourceRoot":"","sources":["../../../../src/utilities/contracts/_module.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kFAAgE;AAChE,2EAAyD;AACzD,8EAA4D;AAC5D,4EAA0D;AAC1D,mFAAiE"}
1
+ {"version":3,"file":"_module.js","sourceRoot":"","sources":["../../../../src/utilities/contracts/_module.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kFAAgE;AAChE,2EAAyD;AACzD,8EAA4D;AAC5D,4EAA0D"}
@@ -88,9 +88,9 @@ export class UnownedReleaseLockError extends LockError {
88
88
  };
89
89
  }
90
90
  }
91
- export class UnownedExtendLockError extends LockError {
91
+ export class UnownedRefreshLockError extends LockError {
92
92
  static deserialize(serializedError) {
93
- return new UnownedExtendLockError(serializedError.message, serializedError.cause);
93
+ return new UnownedRefreshLockError(serializedError.message, serializedError.cause);
94
94
  }
95
95
  constructor(message, cause) {
96
96
  super(message, { cause });
@@ -1 +1 @@
1
- {"version":3,"file":"lock.errors.js","sourceRoot":"","sources":["../../../../src/lock/contracts/lock.errors.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lock.errors.js","sourceRoot":"","sources":["../../../../src/lock/contracts/lock.errors.ts"],"names":[],"mappings":"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"}