@matter/node 0.11.6 → 0.11.7

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.
@@ -43,6 +43,7 @@ export declare class AccessControlServer extends AccessControlBehavior {
43
43
  * The AccessControlManager instance that is used to manage the ACL for this behavior.
44
44
  */
45
45
  get aclManager(): AccessControlManager;
46
+ resetDelayedAccessControlList(): void;
46
47
  /**
47
48
  * If set to true, the ACL will not be updated immediately when it changes, but only when the `aclUpdateDelayed`
48
49
  * property is set to false again.
@@ -1 +1 @@
1
- {"version":3,"file":"AccessControlServer.d.ts","sourceRoot":"","sources":["../../../../src/behaviors/access-control/AccessControlServer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACnE,OAAO,EAAE,aAAa,IAAI,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAE/E,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAErC,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAiB,yBAAyB,EAAE,MAAM,WAAW,CAAC;AAC9G,OAAO,EAEH,SAAS,EASZ,MAAM,QAAQ,CAAC;AAChB,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAInE;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,qBAAqB;;IAClD,QAAQ,EAAE,mBAAmB,CAAC,QAAQ,CAAC;IAEtC,UAAU;IAmSnB;;;;OAIG;IACH,eAAe,CACX,OAAO,EAAE,aAAa,EACtB,QAAQ,EAAE,aAAa,CAAC,QAAQ,EAChC,QAAQ,CAAC,EAAE,iBAAiB,GAC7B,WAAW,EAAE;IAoBhB;;;;;;;OAOG;IACH,SAAS,CAAC,uBAAuB,CAAC,SAAS,EAAE,kBAAkB,CAAC,sBAAsB;IActF;;;;;OAKG;IACH,SAAS,CAAC,yBAAyB,CAC/B,QAAQ,EAAE,kBAAkB,CAAC,kBAAkB,EAAE,EACjD,SAAS,EAAE,kBAAkB,CAAC,kBAAkB,EAChD,YAAY,EAAE,yBAAyB,EACvC,SAAS,EAAE,iBAAiB,EAC5B,UAAU,EAAE,SAAS;IAKzB;;OAEG;IACH,IAAI,UAAU,yBAKb;IAYD;;;;;OAKG;IACH,IAAI,gBAAgB,IAUQ,OAAO,CARlC;IAED;;;;;OAKG;IACH,IAAI,gBAAgB,CAAC,KAAK,EAAE,OAAO,EAMlC;CAWJ;AAED,yBAAiB,mBAAmB,CAAC;IACjC,MAAa,QAAQ;QACjB,2FAA2F;QAC3F,UAAU,CAAC,EAAE,oBAAoB,CAAC;QAElC,iHAAiH;QACjH,gBAAgB,UAAS;QAEzB,iCAAiC;QACjC,cAAc,CAAC,EAAE,kBAAkB,CAAC,kBAAkB,EAAE,CAAC;KAC5D;CACJ"}
1
+ {"version":3,"file":"AccessControlServer.d.ts","sourceRoot":"","sources":["../../../../src/behaviors/access-control/AccessControlServer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACnE,OAAO,EAAE,aAAa,IAAI,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAE/E,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAErC,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAiB,yBAAyB,EAAE,MAAM,WAAW,CAAC;AAC9G,OAAO,EAEH,SAAS,EASZ,MAAM,QAAQ,CAAC;AAChB,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAInE;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,qBAAqB;;IAClD,QAAQ,EAAE,mBAAmB,CAAC,QAAQ,CAAC;IAEtC,UAAU;IAmSnB;;;;OAIG;IACH,eAAe,CACX,OAAO,EAAE,aAAa,EACtB,QAAQ,EAAE,aAAa,CAAC,QAAQ,EAChC,QAAQ,CAAC,EAAE,iBAAiB,GAC7B,WAAW,EAAE;IAoBhB;;;;;;;OAOG;IACH,SAAS,CAAC,uBAAuB,CAAC,SAAS,EAAE,kBAAkB,CAAC,sBAAsB;IActF;;;;;OAKG;IACH,SAAS,CAAC,yBAAyB,CAC/B,QAAQ,EAAE,kBAAkB,CAAC,kBAAkB,EAAE,EACjD,SAAS,EAAE,kBAAkB,CAAC,kBAAkB,EAChD,YAAY,EAAE,yBAAyB,EACvC,SAAS,EAAE,iBAAiB,EAC5B,UAAU,EAAE,SAAS;IAKzB;;OAEG;IACH,IAAI,UAAU,yBAKb;IAYD,6BAA6B;IAK7B;;;;;OAKG;IACH,IAAI,gBAAgB,IAUQ,OAAO,CARlC;IAED;;;;;OAKG;IACH,IAAI,gBAAgB,CAAC,KAAK,EAAE,OAAO,EAQlC;CAWJ;AAED,yBAAiB,mBAAmB,CAAC;IACjC,MAAa,QAAQ;QACjB,2FAA2F;QAC3F,UAAU,CAAC,EAAE,oBAAoB,CAAC;QAElC,iHAAiH;QACjH,gBAAgB,UAAS;QAEzB,iCAAiC;QACjC,cAAc,CAAC,EAAE,kBAAkB,CAAC,kBAAkB,EAAE,CAAC;KAC5D;CACJ"}
@@ -326,6 +326,10 @@ class AccessControlServer extends import_AccessControlBehavior.AccessControlBeha
326
326
  this.internal.delayedAclData = acl;
327
327
  }
328
328
  }
329
+ resetDelayedAccessControlList() {
330
+ this.internal.delayedAclData = void 0;
331
+ this.aclUpdateDelayed = false;
332
+ }
329
333
  /**
330
334
  * If set to true, the ACL will not be updated immediately when it changes, but only when the `aclUpdateDelayed`
331
335
  * property is set to false again.
@@ -342,9 +346,11 @@ class AccessControlServer extends import_AccessControlBehavior.AccessControlBeha
342
346
  * removed again once we somehow handle relevant sub transactions.
343
347
  */
344
348
  set aclUpdateDelayed(value) {
345
- logger.info("Setting ACL update delayed to", value);
346
349
  if (!value) {
350
+ logger.info("Committing delayed ACL update");
347
351
  this.#updateDelayedAccessControlList();
352
+ } else if (!this.internal.aclUpdateDelayed) {
353
+ logger.info("Register ACL update to be delayed");
348
354
  }
349
355
  this.internal.aclUpdateDelayed = value;
350
356
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/behaviors/access-control/AccessControlServer.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["AccessControlTypes", "AccessControlServer"]
6
6
  }
@@ -1 +1 @@
1
- {"version":3,"file":"TransactionalInteractionServer.d.ts","sourceRoot":"","sources":["../../../../src/node/server/TransactionalInteractionServer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AASH,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAIjD,OAAO,EAEH,kBAAkB,EAClB,cAAc,EACd,aAAa,EACb,eAAe,EACf,WAAW,EACX,aAAa,EACb,iBAAiB,EACjB,SAAS,EACT,gBAAgB,EAEhB,kBAAkB,EAElB,iBAAiB,EAEjB,OAAO,EACP,eAAe,EACf,cAAc,EACd,YAAY,EACZ,aAAa,EAChB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uDAAuD,CAAC;AAC5F,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAW9C;;;;;;;;;;;GAWG;AACH,qBAAa,8BAA+B,SAAQ,iBAAiB;;WASpD,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,QAAQ,EAAE,cAAc;gBAa7E,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,kBAAkB;IA0B9E,CAAC,MAAM,CAAC,YAAY,CAAC;IAM3B,gBAAgB;IAID,aAAa,CAAC,QAAQ,EAAE,eAAe;IAiBtD,IAAI,SAAS,wBASZ;cAEwB,aAAa,CAClC,IAAI,EAAE,aAAa,EACnB,SAAS,EAAE,kBAAkB,CAAC,GAAG,CAAC,EAClC,QAAQ,EAAE,eAAe,EACzB,cAAc,EAAE,OAAO,EACvB,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,iBAAiB,EAC3B,OAAO,UAAQ;;;;cAsBM,SAAS,CAC9B,IAAI,EAAE,SAAS,EACf,YAAY,EAAE,cAAc,CAAC,OAAO,cAAc,CAAC,EAAE,GAAG,SAAS,EACjE,KAAK,EAAE,cAAc,CAAC,GAAG,EAAE,GAAG,CAAC,EAC/B,QAAQ,EAAE,eAAe,EACzB,cAAc,EAAE,OAAO,EACvB,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,iBAAiB,GAC5B,OAAO,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC;IAsBpB,kBAAkB,CAC7B,QAAQ,EAAE,eAAe,EACzB,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,OAAO,GACjB,OAAO,CAAC,aAAa,CAAC;cAWA,cAAc,CACnC,IAAI,EAAE,aAAa,EACnB,SAAS,EAAE,eAAe,CAAC,GAAG,CAAC,EAC/B,KAAK,EAAE,GAAG,EACV,QAAQ,EAAE,eAAe,EACzB,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,iBAAiB,EAC3B,KAAK,UAAQ,EACb,WAAW,CAAC,EAAE,OAAO;cA6BA,aAAa,CAClC,IAAI,EAAE,WAAW,EACjB,OAAO,EAAE,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,EAChC,QAAQ,EAAE,eAAe,EACzB,aAAa,EAAE,GAAG,EAClB,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,iBAAiB,EAC3B,KAAK,UAAQ;;;;yBA7Gb,QAAO;;CAgJd"}
1
+ {"version":3,"file":"TransactionalInteractionServer.d.ts","sourceRoot":"","sources":["../../../../src/node/server/TransactionalInteractionServer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AASH,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAIjD,OAAO,EAEH,kBAAkB,EAClB,cAAc,EACd,aAAa,EACb,eAAe,EACf,WAAW,EACX,aAAa,EACb,iBAAiB,EACjB,SAAS,EACT,gBAAgB,EAEhB,kBAAkB,EAElB,iBAAiB,EAEjB,OAAO,EACP,eAAe,EACf,cAAc,EACd,YAAY,EACZ,aAAa,EAChB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uDAAuD,CAAC;AAC5F,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAa9C;;;;;;;;;;;GAWG;AACH,qBAAa,8BAA+B,SAAQ,iBAAiB;;WASpD,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,QAAQ,EAAE,cAAc;gBAa7E,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,kBAAkB;IA0B9E,CAAC,MAAM,CAAC,YAAY,CAAC;IAM3B,gBAAgB;IAID,aAAa,CAAC,QAAQ,EAAE,eAAe;IAiBtD,IAAI,SAAS,wBASZ;cAEwB,aAAa,CAClC,IAAI,EAAE,aAAa,EACnB,SAAS,EAAE,kBAAkB,CAAC,GAAG,CAAC,EAClC,QAAQ,EAAE,eAAe,EACzB,cAAc,EAAE,OAAO,EACvB,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,iBAAiB,EAC3B,OAAO,UAAQ;;;;cAsBM,SAAS,CAC9B,IAAI,EAAE,SAAS,EACf,YAAY,EAAE,cAAc,CAAC,OAAO,cAAc,CAAC,EAAE,GAAG,SAAS,EACjE,KAAK,EAAE,cAAc,CAAC,GAAG,EAAE,GAAG,CAAC,EAC/B,QAAQ,EAAE,eAAe,EACzB,cAAc,EAAE,OAAO,EACvB,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,iBAAiB,GAC5B,OAAO,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC;IAsBpB,kBAAkB,CAC7B,QAAQ,EAAE,eAAe,EACzB,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,OAAO,GACjB,OAAO,CAAC,aAAa,CAAC;cAkCA,cAAc,CACnC,IAAI,EAAE,aAAa,EACnB,SAAS,EAAE,eAAe,CAAC,GAAG,CAAC,EAC/B,KAAK,EAAE,GAAG,EACV,QAAQ,EAAE,eAAe,EACzB,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,iBAAiB,EAC3B,KAAK,UAAQ,EACb,WAAW,CAAC,EAAE,OAAO;cAoCA,aAAa,CAClC,IAAI,EAAE,WAAW,EACjB,OAAO,EAAE,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,EAChC,QAAQ,EAAE,eAAe,EACzB,aAAa,EAAE,GAAG,EAClB,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,iBAAiB,EAC3B,KAAK,UAAQ;;;;yBA/Ib,QAAE;;CAkLT"}
@@ -81,6 +81,7 @@ var import_AccessControlServer = require("../../behaviors/access-control/AccessC
81
81
  * Copyright 2022-2024 Matter.js Authors
82
82
  * SPDX-License-Identifier: Apache-2.0
83
83
  */
84
+ const logger = import_general.Logger.get("TransactionalInteractionServer");
84
85
  const activityKey = Symbol("activity");
85
86
  const AclClusterId = import_access_control.AccessControlCluster.id;
86
87
  const AclAttributeId = import_access_control.AccessControlCluster.attributes.acl.id;
@@ -91,7 +92,7 @@ class TransactionalInteractionServer extends import_protocol.InteractionServer {
91
92
  #activity;
92
93
  #newActivityBlocked = false;
93
94
  #aclServer;
94
- #aclUpdateIsDelayed = false;
95
+ #aclUpdateIsDelayedInExchange = /* @__PURE__ */ new Set();
95
96
  static async create(endpoint, sessions) {
96
97
  const structure = new import_protocol.InteractionEndpointStructure();
97
98
  return new TransactionalInteractionServer(endpoint, {
@@ -191,10 +192,27 @@ class TransactionalInteractionServer extends import_protocol.InteractionServer {
191
192
  }).act(readEvent);
192
193
  }
193
194
  async handleWriteRequest(exchange, writeRequest, message) {
194
- const result = await super.handleWriteRequest(exchange, writeRequest, message);
195
- if (this.#aclUpdateIsDelayed) {
196
- this.aclServer.aclUpdateDelayed = false;
197
- this.#aclUpdateIsDelayed = false;
195
+ let result;
196
+ try {
197
+ result = await super.handleWriteRequest(exchange, writeRequest, message);
198
+ } catch (error) {
199
+ if (this.#aclUpdateIsDelayedInExchange.has(exchange)) {
200
+ this.#aclUpdateIsDelayedInExchange.delete(exchange);
201
+ if (this.#aclUpdateIsDelayedInExchange.size === 0) {
202
+ this.aclServer.resetDelayedAccessControlList();
203
+ } else {
204
+ logger.error("One of multiple concurrent ACL writes failed, unhandled case for now.");
205
+ }
206
+ }
207
+ throw error;
208
+ }
209
+ if (this.#aclUpdateIsDelayedInExchange.has(exchange)) {
210
+ this.#aclUpdateIsDelayedInExchange.delete(exchange);
211
+ if (this.#aclUpdateIsDelayedInExchange.size === 0) {
212
+ this.aclServer.aclUpdateDelayed = false;
213
+ } else {
214
+ logger.info("Multiple concurrent ACL writes, waiting for all to finish.");
215
+ }
198
216
  }
199
217
  return result;
200
218
  }
@@ -202,10 +220,16 @@ class TransactionalInteractionServer extends import_protocol.InteractionServer {
202
220
  const writeAttribute = () => super.writeAttribute(path, attribute, value, exchange, message, endpoint, timed, isListWrite);
203
221
  if (path.endpointId === 0 && path.clusterId === AclClusterId && path.attributeId === AclAttributeId) {
204
222
  this.aclServer.aclUpdateDelayed = true;
205
- this.#aclUpdateIsDelayed = true;
206
- } else if (this.#aclUpdateIsDelayed) {
207
- this.aclServer.aclUpdateDelayed = false;
208
- this.#aclUpdateIsDelayed = false;
223
+ this.#aclUpdateIsDelayedInExchange.add(exchange);
224
+ } else {
225
+ if (this.#aclUpdateIsDelayedInExchange.has(exchange)) {
226
+ this.#aclUpdateIsDelayedInExchange.delete(exchange);
227
+ if (this.#aclUpdateIsDelayedInExchange.size === 0) {
228
+ this.aclServer.aclUpdateDelayed = false;
229
+ } else {
230
+ logger.info("Multiple concurrent ACL writes, waiting for all to finish.");
231
+ }
232
+ }
209
233
  }
210
234
  return (0, import_OnlineContext.OnlineContext)({
211
235
  activity: exchange[activityKey],
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/node/server/TransactionalInteractionServer.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
@@ -43,6 +43,7 @@ export declare class AccessControlServer extends AccessControlBehavior {
43
43
  * The AccessControlManager instance that is used to manage the ACL for this behavior.
44
44
  */
45
45
  get aclManager(): AccessControlManager;
46
+ resetDelayedAccessControlList(): void;
46
47
  /**
47
48
  * If set to true, the ACL will not be updated immediately when it changes, but only when the `aclUpdateDelayed`
48
49
  * property is set to false again.
@@ -1 +1 @@
1
- {"version":3,"file":"AccessControlServer.d.ts","sourceRoot":"","sources":["../../../../src/behaviors/access-control/AccessControlServer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACnE,OAAO,EAAE,aAAa,IAAI,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAE/E,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAErC,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAiB,yBAAyB,EAAE,MAAM,WAAW,CAAC;AAC9G,OAAO,EAEH,SAAS,EASZ,MAAM,QAAQ,CAAC;AAChB,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAInE;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,qBAAqB;;IAClD,QAAQ,EAAE,mBAAmB,CAAC,QAAQ,CAAC;IAEtC,UAAU;IAmSnB;;;;OAIG;IACH,eAAe,CACX,OAAO,EAAE,aAAa,EACtB,QAAQ,EAAE,aAAa,CAAC,QAAQ,EAChC,QAAQ,CAAC,EAAE,iBAAiB,GAC7B,WAAW,EAAE;IAoBhB;;;;;;;OAOG;IACH,SAAS,CAAC,uBAAuB,CAAC,SAAS,EAAE,kBAAkB,CAAC,sBAAsB;IActF;;;;;OAKG;IACH,SAAS,CAAC,yBAAyB,CAC/B,QAAQ,EAAE,kBAAkB,CAAC,kBAAkB,EAAE,EACjD,SAAS,EAAE,kBAAkB,CAAC,kBAAkB,EAChD,YAAY,EAAE,yBAAyB,EACvC,SAAS,EAAE,iBAAiB,EAC5B,UAAU,EAAE,SAAS;IAKzB;;OAEG;IACH,IAAI,UAAU,yBAKb;IAYD;;;;;OAKG;IACH,IAAI,gBAAgB,IAUQ,OAAO,CARlC;IAED;;;;;OAKG;IACH,IAAI,gBAAgB,CAAC,KAAK,EAAE,OAAO,EAMlC;CAWJ;AAED,yBAAiB,mBAAmB,CAAC;IACjC,MAAa,QAAQ;QACjB,2FAA2F;QAC3F,UAAU,CAAC,EAAE,oBAAoB,CAAC;QAElC,iHAAiH;QACjH,gBAAgB,UAAS;QAEzB,iCAAiC;QACjC,cAAc,CAAC,EAAE,kBAAkB,CAAC,kBAAkB,EAAE,CAAC;KAC5D;CACJ"}
1
+ {"version":3,"file":"AccessControlServer.d.ts","sourceRoot":"","sources":["../../../../src/behaviors/access-control/AccessControlServer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACnE,OAAO,EAAE,aAAa,IAAI,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAE/E,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAErC,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAiB,yBAAyB,EAAE,MAAM,WAAW,CAAC;AAC9G,OAAO,EAEH,SAAS,EASZ,MAAM,QAAQ,CAAC;AAChB,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAInE;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,qBAAqB;;IAClD,QAAQ,EAAE,mBAAmB,CAAC,QAAQ,CAAC;IAEtC,UAAU;IAmSnB;;;;OAIG;IACH,eAAe,CACX,OAAO,EAAE,aAAa,EACtB,QAAQ,EAAE,aAAa,CAAC,QAAQ,EAChC,QAAQ,CAAC,EAAE,iBAAiB,GAC7B,WAAW,EAAE;IAoBhB;;;;;;;OAOG;IACH,SAAS,CAAC,uBAAuB,CAAC,SAAS,EAAE,kBAAkB,CAAC,sBAAsB;IActF;;;;;OAKG;IACH,SAAS,CAAC,yBAAyB,CAC/B,QAAQ,EAAE,kBAAkB,CAAC,kBAAkB,EAAE,EACjD,SAAS,EAAE,kBAAkB,CAAC,kBAAkB,EAChD,YAAY,EAAE,yBAAyB,EACvC,SAAS,EAAE,iBAAiB,EAC5B,UAAU,EAAE,SAAS;IAKzB;;OAEG;IACH,IAAI,UAAU,yBAKb;IAYD,6BAA6B;IAK7B;;;;;OAKG;IACH,IAAI,gBAAgB,IAUQ,OAAO,CARlC;IAED;;;;;OAKG;IACH,IAAI,gBAAgB,CAAC,KAAK,EAAE,OAAO,EAQlC;CAWJ;AAED,yBAAiB,mBAAmB,CAAC;IACjC,MAAa,QAAQ;QACjB,2FAA2F;QAC3F,UAAU,CAAC,EAAE,oBAAoB,CAAC;QAElC,iHAAiH;QACjH,gBAAgB,UAAS;QAEzB,iCAAiC;QACjC,cAAc,CAAC,EAAE,kBAAkB,CAAC,kBAAkB,EAAE,CAAC;KAC5D;CACJ"}
@@ -314,6 +314,10 @@ class AccessControlServer extends AccessControlBehavior {
314
314
  this.internal.delayedAclData = acl;
315
315
  }
316
316
  }
317
+ resetDelayedAccessControlList() {
318
+ this.internal.delayedAclData = void 0;
319
+ this.aclUpdateDelayed = false;
320
+ }
317
321
  /**
318
322
  * If set to true, the ACL will not be updated immediately when it changes, but only when the `aclUpdateDelayed`
319
323
  * property is set to false again.
@@ -330,9 +334,11 @@ class AccessControlServer extends AccessControlBehavior {
330
334
  * removed again once we somehow handle relevant sub transactions.
331
335
  */
332
336
  set aclUpdateDelayed(value) {
333
- logger.info("Setting ACL update delayed to", value);
334
337
  if (!value) {
338
+ logger.info("Committing delayed ACL update");
335
339
  this.#updateDelayedAccessControlList();
340
+ } else if (!this.internal.aclUpdateDelayed) {
341
+ logger.info("Register ACL update to be delayed");
336
342
  }
337
343
  this.internal.aclUpdateDelayed = value;
338
344
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/behaviors/access-control/AccessControlServer.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["AccessControlServer"]
6
6
  }
@@ -1 +1 @@
1
- {"version":3,"file":"TransactionalInteractionServer.d.ts","sourceRoot":"","sources":["../../../../src/node/server/TransactionalInteractionServer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AASH,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAIjD,OAAO,EAEH,kBAAkB,EAClB,cAAc,EACd,aAAa,EACb,eAAe,EACf,WAAW,EACX,aAAa,EACb,iBAAiB,EACjB,SAAS,EACT,gBAAgB,EAEhB,kBAAkB,EAElB,iBAAiB,EAEjB,OAAO,EACP,eAAe,EACf,cAAc,EACd,YAAY,EACZ,aAAa,EAChB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uDAAuD,CAAC;AAC5F,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAW9C;;;;;;;;;;;GAWG;AACH,qBAAa,8BAA+B,SAAQ,iBAAiB;;WASpD,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,QAAQ,EAAE,cAAc;gBAa7E,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,kBAAkB;IA0B9E,CAAC,MAAM,CAAC,YAAY,CAAC;IAM3B,gBAAgB;IAID,aAAa,CAAC,QAAQ,EAAE,eAAe;IAiBtD,IAAI,SAAS,wBASZ;cAEwB,aAAa,CAClC,IAAI,EAAE,aAAa,EACnB,SAAS,EAAE,kBAAkB,CAAC,GAAG,CAAC,EAClC,QAAQ,EAAE,eAAe,EACzB,cAAc,EAAE,OAAO,EACvB,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,iBAAiB,EAC3B,OAAO,UAAQ;;;;cAsBM,SAAS,CAC9B,IAAI,EAAE,SAAS,EACf,YAAY,EAAE,cAAc,CAAC,OAAO,cAAc,CAAC,EAAE,GAAG,SAAS,EACjE,KAAK,EAAE,cAAc,CAAC,GAAG,EAAE,GAAG,CAAC,EAC/B,QAAQ,EAAE,eAAe,EACzB,cAAc,EAAE,OAAO,EACvB,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,iBAAiB,GAC5B,OAAO,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC;IAsBpB,kBAAkB,CAC7B,QAAQ,EAAE,eAAe,EACzB,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,OAAO,GACjB,OAAO,CAAC,aAAa,CAAC;cAWA,cAAc,CACnC,IAAI,EAAE,aAAa,EACnB,SAAS,EAAE,eAAe,CAAC,GAAG,CAAC,EAC/B,KAAK,EAAE,GAAG,EACV,QAAQ,EAAE,eAAe,EACzB,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,iBAAiB,EAC3B,KAAK,UAAQ,EACb,WAAW,CAAC,EAAE,OAAO;cA6BA,aAAa,CAClC,IAAI,EAAE,WAAW,EACjB,OAAO,EAAE,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,EAChC,QAAQ,EAAE,eAAe,EACzB,aAAa,EAAE,GAAG,EAClB,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,iBAAiB,EAC3B,KAAK,UAAQ;;;;yBA7Gb,QAAO;;CAgJd"}
1
+ {"version":3,"file":"TransactionalInteractionServer.d.ts","sourceRoot":"","sources":["../../../../src/node/server/TransactionalInteractionServer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AASH,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAIjD,OAAO,EAEH,kBAAkB,EAClB,cAAc,EACd,aAAa,EACb,eAAe,EACf,WAAW,EACX,aAAa,EACb,iBAAiB,EACjB,SAAS,EACT,gBAAgB,EAEhB,kBAAkB,EAElB,iBAAiB,EAEjB,OAAO,EACP,eAAe,EACf,cAAc,EACd,YAAY,EACZ,aAAa,EAChB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uDAAuD,CAAC;AAC5F,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAa9C;;;;;;;;;;;GAWG;AACH,qBAAa,8BAA+B,SAAQ,iBAAiB;;WASpD,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,QAAQ,EAAE,cAAc;gBAa7E,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,kBAAkB;IA0B9E,CAAC,MAAM,CAAC,YAAY,CAAC;IAM3B,gBAAgB;IAID,aAAa,CAAC,QAAQ,EAAE,eAAe;IAiBtD,IAAI,SAAS,wBASZ;cAEwB,aAAa,CAClC,IAAI,EAAE,aAAa,EACnB,SAAS,EAAE,kBAAkB,CAAC,GAAG,CAAC,EAClC,QAAQ,EAAE,eAAe,EACzB,cAAc,EAAE,OAAO,EACvB,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,iBAAiB,EAC3B,OAAO,UAAQ;;;;cAsBM,SAAS,CAC9B,IAAI,EAAE,SAAS,EACf,YAAY,EAAE,cAAc,CAAC,OAAO,cAAc,CAAC,EAAE,GAAG,SAAS,EACjE,KAAK,EAAE,cAAc,CAAC,GAAG,EAAE,GAAG,CAAC,EAC/B,QAAQ,EAAE,eAAe,EACzB,cAAc,EAAE,OAAO,EACvB,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,iBAAiB,GAC5B,OAAO,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC;IAsBpB,kBAAkB,CAC7B,QAAQ,EAAE,eAAe,EACzB,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,OAAO,GACjB,OAAO,CAAC,aAAa,CAAC;cAkCA,cAAc,CACnC,IAAI,EAAE,aAAa,EACnB,SAAS,EAAE,eAAe,CAAC,GAAG,CAAC,EAC/B,KAAK,EAAE,GAAG,EACV,QAAQ,EAAE,eAAe,EACzB,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,iBAAiB,EAC3B,KAAK,UAAQ,EACb,WAAW,CAAC,EAAE,OAAO;cAoCA,aAAa,CAClC,IAAI,EAAE,WAAW,EACjB,OAAO,EAAE,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,EAChC,QAAQ,EAAE,eAAe,EACzB,aAAa,EAAE,GAAG,EAClB,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,iBAAiB,EAC3B,KAAK,UAAQ;;;;yBA/Ib,QAAE;;CAkLT"}
@@ -55,7 +55,7 @@ import { OnlineContext } from "#behavior/context/server/OnlineContext.js";
55
55
  import { AccessControlCluster } from "#clusters/access-control";
56
56
  import { EndpointServer } from "#endpoint/EndpointServer.js";
57
57
  import { EndpointLifecycle } from "#endpoint/properties/EndpointLifecycle.js";
58
- import { Diagnostic, InternalError, MaybePromise } from "#general";
58
+ import { Diagnostic, InternalError, Logger, MaybePromise } from "#general";
59
59
  import {
60
60
  AccessDeniedError,
61
61
  ExchangeManager,
@@ -64,6 +64,7 @@ import {
64
64
  InteractionServerMessenger
65
65
  } from "#protocol";
66
66
  import { AccessControlServer } from "../../behaviors/access-control/AccessControlServer.js";
67
+ const logger = Logger.get("TransactionalInteractionServer");
67
68
  const activityKey = Symbol("activity");
68
69
  const AclClusterId = AccessControlCluster.id;
69
70
  const AclAttributeId = AccessControlCluster.attributes.acl.id;
@@ -74,7 +75,7 @@ class TransactionalInteractionServer extends InteractionServer {
74
75
  #activity;
75
76
  #newActivityBlocked = false;
76
77
  #aclServer;
77
- #aclUpdateIsDelayed = false;
78
+ #aclUpdateIsDelayedInExchange = /* @__PURE__ */ new Set();
78
79
  static async create(endpoint, sessions) {
79
80
  const structure = new InteractionEndpointStructure();
80
81
  return new TransactionalInteractionServer(endpoint, {
@@ -174,10 +175,27 @@ class TransactionalInteractionServer extends InteractionServer {
174
175
  }).act(readEvent);
175
176
  }
176
177
  async handleWriteRequest(exchange, writeRequest, message) {
177
- const result = await super.handleWriteRequest(exchange, writeRequest, message);
178
- if (this.#aclUpdateIsDelayed) {
179
- this.aclServer.aclUpdateDelayed = false;
180
- this.#aclUpdateIsDelayed = false;
178
+ let result;
179
+ try {
180
+ result = await super.handleWriteRequest(exchange, writeRequest, message);
181
+ } catch (error) {
182
+ if (this.#aclUpdateIsDelayedInExchange.has(exchange)) {
183
+ this.#aclUpdateIsDelayedInExchange.delete(exchange);
184
+ if (this.#aclUpdateIsDelayedInExchange.size === 0) {
185
+ this.aclServer.resetDelayedAccessControlList();
186
+ } else {
187
+ logger.error("One of multiple concurrent ACL writes failed, unhandled case for now.");
188
+ }
189
+ }
190
+ throw error;
191
+ }
192
+ if (this.#aclUpdateIsDelayedInExchange.has(exchange)) {
193
+ this.#aclUpdateIsDelayedInExchange.delete(exchange);
194
+ if (this.#aclUpdateIsDelayedInExchange.size === 0) {
195
+ this.aclServer.aclUpdateDelayed = false;
196
+ } else {
197
+ logger.info("Multiple concurrent ACL writes, waiting for all to finish.");
198
+ }
181
199
  }
182
200
  return result;
183
201
  }
@@ -185,10 +203,16 @@ class TransactionalInteractionServer extends InteractionServer {
185
203
  const writeAttribute = () => super.writeAttribute(path, attribute, value, exchange, message, endpoint, timed, isListWrite);
186
204
  if (path.endpointId === 0 && path.clusterId === AclClusterId && path.attributeId === AclAttributeId) {
187
205
  this.aclServer.aclUpdateDelayed = true;
188
- this.#aclUpdateIsDelayed = true;
189
- } else if (this.#aclUpdateIsDelayed) {
190
- this.aclServer.aclUpdateDelayed = false;
191
- this.#aclUpdateIsDelayed = false;
206
+ this.#aclUpdateIsDelayedInExchange.add(exchange);
207
+ } else {
208
+ if (this.#aclUpdateIsDelayedInExchange.has(exchange)) {
209
+ this.#aclUpdateIsDelayedInExchange.delete(exchange);
210
+ if (this.#aclUpdateIsDelayedInExchange.size === 0) {
211
+ this.aclServer.aclUpdateDelayed = false;
212
+ } else {
213
+ logger.info("Multiple concurrent ACL writes, waiting for all to finish.");
214
+ }
215
+ }
192
216
  }
193
217
  return OnlineContext({
194
218
  activity: exchange[activityKey],
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/node/server/TransactionalInteractionServer.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@matter/node",
3
- "version": "0.11.6",
3
+ "version": "0.11.7",
4
4
  "description": "API for building Matter nodes",
5
5
  "keywords": [
6
6
  "iot",
@@ -43,14 +43,14 @@
43
43
  },
44
44
  "dependencies": {
45
45
  "@noble/curves": "^1.7.0",
46
- "@matter/general": "0.11.6",
47
- "@matter/model": "0.11.6",
48
- "@matter/types": "0.11.6",
49
- "@matter/protocol": "0.11.6"
46
+ "@matter/general": "0.11.7",
47
+ "@matter/model": "0.11.7",
48
+ "@matter/types": "0.11.7",
49
+ "@matter/protocol": "0.11.7"
50
50
  },
51
51
  "devDependencies": {
52
- "@matter/tools": "0.11.6",
53
- "@matter/testing": "0.11.6"
52
+ "@matter/tools": "0.11.7",
53
+ "@matter/testing": "0.11.7"
54
54
  },
55
55
  "files": [
56
56
  "dist/**/*",
@@ -411,6 +411,11 @@ export class AccessControlServer extends AccessControlBehavior {
411
411
  }
412
412
  }
413
413
 
414
+ resetDelayedAccessControlList() {
415
+ this.internal.delayedAclData = undefined;
416
+ this.aclUpdateDelayed = false;
417
+ }
418
+
414
419
  /**
415
420
  * If set to true, the ACL will not be updated immediately when it changes, but only when the `aclUpdateDelayed`
416
421
  * property is set to false again.
@@ -428,9 +433,11 @@ export class AccessControlServer extends AccessControlBehavior {
428
433
  * removed again once we somehow handle relevant sub transactions.
429
434
  */
430
435
  set aclUpdateDelayed(value: boolean) {
431
- logger.info("Setting ACL update delayed to", value);
432
436
  if (!value) {
437
+ logger.info("Committing delayed ACL update");
433
438
  this.#updateDelayedAccessControlList();
439
+ } else if (!this.internal.aclUpdateDelayed) {
440
+ logger.info("Register ACL update to be delayed");
434
441
  }
435
442
  this.internal.aclUpdateDelayed = value;
436
443
  }
@@ -14,7 +14,7 @@ import { AccessControlCluster } from "#clusters/access-control";
14
14
  import { Endpoint } from "#endpoint/Endpoint.js";
15
15
  import { EndpointServer } from "#endpoint/EndpointServer.js";
16
16
  import { EndpointLifecycle } from "#endpoint/properties/EndpointLifecycle.js";
17
- import { Diagnostic, InternalError, MaybePromise } from "#general";
17
+ import { Diagnostic, InternalError, Logger, MaybePromise } from "#general";
18
18
  import {
19
19
  AccessDeniedError,
20
20
  AnyAttributeServer,
@@ -41,6 +41,8 @@ import { TlvEventFilter, TypeFromSchema } from "#types";
41
41
  import { AccessControlServer } from "../../behaviors/access-control/AccessControlServer.js";
42
42
  import { ServerNode } from "../ServerNode.js";
43
43
 
44
+ const logger = Logger.get("TransactionalInteractionServer");
45
+
44
46
  const activityKey = Symbol("activity");
45
47
 
46
48
  interface WithActivity {
@@ -69,7 +71,7 @@ export class TransactionalInteractionServer extends InteractionServer {
69
71
  #activity: NodeActivity;
70
72
  #newActivityBlocked = false;
71
73
  #aclServer?: AccessControlServer;
72
- #aclUpdateIsDelayed = false;
74
+ #aclUpdateIsDelayedInExchange = new Set<MessageExchange>();
73
75
 
74
76
  static async create(endpoint: Endpoint<ServerNode.RootEndpoint>, sessions: SessionManager) {
75
77
  const structure = new InteractionEndpointStructure();
@@ -212,13 +214,36 @@ export class TransactionalInteractionServer extends InteractionServer {
212
214
  writeRequest: WriteRequest,
213
215
  message: Message,
214
216
  ): Promise<WriteResponse> {
215
- const result = await super.handleWriteRequest(exchange, writeRequest, message);
216
-
217
- // We delayed the ACL update during the write transaction, so we need to update it now that anything is written
218
- if (this.#aclUpdateIsDelayed) {
219
- this.aclServer.aclUpdateDelayed = false;
220
- this.#aclUpdateIsDelayed = false;
217
+ let result: WriteResponse;
218
+ try {
219
+ result = await super.handleWriteRequest(exchange, writeRequest, message);
220
+ } catch (error) {
221
+ if (this.#aclUpdateIsDelayedInExchange.has(exchange)) {
222
+ // Unlikely to get there at all, but make sure we handle it best we can for now
223
+ this.#aclUpdateIsDelayedInExchange.delete(exchange);
224
+
225
+ if (this.#aclUpdateIsDelayedInExchange.size === 0) {
226
+ // only that one ACl change in flight, so we can reset the delayed ACL
227
+ this.aclServer.resetDelayedAccessControlList();
228
+ } else {
229
+ // TODO: we should restore the delayed data just for this errored fabric?
230
+ logger.error("One of multiple concurrent ACL writes failed, unhandled case for now.");
231
+ }
232
+ }
233
+ throw error;
221
234
  }
235
+ // We delayed the ACL update during this write transaction, so we need to update it now that anything is written
236
+ if (this.#aclUpdateIsDelayedInExchange.has(exchange)) {
237
+ this.#aclUpdateIsDelayedInExchange.delete(exchange);
238
+
239
+ if (this.#aclUpdateIsDelayedInExchange.size === 0) {
240
+ // Committing the ACL changes in case of an unhandled exception might be dangerous, but we do it anyway
241
+ this.aclServer.aclUpdateDelayed = false;
242
+ } else {
243
+ logger.info("Multiple concurrent ACL writes, waiting for all to finish.");
244
+ }
245
+ }
246
+
222
247
  return result;
223
248
  }
224
249
 
@@ -239,11 +264,18 @@ export class TransactionalInteractionServer extends InteractionServer {
239
264
  // This is a hack to prevent the ACL from updating while we are in the middle of a write transaction
240
265
  // and is needed because Acl should not become effective during writing of the ACL itself.
241
266
  this.aclServer.aclUpdateDelayed = true;
242
- this.#aclUpdateIsDelayed = true;
243
- } else if (this.#aclUpdateIsDelayed) {
267
+ this.#aclUpdateIsDelayedInExchange.add(exchange);
268
+ } else {
244
269
  // Ok it seems that acl was written, but we now write another path, so we can update Acl attribute now
245
- this.aclServer.aclUpdateDelayed = false;
246
- this.#aclUpdateIsDelayed = false;
270
+ if (this.#aclUpdateIsDelayedInExchange.has(exchange)) {
271
+ this.#aclUpdateIsDelayedInExchange.delete(exchange);
272
+
273
+ if (this.#aclUpdateIsDelayedInExchange.size === 0) {
274
+ this.aclServer.aclUpdateDelayed = false;
275
+ } else {
276
+ logger.info("Multiple concurrent ACL writes, waiting for all to finish.");
277
+ }
278
+ }
247
279
  }
248
280
 
249
281
  return OnlineContext({