From f85962625234dfed6d16e157198bfc5eb9795196 Mon Sep 17 00:00:00 2001 From: Yufeng Wang Date: Wed, 19 Jan 2022 15:24:10 -0800 Subject: [PATCH] Update the ACL event fields to align with the spec --- .../all-clusters-app.matter | 12 +++---- .../chip/access-control-cluster.xml | 12 +++---- .../data_model/controller-clusters.matter | 12 +++---- .../python/chip/clusters/Objects.py | 24 +++++++------- .../zap-generated/cluster-objects.h | 32 +++++++++---------- 5 files changed, 46 insertions(+), 46 deletions(-) diff --git a/examples/all-clusters-app/all-clusters-common/all-clusters-app.matter b/examples/all-clusters-app/all-clusters-common/all-clusters-app.matter index fe24dc6be7d331..05d3107832ed46 100644 --- a/examples/all-clusters-app/all-clusters-common/all-clusters-app.matter +++ b/examples/all-clusters-app/all-clusters-common/all-clusters-app.matter @@ -48,18 +48,18 @@ server cluster AccessControl = 31 { info event AccessControlEntryChanged = 0 { fabric_idx adminFabricIndex = 0; - node_id adminNodeID = 1; - INT16U adminPasscodeID = 2; + nullable node_id adminNodeID = 1; + nullable INT16U adminPasscodeID = 2; ChangeTypeEnum changeType = 3; - AccessControlEntry latestValue = 4; + nullable AccessControlEntry latestValue = 4; } info event AccessControlExtensionChanged = 1 { fabric_idx adminFabricIndex = 0; - node_id adminNodeID = 1; - INT16U adminPasscodeID = 2; + nullable node_id adminNodeID = 1; + nullable INT16U adminPasscodeID = 2; ChangeTypeEnum changeType = 3; - ExtensionEntry latestValue = 4; + nullable ExtensionEntry latestValue = 4; } attribute AccessControlEntry acl[] = 0; diff --git a/src/app/zap-templates/zcl/data-model/chip/access-control-cluster.xml b/src/app/zap-templates/zcl/data-model/chip/access-control-cluster.xml index 6b912b1de27157..00405d84eec76a 100644 --- a/src/app/zap-templates/zcl/data-model/chip/access-control-cluster.xml +++ b/src/app/zap-templates/zcl/data-model/chip/access-control-cluster.xml @@ -89,18 +89,18 @@ limitations under the License. The cluster SHALL send AccessControlEntryChanged events whenever its ACL attribute data is changed by an Administrator. - - + + - + The cluster SHALL send AccessControlExtensionChanged events whenever its extension attribute data is changed by an Administrator. - - + + - + diff --git a/src/controller/data_model/controller-clusters.matter b/src/controller/data_model/controller-clusters.matter index 2175f416ff7daa..0c8f01ef95d935 100644 --- a/src/controller/data_model/controller-clusters.matter +++ b/src/controller/data_model/controller-clusters.matter @@ -48,18 +48,18 @@ client cluster AccessControl = 31 { info event AccessControlEntryChanged = 0 { fabric_idx adminFabricIndex = 0; - node_id adminNodeID = 1; - INT16U adminPasscodeID = 2; + nullable node_id adminNodeID = 1; + nullable INT16U adminPasscodeID = 2; ChangeTypeEnum changeType = 3; - AccessControlEntry latestValue = 4; + nullable AccessControlEntry latestValue = 4; } info event AccessControlExtensionChanged = 1 { fabric_idx adminFabricIndex = 0; - node_id adminNodeID = 1; - INT16U adminPasscodeID = 2; + nullable node_id adminNodeID = 1; + nullable INT16U adminPasscodeID = 2; ChangeTypeEnum changeType = 3; - ExtensionEntry latestValue = 4; + nullable ExtensionEntry latestValue = 4; } attribute AccessControlEntry acl[] = 0; diff --git a/src/controller/python/chip/clusters/Objects.py b/src/controller/python/chip/clusters/Objects.py index bf0b7d22cfce3a..a80b7682c9433e 100644 --- a/src/controller/python/chip/clusters/Objects.py +++ b/src/controller/python/chip/clusters/Objects.py @@ -5297,17 +5297,17 @@ def descriptor(cls) -> ClusterObjectDescriptor: return ClusterObjectDescriptor( Fields = [ ClusterObjectFieldDescriptor(Label="adminFabricIndex", Tag=0, Type=uint), - ClusterObjectFieldDescriptor(Label="adminNodeID", Tag=1, Type=uint), - ClusterObjectFieldDescriptor(Label="adminPasscodeID", Tag=2, Type=uint), + ClusterObjectFieldDescriptor(Label="adminNodeID", Tag=1, Type=typing.Union[Nullable, uint]), + ClusterObjectFieldDescriptor(Label="adminPasscodeID", Tag=2, Type=typing.Union[Nullable, uint]), ClusterObjectFieldDescriptor(Label="changeType", Tag=3, Type=AccessControl.Enums.ChangeTypeEnum), - ClusterObjectFieldDescriptor(Label="latestValue", Tag=4, Type=AccessControl.Structs.AccessControlEntry), + ClusterObjectFieldDescriptor(Label="latestValue", Tag=4, Type=typing.Union[Nullable, AccessControl.Structs.AccessControlEntry]), ]) adminFabricIndex: 'uint' = 0 - adminNodeID: 'uint' = 0 - adminPasscodeID: 'uint' = 0 + adminNodeID: 'typing.Union[Nullable, uint]' = NullValue + adminPasscodeID: 'typing.Union[Nullable, uint]' = NullValue changeType: 'AccessControl.Enums.ChangeTypeEnum' = 0 - latestValue: 'AccessControl.Structs.AccessControlEntry' = field(default_factory=lambda: AccessControl.Structs.AccessControlEntry()) + latestValue: 'typing.Union[Nullable, AccessControl.Structs.AccessControlEntry]' = NullValue @dataclass class AccessControlExtensionChanged(ClusterEvent): @@ -5324,17 +5324,17 @@ def descriptor(cls) -> ClusterObjectDescriptor: return ClusterObjectDescriptor( Fields = [ ClusterObjectFieldDescriptor(Label="adminFabricIndex", Tag=0, Type=uint), - ClusterObjectFieldDescriptor(Label="adminNodeID", Tag=1, Type=uint), - ClusterObjectFieldDescriptor(Label="adminPasscodeID", Tag=2, Type=uint), + ClusterObjectFieldDescriptor(Label="adminNodeID", Tag=1, Type=typing.Union[Nullable, uint]), + ClusterObjectFieldDescriptor(Label="adminPasscodeID", Tag=2, Type=typing.Union[Nullable, uint]), ClusterObjectFieldDescriptor(Label="changeType", Tag=3, Type=AccessControl.Enums.ChangeTypeEnum), - ClusterObjectFieldDescriptor(Label="latestValue", Tag=4, Type=AccessControl.Structs.ExtensionEntry), + ClusterObjectFieldDescriptor(Label="latestValue", Tag=4, Type=typing.Union[Nullable, AccessControl.Structs.ExtensionEntry]), ]) adminFabricIndex: 'uint' = 0 - adminNodeID: 'uint' = 0 - adminPasscodeID: 'uint' = 0 + adminNodeID: 'typing.Union[Nullable, uint]' = NullValue + adminPasscodeID: 'typing.Union[Nullable, uint]' = NullValue changeType: 'AccessControl.Enums.ChangeTypeEnum' = 0 - latestValue: 'AccessControl.Structs.ExtensionEntry' = field(default_factory=lambda: AccessControl.Structs.ExtensionEntry()) + latestValue: 'typing.Union[Nullable, AccessControl.Structs.ExtensionEntry]' = NullValue @dataclass diff --git a/zzz_generated/app-common/app-common/zap-generated/cluster-objects.h b/zzz_generated/app-common/app-common/zap-generated/cluster-objects.h index 43e92032bf5ce9..cf7b776e220103 100644 --- a/zzz_generated/app-common/app-common/zap-generated/cluster-objects.h +++ b/zzz_generated/app-common/app-common/zap-generated/cluster-objects.h @@ -6605,10 +6605,10 @@ struct Type static constexpr ClusterId GetClusterId() { return Clusters::AccessControl::Id; } chip::FabricIndex adminFabricIndex = static_cast(0); - chip::NodeId adminNodeID = static_cast(0); - uint16_t adminPasscodeID = static_cast(0); - ChangeTypeEnum changeType = static_cast(0); - Structs::AccessControlEntry::Type latestValue; + DataModel::Nullable adminNodeID; + DataModel::Nullable adminPasscodeID; + ChangeTypeEnum changeType = static_cast(0); + DataModel::Nullable latestValue; CHIP_ERROR Encode(TLV::TLVWriter & writer, TLV::Tag tag) const; }; @@ -6621,10 +6621,10 @@ struct DecodableType static constexpr ClusterId GetClusterId() { return Clusters::AccessControl::Id; } chip::FabricIndex adminFabricIndex = static_cast(0); - chip::NodeId adminNodeID = static_cast(0); - uint16_t adminPasscodeID = static_cast(0); - ChangeTypeEnum changeType = static_cast(0); - Structs::AccessControlEntry::DecodableType latestValue; + DataModel::Nullable adminNodeID; + DataModel::Nullable adminPasscodeID; + ChangeTypeEnum changeType = static_cast(0); + DataModel::Nullable latestValue; CHIP_ERROR Decode(TLV::TLVReader & reader); }; @@ -6650,10 +6650,10 @@ struct Type static constexpr ClusterId GetClusterId() { return Clusters::AccessControl::Id; } chip::FabricIndex adminFabricIndex = static_cast(0); - chip::NodeId adminNodeID = static_cast(0); - uint16_t adminPasscodeID = static_cast(0); - ChangeTypeEnum changeType = static_cast(0); - Structs::ExtensionEntry::Type latestValue; + DataModel::Nullable adminNodeID; + DataModel::Nullable adminPasscodeID; + ChangeTypeEnum changeType = static_cast(0); + DataModel::Nullable latestValue; CHIP_ERROR Encode(TLV::TLVWriter & writer, TLV::Tag tag) const; }; @@ -6666,10 +6666,10 @@ struct DecodableType static constexpr ClusterId GetClusterId() { return Clusters::AccessControl::Id; } chip::FabricIndex adminFabricIndex = static_cast(0); - chip::NodeId adminNodeID = static_cast(0); - uint16_t adminPasscodeID = static_cast(0); - ChangeTypeEnum changeType = static_cast(0); - Structs::ExtensionEntry::DecodableType latestValue; + DataModel::Nullable adminNodeID; + DataModel::Nullable adminPasscodeID; + ChangeTypeEnum changeType = static_cast(0); + DataModel::Nullable latestValue; CHIP_ERROR Decode(TLV::TLVReader & reader); };