@matter/model 0.17.4 → 0.17.5-alpha.0-20260702-a2cd6f764
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/aspects/Quality.d.ts +1 -1
- package/dist/cjs/common/DeviceClassification.d.ts +6 -6
- package/dist/cjs/common/Specification.d.ts +2 -2
- package/dist/cjs/common/Specification.js +2 -2
- package/dist/cjs/dts/Specifications.d.ts +17 -0
- package/dist/cjs/logic/cluster-variance/InferredComponents.js +32 -2
- package/dist/cjs/logic/cluster-variance/InferredComponents.js.map +1 -1
- package/dist/cjs/models/Globals.d.ts +7 -0
- package/dist/cjs/models/Globals.d.ts.map +1 -1
- package/dist/cjs/standard/elements/access-control.element.d.ts.map +1 -1
- package/dist/cjs/standard/elements/access-control.element.js +26 -2
- package/dist/cjs/standard/elements/access-control.element.js.map +1 -1
- package/dist/cjs/standard/elements/ambient-context-sensing.element.d.ts +8 -0
- package/dist/cjs/standard/elements/ambient-context-sensing.element.d.ts.map +1 -0
- package/dist/cjs/standard/elements/ambient-context-sensing.element.js +186 -0
- package/dist/cjs/standard/elements/ambient-context-sensing.element.js.map +6 -0
- package/dist/cjs/standard/elements/base.element.js +1 -1
- package/dist/cjs/standard/elements/base.element.js.map +1 -1
- package/dist/cjs/standard/elements/basic-information.element.d.ts.map +1 -1
- package/dist/cjs/standard/elements/basic-information.element.js +24 -2
- package/dist/cjs/standard/elements/basic-information.element.js.map +1 -1
- package/dist/cjs/standard/elements/boolean-state-configuration.element.d.ts.map +1 -1
- package/dist/cjs/standard/elements/boolean-state-configuration.element.js +4 -3
- package/dist/cjs/standard/elements/boolean-state-configuration.element.js.map +1 -1
- package/dist/cjs/standard/elements/boolean-state.element.d.ts.map +1 -1
- package/dist/cjs/standard/elements/boolean-state.element.js +6 -2
- package/dist/cjs/standard/elements/boolean-state.element.js.map +2 -2
- package/dist/cjs/standard/elements/bridged-device-basic-information.element.js +2 -2
- package/dist/cjs/standard/elements/bridged-device-basic-information.element.js.map +1 -1
- package/dist/cjs/standard/elements/camera-av-stream-management.element.d.ts.map +1 -1
- package/dist/cjs/standard/elements/camera-av-stream-management.element.js +13 -3
- package/dist/cjs/standard/elements/camera-av-stream-management.element.js.map +1 -1
- package/dist/cjs/standard/elements/certification-type-enum.element.d.ts +8 -0
- package/dist/cjs/standard/elements/certification-type-enum.element.d.ts.map +1 -0
- package/dist/cjs/standard/elements/certification-type-enum.element.js +38 -0
- package/dist/cjs/standard/elements/certification-type-enum.element.js.map +6 -0
- package/dist/cjs/standard/elements/chime-cluster.element.js +2 -2
- package/dist/cjs/standard/elements/chime-cluster.element.js.map +1 -1
- package/dist/cjs/standard/elements/closure-controller.element.d.ts.map +1 -1
- package/dist/cjs/standard/elements/closure-controller.element.js +0 -1
- package/dist/cjs/standard/elements/closure-controller.element.js.map +1 -1
- package/dist/cjs/standard/elements/concentration-measurement.element.d.ts.map +1 -1
- package/dist/cjs/standard/elements/concentration-measurement.element.js +12 -4
- package/dist/cjs/standard/elements/concentration-measurement.element.js.map +1 -1
- package/dist/cjs/standard/elements/content-launcher.element.js +7 -7
- package/dist/cjs/standard/elements/content-launcher.element.js.map +1 -1
- package/dist/cjs/standard/elements/definitions.d.ts +7 -0
- package/dist/cjs/standard/elements/definitions.d.ts.map +1 -1
- package/dist/cjs/standard/elements/definitions.js +7 -0
- package/dist/cjs/standard/elements/definitions.js.map +1 -1
- package/dist/cjs/standard/elements/flow-measurement.element.d.ts.map +1 -1
- package/dist/cjs/standard/elements/flow-measurement.element.js +13 -4
- package/dist/cjs/standard/elements/flow-measurement.element.js.map +1 -1
- package/dist/cjs/standard/elements/general-commissioning.element.d.ts.map +1 -1
- package/dist/cjs/standard/elements/general-commissioning.element.js +6 -4
- package/dist/cjs/standard/elements/general-commissioning.element.js.map +1 -1
- package/dist/cjs/standard/elements/general-diagnostics.element.d.ts.map +1 -1
- package/dist/cjs/standard/elements/general-diagnostics.element.js +17 -1
- package/dist/cjs/standard/elements/general-diagnostics.element.js.map +1 -1
- package/dist/cjs/standard/elements/group-key-management.element.d.ts.map +1 -1
- package/dist/cjs/standard/elements/group-key-management.element.js +21 -3
- package/dist/cjs/standard/elements/group-key-management.element.js.map +1 -1
- package/dist/cjs/standard/elements/groupcast.element.d.ts +8 -0
- package/dist/cjs/standard/elements/groupcast.element.d.ts.map +1 -0
- package/dist/cjs/standard/elements/groupcast.element.js +198 -0
- package/dist/cjs/standard/elements/groupcast.element.js.map +6 -0
- package/dist/cjs/standard/elements/identified-human-activity.element.d.ts +8 -0
- package/dist/cjs/standard/elements/identified-human-activity.element.d.ts.map +1 -0
- package/dist/cjs/standard/elements/identified-human-activity.element.js +45 -0
- package/dist/cjs/standard/elements/identified-human-activity.element.js.map +6 -0
- package/dist/cjs/standard/elements/identified-object.element.d.ts +8 -0
- package/dist/cjs/standard/elements/identified-object.element.d.ts.map +1 -0
- package/dist/cjs/standard/elements/identified-object.element.js +48 -0
- package/dist/cjs/standard/elements/identified-object.element.js.map +6 -0
- package/dist/cjs/standard/elements/identified-sound.element.d.ts +8 -0
- package/dist/cjs/standard/elements/identified-sound.element.d.ts.map +1 -0
- package/dist/cjs/standard/elements/identified-sound.element.js +57 -0
- package/dist/cjs/standard/elements/identified-sound.element.js.map +6 -0
- package/dist/cjs/standard/elements/illuminance-measurement.element.d.ts.map +1 -1
- package/dist/cjs/standard/elements/illuminance-measurement.element.js +13 -5
- package/dist/cjs/standard/elements/illuminance-measurement.element.js.map +1 -1
- package/dist/cjs/standard/elements/joint-fabric-administrator-cluster.element.d.ts.map +1 -1
- package/dist/cjs/standard/elements/joint-fabric-administrator-cluster.element.js +20 -18
- package/dist/cjs/standard/elements/joint-fabric-administrator-cluster.element.js.map +1 -1
- package/dist/cjs/standard/elements/joint-fabric-datastore.element.d.ts.map +1 -1
- package/dist/cjs/standard/elements/joint-fabric-datastore.element.js +143 -62
- package/dist/cjs/standard/elements/joint-fabric-datastore.element.js.map +1 -1
- package/dist/cjs/standard/elements/mode-base.element.js +1 -1
- package/dist/cjs/standard/elements/mode-base.element.js.map +1 -1
- package/dist/cjs/standard/elements/models.d.ts +7 -0
- package/dist/cjs/standard/elements/models.d.ts.map +1 -1
- package/dist/cjs/standard/elements/models.js +14 -0
- package/dist/cjs/standard/elements/models.js.map +1 -1
- package/dist/cjs/standard/elements/namespace.element.d.ts.map +1 -1
- package/dist/cjs/standard/elements/namespace.element.js +4 -1
- package/dist/cjs/standard/elements/namespace.element.js.map +1 -1
- package/dist/cjs/standard/elements/network-commissioning.element.js +14 -14
- package/dist/cjs/standard/elements/network-commissioning.element.js.map +1 -1
- package/dist/cjs/standard/elements/network-infrastructure-manager.element.d.ts.map +1 -1
- package/dist/cjs/standard/elements/network-infrastructure-manager.element.js +6 -0
- package/dist/cjs/standard/elements/network-infrastructure-manager.element.js.map +1 -1
- package/dist/cjs/standard/elements/occupancy-sensing.element.d.ts.map +1 -1
- package/dist/cjs/standard/elements/occupancy-sensing.element.js +4 -3
- package/dist/cjs/standard/elements/occupancy-sensing.element.js.map +1 -1
- package/dist/cjs/standard/elements/power-topology.element.d.ts.map +1 -1
- package/dist/cjs/standard/elements/power-topology.element.js +0 -7
- package/dist/cjs/standard/elements/power-topology.element.js.map +2 -2
- package/dist/cjs/standard/elements/pressure-measurement.element.d.ts.map +1 -1
- package/dist/cjs/standard/elements/pressure-measurement.element.js +18 -8
- package/dist/cjs/standard/elements/pressure-measurement.element.js.map +1 -1
- package/dist/cjs/standard/elements/push-av-stream-transport.element.d.ts.map +1 -1
- package/dist/cjs/standard/elements/push-av-stream-transport.element.js +1 -3
- package/dist/cjs/standard/elements/push-av-stream-transport.element.js.map +1 -1
- package/dist/cjs/standard/elements/rain-sensor.element.d.ts.map +1 -1
- package/dist/cjs/standard/elements/rain-sensor.element.js +3 -2
- package/dist/cjs/standard/elements/rain-sensor.element.js.map +1 -1
- package/dist/cjs/standard/elements/refrigerator-device.element.d.ts.map +1 -1
- package/dist/cjs/standard/elements/refrigerator-device.element.js +4 -1
- package/dist/cjs/standard/elements/refrigerator-device.element.js.map +1 -1
- package/dist/cjs/standard/elements/relative-humidity-measurement.element.d.ts.map +1 -1
- package/dist/cjs/standard/elements/relative-humidity-measurement.element.js +12 -4
- package/dist/cjs/standard/elements/relative-humidity-measurement.element.js.map +1 -1
- package/dist/cjs/standard/elements/root-node.element.js +1 -1
- package/dist/cjs/standard/elements/root-node.element.js.map +1 -1
- package/dist/cjs/standard/elements/smoke-co-alarm-cluster.element.d.ts.map +1 -1
- package/dist/cjs/standard/elements/smoke-co-alarm-cluster.element.js +4 -2
- package/dist/cjs/standard/elements/smoke-co-alarm-cluster.element.js.map +1 -1
- package/dist/cjs/standard/elements/software-diagnostics.element.d.ts.map +1 -1
- package/dist/cjs/standard/elements/software-diagnostics.element.js +12 -4
- package/dist/cjs/standard/elements/software-diagnostics.element.js.map +1 -1
- package/dist/cjs/standard/elements/temperature-alarm.element.d.ts +8 -0
- package/dist/cjs/standard/elements/temperature-alarm.element.d.ts.map +1 -0
- package/dist/cjs/standard/elements/temperature-alarm.element.js +160 -0
- package/dist/cjs/standard/elements/temperature-alarm.element.js.map +6 -0
- package/dist/cjs/standard/elements/temperature-controlled-cabinet.element.d.ts.map +1 -1
- package/dist/cjs/standard/elements/temperature-controlled-cabinet.element.js +2 -1
- package/dist/cjs/standard/elements/temperature-controlled-cabinet.element.js.map +1 -1
- package/dist/cjs/standard/elements/temperature-measurement.element.d.ts.map +1 -1
- package/dist/cjs/standard/elements/temperature-measurement.element.js +13 -4
- package/dist/cjs/standard/elements/temperature-measurement.element.js.map +1 -1
- package/dist/cjs/standard/elements/thermostat-cluster.element.d.ts.map +1 -1
- package/dist/cjs/standard/elements/thermostat-cluster.element.js +143 -3
- package/dist/cjs/standard/elements/thermostat-cluster.element.js.map +2 -2
- package/dist/cjs/standard/elements/thermostat-device.element.d.ts.map +1 -1
- package/dist/cjs/standard/elements/thermostat-device.element.js +3 -2
- package/dist/cjs/standard/elements/thermostat-device.element.js.map +1 -1
- package/dist/cjs/standard/elements/water-freeze-detector.element.d.ts.map +1 -1
- package/dist/cjs/standard/elements/water-freeze-detector.element.js +3 -2
- package/dist/cjs/standard/elements/water-freeze-detector.element.js.map +1 -1
- package/dist/cjs/standard/elements/water-leak-detector.element.d.ts.map +1 -1
- package/dist/cjs/standard/elements/water-leak-detector.element.js +3 -2
- package/dist/cjs/standard/elements/water-leak-detector.element.js.map +1 -1
- package/dist/cjs/standard/elements/web-rtc-transport-provider.element.d.ts.map +1 -1
- package/dist/cjs/standard/elements/web-rtc-transport-provider.element.js +0 -8
- package/dist/cjs/standard/elements/web-rtc-transport-provider.element.js.map +2 -2
- package/dist/cjs/standard/resources/access-control.resource.js +68 -21
- package/dist/cjs/standard/resources/access-control.resource.js.map +1 -1
- package/dist/cjs/standard/resources/account-login.resource.js +3 -3
- package/dist/cjs/standard/resources/ambient-context-sensing.resource.d.ts +7 -0
- package/dist/cjs/standard/resources/ambient-context-sensing.resource.d.ts.map +1 -0
- package/dist/cjs/standard/resources/ambient-context-sensing.resource.js +241 -0
- package/dist/cjs/standard/resources/ambient-context-sensing.resource.js.map +6 -0
- package/dist/cjs/standard/resources/base.resource.js +38 -8
- package/dist/cjs/standard/resources/base.resource.js.map +1 -1
- package/dist/cjs/standard/resources/basic-information.resource.js +24 -0
- package/dist/cjs/standard/resources/basic-information.resource.js.map +1 -1
- package/dist/cjs/standard/resources/boolean-state-configuration.resource.js +7 -1
- package/dist/cjs/standard/resources/boolean-state-configuration.resource.js.map +1 -1
- package/dist/cjs/standard/resources/boolean-state.resource.js +14 -3
- package/dist/cjs/standard/resources/boolean-state.resource.js.map +1 -1
- package/dist/cjs/standard/resources/camera-av-stream-management.resource.js +7 -1
- package/dist/cjs/standard/resources/camera-av-stream-management.resource.js.map +1 -1
- package/dist/cjs/standard/resources/certification-type-enum.resource.d.ts +7 -0
- package/dist/cjs/standard/resources/certification-type-enum.resource.d.ts.map +1 -0
- package/dist/cjs/standard/resources/certification-type-enum.resource.js +22 -0
- package/dist/cjs/standard/resources/certification-type-enum.resource.js.map +6 -0
- package/dist/cjs/standard/resources/closure-controller.resource.js +0 -1
- package/dist/cjs/standard/resources/closure-controller.resource.js.map +1 -1
- package/dist/cjs/standard/resources/color-control.resource.js +12 -12
- package/dist/cjs/standard/resources/color-control.resource.js.map +1 -1
- package/dist/cjs/standard/resources/energy-preference.resource.js +1 -1
- package/dist/cjs/standard/resources/energy-preference.resource.js.map +1 -1
- package/dist/cjs/standard/resources/general-commissioning.resource.js +2 -2
- package/dist/cjs/standard/resources/general-diagnostics.resource.js +44 -0
- package/dist/cjs/standard/resources/general-diagnostics.resource.js.map +1 -1
- package/dist/cjs/standard/resources/group-key-management.resource.js +37 -15
- package/dist/cjs/standard/resources/group-key-management.resource.js.map +1 -1
- package/dist/cjs/standard/resources/groupcast.resource.d.ts +7 -0
- package/dist/cjs/standard/resources/groupcast.resource.d.ts.map +1 -0
- package/dist/cjs/standard/resources/groupcast.resource.js +375 -0
- package/dist/cjs/standard/resources/groupcast.resource.js.map +6 -0
- package/dist/cjs/standard/resources/groups.resource.js +1 -1
- package/dist/cjs/standard/resources/groups.resource.js.map +1 -1
- package/dist/cjs/standard/resources/icd-management.resource.js +1 -1
- package/dist/cjs/standard/resources/icd-management.resource.js.map +1 -1
- package/dist/cjs/standard/resources/identified-human-activity.resource.d.ts +7 -0
- package/dist/cjs/standard/resources/identified-human-activity.resource.d.ts.map +1 -0
- package/dist/cjs/standard/resources/identified-human-activity.resource.js +26 -0
- package/dist/cjs/standard/resources/identified-human-activity.resource.js.map +6 -0
- package/dist/cjs/standard/resources/identified-object.resource.d.ts +7 -0
- package/dist/cjs/standard/resources/identified-object.resource.d.ts.map +1 -0
- package/dist/cjs/standard/resources/identified-object.resource.js +29 -0
- package/dist/cjs/standard/resources/identified-object.resource.js.map +6 -0
- package/dist/cjs/standard/resources/identified-sound.resource.d.ts +7 -0
- package/dist/cjs/standard/resources/identified-sound.resource.d.ts.map +1 -0
- package/dist/cjs/standard/resources/identified-sound.resource.js +42 -0
- package/dist/cjs/standard/resources/identified-sound.resource.js.map +6 -0
- package/dist/cjs/standard/resources/index.d.ts +7 -0
- package/dist/cjs/standard/resources/index.d.ts.map +1 -1
- package/dist/cjs/standard/resources/index.js +7 -0
- package/dist/cjs/standard/resources/index.js.map +1 -1
- package/dist/cjs/standard/resources/joint-fabric-administrator-cluster.resource.js +23 -18
- package/dist/cjs/standard/resources/joint-fabric-administrator-cluster.resource.js.map +1 -1
- package/dist/cjs/standard/resources/joint-fabric-datastore.resource.js +353 -39
- package/dist/cjs/standard/resources/joint-fabric-datastore.resource.js.map +1 -1
- package/dist/cjs/standard/resources/mode-base.resource.js +1 -1
- package/dist/cjs/standard/resources/namespace.resource.js +15 -0
- package/dist/cjs/standard/resources/namespace.resource.js.map +1 -1
- package/dist/cjs/standard/resources/network-commissioning.resource.js +13 -13
- package/dist/cjs/standard/resources/network-commissioning.resource.js.map +1 -1
- package/dist/cjs/standard/resources/network-infrastructure-manager.resource.js +12 -6
- package/dist/cjs/standard/resources/network-infrastructure-manager.resource.js.map +1 -1
- package/dist/cjs/standard/resources/occupancy-sensing.resource.js +2 -1
- package/dist/cjs/standard/resources/occupancy-sensing.resource.js.map +1 -1
- package/dist/cjs/standard/resources/on-off.resource.js +2 -2
- package/dist/cjs/standard/resources/on-off.resource.js.map +1 -1
- package/dist/cjs/standard/resources/oven-mode.resource.js +1 -1
- package/dist/cjs/standard/resources/oven-mode.resource.js.map +1 -1
- package/dist/cjs/standard/resources/power-topology.resource.js +2 -28
- package/dist/cjs/standard/resources/power-topology.resource.js.map +1 -1
- package/dist/cjs/standard/resources/push-av-stream-transport.resource.js +3 -15
- package/dist/cjs/standard/resources/push-av-stream-transport.resource.js.map +1 -1
- package/dist/cjs/standard/resources/refrigerator-device.resource.js +1 -0
- package/dist/cjs/standard/resources/refrigerator-device.resource.js.map +1 -1
- package/dist/cjs/standard/resources/smoke-co-alarm-cluster.resource.js +10 -2
- package/dist/cjs/standard/resources/smoke-co-alarm-cluster.resource.js.map +1 -1
- package/dist/cjs/standard/resources/temperature-alarm.resource.d.ts +7 -0
- package/dist/cjs/standard/resources/temperature-alarm.resource.d.ts.map +1 -0
- package/dist/cjs/standard/resources/temperature-alarm.resource.js +183 -0
- package/dist/cjs/standard/resources/temperature-alarm.resource.js.map +6 -0
- package/dist/cjs/standard/resources/temperature-controlled-cabinet.resource.js +1 -0
- package/dist/cjs/standard/resources/temperature-controlled-cabinet.resource.js.map +1 -1
- package/dist/cjs/standard/resources/thermostat-cluster.resource.js +459 -135
- package/dist/cjs/standard/resources/thermostat-cluster.resource.js.map +1 -1
- package/dist/cjs/standard/resources/thermostat-device.resource.js +2 -1
- package/dist/cjs/standard/resources/thermostat-device.resource.js.map +1 -1
- package/dist/cjs/standard/resources/web-rtc-transport-definitions.resource.js +21 -21
- package/dist/cjs/standard/resources/web-rtc-transport-provider.resource.js +42 -80
- package/dist/cjs/standard/resources/web-rtc-transport-provider.resource.js.map +1 -1
- package/dist/cjs/standard/resources/window-covering-cluster.resource.js +14 -14
- package/dist/esm/aspects/Quality.d.ts +1 -1
- package/dist/esm/common/DeviceClassification.d.ts +6 -6
- package/dist/esm/common/Specification.d.ts +2 -2
- package/dist/esm/common/Specification.js +2 -2
- package/dist/esm/dts/Specifications.d.ts +17 -0
- package/dist/esm/logic/cluster-variance/InferredComponents.js +32 -2
- package/dist/esm/logic/cluster-variance/InferredComponents.js.map +1 -1
- package/dist/esm/models/Globals.d.ts +7 -0
- package/dist/esm/models/Globals.d.ts.map +1 -1
- package/dist/esm/standard/elements/access-control.element.d.ts.map +1 -1
- package/dist/esm/standard/elements/access-control.element.js +26 -2
- package/dist/esm/standard/elements/access-control.element.js.map +1 -1
- package/dist/esm/standard/elements/ambient-context-sensing.element.d.ts +8 -0
- package/dist/esm/standard/elements/ambient-context-sensing.element.d.ts.map +1 -0
- package/dist/esm/standard/elements/ambient-context-sensing.element.js +172 -0
- package/dist/esm/standard/elements/ambient-context-sensing.element.js.map +6 -0
- package/dist/esm/standard/elements/base.element.js +1 -1
- package/dist/esm/standard/elements/base.element.js.map +1 -1
- package/dist/esm/standard/elements/basic-information.element.d.ts.map +1 -1
- package/dist/esm/standard/elements/basic-information.element.js +24 -2
- package/dist/esm/standard/elements/basic-information.element.js.map +1 -1
- package/dist/esm/standard/elements/boolean-state-configuration.element.d.ts.map +1 -1
- package/dist/esm/standard/elements/boolean-state-configuration.element.js +4 -3
- package/dist/esm/standard/elements/boolean-state-configuration.element.js.map +1 -1
- package/dist/esm/standard/elements/boolean-state.element.d.ts.map +1 -1
- package/dist/esm/standard/elements/boolean-state.element.js +8 -4
- package/dist/esm/standard/elements/boolean-state.element.js.map +1 -1
- package/dist/esm/standard/elements/bridged-device-basic-information.element.js +2 -2
- package/dist/esm/standard/elements/bridged-device-basic-information.element.js.map +1 -1
- package/dist/esm/standard/elements/camera-av-stream-management.element.d.ts.map +1 -1
- package/dist/esm/standard/elements/camera-av-stream-management.element.js +13 -3
- package/dist/esm/standard/elements/camera-av-stream-management.element.js.map +1 -1
- package/dist/esm/standard/elements/certification-type-enum.element.d.ts +8 -0
- package/dist/esm/standard/elements/certification-type-enum.element.d.ts.map +1 -0
- package/dist/esm/standard/elements/certification-type-enum.element.js +18 -0
- package/dist/esm/standard/elements/certification-type-enum.element.js.map +6 -0
- package/dist/esm/standard/elements/chime-cluster.element.js +2 -2
- package/dist/esm/standard/elements/chime-cluster.element.js.map +1 -1
- package/dist/esm/standard/elements/closure-controller.element.d.ts.map +1 -1
- package/dist/esm/standard/elements/closure-controller.element.js +0 -1
- package/dist/esm/standard/elements/closure-controller.element.js.map +1 -1
- package/dist/esm/standard/elements/concentration-measurement.element.d.ts.map +1 -1
- package/dist/esm/standard/elements/concentration-measurement.element.js +12 -4
- package/dist/esm/standard/elements/concentration-measurement.element.js.map +1 -1
- package/dist/esm/standard/elements/content-launcher.element.js +7 -7
- package/dist/esm/standard/elements/content-launcher.element.js.map +1 -1
- package/dist/esm/standard/elements/definitions.d.ts +7 -0
- package/dist/esm/standard/elements/definitions.d.ts.map +1 -1
- package/dist/esm/standard/elements/definitions.js +7 -0
- package/dist/esm/standard/elements/definitions.js.map +1 -1
- package/dist/esm/standard/elements/flow-measurement.element.d.ts.map +1 -1
- package/dist/esm/standard/elements/flow-measurement.element.js +13 -4
- package/dist/esm/standard/elements/flow-measurement.element.js.map +1 -1
- package/dist/esm/standard/elements/general-commissioning.element.d.ts.map +1 -1
- package/dist/esm/standard/elements/general-commissioning.element.js +6 -4
- package/dist/esm/standard/elements/general-commissioning.element.js.map +1 -1
- package/dist/esm/standard/elements/general-diagnostics.element.d.ts.map +1 -1
- package/dist/esm/standard/elements/general-diagnostics.element.js +17 -1
- package/dist/esm/standard/elements/general-diagnostics.element.js.map +1 -1
- package/dist/esm/standard/elements/group-key-management.element.d.ts.map +1 -1
- package/dist/esm/standard/elements/group-key-management.element.js +21 -3
- package/dist/esm/standard/elements/group-key-management.element.js.map +1 -1
- package/dist/esm/standard/elements/groupcast.element.d.ts +8 -0
- package/dist/esm/standard/elements/groupcast.element.d.ts.map +1 -0
- package/dist/esm/standard/elements/groupcast.element.js +185 -0
- package/dist/esm/standard/elements/groupcast.element.js.map +6 -0
- package/dist/esm/standard/elements/identified-human-activity.element.d.ts +8 -0
- package/dist/esm/standard/elements/identified-human-activity.element.d.ts.map +1 -0
- package/dist/esm/standard/elements/identified-human-activity.element.js +28 -0
- package/dist/esm/standard/elements/identified-human-activity.element.js.map +6 -0
- package/dist/esm/standard/elements/identified-object.element.d.ts +8 -0
- package/dist/esm/standard/elements/identified-object.element.d.ts.map +1 -0
- package/dist/esm/standard/elements/identified-object.element.js +31 -0
- package/dist/esm/standard/elements/identified-object.element.js.map +6 -0
- package/dist/esm/standard/elements/identified-sound.element.d.ts +8 -0
- package/dist/esm/standard/elements/identified-sound.element.d.ts.map +1 -0
- package/dist/esm/standard/elements/identified-sound.element.js +40 -0
- package/dist/esm/standard/elements/identified-sound.element.js.map +6 -0
- package/dist/esm/standard/elements/illuminance-measurement.element.d.ts.map +1 -1
- package/dist/esm/standard/elements/illuminance-measurement.element.js +13 -5
- package/dist/esm/standard/elements/illuminance-measurement.element.js.map +1 -1
- package/dist/esm/standard/elements/joint-fabric-administrator-cluster.element.d.ts.map +1 -1
- package/dist/esm/standard/elements/joint-fabric-administrator-cluster.element.js +20 -18
- package/dist/esm/standard/elements/joint-fabric-administrator-cluster.element.js.map +1 -1
- package/dist/esm/standard/elements/joint-fabric-datastore.element.d.ts.map +1 -1
- package/dist/esm/standard/elements/joint-fabric-datastore.element.js +143 -62
- package/dist/esm/standard/elements/joint-fabric-datastore.element.js.map +1 -1
- package/dist/esm/standard/elements/mode-base.element.js +1 -1
- package/dist/esm/standard/elements/mode-base.element.js.map +1 -1
- package/dist/esm/standard/elements/models.d.ts +7 -0
- package/dist/esm/standard/elements/models.d.ts.map +1 -1
- package/dist/esm/standard/elements/models.js +14 -0
- package/dist/esm/standard/elements/models.js.map +1 -1
- package/dist/esm/standard/elements/namespace.element.d.ts.map +1 -1
- package/dist/esm/standard/elements/namespace.element.js +4 -1
- package/dist/esm/standard/elements/namespace.element.js.map +1 -1
- package/dist/esm/standard/elements/network-commissioning.element.js +14 -14
- package/dist/esm/standard/elements/network-commissioning.element.js.map +1 -1
- package/dist/esm/standard/elements/network-infrastructure-manager.element.d.ts.map +1 -1
- package/dist/esm/standard/elements/network-infrastructure-manager.element.js +6 -0
- package/dist/esm/standard/elements/network-infrastructure-manager.element.js.map +1 -1
- package/dist/esm/standard/elements/occupancy-sensing.element.d.ts.map +1 -1
- package/dist/esm/standard/elements/occupancy-sensing.element.js +4 -3
- package/dist/esm/standard/elements/occupancy-sensing.element.js.map +1 -1
- package/dist/esm/standard/elements/power-topology.element.d.ts.map +1 -1
- package/dist/esm/standard/elements/power-topology.element.js +1 -9
- package/dist/esm/standard/elements/power-topology.element.js.map +1 -1
- package/dist/esm/standard/elements/pressure-measurement.element.d.ts.map +1 -1
- package/dist/esm/standard/elements/pressure-measurement.element.js +18 -8
- package/dist/esm/standard/elements/pressure-measurement.element.js.map +1 -1
- package/dist/esm/standard/elements/push-av-stream-transport.element.d.ts.map +1 -1
- package/dist/esm/standard/elements/push-av-stream-transport.element.js +1 -3
- package/dist/esm/standard/elements/push-av-stream-transport.element.js.map +1 -1
- package/dist/esm/standard/elements/rain-sensor.element.d.ts.map +1 -1
- package/dist/esm/standard/elements/rain-sensor.element.js +3 -2
- package/dist/esm/standard/elements/rain-sensor.element.js.map +1 -1
- package/dist/esm/standard/elements/refrigerator-device.element.d.ts.map +1 -1
- package/dist/esm/standard/elements/refrigerator-device.element.js +4 -1
- package/dist/esm/standard/elements/refrigerator-device.element.js.map +1 -1
- package/dist/esm/standard/elements/relative-humidity-measurement.element.d.ts.map +1 -1
- package/dist/esm/standard/elements/relative-humidity-measurement.element.js +12 -4
- package/dist/esm/standard/elements/relative-humidity-measurement.element.js.map +1 -1
- package/dist/esm/standard/elements/root-node.element.js +1 -1
- package/dist/esm/standard/elements/root-node.element.js.map +1 -1
- package/dist/esm/standard/elements/smoke-co-alarm-cluster.element.d.ts.map +1 -1
- package/dist/esm/standard/elements/smoke-co-alarm-cluster.element.js +4 -2
- package/dist/esm/standard/elements/smoke-co-alarm-cluster.element.js.map +1 -1
- package/dist/esm/standard/elements/software-diagnostics.element.d.ts.map +1 -1
- package/dist/esm/standard/elements/software-diagnostics.element.js +12 -4
- package/dist/esm/standard/elements/software-diagnostics.element.js.map +1 -1
- package/dist/esm/standard/elements/temperature-alarm.element.d.ts +8 -0
- package/dist/esm/standard/elements/temperature-alarm.element.d.ts.map +1 -0
- package/dist/esm/standard/elements/temperature-alarm.element.js +146 -0
- package/dist/esm/standard/elements/temperature-alarm.element.js.map +6 -0
- package/dist/esm/standard/elements/temperature-controlled-cabinet.element.d.ts.map +1 -1
- package/dist/esm/standard/elements/temperature-controlled-cabinet.element.js +2 -1
- package/dist/esm/standard/elements/temperature-controlled-cabinet.element.js.map +1 -1
- package/dist/esm/standard/elements/temperature-measurement.element.d.ts.map +1 -1
- package/dist/esm/standard/elements/temperature-measurement.element.js +13 -4
- package/dist/esm/standard/elements/temperature-measurement.element.js.map +1 -1
- package/dist/esm/standard/elements/thermostat-cluster.element.d.ts.map +1 -1
- package/dist/esm/standard/elements/thermostat-cluster.element.js +144 -3
- package/dist/esm/standard/elements/thermostat-cluster.element.js.map +1 -1
- package/dist/esm/standard/elements/thermostat-device.element.d.ts.map +1 -1
- package/dist/esm/standard/elements/thermostat-device.element.js +3 -2
- package/dist/esm/standard/elements/thermostat-device.element.js.map +1 -1
- package/dist/esm/standard/elements/water-freeze-detector.element.d.ts.map +1 -1
- package/dist/esm/standard/elements/water-freeze-detector.element.js +3 -2
- package/dist/esm/standard/elements/water-freeze-detector.element.js.map +1 -1
- package/dist/esm/standard/elements/water-leak-detector.element.d.ts.map +1 -1
- package/dist/esm/standard/elements/water-leak-detector.element.js +3 -2
- package/dist/esm/standard/elements/water-leak-detector.element.js.map +1 -1
- package/dist/esm/standard/elements/web-rtc-transport-provider.element.d.ts.map +1 -1
- package/dist/esm/standard/elements/web-rtc-transport-provider.element.js +1 -10
- package/dist/esm/standard/elements/web-rtc-transport-provider.element.js.map +1 -1
- package/dist/esm/standard/resources/access-control.resource.js +68 -21
- package/dist/esm/standard/resources/access-control.resource.js.map +1 -1
- package/dist/esm/standard/resources/account-login.resource.js +3 -3
- package/dist/esm/standard/resources/ambient-context-sensing.resource.d.ts +7 -0
- package/dist/esm/standard/resources/ambient-context-sensing.resource.d.ts.map +1 -0
- package/dist/esm/standard/resources/ambient-context-sensing.resource.js +240 -0
- package/dist/esm/standard/resources/ambient-context-sensing.resource.js.map +6 -0
- package/dist/esm/standard/resources/base.resource.js +38 -8
- package/dist/esm/standard/resources/base.resource.js.map +1 -1
- package/dist/esm/standard/resources/basic-information.resource.js +24 -0
- package/dist/esm/standard/resources/basic-information.resource.js.map +1 -1
- package/dist/esm/standard/resources/boolean-state-configuration.resource.js +7 -1
- package/dist/esm/standard/resources/boolean-state-configuration.resource.js.map +1 -1
- package/dist/esm/standard/resources/boolean-state.resource.js +14 -3
- package/dist/esm/standard/resources/boolean-state.resource.js.map +1 -1
- package/dist/esm/standard/resources/camera-av-stream-management.resource.js +7 -1
- package/dist/esm/standard/resources/camera-av-stream-management.resource.js.map +1 -1
- package/dist/esm/standard/resources/certification-type-enum.resource.d.ts +7 -0
- package/dist/esm/standard/resources/certification-type-enum.resource.d.ts.map +1 -0
- package/dist/esm/standard/resources/certification-type-enum.resource.js +21 -0
- package/dist/esm/standard/resources/certification-type-enum.resource.js.map +6 -0
- package/dist/esm/standard/resources/closure-controller.resource.js +0 -1
- package/dist/esm/standard/resources/closure-controller.resource.js.map +1 -1
- package/dist/esm/standard/resources/color-control.resource.js +12 -12
- package/dist/esm/standard/resources/color-control.resource.js.map +1 -1
- package/dist/esm/standard/resources/energy-preference.resource.js +1 -1
- package/dist/esm/standard/resources/energy-preference.resource.js.map +1 -1
- package/dist/esm/standard/resources/general-commissioning.resource.js +2 -2
- package/dist/esm/standard/resources/general-diagnostics.resource.js +44 -0
- package/dist/esm/standard/resources/general-diagnostics.resource.js.map +1 -1
- package/dist/esm/standard/resources/group-key-management.resource.js +37 -15
- package/dist/esm/standard/resources/group-key-management.resource.js.map +1 -1
- package/dist/esm/standard/resources/groupcast.resource.d.ts +7 -0
- package/dist/esm/standard/resources/groupcast.resource.d.ts.map +1 -0
- package/dist/esm/standard/resources/groupcast.resource.js +374 -0
- package/dist/esm/standard/resources/groupcast.resource.js.map +6 -0
- package/dist/esm/standard/resources/groups.resource.js +1 -1
- package/dist/esm/standard/resources/groups.resource.js.map +1 -1
- package/dist/esm/standard/resources/icd-management.resource.js +1 -1
- package/dist/esm/standard/resources/icd-management.resource.js.map +1 -1
- package/dist/esm/standard/resources/identified-human-activity.resource.d.ts +7 -0
- package/dist/esm/standard/resources/identified-human-activity.resource.d.ts.map +1 -0
- package/dist/esm/standard/resources/identified-human-activity.resource.js +25 -0
- package/dist/esm/standard/resources/identified-human-activity.resource.js.map +6 -0
- package/dist/esm/standard/resources/identified-object.resource.d.ts +7 -0
- package/dist/esm/standard/resources/identified-object.resource.d.ts.map +1 -0
- package/dist/esm/standard/resources/identified-object.resource.js +28 -0
- package/dist/esm/standard/resources/identified-object.resource.js.map +6 -0
- package/dist/esm/standard/resources/identified-sound.resource.d.ts +7 -0
- package/dist/esm/standard/resources/identified-sound.resource.d.ts.map +1 -0
- package/dist/esm/standard/resources/identified-sound.resource.js +41 -0
- package/dist/esm/standard/resources/identified-sound.resource.js.map +6 -0
- package/dist/esm/standard/resources/index.d.ts +7 -0
- package/dist/esm/standard/resources/index.d.ts.map +1 -1
- package/dist/esm/standard/resources/index.js +7 -0
- package/dist/esm/standard/resources/index.js.map +1 -1
- package/dist/esm/standard/resources/joint-fabric-administrator-cluster.resource.js +23 -18
- package/dist/esm/standard/resources/joint-fabric-administrator-cluster.resource.js.map +1 -1
- package/dist/esm/standard/resources/joint-fabric-datastore.resource.js +353 -39
- package/dist/esm/standard/resources/joint-fabric-datastore.resource.js.map +1 -1
- package/dist/esm/standard/resources/mode-base.resource.js +1 -1
- package/dist/esm/standard/resources/namespace.resource.js +15 -0
- package/dist/esm/standard/resources/namespace.resource.js.map +1 -1
- package/dist/esm/standard/resources/network-commissioning.resource.js +13 -13
- package/dist/esm/standard/resources/network-commissioning.resource.js.map +1 -1
- package/dist/esm/standard/resources/network-infrastructure-manager.resource.js +12 -6
- package/dist/esm/standard/resources/network-infrastructure-manager.resource.js.map +1 -1
- package/dist/esm/standard/resources/occupancy-sensing.resource.js +2 -1
- package/dist/esm/standard/resources/occupancy-sensing.resource.js.map +1 -1
- package/dist/esm/standard/resources/on-off.resource.js +2 -2
- package/dist/esm/standard/resources/on-off.resource.js.map +1 -1
- package/dist/esm/standard/resources/oven-mode.resource.js +1 -1
- package/dist/esm/standard/resources/oven-mode.resource.js.map +1 -1
- package/dist/esm/standard/resources/power-topology.resource.js +2 -28
- package/dist/esm/standard/resources/power-topology.resource.js.map +1 -1
- package/dist/esm/standard/resources/push-av-stream-transport.resource.js +3 -15
- package/dist/esm/standard/resources/push-av-stream-transport.resource.js.map +1 -1
- package/dist/esm/standard/resources/refrigerator-device.resource.js +1 -0
- package/dist/esm/standard/resources/refrigerator-device.resource.js.map +1 -1
- package/dist/esm/standard/resources/smoke-co-alarm-cluster.resource.js +10 -2
- package/dist/esm/standard/resources/smoke-co-alarm-cluster.resource.js.map +1 -1
- package/dist/esm/standard/resources/temperature-alarm.resource.d.ts +7 -0
- package/dist/esm/standard/resources/temperature-alarm.resource.d.ts.map +1 -0
- package/dist/esm/standard/resources/temperature-alarm.resource.js +182 -0
- package/dist/esm/standard/resources/temperature-alarm.resource.js.map +6 -0
- package/dist/esm/standard/resources/temperature-controlled-cabinet.resource.js +1 -0
- package/dist/esm/standard/resources/temperature-controlled-cabinet.resource.js.map +1 -1
- package/dist/esm/standard/resources/thermostat-cluster.resource.js +459 -135
- package/dist/esm/standard/resources/thermostat-cluster.resource.js.map +1 -1
- package/dist/esm/standard/resources/thermostat-device.resource.js +2 -1
- package/dist/esm/standard/resources/thermostat-device.resource.js.map +1 -1
- package/dist/esm/standard/resources/web-rtc-transport-definitions.resource.js +21 -21
- package/dist/esm/standard/resources/web-rtc-transport-provider.resource.js +42 -80
- package/dist/esm/standard/resources/web-rtc-transport-provider.resource.js.map +1 -1
- package/dist/esm/standard/resources/window-covering-cluster.resource.js +14 -14
- package/package.json +3 -3
- package/src/aspects/Quality.ts +1 -1
- package/src/common/DeviceClassification.ts +6 -6
- package/src/common/Specification.ts +2 -2
- package/src/dts/Specifications.d.ts +17 -0
- package/src/logic/cluster-variance/InferredComponents.ts +43 -3
- package/src/standard/elements/access-control.element.ts +26 -2
- package/src/standard/elements/ambient-context-sensing.element.ts +140 -0
- package/src/standard/elements/base.element.ts +1 -1
- package/src/standard/elements/basic-information.element.ts +15 -2
- package/src/standard/elements/boolean-state-configuration.element.ts +4 -3
- package/src/standard/elements/boolean-state.element.ts +8 -4
- package/src/standard/elements/bridged-device-basic-information.element.ts +2 -2
- package/src/standard/elements/camera-av-stream-management.element.ts +8 -3
- package/src/standard/elements/certification-type-enum.element.ts +19 -0
- package/src/standard/elements/chime-cluster.element.ts +2 -2
- package/src/standard/elements/closure-controller.element.ts +0 -1
- package/src/standard/elements/concentration-measurement.element.ts +7 -4
- package/src/standard/elements/content-launcher.element.ts +7 -7
- package/src/standard/elements/definitions.ts +7 -0
- package/src/standard/elements/flow-measurement.element.ts +7 -4
- package/src/standard/elements/general-commissioning.element.ts +6 -4
- package/src/standard/elements/general-diagnostics.element.ts +14 -1
- package/src/standard/elements/group-key-management.element.ts +19 -3
- package/src/standard/elements/groupcast.element.ts +165 -0
- package/src/standard/elements/identified-human-activity.element.ts +29 -0
- package/src/standard/elements/identified-object.element.ts +32 -0
- package/src/standard/elements/identified-sound.element.ts +41 -0
- package/src/standard/elements/illuminance-measurement.element.ts +8 -5
- package/src/standard/elements/joint-fabric-administrator-cluster.element.ts +21 -19
- package/src/standard/elements/joint-fabric-datastore.element.ts +101 -60
- package/src/standard/elements/mode-base.element.ts +1 -1
- package/src/standard/elements/models.ts +7 -0
- package/src/standard/elements/namespace.element.ts +4 -1
- package/src/standard/elements/network-commissioning.element.ts +14 -14
- package/src/standard/elements/network-infrastructure-manager.element.ts +6 -0
- package/src/standard/elements/occupancy-sensing.element.ts +4 -3
- package/src/standard/elements/power-topology.element.ts +1 -10
- package/src/standard/elements/pressure-measurement.element.ts +11 -8
- package/src/standard/elements/push-av-stream-transport.element.ts +1 -3
- package/src/standard/elements/rain-sensor.element.ts +3 -2
- package/src/standard/elements/refrigerator-device.element.ts +4 -1
- package/src/standard/elements/relative-humidity-measurement.element.ts +7 -4
- package/src/standard/elements/root-node.element.ts +1 -1
- package/src/standard/elements/smoke-co-alarm-cluster.element.ts +4 -2
- package/src/standard/elements/software-diagnostics.element.ts +9 -4
- package/src/standard/elements/temperature-alarm.element.ts +109 -0
- package/src/standard/elements/temperature-controlled-cabinet.element.ts +2 -1
- package/src/standard/elements/temperature-measurement.element.ts +7 -4
- package/src/standard/elements/thermostat-cluster.element.ts +123 -3
- package/src/standard/elements/thermostat-device.element.ts +3 -2
- package/src/standard/elements/water-freeze-detector.element.ts +3 -2
- package/src/standard/elements/water-leak-detector.element.ts +3 -2
- package/src/standard/elements/web-rtc-transport-provider.element.ts +1 -11
- package/src/standard/resources/access-control.resource.ts +111 -21
- package/src/standard/resources/account-login.resource.ts +3 -3
- package/src/standard/resources/ambient-context-sensing.resource.ts +288 -0
- package/src/standard/resources/base.resource.ts +26 -8
- package/src/standard/resources/basic-information.resource.ts +29 -0
- package/src/standard/resources/boolean-state-configuration.resource.ts +6 -1
- package/src/standard/resources/boolean-state.resource.ts +12 -3
- package/src/standard/resources/camera-av-stream-management.resource.ts +17 -1
- package/src/standard/resources/certification-type-enum.resource.ts +22 -0
- package/src/standard/resources/closure-controller.resource.ts +0 -2
- package/src/standard/resources/color-control.resource.ts +12 -13
- package/src/standard/resources/energy-preference.resource.ts +1 -5
- package/src/standard/resources/general-commissioning.resource.ts +4 -4
- package/src/standard/resources/general-diagnostics.resource.ts +48 -0
- package/src/standard/resources/group-key-management.resource.ts +106 -41
- package/src/standard/resources/groupcast.resource.ts +568 -0
- package/src/standard/resources/groups.resource.ts +10 -1
- package/src/standard/resources/icd-management.resource.ts +2 -1
- package/src/standard/resources/identified-human-activity.resource.ts +28 -0
- package/src/standard/resources/identified-object.resource.ts +47 -0
- package/src/standard/resources/identified-sound.resource.ts +46 -0
- package/src/standard/resources/index.ts +7 -0
- package/src/standard/resources/joint-fabric-administrator-cluster.resource.ts +21 -22
- package/src/standard/resources/joint-fabric-datastore.resource.ts +814 -581
- package/src/standard/resources/mode-base.resource.ts +1 -1
- package/src/standard/resources/namespace.resource.ts +37 -0
- package/src/standard/resources/network-commissioning.resource.ts +28 -22
- package/src/standard/resources/network-infrastructure-manager.resource.ts +12 -6
- package/src/standard/resources/occupancy-sensing.resource.ts +2 -1
- package/src/standard/resources/on-off.resource.ts +15 -5
- package/src/standard/resources/oven-mode.resource.ts +6 -4
- package/src/standard/resources/power-topology.resource.ts +2 -25
- package/src/standard/resources/push-av-stream-transport.resource.ts +4 -18
- package/src/standard/resources/refrigerator-device.resource.ts +1 -0
- package/src/standard/resources/smoke-co-alarm-cluster.resource.ts +27 -2
- package/src/standard/resources/temperature-alarm.resource.ts +165 -0
- package/src/standard/resources/temperature-controlled-cabinet.resource.ts +1 -0
- package/src/standard/resources/thermostat-cluster.resource.ts +492 -135
- package/src/standard/resources/thermostat-device.resource.ts +2 -1
- package/src/standard/resources/web-rtc-transport-definitions.resource.ts +21 -21
- package/src/standard/resources/web-rtc-transport-provider.resource.ts +42 -80
- package/src/standard/resources/window-covering-cluster.resource.ts +14 -14
|
@@ -34,11 +34,7 @@ Resource.add({
|
|
|
34
34
|
"Joint Fabric Datastore cluster shall NOT be accessible." +
|
|
35
35
|
"\n" +
|
|
36
36
|
"The Admin level of access to the Joint Fabric Datastore cluster server shall be limited to JF " +
|
|
37
|
-
"Administrator Nodes identified using the Administrator CAT."
|
|
38
|
-
"\n" +
|
|
39
|
-
"> [!NOTE]" +
|
|
40
|
-
"\n" +
|
|
41
|
-
"> NOTE: Support for Joint Fabric Datastore cluster is provisional.",
|
|
37
|
+
"Administrator Nodes identified using the Administrator CAT.",
|
|
42
38
|
|
|
43
39
|
children: [
|
|
44
40
|
{
|
|
@@ -57,7 +53,7 @@ Resource.add({
|
|
|
57
53
|
},
|
|
58
54
|
{
|
|
59
55
|
tag: "attribute", name: "FriendlyName", xref: "core§11.24.6.4",
|
|
60
|
-
details: "Friendly name for the accessing fabric
|
|
56
|
+
details: "Friendly name for the accessing fabric."
|
|
61
57
|
},
|
|
62
58
|
|
|
63
59
|
{
|
|
@@ -72,8 +68,8 @@ Resource.add({
|
|
|
72
68
|
tag: "attribute", name: "GroupList", xref: "core§11.24.6.6",
|
|
73
69
|
details: "This shall indicate the list of groups in the Joint Fabric for the accessing fabric." +
|
|
74
70
|
"\n" +
|
|
75
|
-
"This list
|
|
76
|
-
"group with GroupCAT value set to Anchor CAT."
|
|
71
|
+
"This list shall include, at a minimum, one group with GroupCAT value set to Administrator CAT and " +
|
|
72
|
+
"one group with GroupCAT value set to Anchor CAT."
|
|
77
73
|
},
|
|
78
74
|
|
|
79
75
|
{
|
|
@@ -89,7 +85,7 @@ Resource.add({
|
|
|
89
85
|
"Only one Administrator may serve as the Anchor Root CA and Anchor Fabric Administrator and shall " +
|
|
90
86
|
"have index value 0. All other Joint Fabric Administrators shall be referenced at index 1 or greater." +
|
|
91
87
|
"\n" +
|
|
92
|
-
"
|
|
88
|
+
"An empty list indicates that the Joint Fabric is not yet formed."
|
|
93
89
|
},
|
|
94
90
|
|
|
95
91
|
{
|
|
@@ -98,676 +94,903 @@ Resource.add({
|
|
|
98
94
|
details: "This shall indicate the current state of the Joint Fabric Datastore Cluster for the accessing " +
|
|
99
95
|
"fabric." +
|
|
100
96
|
"\n" +
|
|
101
|
-
"The
|
|
102
|
-
"
|
|
103
|
-
"
|
|
97
|
+
"The value shall be one of the following states:" +
|
|
98
|
+
"\n" +
|
|
99
|
+
" - Committed - indicates the DataStore is ready for use." +
|
|
100
|
+
"\n" +
|
|
101
|
+
" - Pending - indicates that the DataStore is not yet ready for use." +
|
|
102
|
+
"\n" +
|
|
103
|
+
" - DeletePending - indicates that the DataStore is in the process of being transferred to another " +
|
|
104
|
+
"Joint Fabric Anchor Administrator."
|
|
104
105
|
},
|
|
105
106
|
|
|
106
107
|
{
|
|
107
108
|
tag: "attribute", name: "EndpointGroupIdList", xref: "core§11.24.6.10",
|
|
108
|
-
details: "This shall indicate the group membership of endpoints in the accessing fabric."
|
|
109
|
-
"\n" +
|
|
110
|
-
"Any changes to this List (add/remove entry) must follow the pending->committed workflow with current " +
|
|
111
|
-
"state reflected in the Status Entry."
|
|
109
|
+
details: "This shall indicate the group membership of endpoints in the accessing fabric."
|
|
112
110
|
},
|
|
113
|
-
|
|
114
111
|
{
|
|
115
112
|
tag: "attribute", name: "EndpointBindingList", xref: "core§11.24.6.11",
|
|
116
|
-
details: "This shall indicate the binding list for endpoints in the accessing fabric."
|
|
117
|
-
"\n" +
|
|
118
|
-
"Any changes to this List (add/remove entry) must follow the pending->committed workflow with current " +
|
|
119
|
-
"state reflected in the Status Entry."
|
|
113
|
+
details: "This shall indicate the binding list for endpoints in the accessing fabric."
|
|
120
114
|
},
|
|
121
|
-
|
|
122
115
|
{
|
|
123
116
|
tag: "attribute", name: "NodeKeySetList", xref: "core§11.24.6.12",
|
|
124
|
-
details: "This shall indicate the KeySet entries for nodes in the accessing fabric."
|
|
125
|
-
"\n" +
|
|
126
|
-
"Any changes to this List (add/remove entry) must follow the pending->committed workflow with current " +
|
|
127
|
-
"state reflected in the Status Entry."
|
|
117
|
+
details: "This shall indicate the KeySet entries for nodes in the accessing fabric."
|
|
128
118
|
},
|
|
129
|
-
|
|
130
119
|
{
|
|
131
120
|
tag: "attribute", name: "NodeAclList", xref: "core§11.24.6.13",
|
|
132
|
-
details: "This shall indicate the ACL entries for nodes in the accessing fabric."
|
|
133
|
-
"\n" +
|
|
134
|
-
"Any changes to this List (add/remove entry) must follow the pending->committed workflow with current " +
|
|
135
|
-
"state reflected in the Status Entry."
|
|
121
|
+
details: "This shall indicate the ACL entries for nodes in the accessing fabric."
|
|
136
122
|
},
|
|
137
|
-
|
|
138
123
|
{
|
|
139
124
|
tag: "attribute", name: "NodeEndpointList", xref: "core§11.24.6.14",
|
|
140
|
-
details: "This shall indicate the Endpoint entries for nodes in the accessing fabric."
|
|
141
|
-
"\n" +
|
|
142
|
-
"Any changes to this List (add/remove entry) must follow the pending->committed workflow with current " +
|
|
143
|
-
"state reflected in the Status Entry."
|
|
125
|
+
details: "This shall indicate the Endpoint entries for nodes in the accessing fabric."
|
|
144
126
|
},
|
|
145
127
|
|
|
146
128
|
{
|
|
147
129
|
tag: "command", name: "AddKeySet", xref: "core§11.24.7.1",
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
"
|
|
152
|
-
|
|
153
|
-
"
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
130
|
+
details: "Upon receipt, this shall add a KeySet to the Joint Fabric Datastore Cluster of the accessing fabric.",
|
|
131
|
+
|
|
132
|
+
children: [{
|
|
133
|
+
tag: "field", name: "GroupKeySet", xref: "core§11.24.7.1.1",
|
|
134
|
+
|
|
135
|
+
details: "This field shall indicate the KeySet to be added to the Joint Fabric Datastore Cluster." +
|
|
136
|
+
"\n" +
|
|
137
|
+
"The Datastore shall:" +
|
|
138
|
+
"\n" +
|
|
139
|
+
" 1. Ensure there are no KeySets in the KeySetList attribute with the given GroupKeySetID." +
|
|
140
|
+
"\n" +
|
|
141
|
+
" 2. If a match is found, then this command shall fail with a CONSTRAINT_ERROR status code." +
|
|
142
|
+
"\n" +
|
|
143
|
+
" 3. Add the Epoch Key Entry for the KeySet to the KeySetList attribute."
|
|
144
|
+
}]
|
|
161
145
|
},
|
|
162
146
|
|
|
163
147
|
{
|
|
164
148
|
tag: "command", name: "UpdateKeySet", xref: "core§11.24.7.2",
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
"
|
|
170
|
-
|
|
171
|
-
"
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
149
|
+
details: "Upon receipt, this shall update a KeySet in the Joint Fabric Datastore Cluster of the accessing " +
|
|
150
|
+
"fabric.",
|
|
151
|
+
|
|
152
|
+
children: [{
|
|
153
|
+
tag: "field", name: "GroupKeySet", xref: "core§11.24.7.2.1",
|
|
154
|
+
|
|
155
|
+
details: "This field shall indicate the KeySet to be updated in the Joint Fabric Datastore Cluster." +
|
|
156
|
+
"\n" +
|
|
157
|
+
"The Datastore shall:" +
|
|
158
|
+
"\n" +
|
|
159
|
+
" 1. Find the Epoch Key Entry for the KeySet in the KeySetList attribute with the given " +
|
|
160
|
+
"GroupKeySetID, and update any changed fields." +
|
|
161
|
+
"\n" +
|
|
162
|
+
" 2. If entry is not found, then this command shall fail with a NOT_FOUND status code." +
|
|
163
|
+
"\n" +
|
|
164
|
+
" 3. If any fields are changed as a result of this command:" +
|
|
165
|
+
"\n" +
|
|
166
|
+
" 1. Iterate through each DatastoreNodeInformationEntryStruct:" +
|
|
167
|
+
"\n" +
|
|
168
|
+
" 1. If the NodeKeySetList contains an entry with the given GroupKeySetID:" +
|
|
169
|
+
"\n" +
|
|
170
|
+
" 1. Update the Status on the given DatastoreNodeKeySetEntryStruct tp Pending." +
|
|
171
|
+
"\n" +
|
|
172
|
+
" 2. Update the GroupKeySet on the given Node with the new values." +
|
|
173
|
+
"\n" +
|
|
174
|
+
" 1. If successful, update the Status on this DatastoreNodeKeySetEntryStruct to Committed." +
|
|
175
|
+
"\n" +
|
|
176
|
+
" 2. If not successful, update the State field of the StatusEntry on this " +
|
|
177
|
+
"DatastoreNodeKeySetEntryStruct to CommitFailed and FailureCode code to the returned error. The " +
|
|
178
|
+
"pending change shall be applied in a subsequent Node Refresh."
|
|
179
|
+
}]
|
|
193
180
|
},
|
|
194
181
|
|
|
195
182
|
{
|
|
196
183
|
tag: "command", name: "RemoveKeySet", xref: "core§11.24.7.3",
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
"
|
|
202
|
-
|
|
203
|
-
"
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
184
|
+
details: "Upon receipt, this shall remove a KeySet from the Joint Fabric Datastore Cluster of the accessing " +
|
|
185
|
+
"fabric.",
|
|
186
|
+
|
|
187
|
+
children: [{
|
|
188
|
+
tag: "field", name: "GroupKeySetId", xref: "core§11.24.7.3.1",
|
|
189
|
+
|
|
190
|
+
details: "This field shall indicate the unique identifier for the KeySet to be removed from the Joint Fabric " +
|
|
191
|
+
"Datastore Cluster." +
|
|
192
|
+
"\n" +
|
|
193
|
+
"Attempt to remove the IPK, which has GroupKeySetID of 0, shall fail with response CONSTRAINT_ERROR." +
|
|
194
|
+
"\n" +
|
|
195
|
+
"The Datastore shall:" +
|
|
196
|
+
"\n" +
|
|
197
|
+
" 1. If entry is not found, then this command shall fail with a NOT_FOUND status code." +
|
|
198
|
+
"\n" +
|
|
199
|
+
" 2. Ensure there are no Nodes using this KeySet. To do this:" +
|
|
200
|
+
"\n" +
|
|
201
|
+
" 1. Iterate through each DatastoreNodeInformationEntryStruct:" +
|
|
202
|
+
"\n" +
|
|
203
|
+
" 1. If the NodeKeySetList list contains an entry with the given GroupKeySetID, and the entry does " +
|
|
204
|
+
"NOT have Status DeletePending, then this command shall fail with a CONSTRAINT_ERROR status " +
|
|
205
|
+
"code." +
|
|
206
|
+
"\n" +
|
|
207
|
+
" 3. Remove the DatastoreGroupKeySetStruct for the given GroupKeySetID from the GroupKeySetList " +
|
|
208
|
+
"attribute."
|
|
209
|
+
}]
|
|
220
210
|
},
|
|
221
211
|
|
|
222
212
|
{
|
|
223
213
|
tag: "command", name: "AddGroup", xref: "core§11.24.7.4",
|
|
214
|
+
details: "Upon receipt, this shall add a group to the Joint Fabric Datastore Cluster of the accessing fabric.",
|
|
224
215
|
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
216
|
+
children: [
|
|
217
|
+
{
|
|
218
|
+
tag: "field", name: "GroupId", xref: "core§11.24.7.4.1",
|
|
219
|
+
details: "This field shall indicate the unique identifier for the group to be added to the Joint Fabric " +
|
|
220
|
+
"Datastore Cluster."
|
|
221
|
+
},
|
|
222
|
+
{
|
|
223
|
+
tag: "field", name: "FriendlyName", xref: "core§11.24.7.4.2",
|
|
224
|
+
details: "This field shall indicate the friendly name for the group."
|
|
225
|
+
},
|
|
226
|
+
{
|
|
227
|
+
tag: "field", name: "GroupKeySetId", xref: "core§11.24.7.4.3",
|
|
228
|
+
details: "This field shall indicate the unique identifier for the group key set."
|
|
229
|
+
},
|
|
230
|
+
|
|
231
|
+
{
|
|
232
|
+
tag: "field", name: "GroupCat", xref: "core§11.24.7.4.4",
|
|
233
|
+
details: "This field shall indicate the CAT value for this group." +
|
|
234
|
+
"\n" +
|
|
235
|
+
"GroupCAT values shall fall within the range 1 to 65534. Attempts to add a group with a GroupCAT " +
|
|
236
|
+
"value of Administrator CAT or Anchor CAT shall fail with CONSTRAINT_ERROR."
|
|
237
|
+
},
|
|
238
|
+
|
|
239
|
+
{
|
|
240
|
+
tag: "field", name: "GroupCatVersion", xref: "core§11.24.7.4.5",
|
|
241
|
+
details: "This field shall indicate the current version number for this CAT."
|
|
242
|
+
},
|
|
243
|
+
|
|
244
|
+
{
|
|
245
|
+
tag: "field", name: "GroupPermission", xref: "core§11.24.7.4.6",
|
|
246
|
+
|
|
247
|
+
details: "This field shall indicate the permission level associated with ACL entries for this group." +
|
|
248
|
+
"\n" +
|
|
249
|
+
"The Datastore shall:" +
|
|
250
|
+
"\n" +
|
|
251
|
+
" 1. Ensure there are no Groups in the GroupList attribute with the given GroupID. If a match is " +
|
|
252
|
+
"found, then this command shall fail with a CONSTRAINT_ERROR status code." +
|
|
253
|
+
"\n" +
|
|
254
|
+
" 2. Add the DatastoreGroupInformationEntryStruct for the Group with the given GroupID to the " +
|
|
255
|
+
"GroupList attribute."
|
|
256
|
+
}
|
|
257
|
+
]
|
|
240
258
|
},
|
|
241
259
|
|
|
242
260
|
{
|
|
243
261
|
tag: "command", name: "UpdateGroup", xref: "core§11.24.7.5",
|
|
262
|
+
details: "Upon receipt, this shall update a group in the Joint Fabric Datastore Cluster of the accessing " +
|
|
263
|
+
"fabric.",
|
|
244
264
|
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
265
|
+
children: [
|
|
266
|
+
{
|
|
267
|
+
tag: "field", name: "GroupId", xref: "core§11.24.7.5.1",
|
|
268
|
+
details: "This field shall indicate the group to be updated in the Joint Fabric Datastore Cluster."
|
|
269
|
+
},
|
|
270
|
+
{
|
|
271
|
+
tag: "field", name: "FriendlyName", xref: "core§11.24.7.5.2",
|
|
272
|
+
details: "This field shall indicate the friendly name for the group. NULL values will be ignored (not " +
|
|
273
|
+
"updated)."
|
|
274
|
+
},
|
|
275
|
+
{
|
|
276
|
+
tag: "field", name: "GroupKeySetId", xref: "core§11.24.7.5.3",
|
|
277
|
+
details: "This field shall indicate the unique identifier for the group key set. NULL values will be ignored " +
|
|
278
|
+
"(not updated)."
|
|
279
|
+
},
|
|
280
|
+
|
|
281
|
+
{
|
|
282
|
+
tag: "field", name: "GroupCat", xref: "core§11.24.7.5.4",
|
|
283
|
+
|
|
284
|
+
details: "This field shall indicate the CAT value for this group. NULL values will be ignored (not updated)." +
|
|
285
|
+
"\n" +
|
|
286
|
+
"GroupCAT values shall fall within the range 1 to 65534. Attempts to update the GroupCAT on an " +
|
|
287
|
+
"existing group which has a GroupCAT value of Administrator CAT or Anchor CAT shall fail with " +
|
|
288
|
+
"CONSTRAINT_ERROR." +
|
|
289
|
+
"\n" +
|
|
290
|
+
"Attempts to set the GroupCAT to Administrator CAT or Anchor CAT shall fail with CONSTRAINT_ERROR."
|
|
291
|
+
},
|
|
292
|
+
|
|
293
|
+
{
|
|
294
|
+
tag: "field", name: "GroupCatVersion", xref: "core§11.24.7.5.5",
|
|
295
|
+
details: "This field shall indicate the current version number for this CAT. NULL values will be ignored (not " +
|
|
296
|
+
"updated)."
|
|
297
|
+
},
|
|
298
|
+
|
|
299
|
+
{
|
|
300
|
+
tag: "field", name: "GroupPermission", xref: "core§11.24.7.5.6",
|
|
301
|
+
|
|
302
|
+
details: "This field shall indicate the permission level associated with ACL entries for this group. NULL " +
|
|
303
|
+
"values will be ignored (not updated)." +
|
|
304
|
+
"\n" +
|
|
305
|
+
"The Datastore shall:" +
|
|
306
|
+
"\n" +
|
|
307
|
+
" 1. If entry is not found, then this command shall fail with a NOT_FOUND status code." +
|
|
308
|
+
"\n" +
|
|
309
|
+
" 2. Update the DatastoreGroupInformationEntryStruct for the Group with the given GroupID to match " +
|
|
310
|
+
"the non-NULL fields passed in." +
|
|
311
|
+
"\n" +
|
|
312
|
+
" 3. If any fields are changed as a result of this command:" +
|
|
313
|
+
"\n" +
|
|
314
|
+
" 1. Iterate through each DatastoreNodeInformationEntryStruct:" +
|
|
315
|
+
"\n" +
|
|
316
|
+
" 1. If the GroupKeySetID changed:" +
|
|
317
|
+
"\n" +
|
|
318
|
+
" 1. Add a DatastoreNodeKeySetEntryStruct with the new GroupKeySetID, and Status set to Pending." +
|
|
319
|
+
"\n" +
|
|
320
|
+
" 2. Add this KeySet to the Node." +
|
|
321
|
+
"\n" +
|
|
322
|
+
" 1. If successful, Set the Status to Committed for this entry in the NodeKeySetList." +
|
|
323
|
+
"\n" +
|
|
324
|
+
" 2. If not successful, Set the Status to CommitFailed and the FailureCode to the returned error. " +
|
|
325
|
+
"The pending change shall be applied in a subsequent Node Refresh." +
|
|
326
|
+
"\n" +
|
|
327
|
+
" 1. If the NodeKeySetList list contains an entry with the previous GroupKeySetID:" +
|
|
328
|
+
"\n" +
|
|
329
|
+
" 3. Set the Status set to DeletePending." +
|
|
330
|
+
"\n" +
|
|
331
|
+
" 4. Remove this KeySet from the Node." +
|
|
332
|
+
"\n" +
|
|
333
|
+
" 1. If successful, Remove this entry from the NodeKeySetList." +
|
|
334
|
+
"\n" +
|
|
335
|
+
" 2. If not successful, the pending change shall be applied in a subsequent Node Refresh." +
|
|
336
|
+
"\n" +
|
|
337
|
+
" 2. If the GroupCAT, GroupCATVersion or GroupPermission changed:" +
|
|
338
|
+
"\n" +
|
|
339
|
+
" 1. If the ACLList contains an entry for this Group, update the ACL List Entry in the Datastore " +
|
|
340
|
+
"with the new values and Status Pending, update the ACL attribute on the given Node with the new " +
|
|
341
|
+
" values. If the update succeeds, set the Status to Committed on the ACLList Entry in the " +
|
|
342
|
+
"Datastore." +
|
|
343
|
+
"\n" +
|
|
344
|
+
" 3. If the FriendlyName changed:" +
|
|
345
|
+
"\n" +
|
|
346
|
+
" 1. Iterate through each DatastoreEndpointGroupIDEntryStruct in the EndpointGroupIDList attribute:" +
|
|
347
|
+
"\n" +
|
|
348
|
+
" 1. If the DatastoreEndpointGroupIDEntryStruct contains an entry with the given GroupID:" +
|
|
349
|
+
"\n" +
|
|
350
|
+
" 1. Update the DatastoreEndpointGroupIDEntryStruct Entry in the Datastore with the new values and " +
|
|
351
|
+
"Status Pending" +
|
|
352
|
+
"\n" +
|
|
353
|
+
" 2. Update the Groups on the given Node with the new values." +
|
|
354
|
+
"\n" +
|
|
355
|
+
" 1. If the update succeeds, set the Status to Committed on the GroupIDList Entry in the Datastore." +
|
|
356
|
+
"\n" +
|
|
357
|
+
" 2. If not successful, the pending change shall be applied in a subsequent Node Refresh."
|
|
358
|
+
}
|
|
359
|
+
]
|
|
309
360
|
},
|
|
310
361
|
|
|
311
362
|
{
|
|
312
363
|
tag: "command", name: "RemoveGroup", xref: "core§11.24.7.6",
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
"
|
|
318
|
-
|
|
319
|
-
"
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
364
|
+
details: "Upon receipt, this shall remove a group from the Joint Fabric Datastore Cluster of the accessing " +
|
|
365
|
+
"fabric.",
|
|
366
|
+
|
|
367
|
+
children: [{
|
|
368
|
+
tag: "field", name: "GroupId", xref: "core§11.24.7.6.1",
|
|
369
|
+
|
|
370
|
+
details: "This field shall indicate the unique identifier for the group to be removed from the Joint Fabric " +
|
|
371
|
+
"Datastore Cluster." +
|
|
372
|
+
"\n" +
|
|
373
|
+
"Attempts to remove a group with GroupCAT value set to Administrator CAT or Anchor CAT shall fail " +
|
|
374
|
+
"with CONSTRAINT_ERROR." +
|
|
375
|
+
"\n" +
|
|
376
|
+
"The Datastore shall:" +
|
|
377
|
+
"\n" +
|
|
378
|
+
" 1. If entry is not found, then this command shall fail with a NOT_FOUND status code." +
|
|
379
|
+
"\n" +
|
|
380
|
+
" 2. Ensure there are no Nodes in this group. To do this:" +
|
|
381
|
+
"\n" +
|
|
382
|
+
" 1. Iterate through each DatastoreNodeInformationEntryStruct:" +
|
|
383
|
+
"\n" +
|
|
384
|
+
" 1. If the GroupIDList contains an entry with the given GroupID, and the entry does NOT have Status " +
|
|
385
|
+
"DeletePending, then this command shall fail with a CONSTRAINT_ERROR status code." +
|
|
386
|
+
"\n" +
|
|
387
|
+
" 3. Remove the DatastoreGroupInformationEntryStruct for the Group with the given GroupID from the " +
|
|
388
|
+
"GroupList attribute."
|
|
389
|
+
}]
|
|
336
390
|
},
|
|
337
391
|
|
|
338
392
|
{
|
|
339
393
|
tag: "command", name: "AddAdmin", xref: "core§11.24.7.7",
|
|
340
|
-
details: "
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
394
|
+
details: "Upon receipt, this shall add an admin to the Joint Fabric Datastore Cluster of the accessing fabric.",
|
|
395
|
+
|
|
396
|
+
children: [
|
|
397
|
+
{
|
|
398
|
+
tag: "field", name: "NodeId", xref: "core§11.24.7.7.1",
|
|
399
|
+
details: "This field shall indicate the unique identifier for the admin node."
|
|
400
|
+
},
|
|
401
|
+
{
|
|
402
|
+
tag: "field", name: "FriendlyName", xref: "core§11.24.7.7.2",
|
|
403
|
+
details: "This field shall indicate the friendly name for the admin node."
|
|
404
|
+
},
|
|
405
|
+
{
|
|
406
|
+
tag: "field", name: "VendorId", xref: "core§11.24.7.7.3",
|
|
407
|
+
details: "This field shall indicate the Vendor ID for the admin node."
|
|
408
|
+
},
|
|
409
|
+
|
|
410
|
+
{
|
|
411
|
+
tag: "field", name: "Icac", xref: "core§11.24.7.7.4",
|
|
412
|
+
|
|
413
|
+
details: "This field shall indicate the ICAC used to issue the NOC." +
|
|
414
|
+
"\n" +
|
|
415
|
+
"The Datastore shall:" +
|
|
416
|
+
"\n" +
|
|
417
|
+
" 1. Ensure there are no Admins in the AdminList attribute with the given NodeID. If a match is " +
|
|
418
|
+
"found, then this command shall fail with a CONSTRAINT_ERROR status code." +
|
|
419
|
+
"\n" +
|
|
420
|
+
" 2. Add the DatastoreAdministratorInformationEntryStruct for the Admin with the given NodeID to the " +
|
|
421
|
+
"AdminList attribute."
|
|
422
|
+
}
|
|
423
|
+
]
|
|
345
424
|
},
|
|
346
425
|
|
|
347
426
|
{
|
|
348
427
|
tag: "command", name: "UpdateAdmin", xref: "core§11.24.7.8",
|
|
428
|
+
details: "Upon receipt, this shall update an admin entry in the AdminList attribute.",
|
|
349
429
|
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
430
|
+
children: [
|
|
431
|
+
{
|
|
432
|
+
tag: "field", name: "NodeId", xref: "core§11.24.7.8.1",
|
|
433
|
+
details: "This field shall indicate the admin to be updated in the Joint Fabric Datastore Cluster."
|
|
434
|
+
},
|
|
435
|
+
{
|
|
436
|
+
tag: "field", name: "FriendlyName", xref: "core§11.24.7.8.2",
|
|
437
|
+
details: "This field shall indicate the friendly name for the admin node."
|
|
438
|
+
},
|
|
439
|
+
|
|
440
|
+
{
|
|
441
|
+
tag: "field", name: "Icac", xref: "core§11.24.7.8.3",
|
|
442
|
+
|
|
443
|
+
details: "This field shall indicate the ICAC used to issue the NOC." +
|
|
444
|
+
"\n" +
|
|
445
|
+
"The Datastore shall:" +
|
|
446
|
+
"\n" +
|
|
447
|
+
" 1. Find the entry in the AdminList attribute with the given NodeID, and update any changed fields." +
|
|
448
|
+
"\n" +
|
|
449
|
+
" 2. If entry is not found, then this command shall fail with a NOT_FOUND status code."
|
|
450
|
+
}
|
|
451
|
+
]
|
|
357
452
|
},
|
|
358
453
|
|
|
359
454
|
{
|
|
360
455
|
tag: "command", name: "RemoveAdmin", xref: "core§11.24.7.9",
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
"
|
|
366
|
-
|
|
367
|
-
"
|
|
368
|
-
|
|
456
|
+
details: "Upon receipt, this shall remove an admin from the Joint Fabric Datastore Cluster of the accessing " +
|
|
457
|
+
"fabric.",
|
|
458
|
+
|
|
459
|
+
children: [{
|
|
460
|
+
tag: "field", name: "NodeId", xref: "core§11.24.7.9.1",
|
|
461
|
+
|
|
462
|
+
details: "This field shall indicate the unique identifier for the admin to be removed from the Joint Fabric " +
|
|
463
|
+
"Datastore Cluster." +
|
|
464
|
+
"\n" +
|
|
465
|
+
"The Datastore shall:" +
|
|
466
|
+
"\n" +
|
|
467
|
+
" 1. If an entry in the AdminList attribute with the given NodeID is not found, then this command " +
|
|
468
|
+
"shall fail with a NOT_FOUND status code." +
|
|
469
|
+
"\n" +
|
|
470
|
+
" 2. Remove the DatastoreAdministratorInformationEntryStruct for the Admin with the given NodeID " +
|
|
471
|
+
"from the AdminList attribute."
|
|
472
|
+
}]
|
|
369
473
|
},
|
|
370
474
|
|
|
371
475
|
{
|
|
372
476
|
tag: "command", name: "AddPendingNode", xref: "core§11.24.7.10",
|
|
477
|
+
details: "Upon receipt, this shall add a node to the Joint Fabric Datastore Cluster of the accessing fabric.",
|
|
373
478
|
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
479
|
+
children: [
|
|
480
|
+
{
|
|
481
|
+
tag: "field", name: "NodeId", xref: "core§11.24.7.10.1",
|
|
482
|
+
details: "This field shall indicate the node to be added to the Joint Fabric Datastore Cluster."
|
|
483
|
+
},
|
|
484
|
+
|
|
485
|
+
{
|
|
486
|
+
tag: "field", name: "FriendlyName", xref: "core§11.24.7.10.2",
|
|
487
|
+
|
|
488
|
+
details: "This field shall indicate the friendly name for the node." +
|
|
489
|
+
"\n" +
|
|
490
|
+
"If a DatastoreNodeInformationEntryStruct exists for the given NodeID, then this command shall fail " +
|
|
491
|
+
"with a INVALID_CONSTRAINT status code." +
|
|
492
|
+
"\n" +
|
|
493
|
+
"The Datastore shall:" +
|
|
494
|
+
"\n" +
|
|
495
|
+
" 1. Add an entry for the given NodeID to the NodeList attribute and set the status for the " +
|
|
496
|
+
"DatastoreNodeInformationEntryStruct to Pending."
|
|
497
|
+
}
|
|
498
|
+
]
|
|
385
499
|
},
|
|
386
500
|
|
|
387
501
|
{
|
|
388
502
|
tag: "command", name: "RefreshNode", xref: "core§11.24.7.11",
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
"
|
|
394
|
-
|
|
395
|
-
"
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
503
|
+
details: "Upon receipt, this shall request that Datastore information relating to a Node of the accessing " +
|
|
504
|
+
"fabric is refreshed.",
|
|
505
|
+
|
|
506
|
+
children: [{
|
|
507
|
+
tag: "field", name: "NodeId", xref: "core§11.24.7.11.1",
|
|
508
|
+
|
|
509
|
+
details: "This field shall indicate the node for which Datastore information should be refreshed." +
|
|
510
|
+
"\n" +
|
|
511
|
+
"The Datastore shall:" +
|
|
512
|
+
"\n" +
|
|
513
|
+
" 1. Confirm that a DatastoreNodeInformationEntryStruct exists in the NodeList attribute for the " +
|
|
514
|
+
"given NodeID, and if not, then this command shall fail with a NOT_FOUND status code." +
|
|
515
|
+
"\n" +
|
|
516
|
+
" 2. Update the CommissioningStatusEntry for the DatastoreNodeInformationEntryStruct to Pending." +
|
|
517
|
+
"\n" +
|
|
518
|
+
" 3. Ensure the Endpoint List for the DatastoreNodeInformationEntryStruct with the given NodeID " +
|
|
519
|
+
"matches Endpoint list on the given Node. This involves the following steps:" +
|
|
520
|
+
"\n" +
|
|
521
|
+
" 1. Read the PartsList of the Descriptor cluster from the Node." +
|
|
522
|
+
"\n" +
|
|
523
|
+
" 2. For each DatastoreEndpointEntryStruct in the NodeEndpointList attribute with the given NodeID " +
|
|
524
|
+
"that does not match an Endpoint ID in the PartsList, remove the DatastoreEndpointEntryStruct." +
|
|
525
|
+
"\n" +
|
|
526
|
+
" 3. For each DatastoreEndpointEntryStruct in the NodeEndpointList attribute with the given NodeID " +
|
|
527
|
+
"that matches an Endpoint ID in the PartsList:" +
|
|
528
|
+
"\n" +
|
|
529
|
+
" 1. Check that each entry in Node's Group List occurs in the EndpointGroupIDList attribute." +
|
|
530
|
+
"\n" +
|
|
531
|
+
" 1. Add any missing entries to the EndpointGroupIDList." +
|
|
532
|
+
"\n" +
|
|
533
|
+
" 2. For any entries in the EndpointGroupIDList attribute with the given NodeId and EndpointId with " +
|
|
534
|
+
"Status of Pending:" +
|
|
535
|
+
"\n" +
|
|
536
|
+
" 1. Add the corresponding change to the Node's Group List." +
|
|
537
|
+
"\n" +
|
|
538
|
+
" 1. If successful, mark the Status to Committed." +
|
|
539
|
+
"\n" +
|
|
540
|
+
" 2. If not successful, update the Status to CommitFailed and the FailureCode to the returned error. " +
|
|
541
|
+
"The error shall be handled in a subsequent Node Refresh." +
|
|
542
|
+
"\n" +
|
|
543
|
+
" 3. For any entries in the EndpointGroupIDList attribute with the given NodeID and EndpointID with " +
|
|
544
|
+
"Status of DeletePending:" +
|
|
545
|
+
"\n" +
|
|
546
|
+
" 1. If successful, remove the corresponding entry from the Node's Group List." +
|
|
547
|
+
"\n" +
|
|
548
|
+
" 2. If not successful, update the Status to CommitFailed and the FailureCode to the returned error. " +
|
|
549
|
+
"The error shall be handled in a subsequent Node Refresh." +
|
|
550
|
+
"\n" +
|
|
551
|
+
" 4. For any entries in the EndpointGroupIDList attribute with the given NodeID and EndpointID with " +
|
|
552
|
+
"Status of CommitFailure:" +
|
|
553
|
+
"\n" +
|
|
554
|
+
" 1. A CommitFailure with an unrecoverable FailureCode shall be handled by removing the entry from " +
|
|
555
|
+
"the GroupIDList." +
|
|
556
|
+
"\n" +
|
|
557
|
+
" 2. A CommitFailure with a recoverable FailureCode (i.e. TIMEOUT, BUSY) shall be handle in a " +
|
|
558
|
+
"subsequent Node Refresh." +
|
|
559
|
+
"\n" +
|
|
560
|
+
" 2. Check that each entry in Node's Binding List occurs in the EndpointBindingList attribute with " +
|
|
561
|
+
"the given NodeId and EndpointId." +
|
|
562
|
+
"\n" +
|
|
563
|
+
" 1. Add any missing entries to the EndpointBindingList attribute." +
|
|
564
|
+
"\n" +
|
|
565
|
+
" 2. For any entries in the EndpointBindingList attribute with the given NodeID and EndpointID with " +
|
|
566
|
+
"Status of Pending:" +
|
|
567
|
+
"\n" +
|
|
568
|
+
" 1. Add the corresponding change to the Node's Binding List." +
|
|
569
|
+
"\n" +
|
|
570
|
+
" 1. If successful, mark the Status to Committed." +
|
|
571
|
+
"\n" +
|
|
572
|
+
" 2. If not successful, update the Status to CommitFailed and the FailureCode to the returned error. " +
|
|
573
|
+
"The error shall be handled in a subsequent Node Refresh." +
|
|
574
|
+
"\n" +
|
|
575
|
+
" 3. For any entries in the EndpointBindingList attribute with the given NodeID and EndpointID with " +
|
|
576
|
+
"Status of DeletePending:" +
|
|
577
|
+
"\n" +
|
|
578
|
+
" 1. If successful, remove the corresponding entry from the Node's BindingList." +
|
|
579
|
+
"\n" +
|
|
580
|
+
" 2. If not successful, update the Status to CommitFailed and the FailureCode to the returned error. " +
|
|
581
|
+
"The error shall be handled in a subsequent Node Refresh." +
|
|
582
|
+
"\n" +
|
|
583
|
+
" 4. For any entries in the EndpointBindingList attribute with the given NodeID and EndpointID with " +
|
|
584
|
+
"Status of CommitFailure:" +
|
|
585
|
+
"\n" +
|
|
586
|
+
" 1. A CommitFailure with an unrecoverable FailureCode shall be handled by removing the entry from " +
|
|
587
|
+
"the BindingList." +
|
|
588
|
+
"\n" +
|
|
589
|
+
" 2. A CommitFailure with a recoverable FailureCode (i.e. TIMEOUT, BUSY) shall be handle in a " +
|
|
590
|
+
"subsequent Node Refresh." +
|
|
591
|
+
"\n" +
|
|
592
|
+
" 4. Ensure the GroupKeySetList entries with the given NodeID match the Group Keys on the given " +
|
|
593
|
+
" Node. This involves the following steps:" +
|
|
594
|
+
"\n" +
|
|
595
|
+
" 1. Read the Group Keys from the Node." +
|
|
596
|
+
"\n" +
|
|
597
|
+
" 2. For each DatastoreGroupKeySetStruct in the GroupKeySetList attribute for the given NodeID with " +
|
|
598
|
+
"a Pending Status:" +
|
|
599
|
+
"\n" +
|
|
600
|
+
" 1. Add the corresponding DatastoreGroupKeySetStruct to the Node's Group Key list." +
|
|
601
|
+
"\n" +
|
|
602
|
+
" 1. If successful, mark the Status to Committed." +
|
|
603
|
+
"\n" +
|
|
604
|
+
" 2. If not successful, update the Status to CommitFailed and the FailureCode to the returned error. " +
|
|
605
|
+
"The error shall be handled in a subsequent Node Refresh." +
|
|
606
|
+
"\n" +
|
|
607
|
+
" 3. For each DatastoreGroupKeySetStruct in the GroupKeySetList attribute for the given NodeID with " +
|
|
608
|
+
"a CommitFailure Status:" +
|
|
609
|
+
"\n" +
|
|
610
|
+
" 1. A CommitFailure with an unrecoverable FailureCode shall be handled by removing the entry from " +
|
|
611
|
+
"the GroupKeySetList." +
|
|
612
|
+
"\n" +
|
|
613
|
+
" 2. A CommitFailure with a recoverable FailureCode (i.e. TIMEOUT, BUSY) shall be handle in a " +
|
|
614
|
+
"subsequent Node Refresh." +
|
|
615
|
+
"\n" +
|
|
616
|
+
" 4. All remaining entries in the GroupKeySetList attribute for the given NodeId should be replaced " +
|
|
617
|
+
"by the remaining entries on the Node." +
|
|
618
|
+
"\n" +
|
|
619
|
+
" 5. Ensure the NodeACLList attribute for the given NodeID matches the ACL attribute on the given " +
|
|
620
|
+
" Node. This involves the following steps:" +
|
|
621
|
+
"\n" +
|
|
622
|
+
" 1. Read the ACL attribute on the Node." +
|
|
623
|
+
"\n" +
|
|
624
|
+
" 2. For each DatastoreACLEntryStruct in the ACLList attribute with the given NodeID with a Pending " +
|
|
625
|
+
"Status:" +
|
|
626
|
+
"\n" +
|
|
627
|
+
" 1. Add the corresponding DatastoreACLEntryStruct to the Node's ACL attribute." +
|
|
628
|
+
"\n" +
|
|
629
|
+
" 1. If successful, mark the Status to Committed." +
|
|
630
|
+
"\n" +
|
|
631
|
+
" 2. If not successful, update the Status to CommitFailed and the FailureCode to the returned error. " +
|
|
632
|
+
"The error shall be handled in a subsequent Node Refresh." +
|
|
633
|
+
"\n" +
|
|
634
|
+
" 3. For each DatastoreACLEntryStruct in the ACLList attribute with the given NodeID with a " +
|
|
635
|
+
"CommitFailure Status:" +
|
|
636
|
+
"\n" +
|
|
637
|
+
" 1. A CommitFailure with an unrecoverable FailureCode (i.e. RESOURCE_EXHAUSTED, CONSTRAINT_ERROR) " +
|
|
638
|
+
"shall be handled by removing the entry from the ACLList." +
|
|
639
|
+
"\n" +
|
|
640
|
+
" 2. A CommitFailure with a recoverable FailureCode (i.e. TIMEOUT, BUSY) shall be handle in a " +
|
|
641
|
+
"subsequent Node Refresh." +
|
|
642
|
+
"\n" +
|
|
643
|
+
" 4. All remaining entries in the ACLList should be replaced by the remaining entries on the Node." +
|
|
644
|
+
"\n" +
|
|
645
|
+
" 6. Update the CommissioningStatusEntry for the DatastoreNodeInformationEntryStruct to Committed."
|
|
646
|
+
}]
|
|
523
647
|
},
|
|
524
648
|
|
|
525
649
|
{
|
|
526
650
|
tag: "command", name: "UpdateNode", xref: "core§11.24.7.12",
|
|
651
|
+
details: "Upon receipt, this shall update the friendly name for a node in the Joint Fabric Datastore Cluster " +
|
|
652
|
+
"of the accessing fabric.",
|
|
527
653
|
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
654
|
+
children: [
|
|
655
|
+
{
|
|
656
|
+
tag: "field", name: "NodeId", xref: "core§11.24.7.12.1",
|
|
657
|
+
details: "This field shall indicate the node to be updated in the Joint Fabric Datastore Cluster."
|
|
658
|
+
},
|
|
659
|
+
|
|
660
|
+
{
|
|
661
|
+
tag: "field", name: "FriendlyName", xref: "core§11.24.7.12.2",
|
|
662
|
+
|
|
663
|
+
details: "This field shall indicate the friendly name for the node." +
|
|
664
|
+
"\n" +
|
|
665
|
+
"The Datastore shall:" +
|
|
666
|
+
"\n" +
|
|
667
|
+
" 1. If a DatastoreNodeInformationEntryStruct does not exist for the given NodeID in the NodeList " +
|
|
668
|
+
"attribute, then this command shall fail with a NOT_FOUND status code." +
|
|
669
|
+
"\n" +
|
|
670
|
+
" 2. Update the FriendlyName field of the DatastoreNodeInformationEntryStruct with the given NodeID."
|
|
671
|
+
}
|
|
672
|
+
]
|
|
535
673
|
},
|
|
536
674
|
|
|
537
675
|
{
|
|
538
676
|
tag: "command", name: "RemoveNode", xref: "core§11.24.7.13",
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
"
|
|
544
|
-
|
|
545
|
-
"
|
|
546
|
-
|
|
547
|
-
|
|
677
|
+
details: "Upon receipt, this shall remove a node from the Joint Fabric Datastore Cluster of the accessing " +
|
|
678
|
+
"fabric.",
|
|
679
|
+
|
|
680
|
+
children: [{
|
|
681
|
+
tag: "field", name: "NodeId", xref: "core§11.24.7.13.1",
|
|
682
|
+
|
|
683
|
+
details: "This field shall indicate the unique identifier for the node to be removed from the Joint Fabric " +
|
|
684
|
+
"Datastore Cluster." +
|
|
685
|
+
"\n" +
|
|
686
|
+
"The Datastore shall:" +
|
|
687
|
+
"\n" +
|
|
688
|
+
" 1. If a DatastoreNodeInformationEntryStruct does not exist for the given NodeID in the NodeList " +
|
|
689
|
+
"attribute, then this command shall fail with a NOT_FOUND status code." +
|
|
690
|
+
"\n" +
|
|
691
|
+
" 2. Remove the DatastoreNodeInformationEntryStruct with the given NodeID from the NodeList " +
|
|
692
|
+
"attribute."
|
|
693
|
+
}]
|
|
548
694
|
},
|
|
549
695
|
|
|
550
696
|
{
|
|
551
697
|
tag: "command", name: "UpdateEndpointForNode", xref: "core§11.24.7.14",
|
|
698
|
+
details: "Upon receipt, this shall update the state of an endpoint for a node in the Joint Fabric Datastore " +
|
|
699
|
+
"Cluster of the accessing fabric.",
|
|
552
700
|
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
701
|
+
children: [
|
|
702
|
+
{
|
|
703
|
+
tag: "field", name: "EndpointId", xref: "core§11.24.7.14.1",
|
|
704
|
+
details: "This field shall indicate the unique identifier for the endpoint to be updated in the Joint Fabric " +
|
|
705
|
+
"Datastore Cluster."
|
|
706
|
+
},
|
|
707
|
+
{
|
|
708
|
+
tag: "field", name: "NodeId", xref: "core§11.24.7.14.2",
|
|
709
|
+
details: "This field shall indicate the unique identifier for the node to which the endpoint belongs."
|
|
710
|
+
},
|
|
711
|
+
|
|
712
|
+
{
|
|
713
|
+
tag: "field", name: "FriendlyName", xref: "core§11.24.7.14.3",
|
|
714
|
+
|
|
715
|
+
details: "This field shall indicate the friendly name for the endpoint." +
|
|
716
|
+
"\n" +
|
|
717
|
+
"The Datastore shall:" +
|
|
718
|
+
"\n" +
|
|
719
|
+
" 1. If an DatastoreNodeInformationEntryStruct does not exist for the given NodeID and EndpointID in " +
|
|
720
|
+
"the NodeEndpointList attribute, then this command shall fail with a NOT_FOUND status code." +
|
|
721
|
+
"\n" +
|
|
722
|
+
" 2. Update the FriendlyName field of the DatastoreNodeInformationEntryStruct with the given NodeID " +
|
|
723
|
+
"and EndpointID."
|
|
724
|
+
}
|
|
725
|
+
]
|
|
563
726
|
},
|
|
564
727
|
|
|
565
728
|
{
|
|
566
729
|
tag: "command", name: "AddGroupIdToEndpointForNode", xref: "core§11.24.7.15",
|
|
730
|
+
details: "Upon receipt, this shall add a Group ID to an endpoint for a node in the Joint Fabric Datastore " +
|
|
731
|
+
"Cluster of the accessing fabric.",
|
|
567
732
|
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
733
|
+
children: [
|
|
734
|
+
{
|
|
735
|
+
tag: "field", name: "NodeId", xref: "core§11.24.7.15.1",
|
|
736
|
+
details: "This field shall indicate the unique identifier for the node to which the endpoint belongs."
|
|
737
|
+
},
|
|
738
|
+
{
|
|
739
|
+
tag: "field", name: "EndpointId", xref: "core§11.24.7.15.2",
|
|
740
|
+
details: "This field shall indicate the unique identifier for the endpoint to be updated in the Joint Fabric " +
|
|
741
|
+
"Datastore Cluster."
|
|
742
|
+
},
|
|
743
|
+
|
|
744
|
+
{
|
|
745
|
+
tag: "field", name: "GroupId", xref: "core§11.24.7.15.3",
|
|
746
|
+
|
|
747
|
+
details: "This field shall indicate the unique identifier for the group to be added to the endpoint." +
|
|
748
|
+
"\n" +
|
|
749
|
+
"The Datastore shall:" +
|
|
750
|
+
"\n" +
|
|
751
|
+
" 1. Confirm that an DatastoreNodeInformationEntryStruct exists for the given NodeID and EndpointID " +
|
|
752
|
+
"in the NodeEndpointList attribute, and if not, then this command shall fail with a NOT_FOUND " +
|
|
753
|
+
"status code." +
|
|
754
|
+
"\n" +
|
|
755
|
+
" 2. Ensure the Group Key List for the DatastoreNodeInformationEntryStruct with the given NodeID " +
|
|
756
|
+
"includes the KeySet for the given Group ID. If it does not:" +
|
|
757
|
+
"\n" +
|
|
758
|
+
" 1. Add an entry for the KeySet of the given Group ID to the Group Key List for the Node. The new " +
|
|
759
|
+
"entry's status shall be set to Pending." +
|
|
760
|
+
"\n" +
|
|
761
|
+
" 2. Add a Group Key Entry for this KeySet to the given Node ID." +
|
|
762
|
+
"\n" +
|
|
763
|
+
" 1. If this succeeds, update the new KeySet entry in the Datastore to Committed." +
|
|
764
|
+
"\n" +
|
|
765
|
+
" 2. If not successful, the pending change shall be applied in a subsequent Node Refresh." +
|
|
766
|
+
"\n" +
|
|
767
|
+
" 3. Ensure the Group List for the DatastoreNodeInformationEntryStruct with the given NodeID and " +
|
|
768
|
+
"EndpointID includes an entry for the given Group. If it does not:" +
|
|
769
|
+
"\n" +
|
|
770
|
+
" 1. Add a Group entry for the given Group ID to the Group List for the Endpoint and Node. The new " +
|
|
771
|
+
"entry's status shall be set to Pending." +
|
|
772
|
+
"\n" +
|
|
773
|
+
" 2. Add this Group entry to the given Endpoint ID on the given Node ID." +
|
|
774
|
+
"\n" +
|
|
775
|
+
" 1. If this succeeds, update the new Group entry in the Datastore to Committed." +
|
|
776
|
+
"\n" +
|
|
777
|
+
" 2. If not successful, update the Status to CommitFailed and the FailureCode to the returned error. " +
|
|
778
|
+
"The error shall be handled in a subsequent Node Refresh."
|
|
779
|
+
}
|
|
780
|
+
]
|
|
607
781
|
},
|
|
608
782
|
|
|
609
783
|
{
|
|
610
784
|
tag: "command", name: "RemoveGroupIdFromEndpointForNode", xref: "core§11.24.7.16",
|
|
785
|
+
details: "Upon receipt, this shall remove a Group ID from an endpoint for a node in the Joint Fabric Datastore " +
|
|
786
|
+
"Cluster of the accessing fabric.",
|
|
611
787
|
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
|
|
788
|
+
children: [
|
|
789
|
+
{
|
|
790
|
+
tag: "field", name: "NodeId", xref: "core§11.24.7.16.1",
|
|
791
|
+
details: "This field shall indicate the unique identifier for the node to which the endpoint belongs."
|
|
792
|
+
},
|
|
793
|
+
{
|
|
794
|
+
tag: "field", name: "EndpointId", xref: "core§11.24.7.16.2",
|
|
795
|
+
details: "This field shall indicate the unique identifier for the endpoint to be updated in the Joint Fabric " +
|
|
796
|
+
"Datastore Cluster."
|
|
797
|
+
},
|
|
798
|
+
|
|
799
|
+
{
|
|
800
|
+
tag: "field", name: "GroupId", xref: "core§11.24.7.16.3",
|
|
801
|
+
|
|
802
|
+
details: "This field shall indicate the unique identifier for the group to be removed from the endpoint." +
|
|
803
|
+
"\n" +
|
|
804
|
+
"The Datastore shall:" +
|
|
805
|
+
"\n" +
|
|
806
|
+
" 1. Confirm that an DatastoreNodeInformationEntryStruct exists for the given NodeID and EndpointID " +
|
|
807
|
+
"in the NodeEndpointList attribute, and if not, then this command shall fail with a NOT_FOUND " +
|
|
808
|
+
"status code." +
|
|
809
|
+
"\n" +
|
|
810
|
+
" 2. Ensure the EndpointGroupIDList entries with the given NodeID and EndpointID does not include an " +
|
|
811
|
+
"entry for the given Group. If it does:" +
|
|
812
|
+
"\n" +
|
|
813
|
+
" 1. Update the status to DeletePending of the Group entry for the given Group ID in the Group List." +
|
|
814
|
+
"\n" +
|
|
815
|
+
" 2. Remove this Group entry for the given Endpoint ID on the given Node ID." +
|
|
816
|
+
"\n" +
|
|
817
|
+
" 1. If this succeeds, remove the Group entry for the given Group ID in the Group List for this " +
|
|
818
|
+
"NodeID and EndpointID in the Datastore." +
|
|
819
|
+
"\n" +
|
|
820
|
+
" 2. If not successful, the pending change shall be applied in a subsequent Node Refresh." +
|
|
821
|
+
"\n" +
|
|
822
|
+
" 3. Ensure the Group Key List for the DatastoreNodeInformationEntryStruct with the given NodeID " +
|
|
823
|
+
"does not include the KeySet for the given Group ID. If it does:" +
|
|
824
|
+
"\n" +
|
|
825
|
+
" 1. Update the status to DeletePending for the entry for the KeySet of the given Group ID in the " +
|
|
826
|
+
"Node Group Key List." +
|
|
827
|
+
"\n" +
|
|
828
|
+
" 2. Remove the Group Key Entry for this KeySet from the given Node ID." +
|
|
829
|
+
"\n" +
|
|
830
|
+
" 1. If this succeeds, remove the KeySet entry for the given Node ID." +
|
|
831
|
+
"\n" +
|
|
832
|
+
" 2. If not successful, update the Status to CommitFailed and the FailureCode to the returned error. " +
|
|
833
|
+
"The error shall be handled in a subsequent Node Refresh."
|
|
834
|
+
}
|
|
835
|
+
]
|
|
651
836
|
},
|
|
652
837
|
|
|
653
838
|
{
|
|
654
839
|
tag: "command", name: "AddBindingToEndpointForNode", xref: "core§11.24.7.17",
|
|
840
|
+
details: "Upon receipt, this shall add a binding to an endpoint for a node in the Joint Fabric Datastore " +
|
|
841
|
+
"Cluster of the accessing fabric.",
|
|
655
842
|
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
|
|
673
|
-
|
|
674
|
-
|
|
675
|
-
|
|
676
|
-
|
|
677
|
-
|
|
678
|
-
|
|
679
|
-
|
|
680
|
-
|
|
681
|
-
|
|
682
|
-
|
|
843
|
+
children: [
|
|
844
|
+
{
|
|
845
|
+
tag: "field", name: "NodeId", xref: "core§11.24.7.17.1",
|
|
846
|
+
details: "This field shall indicate the unique identifier for the node to which the endpoint belongs."
|
|
847
|
+
},
|
|
848
|
+
{
|
|
849
|
+
tag: "field", name: "EndpointId", xref: "core§11.24.7.17.2",
|
|
850
|
+
details: "This field shall indicate the unique identifier for the endpoint to be updated in the Joint Fabric " +
|
|
851
|
+
"Datastore Cluster."
|
|
852
|
+
},
|
|
853
|
+
|
|
854
|
+
{
|
|
855
|
+
tag: "field", name: "Binding", xref: "core§11.24.7.17.3",
|
|
856
|
+
|
|
857
|
+
details: "This field shall indicate the binding to be added to the endpoint." +
|
|
858
|
+
"\n" +
|
|
859
|
+
"The Datastore shall:" +
|
|
860
|
+
"\n" +
|
|
861
|
+
" 1. Confirm that an DatastoreNodeInformationEntryStruct exists for the given NodeID and EndpointID " +
|
|
862
|
+
"in the NodeEndpointList attribute, and if not, then this command shall fail with a NOT_FOUND " +
|
|
863
|
+
"status code." +
|
|
864
|
+
"\n" +
|
|
865
|
+
" 2. Ensure the Binding List for the DatastoreNodeInformationEntryStruct with the given NodeID " +
|
|
866
|
+
"includes the given Binding. If it does not:" +
|
|
867
|
+
"\n" +
|
|
868
|
+
" 1. Add the DatastoreEndpointBindingEntryStruct entry to the EndpointBindingList attribute for the " +
|
|
869
|
+
"given NodeID and EndpointID. The new entry's status shall be set to Pending." +
|
|
870
|
+
"\n" +
|
|
871
|
+
" 2. Add this Binding to the given Node ID." +
|
|
872
|
+
"\n" +
|
|
873
|
+
" 1. If this succeeds, update the new Binding in the Datastore to Committed." +
|
|
874
|
+
"\n" +
|
|
875
|
+
" 2. If not successful, update the Status to CommitFailed and the FailureCode to the returned error. " +
|
|
876
|
+
"The error shall be handled in a subsequent Node Refresh."
|
|
877
|
+
}
|
|
878
|
+
]
|
|
683
879
|
},
|
|
684
880
|
|
|
685
881
|
{
|
|
686
882
|
tag: "command", name: "RemoveBindingFromEndpointForNode", xref: "core§11.24.7.18",
|
|
883
|
+
details: "Upon receipt, this shall remove a binding from an endpoint for a node in the Joint Fabric Datastore " +
|
|
884
|
+
"Cluster of the accessing fabric.",
|
|
687
885
|
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
|
|
692
|
-
|
|
693
|
-
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
|
|
697
|
-
|
|
698
|
-
|
|
699
|
-
|
|
700
|
-
|
|
701
|
-
|
|
702
|
-
|
|
703
|
-
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
|
|
886
|
+
children: [
|
|
887
|
+
{
|
|
888
|
+
tag: "field", name: "ListId", xref: "core§11.24.7.18.1",
|
|
889
|
+
details: "This field shall indicate the unique identifier for the binding entry in the Datastore's " +
|
|
890
|
+
"EndpointBindingList attribute to be removed from the endpoint."
|
|
891
|
+
},
|
|
892
|
+
{
|
|
893
|
+
tag: "field", name: "EndpointId", xref: "core§11.24.7.18.2",
|
|
894
|
+
details: "This field shall indicate the unique identifier for the endpoint to be updated in the Joint Fabric " +
|
|
895
|
+
"Datastore Cluster."
|
|
896
|
+
},
|
|
897
|
+
|
|
898
|
+
{
|
|
899
|
+
tag: "field", name: "NodeId", xref: "core§11.24.7.18.3",
|
|
900
|
+
|
|
901
|
+
details: "This field shall indicate the unique identifier for the node to which the endpoint belongs." +
|
|
902
|
+
"\n" +
|
|
903
|
+
"The Datastore shall:" +
|
|
904
|
+
"\n" +
|
|
905
|
+
" 1. Confirm that an DatastoreNodeInformationEntryStruct exists for the given NodeID and EndpointID " +
|
|
906
|
+
"in the EndpointBindingList attribute, and if not, then this command shall fail with a NOT_FOUND " +
|
|
907
|
+
"status code." +
|
|
908
|
+
"\n" +
|
|
909
|
+
" 2. Ensure the EndpointBindingList entries with the given NodeID does not include an entry with the " +
|
|
910
|
+
"given ListID. If it does:" +
|
|
911
|
+
"\n" +
|
|
912
|
+
" 1. Update the status to DeletePending for the given Binding in the Binding List." +
|
|
913
|
+
"\n" +
|
|
914
|
+
" 2. Remove this Binding from the given Node ID." +
|
|
915
|
+
"\n" +
|
|
916
|
+
" 1. If this succeeds, remove the given Binding from the Binding List." +
|
|
917
|
+
"\n" +
|
|
918
|
+
" 2. If not successful, update the Status to CommitFailed and the FailureCode to the returned error. " +
|
|
919
|
+
"The error shall be handled in a subsequent Node Refresh."
|
|
920
|
+
}
|
|
921
|
+
]
|
|
715
922
|
},
|
|
716
923
|
|
|
717
924
|
{
|
|
718
925
|
tag: "command", name: "AddAclToNode", xref: "core§11.24.7.19",
|
|
926
|
+
details: "Upon receipt, this shall add an ACL to a node in the Joint Fabric Datastore Cluster of the accessing " +
|
|
927
|
+
"fabric.",
|
|
719
928
|
|
|
720
|
-
|
|
721
|
-
|
|
722
|
-
|
|
723
|
-
|
|
724
|
-
|
|
725
|
-
|
|
726
|
-
|
|
727
|
-
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
|
|
734
|
-
|
|
735
|
-
|
|
736
|
-
|
|
737
|
-
|
|
738
|
-
|
|
739
|
-
|
|
740
|
-
|
|
741
|
-
|
|
742
|
-
|
|
929
|
+
children: [
|
|
930
|
+
{
|
|
931
|
+
tag: "field", name: "NodeId", xref: "core§11.24.7.19.1",
|
|
932
|
+
details: "This field shall indicate the unique identifier for the node to which the ACL is to be added."
|
|
933
|
+
},
|
|
934
|
+
|
|
935
|
+
{
|
|
936
|
+
tag: "field", name: "AclEntry", xref: "core§11.24.7.19.2",
|
|
937
|
+
|
|
938
|
+
details: "This field shall indicate the ACL to be added to the Joint Fabric Datastore Cluster." +
|
|
939
|
+
"\n" +
|
|
940
|
+
"The Datastore shall:" +
|
|
941
|
+
"\n" +
|
|
942
|
+
" 1. Confirm that a DatastoreNodeInformationEntryStruct exists for the given NodeID in the NodeList " +
|
|
943
|
+
"attribute, and if not, then this command shall fail with a NOT_FOUND status code." +
|
|
944
|
+
"\n" +
|
|
945
|
+
" 2. Ensure the ACL List for the given NodeID includes the given ACLEntry. If it does not:" +
|
|
946
|
+
"\n" +
|
|
947
|
+
" 1. Add the ACLEntry to the ACL List for the given NodeID. The new entry's status shall be set to " +
|
|
948
|
+
"Pending." +
|
|
949
|
+
"\n" +
|
|
950
|
+
" 2. Add this ACLEntry to the given Node ID." +
|
|
951
|
+
"\n" +
|
|
952
|
+
" 1. If this succeeds, update the new ACLEntry in the Datastore to Committed." +
|
|
953
|
+
"\n" +
|
|
954
|
+
" 2. If not successful, update the Status to CommitFailed and the FailureCode to the returned error. " +
|
|
955
|
+
"The error shall be handled in a subsequent Node Refresh."
|
|
956
|
+
}
|
|
957
|
+
]
|
|
743
958
|
},
|
|
744
959
|
|
|
745
960
|
{
|
|
746
961
|
tag: "command", name: "RemoveAclFromNode", xref: "core§11.24.7.20",
|
|
962
|
+
details: "Upon receipt, this shall remove an ACL from a node in the Joint Fabric Datastore Cluster of the " +
|
|
963
|
+
"accessing fabric.",
|
|
747
964
|
|
|
748
|
-
|
|
749
|
-
|
|
750
|
-
|
|
751
|
-
|
|
752
|
-
|
|
753
|
-
|
|
754
|
-
|
|
755
|
-
|
|
756
|
-
|
|
757
|
-
|
|
758
|
-
|
|
759
|
-
|
|
760
|
-
|
|
761
|
-
|
|
762
|
-
|
|
763
|
-
|
|
764
|
-
|
|
765
|
-
|
|
766
|
-
|
|
767
|
-
|
|
768
|
-
|
|
769
|
-
|
|
770
|
-
|
|
965
|
+
children: [
|
|
966
|
+
{
|
|
967
|
+
tag: "field", name: "ListId", xref: "core§11.24.7.20.1",
|
|
968
|
+
details: "This field shall indicate the unique identifier for the DatastoreACLEntryStruct to be removed from " +
|
|
969
|
+
"the Datastore's list of DatastoreACLEntry."
|
|
970
|
+
},
|
|
971
|
+
|
|
972
|
+
{
|
|
973
|
+
tag: "field", name: "NodeId", xref: "core§11.24.7.20.2",
|
|
974
|
+
|
|
975
|
+
details: "This field shall indicate the unique identifier for the node from which the ACL is to be removed." +
|
|
976
|
+
"\n" +
|
|
977
|
+
"The Datastore shall:" +
|
|
978
|
+
"\n" +
|
|
979
|
+
" 1. Confirm that a DatastoreNodeInformationEntryStruct exists for the given NodeID in the NodeList " +
|
|
980
|
+
"attribute, and if not, then this command shall fail with a NOT_FOUND status code." +
|
|
981
|
+
"\n" +
|
|
982
|
+
" 2. Ensure the ACL List for the given NodeID does not include the given ACLEntry. If it does:" +
|
|
983
|
+
"\n" +
|
|
984
|
+
" 1. Update the status to DeletePending for the given ACLEntry in the ACL List." +
|
|
985
|
+
"\n" +
|
|
986
|
+
" 2. Remove this ACLEntry from the given Node ID." +
|
|
987
|
+
"\n" +
|
|
988
|
+
" 1. If this succeeds, remove the given ACLEntry from the Node ACL List." +
|
|
989
|
+
"\n" +
|
|
990
|
+
" 2. If not successful, update the Status to CommitFailed and the FailureCode to the returned error. " +
|
|
991
|
+
"The error shall be handled in a subsequent Node Refresh."
|
|
992
|
+
}
|
|
993
|
+
]
|
|
771
994
|
},
|
|
772
995
|
|
|
773
996
|
{
|
|
@@ -795,8 +1018,8 @@ Resource.add({
|
|
|
795
1018
|
},
|
|
796
1019
|
{
|
|
797
1020
|
tag: "field", name: "FailureCode", xref: "core§11.24.5.2.3",
|
|
798
|
-
details: "This field shall contain the
|
|
799
|
-
"CommitFailure."
|
|
1021
|
+
details: "This field shall contain the Status Code of the last failed operation where the State field is set " +
|
|
1022
|
+
"to CommitFailure."
|
|
800
1023
|
}
|
|
801
1024
|
]
|
|
802
1025
|
},
|
|
@@ -992,14 +1215,16 @@ Resource.add({
|
|
|
992
1215
|
|
|
993
1216
|
{
|
|
994
1217
|
tag: "field", name: "FriendlyName", xref: "core§11.24.5.9.3",
|
|
995
|
-
details: "Friendly name for this endpoint which is propagated to nodes. Any changes to Friendly Name or Group " +
|
|
996
|
-
"Id List (add/remove entry) must follow the pending->committed workflow with current state reflected " +
|
|
997
|
-
"in the Status Entry."
|
|
998
|
-
},
|
|
999
1218
|
|
|
1000
|
-
|
|
1001
|
-
|
|
1002
|
-
|
|
1219
|
+
details: "This field shall indicate a user-assigned label for this endpoint, as captured by a Joint Fabric " +
|
|
1220
|
+
"Administrator's user interface. By maintaining this value in the Joint Fabric Datastore, all Joint " +
|
|
1221
|
+
"Fabric Administrators can keep these values synchronized. This is particularly useful for complex " +
|
|
1222
|
+
"multi-application endpoint devices (such as appliances) and for endpoints exposed via a Bridge, " +
|
|
1223
|
+
"where individual endpoints might have custom names assigned by the user. For basic devices, only the " +
|
|
1224
|
+
"node-level FriendlyName might be used." +
|
|
1225
|
+
"\n" +
|
|
1226
|
+
"Administrators may keep this field in sync with the NodeLabel field from the Basic Information or " +
|
|
1227
|
+
"Bridged Basic Information clusters."
|
|
1003
1228
|
}
|
|
1004
1229
|
]
|
|
1005
1230
|
},
|
|
@@ -1058,9 +1283,17 @@ Resource.add({
|
|
|
1058
1283
|
tag: "field", name: "NodeId", xref: "core§11.24.5.14.1",
|
|
1059
1284
|
details: "The unique identifier for the node."
|
|
1060
1285
|
},
|
|
1286
|
+
|
|
1061
1287
|
{
|
|
1062
1288
|
tag: "field", name: "FriendlyName", xref: "core§11.24.5.14.2",
|
|
1063
|
-
|
|
1289
|
+
|
|
1290
|
+
details: "This field shall contain a user-assigned label for this node, as captured by a Joint Fabric " +
|
|
1291
|
+
"Administrator's user interface. By maintaining this value in the Joint Fabric Datastore, all Joint " +
|
|
1292
|
+
"Fabric Administrators can keep these values synchronized. This value is not propagated to the node " +
|
|
1293
|
+
"itself." +
|
|
1294
|
+
"\n" +
|
|
1295
|
+
"Administrators may keep this field in sync with the NodeLabel field from the Basic Information or " +
|
|
1296
|
+
"Bridged Basic Information clusters."
|
|
1064
1297
|
},
|
|
1065
1298
|
|
|
1066
1299
|
{
|