diff --git a/scripts/py_matter_idl/matter_idl/generators/java/ChipEventStructs_java.jinja b/scripts/py_matter_idl/matter_idl/generators/java/ChipEventStructs_java.jinja new file mode 100644 index 00000000000000..522b7af6d22b79 --- /dev/null +++ b/scripts/py_matter_idl/matter_idl/generators/java/ChipEventStructs_java.jinja @@ -0,0 +1,144 @@ +{%- macro optional_map(variable) -%} + {{variable}}_map +{%- endmacro -%} + +{%- macro arrayclone_it(variable) -%} + {{variable}}_it +{%- endmacro -%} + +{%- macro encode_clone(variable, source, encodable, depth) -%} + {%- if encodable.is_nullable -%} + ({{variable}} != null ? {{encode_clone(variable, source, encodable.without_nullable(), depth + 1)}} : null) + {%- elif encodable.is_optional -%} + {{variable}}.map({{optional_map(variable)}} -> {{encode_clone(optional_map(variable), source, encodable.without_optional(), depth + 1)}}) + {%- elif encodable.is_list -%} + arrayClone({{variable}}, {{arrayclone_it(variable)}} -> {{encode_clone(arrayclone_it(variable), source, encodable.without_list(), depth + 1)}}) + {%- elif encodable.is_struct -%} + {{variable}}.clone() + {%- elif encodable.is_octet_string -%} + {{variable}}.clone() + {%- else -%} + {{variable}} + {%- endif -%} +{%- endmacro -%} + +{%- macro encode_value(source, encodable, depth) -%} + {%- if encodable.is_nullable -%} + @Nullable {{encode_value(source, encodable.without_nullable(), depth + 1)}} + {%- elif encodable.is_optional -%} + Optional<{{encode_value(source, encodable.without_optional(), depth + 1)}}> + {%- elif encodable.is_list -%} + ArrayList<{{encode_value(source, encodable.without_list(), depth + 1)}}> + {%- elif encodable.is_struct -%} + {%- set struct = encodable.get_underlying_struct() -%} + ChipStructs.{{source.name}}Cluster{{struct.name}} + {%- else -%} + {{encodable.boxed_java_type}} + {%- endif -%} +{%- endmacro -%} + +/* + * + * Copyright (c) 2023 Project CHIP Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package chip.devicecontroller; + +import javax.annotation.Nullable; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Optional; + +public class ChipEventStructs { +{%- for cluster in clientClusters | sort(attribute='code') -%} +{%- set typeLookup = idl | createLookupContext(cluster) %} +{%- for event in cluster.events %} +{%- if event.fields %} +public static class {{cluster.name}}Cluster{{event.name}}Event implements Cloneable { + {%- for field in event.fields %} + {%- set encodable = field | asEncodable(typeLookup) %} + public {{encode_value(cluster, encodable, 0)}} {{field.name}}; + {%- endfor %} + public {{cluster.name}}Cluster{{event.name}}Event( + {%- for field in event.fields %} + {%- set encodable = field | asEncodable(typeLookup) %} + {{encode_value(cluster, encodable, 0)}} {{field.name}} + {%- if loop.index0 < loop.length - 1 -%}{{","}}{%- endif -%} + {%- endfor %} + ) { + {%- for field in event.fields %} + {%- set encodable = field | asEncodable(typeLookup) %} + this.{{field.name}} = {{field.name}}; + {%- endfor %} + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("{{cluster.name}}Cluster{{event.name}}Event {\n"); + {%- for field in event.fields %} + {%- set encodable = field | asEncodable(typeLookup) %} + output.append("\t{{field.name}}: "); + {%- if encodable.is_list %} + output.append({{field.name}}); + {%- elif encodable.is_octet_string %} + {%- if encodable.is_optional %} + output.append({{field.name}}.isPresent() ? Arrays.toString({{field.name}}.get()) : ""); + {%- else %} + output.append(Arrays.toString({{field.name}})); + {%- endif %} + {%- else %} + output.append({{field.name}}); + {%- endif %} + output.append("\n"); + {%- endfor %} + output.append("}\n"); + return output.toString(); + } + + @Override + public {{cluster.name}}Cluster{{event.name}}Event clone() { + {{cluster.name}}Cluster{{event.name}}Event ret; + try { + ret = ({{cluster.name}}Cluster{{event.name}}Event)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + + {%- for field in event.fields %} + {%- set encodable = field | asEncodable(typeLookup) %} + ret.{{field.name}} = {{encode_clone(field.name, cluster, encodable, 0)}}; + {%- endfor %} + return ret; + } +} +{%- endif %} +{%- endfor %} +{%- endfor %} + private interface ArrayCloneFunction { + T cloneFunction(T input) throws CloneNotSupportedException; + } + + private static ArrayList arrayClone(ArrayList inputArray, ArrayCloneFunction func) { + ArrayList ret = new ArrayList(inputArray.size()); + for (T it : inputArray) { + try { + ret.add(func.cloneFunction(it)); + } catch (CloneNotSupportedException e) { + // Ignore + } + } + return ret; + } +} diff --git a/scripts/py_matter_idl/matter_idl/generators/java/ChipStructs_java.jinja b/scripts/py_matter_idl/matter_idl/generators/java/ChipStructs_java.jinja new file mode 100644 index 00000000000000..e44acc35a3a1fb --- /dev/null +++ b/scripts/py_matter_idl/matter_idl/generators/java/ChipStructs_java.jinja @@ -0,0 +1,145 @@ +{%- macro optional_map(variable) -%} + {{variable}}_map +{%- endmacro -%} + +{%- macro arrayclone_it(variable) -%} + {{variable}}_it +{%- endmacro -%} + +{%- macro encode_clone(variable, source, encodable, depth) -%} + {%- if encodable.is_nullable -%} + ({{variable}} != null ? {{encode_clone(variable, source, encodable.without_nullable(), depth + 1)}} : null) + {%- elif encodable.is_optional -%} + {{variable}}.map({{optional_map(variable)}} -> {{encode_clone(optional_map(variable), source, encodable.without_optional(), depth + 1)}}) + {%- elif encodable.is_list -%} + arrayClone({{variable}}, {{arrayclone_it(variable)}} -> {{encode_clone(arrayclone_it(variable), source, encodable.without_list(), depth + 1)}}) + {%- elif encodable.is_struct -%} + {{variable}}.clone() + {%- elif encodable.is_octet_string -%} + {{variable}}.clone() + {%- else -%} + {{variable}} + {%- endif -%} +{%- endmacro -%} + +{%- macro encode_value(source, encodable, depth) -%} + {%- if encodable.is_nullable -%} + @Nullable {{encode_value(source, encodable.without_nullable(), depth + 1)}} + {%- elif encodable.is_optional -%} + Optional<{{encode_value(source, encodable.without_optional(), depth + 1)}}> + {%- elif encodable.is_list -%} + ArrayList<{{encode_value(source, encodable.without_list(), depth + 1)}}> + {%- elif encodable.is_struct -%} + {%- set struct = encodable.get_underlying_struct() -%} + ChipStructs.{{source.name}}Cluster{{struct.name}} + {%- else -%} + {{encodable.boxed_java_type}} + {%- endif -%} +{%- endmacro -%} + +/* + * + * Copyright (c) 2023 Project CHIP Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package chip.devicecontroller; + +import javax.annotation.Nullable; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Optional; + +public class ChipStructs { +{%- for cluster in clientClusters | sort(attribute='code') -%} +{%- set typeLookup = idl | createLookupContext(cluster) %} +{%- for struct in cluster.structs %} +{%- if not struct.tag %} +public static class {{cluster.name}}Cluster{{struct.name}} implements Cloneable { + {%- for field in struct.fields %} + {%- set encodable = field | asEncodable(typeLookup) %} + public {{encode_value(cluster, encodable, 0)}} {{field.name}}; + {%- endfor %} + public {{cluster.name}}Cluster{{struct.name}}( + {%- for field in struct.fields %} + {%- set encodable = field | asEncodable(typeLookup) %} + {{encode_value(cluster, encodable, 0)}} {{field.name}} + {%- if loop.index0 < loop.length - 1 -%}{{","}}{%- endif -%} + {%- endfor %} + ) { + {%- for field in struct.fields %} + {%- set encodable = field | asEncodable(typeLookup) %} + this.{{field.name}} = {{field.name}}; + {%- endfor %} + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("{{cluster.name}}Cluster{{struct.name}} {\n"); + {%- for field in struct.fields %} + {%- set encodable = field | asEncodable(typeLookup) %} + output.append("\t{{field.name}}: "); + {%- if encodable.is_list %} + output.append({{field.name}}); + {%- elif encodable.is_octet_string -%} + {%- if encodable.is_optional %} + output.append({{field.name}}.isPresent() ? Arrays.toString({{field.name}}.get()) : ""); + {%- else %} + output.append(Arrays.toString({{field.name}})); + {%- endif %} + {%- else %} + output.append({{field.name}}); + {%- endif %} + output.append("\n"); + {%- endfor %} + output.append("}\n"); + return output.toString(); + } + + @Override + public {{cluster.name}}Cluster{{struct.name}} clone() { + {{cluster.name}}Cluster{{struct.name}} ret; + try { + ret = ({{cluster.name}}Cluster{{struct.name}})super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + + {%- for field in struct.fields %} + {%- set encodable = field | asEncodable(typeLookup) %} + ret.{{field.name}} = {{encode_clone(field.name, cluster, encodable, 0)}}; + {%- endfor %} + return ret; + } +} +{%- endif %} +{%- endfor %} +{%- endfor %} + + private interface ArrayCloneFunction { + T cloneFunction(T input) throws CloneNotSupportedException; + } + + private static ArrayList arrayClone(ArrayList inputArray, ArrayCloneFunction func) { + ArrayList ret = new ArrayList(inputArray.size()); + for (T it : inputArray) { + try { + ret.add(func.cloneFunction(it)); + } catch (CloneNotSupportedException e) { + // Ignore + } + } + return ret; + } +} diff --git a/scripts/py_matter_idl/matter_idl/generators/java/__init__.py b/scripts/py_matter_idl/matter_idl/generators/java/__init__.py index 5abc912ebabd34..45dfee866cc881 100644 --- a/scripts/py_matter_idl/matter_idl/generators/java/__init__.py +++ b/scripts/py_matter_idl/matter_idl/generators/java/__init__.py @@ -790,6 +790,23 @@ def internal_render_all(self): } ) + self.internal_render_one_output( + template_path="ChipStructs_java.jinja", + output_file_name="java/chip/devicecontroller/ChipStructs.java", + vars={ + 'idl': self.idl, + 'clientClusters': clientClusters, + } + ) + + self.internal_render_one_output( + template_path="ChipEventStructs_java.jinja", + output_file_name="java/chip/devicecontroller/ChipEventStructs.java", + vars={ + 'idl': self.idl, + 'clientClusters': clientClusters, + } + ) # Every cluster has its own impl, to avoid # very large compilations (running out of RAM) for cluster in self.idl.clusters: diff --git a/scripts/py_matter_idl/matter_idl/tests/outputs/several_clusters/java/ChipEventStructs.java b/scripts/py_matter_idl/matter_idl/tests/outputs/several_clusters/java/ChipEventStructs.java new file mode 100644 index 00000000000000..79b1da6eba421e --- /dev/null +++ b/scripts/py_matter_idl/matter_idl/tests/outputs/several_clusters/java/ChipEventStructs.java @@ -0,0 +1,40 @@ +/* + * + * Copyright (c) 2023 Project CHIP Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package chip.devicecontroller; + +import javax.annotation.Nullable; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Optional; + +public class ChipEventStructs { + private interface ArrayCloneFunction { + T cloneFunction(T input) throws CloneNotSupportedException; + } + + private static ArrayList arrayClone(ArrayList inputArray, ArrayCloneFunction func) { + ArrayList ret = new ArrayList(inputArray.size()); + for (T it : inputArray) { + try { + ret.add(func.cloneFunction(it)); + } catch (CloneNotSupportedException e) { + // Ignore + } + } + return ret; + } +} diff --git a/scripts/py_matter_idl/matter_idl/tests/outputs/several_clusters/java/ChipStructs.java b/scripts/py_matter_idl/matter_idl/tests/outputs/several_clusters/java/ChipStructs.java new file mode 100644 index 00000000000000..1d2271696d67ad --- /dev/null +++ b/scripts/py_matter_idl/matter_idl/tests/outputs/several_clusters/java/ChipStructs.java @@ -0,0 +1,107 @@ +/* + * + * Copyright (c) 2023 Project CHIP Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package chip.devicecontroller; + +import javax.annotation.Nullable; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Optional; + +public class ChipStructs { +public static class SecondClusterFabricDescriptorStruct implements Cloneable { + public byte[] rootPublicKey; + public Integer vendorID; + public Long fabricID; + public Long nodeID; + public String label; + public Integer fabricIndex; + public SecondClusterFabricDescriptorStruct( + byte[] rootPublicKey, + Integer vendorID, + Long fabricID, + Long nodeID, + String label, + Integer fabricIndex + ) { + this.rootPublicKey = rootPublicKey; + this.vendorID = vendorID; + this.fabricID = fabricID; + this.nodeID = nodeID; + this.label = label; + this.fabricIndex = fabricIndex; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("SecondClusterFabricDescriptorStruct {\n"); + output.append("\trootPublicKey: "); + output.append(Arrays.toString(rootPublicKey)); + output.append("\n"); + output.append("\tvendorID: "); + output.append(vendorID); + output.append("\n"); + output.append("\tfabricID: "); + output.append(fabricID); + output.append("\n"); + output.append("\tnodeID: "); + output.append(nodeID); + output.append("\n"); + output.append("\tlabel: "); + output.append(label); + output.append("\n"); + output.append("\tfabricIndex: "); + output.append(fabricIndex); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public SecondClusterFabricDescriptorStruct clone() { + SecondClusterFabricDescriptorStruct ret; + try { + ret = (SecondClusterFabricDescriptorStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.rootPublicKey = rootPublicKey.clone(); + ret.vendorID = vendorID; + ret.fabricID = fabricID; + ret.nodeID = nodeID; + ret.label = label; + ret.fabricIndex = fabricIndex; + return ret; + } +} + + private interface ArrayCloneFunction { + T cloneFunction(T input) throws CloneNotSupportedException; + } + + private static ArrayList arrayClone(ArrayList inputArray, ArrayCloneFunction func) { + ArrayList ret = new ArrayList(inputArray.size()); + for (T it : inputArray) { + try { + ret.add(func.cloneFunction(it)); + } catch (CloneNotSupportedException e) { + // Ignore + } + } + return ret; + } +} diff --git a/src/controller/java/BUILD.gn b/src/controller/java/BUILD.gn index 2cbb402a512f87..6c487b4298a489 100644 --- a/src/controller/java/BUILD.gn +++ b/src/controller/java/BUILD.gn @@ -422,6 +422,8 @@ android_library("java") { if (matter_enable_java_generated_api) { sources += [ + "generated/java/chip/devicecontroller/ChipEventStructs.java", + "generated/java/chip/devicecontroller/ChipStructs.java", "generated/java/chip/devicecontroller/ClusterReadMapping.java", "generated/java/chip/devicecontroller/ClusterWriteMapping.java", "src/chip/clusterinfo/ClusterCommandCallback.java", @@ -432,8 +434,6 @@ android_library("java") { "src/chip/clusterinfo/InteractionInfo.java", "src/chip/devicecontroller/ChipTLVValueDecoder.java", "zap-generated/chip/devicecontroller/ChipClusters.java", - "zap-generated/chip/devicecontroller/ChipEventStructs.java", - "zap-generated/chip/devicecontroller/ChipStructs.java", "zap-generated/chip/devicecontroller/ClusterInfoMapping.java", ] } diff --git a/src/controller/java/generated/java/chip/devicecontroller/ChipEventStructs.java b/src/controller/java/generated/java/chip/devicecontroller/ChipEventStructs.java new file mode 100644 index 00000000000000..0474970c62c81c --- /dev/null +++ b/src/controller/java/generated/java/chip/devicecontroller/ChipEventStructs.java @@ -0,0 +1,2139 @@ +/* + * + * Copyright (c) 2023 Project CHIP Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package chip.devicecontroller; + +import javax.annotation.Nullable; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Optional; + +public class ChipEventStructs { +public static class AccessControlClusterAccessControlEntryChangedEvent implements Cloneable { + public @Nullable Long adminNodeID; + public @Nullable Integer adminPasscodeID; + public Integer changeType; + public @Nullable ChipStructs.AccessControlClusterAccessControlEntryStruct latestValue; + public Integer fabricIndex; + public AccessControlClusterAccessControlEntryChangedEvent( + @Nullable Long adminNodeID, + @Nullable Integer adminPasscodeID, + Integer changeType, + @Nullable ChipStructs.AccessControlClusterAccessControlEntryStruct latestValue, + Integer fabricIndex + ) { + this.adminNodeID = adminNodeID; + this.adminPasscodeID = adminPasscodeID; + this.changeType = changeType; + this.latestValue = latestValue; + this.fabricIndex = fabricIndex; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("AccessControlClusterAccessControlEntryChangedEvent {\n"); + output.append("\tadminNodeID: "); + output.append(adminNodeID); + output.append("\n"); + output.append("\tadminPasscodeID: "); + output.append(adminPasscodeID); + output.append("\n"); + output.append("\tchangeType: "); + output.append(changeType); + output.append("\n"); + output.append("\tlatestValue: "); + output.append(latestValue); + output.append("\n"); + output.append("\tfabricIndex: "); + output.append(fabricIndex); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public AccessControlClusterAccessControlEntryChangedEvent clone() { + AccessControlClusterAccessControlEntryChangedEvent ret; + try { + ret = (AccessControlClusterAccessControlEntryChangedEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.adminNodeID = (adminNodeID != null ? adminNodeID : null); + ret.adminPasscodeID = (adminPasscodeID != null ? adminPasscodeID : null); + ret.changeType = changeType; + ret.latestValue = (latestValue != null ? latestValue.clone() : null); + ret.fabricIndex = fabricIndex; + return ret; + } +} +public static class AccessControlClusterAccessControlExtensionChangedEvent implements Cloneable { + public @Nullable Long adminNodeID; + public @Nullable Integer adminPasscodeID; + public Integer changeType; + public @Nullable ChipStructs.AccessControlClusterAccessControlExtensionStruct latestValue; + public Integer fabricIndex; + public AccessControlClusterAccessControlExtensionChangedEvent( + @Nullable Long adminNodeID, + @Nullable Integer adminPasscodeID, + Integer changeType, + @Nullable ChipStructs.AccessControlClusterAccessControlExtensionStruct latestValue, + Integer fabricIndex + ) { + this.adminNodeID = adminNodeID; + this.adminPasscodeID = adminPasscodeID; + this.changeType = changeType; + this.latestValue = latestValue; + this.fabricIndex = fabricIndex; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("AccessControlClusterAccessControlExtensionChangedEvent {\n"); + output.append("\tadminNodeID: "); + output.append(adminNodeID); + output.append("\n"); + output.append("\tadminPasscodeID: "); + output.append(adminPasscodeID); + output.append("\n"); + output.append("\tchangeType: "); + output.append(changeType); + output.append("\n"); + output.append("\tlatestValue: "); + output.append(latestValue); + output.append("\n"); + output.append("\tfabricIndex: "); + output.append(fabricIndex); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public AccessControlClusterAccessControlExtensionChangedEvent clone() { + AccessControlClusterAccessControlExtensionChangedEvent ret; + try { + ret = (AccessControlClusterAccessControlExtensionChangedEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.adminNodeID = (adminNodeID != null ? adminNodeID : null); + ret.adminPasscodeID = (adminPasscodeID != null ? adminPasscodeID : null); + ret.changeType = changeType; + ret.latestValue = (latestValue != null ? latestValue.clone() : null); + ret.fabricIndex = fabricIndex; + return ret; + } +} +public static class ActionsClusterStateChangedEvent implements Cloneable { + public Integer actionID; + public Long invokeID; + public Integer newState; + public ActionsClusterStateChangedEvent( + Integer actionID, + Long invokeID, + Integer newState + ) { + this.actionID = actionID; + this.invokeID = invokeID; + this.newState = newState; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("ActionsClusterStateChangedEvent {\n"); + output.append("\tactionID: "); + output.append(actionID); + output.append("\n"); + output.append("\tinvokeID: "); + output.append(invokeID); + output.append("\n"); + output.append("\tnewState: "); + output.append(newState); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public ActionsClusterStateChangedEvent clone() { + ActionsClusterStateChangedEvent ret; + try { + ret = (ActionsClusterStateChangedEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.actionID = actionID; + ret.invokeID = invokeID; + ret.newState = newState; + return ret; + } +} +public static class ActionsClusterActionFailedEvent implements Cloneable { + public Integer actionID; + public Long invokeID; + public Integer newState; + public Integer error; + public ActionsClusterActionFailedEvent( + Integer actionID, + Long invokeID, + Integer newState, + Integer error + ) { + this.actionID = actionID; + this.invokeID = invokeID; + this.newState = newState; + this.error = error; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("ActionsClusterActionFailedEvent {\n"); + output.append("\tactionID: "); + output.append(actionID); + output.append("\n"); + output.append("\tinvokeID: "); + output.append(invokeID); + output.append("\n"); + output.append("\tnewState: "); + output.append(newState); + output.append("\n"); + output.append("\terror: "); + output.append(error); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public ActionsClusterActionFailedEvent clone() { + ActionsClusterActionFailedEvent ret; + try { + ret = (ActionsClusterActionFailedEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.actionID = actionID; + ret.invokeID = invokeID; + ret.newState = newState; + ret.error = error; + return ret; + } +} +public static class BasicInformationClusterStartUpEvent implements Cloneable { + public Long softwareVersion; + public BasicInformationClusterStartUpEvent( + Long softwareVersion + ) { + this.softwareVersion = softwareVersion; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("BasicInformationClusterStartUpEvent {\n"); + output.append("\tsoftwareVersion: "); + output.append(softwareVersion); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public BasicInformationClusterStartUpEvent clone() { + BasicInformationClusterStartUpEvent ret; + try { + ret = (BasicInformationClusterStartUpEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.softwareVersion = softwareVersion; + return ret; + } +} +public static class BasicInformationClusterLeaveEvent implements Cloneable { + public Integer fabricIndex; + public BasicInformationClusterLeaveEvent( + Integer fabricIndex + ) { + this.fabricIndex = fabricIndex; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("BasicInformationClusterLeaveEvent {\n"); + output.append("\tfabricIndex: "); + output.append(fabricIndex); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public BasicInformationClusterLeaveEvent clone() { + BasicInformationClusterLeaveEvent ret; + try { + ret = (BasicInformationClusterLeaveEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.fabricIndex = fabricIndex; + return ret; + } +} +public static class BasicInformationClusterReachableChangedEvent implements Cloneable { + public Boolean reachableNewValue; + public BasicInformationClusterReachableChangedEvent( + Boolean reachableNewValue + ) { + this.reachableNewValue = reachableNewValue; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("BasicInformationClusterReachableChangedEvent {\n"); + output.append("\treachableNewValue: "); + output.append(reachableNewValue); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public BasicInformationClusterReachableChangedEvent clone() { + BasicInformationClusterReachableChangedEvent ret; + try { + ret = (BasicInformationClusterReachableChangedEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.reachableNewValue = reachableNewValue; + return ret; + } +} +public static class OtaSoftwareUpdateRequestorClusterStateTransitionEvent implements Cloneable { + public Integer previousState; + public Integer newState; + public Integer reason; + public @Nullable Long targetSoftwareVersion; + public OtaSoftwareUpdateRequestorClusterStateTransitionEvent( + Integer previousState, + Integer newState, + Integer reason, + @Nullable Long targetSoftwareVersion + ) { + this.previousState = previousState; + this.newState = newState; + this.reason = reason; + this.targetSoftwareVersion = targetSoftwareVersion; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("OtaSoftwareUpdateRequestorClusterStateTransitionEvent {\n"); + output.append("\tpreviousState: "); + output.append(previousState); + output.append("\n"); + output.append("\tnewState: "); + output.append(newState); + output.append("\n"); + output.append("\treason: "); + output.append(reason); + output.append("\n"); + output.append("\ttargetSoftwareVersion: "); + output.append(targetSoftwareVersion); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public OtaSoftwareUpdateRequestorClusterStateTransitionEvent clone() { + OtaSoftwareUpdateRequestorClusterStateTransitionEvent ret; + try { + ret = (OtaSoftwareUpdateRequestorClusterStateTransitionEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.previousState = previousState; + ret.newState = newState; + ret.reason = reason; + ret.targetSoftwareVersion = (targetSoftwareVersion != null ? targetSoftwareVersion : null); + return ret; + } +} +public static class OtaSoftwareUpdateRequestorClusterVersionAppliedEvent implements Cloneable { + public Long softwareVersion; + public Integer productID; + public OtaSoftwareUpdateRequestorClusterVersionAppliedEvent( + Long softwareVersion, + Integer productID + ) { + this.softwareVersion = softwareVersion; + this.productID = productID; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("OtaSoftwareUpdateRequestorClusterVersionAppliedEvent {\n"); + output.append("\tsoftwareVersion: "); + output.append(softwareVersion); + output.append("\n"); + output.append("\tproductID: "); + output.append(productID); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public OtaSoftwareUpdateRequestorClusterVersionAppliedEvent clone() { + OtaSoftwareUpdateRequestorClusterVersionAppliedEvent ret; + try { + ret = (OtaSoftwareUpdateRequestorClusterVersionAppliedEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.softwareVersion = softwareVersion; + ret.productID = productID; + return ret; + } +} +public static class OtaSoftwareUpdateRequestorClusterDownloadErrorEvent implements Cloneable { + public Long softwareVersion; + public Long bytesDownloaded; + public @Nullable Integer progressPercent; + public @Nullable Long platformCode; + public OtaSoftwareUpdateRequestorClusterDownloadErrorEvent( + Long softwareVersion, + Long bytesDownloaded, + @Nullable Integer progressPercent, + @Nullable Long platformCode + ) { + this.softwareVersion = softwareVersion; + this.bytesDownloaded = bytesDownloaded; + this.progressPercent = progressPercent; + this.platformCode = platformCode; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("OtaSoftwareUpdateRequestorClusterDownloadErrorEvent {\n"); + output.append("\tsoftwareVersion: "); + output.append(softwareVersion); + output.append("\n"); + output.append("\tbytesDownloaded: "); + output.append(bytesDownloaded); + output.append("\n"); + output.append("\tprogressPercent: "); + output.append(progressPercent); + output.append("\n"); + output.append("\tplatformCode: "); + output.append(platformCode); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public OtaSoftwareUpdateRequestorClusterDownloadErrorEvent clone() { + OtaSoftwareUpdateRequestorClusterDownloadErrorEvent ret; + try { + ret = (OtaSoftwareUpdateRequestorClusterDownloadErrorEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.softwareVersion = softwareVersion; + ret.bytesDownloaded = bytesDownloaded; + ret.progressPercent = (progressPercent != null ? progressPercent : null); + ret.platformCode = (platformCode != null ? platformCode : null); + return ret; + } +} +public static class PowerSourceClusterWiredFaultChangeEvent implements Cloneable { + public ArrayList current; + public ArrayList previous; + public PowerSourceClusterWiredFaultChangeEvent( + ArrayList current, + ArrayList previous + ) { + this.current = current; + this.previous = previous; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("PowerSourceClusterWiredFaultChangeEvent {\n"); + output.append("\tcurrent: "); + output.append(current); + output.append("\n"); + output.append("\tprevious: "); + output.append(previous); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public PowerSourceClusterWiredFaultChangeEvent clone() { + PowerSourceClusterWiredFaultChangeEvent ret; + try { + ret = (PowerSourceClusterWiredFaultChangeEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.current = arrayClone(current, current_it -> current_it); + ret.previous = arrayClone(previous, previous_it -> previous_it); + return ret; + } +} +public static class PowerSourceClusterBatFaultChangeEvent implements Cloneable { + public ArrayList current; + public ArrayList previous; + public PowerSourceClusterBatFaultChangeEvent( + ArrayList current, + ArrayList previous + ) { + this.current = current; + this.previous = previous; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("PowerSourceClusterBatFaultChangeEvent {\n"); + output.append("\tcurrent: "); + output.append(current); + output.append("\n"); + output.append("\tprevious: "); + output.append(previous); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public PowerSourceClusterBatFaultChangeEvent clone() { + PowerSourceClusterBatFaultChangeEvent ret; + try { + ret = (PowerSourceClusterBatFaultChangeEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.current = arrayClone(current, current_it -> current_it); + ret.previous = arrayClone(previous, previous_it -> previous_it); + return ret; + } +} +public static class PowerSourceClusterBatChargeFaultChangeEvent implements Cloneable { + public ArrayList current; + public ArrayList previous; + public PowerSourceClusterBatChargeFaultChangeEvent( + ArrayList current, + ArrayList previous + ) { + this.current = current; + this.previous = previous; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("PowerSourceClusterBatChargeFaultChangeEvent {\n"); + output.append("\tcurrent: "); + output.append(current); + output.append("\n"); + output.append("\tprevious: "); + output.append(previous); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public PowerSourceClusterBatChargeFaultChangeEvent clone() { + PowerSourceClusterBatChargeFaultChangeEvent ret; + try { + ret = (PowerSourceClusterBatChargeFaultChangeEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.current = arrayClone(current, current_it -> current_it); + ret.previous = arrayClone(previous, previous_it -> previous_it); + return ret; + } +} +public static class GeneralDiagnosticsClusterHardwareFaultChangeEvent implements Cloneable { + public ArrayList current; + public ArrayList previous; + public GeneralDiagnosticsClusterHardwareFaultChangeEvent( + ArrayList current, + ArrayList previous + ) { + this.current = current; + this.previous = previous; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("GeneralDiagnosticsClusterHardwareFaultChangeEvent {\n"); + output.append("\tcurrent: "); + output.append(current); + output.append("\n"); + output.append("\tprevious: "); + output.append(previous); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public GeneralDiagnosticsClusterHardwareFaultChangeEvent clone() { + GeneralDiagnosticsClusterHardwareFaultChangeEvent ret; + try { + ret = (GeneralDiagnosticsClusterHardwareFaultChangeEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.current = arrayClone(current, current_it -> current_it); + ret.previous = arrayClone(previous, previous_it -> previous_it); + return ret; + } +} +public static class GeneralDiagnosticsClusterRadioFaultChangeEvent implements Cloneable { + public ArrayList current; + public ArrayList previous; + public GeneralDiagnosticsClusterRadioFaultChangeEvent( + ArrayList current, + ArrayList previous + ) { + this.current = current; + this.previous = previous; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("GeneralDiagnosticsClusterRadioFaultChangeEvent {\n"); + output.append("\tcurrent: "); + output.append(current); + output.append("\n"); + output.append("\tprevious: "); + output.append(previous); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public GeneralDiagnosticsClusterRadioFaultChangeEvent clone() { + GeneralDiagnosticsClusterRadioFaultChangeEvent ret; + try { + ret = (GeneralDiagnosticsClusterRadioFaultChangeEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.current = arrayClone(current, current_it -> current_it); + ret.previous = arrayClone(previous, previous_it -> previous_it); + return ret; + } +} +public static class GeneralDiagnosticsClusterNetworkFaultChangeEvent implements Cloneable { + public ArrayList current; + public ArrayList previous; + public GeneralDiagnosticsClusterNetworkFaultChangeEvent( + ArrayList current, + ArrayList previous + ) { + this.current = current; + this.previous = previous; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("GeneralDiagnosticsClusterNetworkFaultChangeEvent {\n"); + output.append("\tcurrent: "); + output.append(current); + output.append("\n"); + output.append("\tprevious: "); + output.append(previous); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public GeneralDiagnosticsClusterNetworkFaultChangeEvent clone() { + GeneralDiagnosticsClusterNetworkFaultChangeEvent ret; + try { + ret = (GeneralDiagnosticsClusterNetworkFaultChangeEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.current = arrayClone(current, current_it -> current_it); + ret.previous = arrayClone(previous, previous_it -> previous_it); + return ret; + } +} +public static class GeneralDiagnosticsClusterBootReasonEvent implements Cloneable { + public Integer bootReason; + public GeneralDiagnosticsClusterBootReasonEvent( + Integer bootReason + ) { + this.bootReason = bootReason; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("GeneralDiagnosticsClusterBootReasonEvent {\n"); + output.append("\tbootReason: "); + output.append(bootReason); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public GeneralDiagnosticsClusterBootReasonEvent clone() { + GeneralDiagnosticsClusterBootReasonEvent ret; + try { + ret = (GeneralDiagnosticsClusterBootReasonEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.bootReason = bootReason; + return ret; + } +} +public static class SoftwareDiagnosticsClusterSoftwareFaultEvent implements Cloneable { + public Long id; + public Optional name; + public Optional faultRecording; + public SoftwareDiagnosticsClusterSoftwareFaultEvent( + Long id, + Optional name, + Optional faultRecording + ) { + this.id = id; + this.name = name; + this.faultRecording = faultRecording; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("SoftwareDiagnosticsClusterSoftwareFaultEvent {\n"); + output.append("\tid: "); + output.append(id); + output.append("\n"); + output.append("\tname: "); + output.append(name); + output.append("\n"); + output.append("\tfaultRecording: "); + output.append(faultRecording.isPresent() ? Arrays.toString(faultRecording.get()) : ""); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public SoftwareDiagnosticsClusterSoftwareFaultEvent clone() { + SoftwareDiagnosticsClusterSoftwareFaultEvent ret; + try { + ret = (SoftwareDiagnosticsClusterSoftwareFaultEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.id = id; + ret.name = name.map(name_map -> name_map); + ret.faultRecording = faultRecording.map(faultRecording_map -> + faultRecording_map.clone()); + return ret; + } +} +public static class ThreadNetworkDiagnosticsClusterConnectionStatusEvent implements Cloneable { + public Integer connectionStatus; + public ThreadNetworkDiagnosticsClusterConnectionStatusEvent( + Integer connectionStatus + ) { + this.connectionStatus = connectionStatus; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("ThreadNetworkDiagnosticsClusterConnectionStatusEvent {\n"); + output.append("\tconnectionStatus: "); + output.append(connectionStatus); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public ThreadNetworkDiagnosticsClusterConnectionStatusEvent clone() { + ThreadNetworkDiagnosticsClusterConnectionStatusEvent ret; + try { + ret = (ThreadNetworkDiagnosticsClusterConnectionStatusEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.connectionStatus = connectionStatus; + return ret; + } +} +public static class ThreadNetworkDiagnosticsClusterNetworkFaultChangeEvent implements Cloneable { + public ArrayList current; + public ArrayList previous; + public ThreadNetworkDiagnosticsClusterNetworkFaultChangeEvent( + ArrayList current, + ArrayList previous + ) { + this.current = current; + this.previous = previous; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("ThreadNetworkDiagnosticsClusterNetworkFaultChangeEvent {\n"); + output.append("\tcurrent: "); + output.append(current); + output.append("\n"); + output.append("\tprevious: "); + output.append(previous); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public ThreadNetworkDiagnosticsClusterNetworkFaultChangeEvent clone() { + ThreadNetworkDiagnosticsClusterNetworkFaultChangeEvent ret; + try { + ret = (ThreadNetworkDiagnosticsClusterNetworkFaultChangeEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.current = arrayClone(current, current_it -> current_it); + ret.previous = arrayClone(previous, previous_it -> previous_it); + return ret; + } +} +public static class WiFiNetworkDiagnosticsClusterDisconnectionEvent implements Cloneable { + public Integer reasonCode; + public WiFiNetworkDiagnosticsClusterDisconnectionEvent( + Integer reasonCode + ) { + this.reasonCode = reasonCode; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("WiFiNetworkDiagnosticsClusterDisconnectionEvent {\n"); + output.append("\treasonCode: "); + output.append(reasonCode); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public WiFiNetworkDiagnosticsClusterDisconnectionEvent clone() { + WiFiNetworkDiagnosticsClusterDisconnectionEvent ret; + try { + ret = (WiFiNetworkDiagnosticsClusterDisconnectionEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.reasonCode = reasonCode; + return ret; + } +} +public static class WiFiNetworkDiagnosticsClusterAssociationFailureEvent implements Cloneable { + public Integer associationFailure; + public Integer status; + public WiFiNetworkDiagnosticsClusterAssociationFailureEvent( + Integer associationFailure, + Integer status + ) { + this.associationFailure = associationFailure; + this.status = status; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("WiFiNetworkDiagnosticsClusterAssociationFailureEvent {\n"); + output.append("\tassociationFailure: "); + output.append(associationFailure); + output.append("\n"); + output.append("\tstatus: "); + output.append(status); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public WiFiNetworkDiagnosticsClusterAssociationFailureEvent clone() { + WiFiNetworkDiagnosticsClusterAssociationFailureEvent ret; + try { + ret = (WiFiNetworkDiagnosticsClusterAssociationFailureEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.associationFailure = associationFailure; + ret.status = status; + return ret; + } +} +public static class WiFiNetworkDiagnosticsClusterConnectionStatusEvent implements Cloneable { + public Integer connectionStatus; + public WiFiNetworkDiagnosticsClusterConnectionStatusEvent( + Integer connectionStatus + ) { + this.connectionStatus = connectionStatus; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("WiFiNetworkDiagnosticsClusterConnectionStatusEvent {\n"); + output.append("\tconnectionStatus: "); + output.append(connectionStatus); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public WiFiNetworkDiagnosticsClusterConnectionStatusEvent clone() { + WiFiNetworkDiagnosticsClusterConnectionStatusEvent ret; + try { + ret = (WiFiNetworkDiagnosticsClusterConnectionStatusEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.connectionStatus = connectionStatus; + return ret; + } +} +public static class TimeSynchronizationClusterDSTStatusEvent implements Cloneable { + public Boolean DSTOffsetActive; + public TimeSynchronizationClusterDSTStatusEvent( + Boolean DSTOffsetActive + ) { + this.DSTOffsetActive = DSTOffsetActive; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("TimeSynchronizationClusterDSTStatusEvent {\n"); + output.append("\tDSTOffsetActive: "); + output.append(DSTOffsetActive); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public TimeSynchronizationClusterDSTStatusEvent clone() { + TimeSynchronizationClusterDSTStatusEvent ret; + try { + ret = (TimeSynchronizationClusterDSTStatusEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.DSTOffsetActive = DSTOffsetActive; + return ret; + } +} +public static class TimeSynchronizationClusterTimeZoneStatusEvent implements Cloneable { + public Long offset; + public Optional name; + public TimeSynchronizationClusterTimeZoneStatusEvent( + Long offset, + Optional name + ) { + this.offset = offset; + this.name = name; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("TimeSynchronizationClusterTimeZoneStatusEvent {\n"); + output.append("\toffset: "); + output.append(offset); + output.append("\n"); + output.append("\tname: "); + output.append(name); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public TimeSynchronizationClusterTimeZoneStatusEvent clone() { + TimeSynchronizationClusterTimeZoneStatusEvent ret; + try { + ret = (TimeSynchronizationClusterTimeZoneStatusEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.offset = offset; + ret.name = name.map(name_map -> name_map); + return ret; + } +} +public static class BridgedDeviceBasicInformationClusterStartUpEvent implements Cloneable { + public Long softwareVersion; + public BridgedDeviceBasicInformationClusterStartUpEvent( + Long softwareVersion + ) { + this.softwareVersion = softwareVersion; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("BridgedDeviceBasicInformationClusterStartUpEvent {\n"); + output.append("\tsoftwareVersion: "); + output.append(softwareVersion); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public BridgedDeviceBasicInformationClusterStartUpEvent clone() { + BridgedDeviceBasicInformationClusterStartUpEvent ret; + try { + ret = (BridgedDeviceBasicInformationClusterStartUpEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.softwareVersion = softwareVersion; + return ret; + } +} +public static class BridgedDeviceBasicInformationClusterReachableChangedEvent implements Cloneable { + public Boolean reachableNewValue; + public BridgedDeviceBasicInformationClusterReachableChangedEvent( + Boolean reachableNewValue + ) { + this.reachableNewValue = reachableNewValue; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("BridgedDeviceBasicInformationClusterReachableChangedEvent {\n"); + output.append("\treachableNewValue: "); + output.append(reachableNewValue); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public BridgedDeviceBasicInformationClusterReachableChangedEvent clone() { + BridgedDeviceBasicInformationClusterReachableChangedEvent ret; + try { + ret = (BridgedDeviceBasicInformationClusterReachableChangedEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.reachableNewValue = reachableNewValue; + return ret; + } +} +public static class SwitchClusterSwitchLatchedEvent implements Cloneable { + public Integer newPosition; + public SwitchClusterSwitchLatchedEvent( + Integer newPosition + ) { + this.newPosition = newPosition; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("SwitchClusterSwitchLatchedEvent {\n"); + output.append("\tnewPosition: "); + output.append(newPosition); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public SwitchClusterSwitchLatchedEvent clone() { + SwitchClusterSwitchLatchedEvent ret; + try { + ret = (SwitchClusterSwitchLatchedEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.newPosition = newPosition; + return ret; + } +} +public static class SwitchClusterInitialPressEvent implements Cloneable { + public Integer newPosition; + public SwitchClusterInitialPressEvent( + Integer newPosition + ) { + this.newPosition = newPosition; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("SwitchClusterInitialPressEvent {\n"); + output.append("\tnewPosition: "); + output.append(newPosition); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public SwitchClusterInitialPressEvent clone() { + SwitchClusterInitialPressEvent ret; + try { + ret = (SwitchClusterInitialPressEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.newPosition = newPosition; + return ret; + } +} +public static class SwitchClusterLongPressEvent implements Cloneable { + public Integer newPosition; + public SwitchClusterLongPressEvent( + Integer newPosition + ) { + this.newPosition = newPosition; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("SwitchClusterLongPressEvent {\n"); + output.append("\tnewPosition: "); + output.append(newPosition); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public SwitchClusterLongPressEvent clone() { + SwitchClusterLongPressEvent ret; + try { + ret = (SwitchClusterLongPressEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.newPosition = newPosition; + return ret; + } +} +public static class SwitchClusterShortReleaseEvent implements Cloneable { + public Integer previousPosition; + public SwitchClusterShortReleaseEvent( + Integer previousPosition + ) { + this.previousPosition = previousPosition; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("SwitchClusterShortReleaseEvent {\n"); + output.append("\tpreviousPosition: "); + output.append(previousPosition); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public SwitchClusterShortReleaseEvent clone() { + SwitchClusterShortReleaseEvent ret; + try { + ret = (SwitchClusterShortReleaseEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.previousPosition = previousPosition; + return ret; + } +} +public static class SwitchClusterLongReleaseEvent implements Cloneable { + public Integer previousPosition; + public SwitchClusterLongReleaseEvent( + Integer previousPosition + ) { + this.previousPosition = previousPosition; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("SwitchClusterLongReleaseEvent {\n"); + output.append("\tpreviousPosition: "); + output.append(previousPosition); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public SwitchClusterLongReleaseEvent clone() { + SwitchClusterLongReleaseEvent ret; + try { + ret = (SwitchClusterLongReleaseEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.previousPosition = previousPosition; + return ret; + } +} +public static class SwitchClusterMultiPressOngoingEvent implements Cloneable { + public Integer newPosition; + public Integer currentNumberOfPressesCounted; + public SwitchClusterMultiPressOngoingEvent( + Integer newPosition, + Integer currentNumberOfPressesCounted + ) { + this.newPosition = newPosition; + this.currentNumberOfPressesCounted = currentNumberOfPressesCounted; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("SwitchClusterMultiPressOngoingEvent {\n"); + output.append("\tnewPosition: "); + output.append(newPosition); + output.append("\n"); + output.append("\tcurrentNumberOfPressesCounted: "); + output.append(currentNumberOfPressesCounted); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public SwitchClusterMultiPressOngoingEvent clone() { + SwitchClusterMultiPressOngoingEvent ret; + try { + ret = (SwitchClusterMultiPressOngoingEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.newPosition = newPosition; + ret.currentNumberOfPressesCounted = currentNumberOfPressesCounted; + return ret; + } +} +public static class SwitchClusterMultiPressCompleteEvent implements Cloneable { + public Integer previousPosition; + public Integer totalNumberOfPressesCounted; + public SwitchClusterMultiPressCompleteEvent( + Integer previousPosition, + Integer totalNumberOfPressesCounted + ) { + this.previousPosition = previousPosition; + this.totalNumberOfPressesCounted = totalNumberOfPressesCounted; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("SwitchClusterMultiPressCompleteEvent {\n"); + output.append("\tpreviousPosition: "); + output.append(previousPosition); + output.append("\n"); + output.append("\ttotalNumberOfPressesCounted: "); + output.append(totalNumberOfPressesCounted); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public SwitchClusterMultiPressCompleteEvent clone() { + SwitchClusterMultiPressCompleteEvent ret; + try { + ret = (SwitchClusterMultiPressCompleteEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.previousPosition = previousPosition; + ret.totalNumberOfPressesCounted = totalNumberOfPressesCounted; + return ret; + } +} +public static class BooleanStateClusterStateChangeEvent implements Cloneable { + public Boolean stateValue; + public BooleanStateClusterStateChangeEvent( + Boolean stateValue + ) { + this.stateValue = stateValue; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("BooleanStateClusterStateChangeEvent {\n"); + output.append("\tstateValue: "); + output.append(stateValue); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public BooleanStateClusterStateChangeEvent clone() { + BooleanStateClusterStateChangeEvent ret; + try { + ret = (BooleanStateClusterStateChangeEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.stateValue = stateValue; + return ret; + } +} +public static class RefrigeratorAlarmClusterNotifyEvent implements Cloneable { + public Long active; + public Long inactive; + public Long state; + public Long mask; + public RefrigeratorAlarmClusterNotifyEvent( + Long active, + Long inactive, + Long state, + Long mask + ) { + this.active = active; + this.inactive = inactive; + this.state = state; + this.mask = mask; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("RefrigeratorAlarmClusterNotifyEvent {\n"); + output.append("\tactive: "); + output.append(active); + output.append("\n"); + output.append("\tinactive: "); + output.append(inactive); + output.append("\n"); + output.append("\tstate: "); + output.append(state); + output.append("\n"); + output.append("\tmask: "); + output.append(mask); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public RefrigeratorAlarmClusterNotifyEvent clone() { + RefrigeratorAlarmClusterNotifyEvent ret; + try { + ret = (RefrigeratorAlarmClusterNotifyEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.active = active; + ret.inactive = inactive; + ret.state = state; + ret.mask = mask; + return ret; + } +} +public static class SmokeCoAlarmClusterSmokeAlarmEvent implements Cloneable { + public Integer alarmSeverityLevel; + public SmokeCoAlarmClusterSmokeAlarmEvent( + Integer alarmSeverityLevel + ) { + this.alarmSeverityLevel = alarmSeverityLevel; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("SmokeCoAlarmClusterSmokeAlarmEvent {\n"); + output.append("\talarmSeverityLevel: "); + output.append(alarmSeverityLevel); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public SmokeCoAlarmClusterSmokeAlarmEvent clone() { + SmokeCoAlarmClusterSmokeAlarmEvent ret; + try { + ret = (SmokeCoAlarmClusterSmokeAlarmEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.alarmSeverityLevel = alarmSeverityLevel; + return ret; + } +} +public static class SmokeCoAlarmClusterCOAlarmEvent implements Cloneable { + public Integer alarmSeverityLevel; + public SmokeCoAlarmClusterCOAlarmEvent( + Integer alarmSeverityLevel + ) { + this.alarmSeverityLevel = alarmSeverityLevel; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("SmokeCoAlarmClusterCOAlarmEvent {\n"); + output.append("\talarmSeverityLevel: "); + output.append(alarmSeverityLevel); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public SmokeCoAlarmClusterCOAlarmEvent clone() { + SmokeCoAlarmClusterCOAlarmEvent ret; + try { + ret = (SmokeCoAlarmClusterCOAlarmEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.alarmSeverityLevel = alarmSeverityLevel; + return ret; + } +} +public static class SmokeCoAlarmClusterLowBatteryEvent implements Cloneable { + public Integer alarmSeverityLevel; + public SmokeCoAlarmClusterLowBatteryEvent( + Integer alarmSeverityLevel + ) { + this.alarmSeverityLevel = alarmSeverityLevel; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("SmokeCoAlarmClusterLowBatteryEvent {\n"); + output.append("\talarmSeverityLevel: "); + output.append(alarmSeverityLevel); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public SmokeCoAlarmClusterLowBatteryEvent clone() { + SmokeCoAlarmClusterLowBatteryEvent ret; + try { + ret = (SmokeCoAlarmClusterLowBatteryEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.alarmSeverityLevel = alarmSeverityLevel; + return ret; + } +} +public static class SmokeCoAlarmClusterInterconnectSmokeAlarmEvent implements Cloneable { + public Integer alarmSeverityLevel; + public SmokeCoAlarmClusterInterconnectSmokeAlarmEvent( + Integer alarmSeverityLevel + ) { + this.alarmSeverityLevel = alarmSeverityLevel; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("SmokeCoAlarmClusterInterconnectSmokeAlarmEvent {\n"); + output.append("\talarmSeverityLevel: "); + output.append(alarmSeverityLevel); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public SmokeCoAlarmClusterInterconnectSmokeAlarmEvent clone() { + SmokeCoAlarmClusterInterconnectSmokeAlarmEvent ret; + try { + ret = (SmokeCoAlarmClusterInterconnectSmokeAlarmEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.alarmSeverityLevel = alarmSeverityLevel; + return ret; + } +} +public static class SmokeCoAlarmClusterInterconnectCOAlarmEvent implements Cloneable { + public Integer alarmSeverityLevel; + public SmokeCoAlarmClusterInterconnectCOAlarmEvent( + Integer alarmSeverityLevel + ) { + this.alarmSeverityLevel = alarmSeverityLevel; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("SmokeCoAlarmClusterInterconnectCOAlarmEvent {\n"); + output.append("\talarmSeverityLevel: "); + output.append(alarmSeverityLevel); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public SmokeCoAlarmClusterInterconnectCOAlarmEvent clone() { + SmokeCoAlarmClusterInterconnectCOAlarmEvent ret; + try { + ret = (SmokeCoAlarmClusterInterconnectCOAlarmEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.alarmSeverityLevel = alarmSeverityLevel; + return ret; + } +} +public static class DishwasherAlarmClusterNotifyEvent implements Cloneable { + public Long active; + public Long inactive; + public Long state; + public Long mask; + public DishwasherAlarmClusterNotifyEvent( + Long active, + Long inactive, + Long state, + Long mask + ) { + this.active = active; + this.inactive = inactive; + this.state = state; + this.mask = mask; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("DishwasherAlarmClusterNotifyEvent {\n"); + output.append("\tactive: "); + output.append(active); + output.append("\n"); + output.append("\tinactive: "); + output.append(inactive); + output.append("\n"); + output.append("\tstate: "); + output.append(state); + output.append("\n"); + output.append("\tmask: "); + output.append(mask); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public DishwasherAlarmClusterNotifyEvent clone() { + DishwasherAlarmClusterNotifyEvent ret; + try { + ret = (DishwasherAlarmClusterNotifyEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.active = active; + ret.inactive = inactive; + ret.state = state; + ret.mask = mask; + return ret; + } +} +public static class OperationalStateClusterOperationalErrorEvent implements Cloneable { + public ChipStructs.OperationalStateClusterErrorStateStruct errorState; + public OperationalStateClusterOperationalErrorEvent( + ChipStructs.OperationalStateClusterErrorStateStruct errorState + ) { + this.errorState = errorState; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("OperationalStateClusterOperationalErrorEvent {\n"); + output.append("\terrorState: "); + output.append(errorState); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public OperationalStateClusterOperationalErrorEvent clone() { + OperationalStateClusterOperationalErrorEvent ret; + try { + ret = (OperationalStateClusterOperationalErrorEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.errorState = errorState.clone(); + return ret; + } +} +public static class OperationalStateClusterOperationCompletionEvent implements Cloneable { + public Integer completionErrorCode; + public @Nullable Optional totalOperationalTime; + public @Nullable Optional pausedTime; + public OperationalStateClusterOperationCompletionEvent( + Integer completionErrorCode, + @Nullable Optional totalOperationalTime, + @Nullable Optional pausedTime + ) { + this.completionErrorCode = completionErrorCode; + this.totalOperationalTime = totalOperationalTime; + this.pausedTime = pausedTime; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("OperationalStateClusterOperationCompletionEvent {\n"); + output.append("\tcompletionErrorCode: "); + output.append(completionErrorCode); + output.append("\n"); + output.append("\ttotalOperationalTime: "); + output.append(totalOperationalTime); + output.append("\n"); + output.append("\tpausedTime: "); + output.append(pausedTime); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public OperationalStateClusterOperationCompletionEvent clone() { + OperationalStateClusterOperationCompletionEvent ret; + try { + ret = (OperationalStateClusterOperationCompletionEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.completionErrorCode = completionErrorCode; + ret.totalOperationalTime = (totalOperationalTime != null ? totalOperationalTime.map(totalOperationalTime_map -> totalOperationalTime_map) : null); + ret.pausedTime = (pausedTime != null ? pausedTime.map(pausedTime_map -> pausedTime_map) : null); + return ret; + } +} +public static class RvcOperationalStateClusterOperationalErrorEvent implements Cloneable { + public ChipStructs.RvcOperationalStateClusterErrorStateStruct errorState; + public RvcOperationalStateClusterOperationalErrorEvent( + ChipStructs.RvcOperationalStateClusterErrorStateStruct errorState + ) { + this.errorState = errorState; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("RvcOperationalStateClusterOperationalErrorEvent {\n"); + output.append("\terrorState: "); + output.append(errorState); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public RvcOperationalStateClusterOperationalErrorEvent clone() { + RvcOperationalStateClusterOperationalErrorEvent ret; + try { + ret = (RvcOperationalStateClusterOperationalErrorEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.errorState = errorState.clone(); + return ret; + } +} +public static class RvcOperationalStateClusterOperationCompletionEvent implements Cloneable { + public Integer completionErrorCode; + public @Nullable Optional totalOperationalTime; + public @Nullable Optional pausedTime; + public RvcOperationalStateClusterOperationCompletionEvent( + Integer completionErrorCode, + @Nullable Optional totalOperationalTime, + @Nullable Optional pausedTime + ) { + this.completionErrorCode = completionErrorCode; + this.totalOperationalTime = totalOperationalTime; + this.pausedTime = pausedTime; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("RvcOperationalStateClusterOperationCompletionEvent {\n"); + output.append("\tcompletionErrorCode: "); + output.append(completionErrorCode); + output.append("\n"); + output.append("\ttotalOperationalTime: "); + output.append(totalOperationalTime); + output.append("\n"); + output.append("\tpausedTime: "); + output.append(pausedTime); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public RvcOperationalStateClusterOperationCompletionEvent clone() { + RvcOperationalStateClusterOperationCompletionEvent ret; + try { + ret = (RvcOperationalStateClusterOperationCompletionEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.completionErrorCode = completionErrorCode; + ret.totalOperationalTime = (totalOperationalTime != null ? totalOperationalTime.map(totalOperationalTime_map -> totalOperationalTime_map) : null); + ret.pausedTime = (pausedTime != null ? pausedTime.map(pausedTime_map -> pausedTime_map) : null); + return ret; + } +} +public static class DoorLockClusterDoorLockAlarmEvent implements Cloneable { + public Integer alarmCode; + public DoorLockClusterDoorLockAlarmEvent( + Integer alarmCode + ) { + this.alarmCode = alarmCode; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("DoorLockClusterDoorLockAlarmEvent {\n"); + output.append("\talarmCode: "); + output.append(alarmCode); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public DoorLockClusterDoorLockAlarmEvent clone() { + DoorLockClusterDoorLockAlarmEvent ret; + try { + ret = (DoorLockClusterDoorLockAlarmEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.alarmCode = alarmCode; + return ret; + } +} +public static class DoorLockClusterDoorStateChangeEvent implements Cloneable { + public Integer doorState; + public DoorLockClusterDoorStateChangeEvent( + Integer doorState + ) { + this.doorState = doorState; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("DoorLockClusterDoorStateChangeEvent {\n"); + output.append("\tdoorState: "); + output.append(doorState); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public DoorLockClusterDoorStateChangeEvent clone() { + DoorLockClusterDoorStateChangeEvent ret; + try { + ret = (DoorLockClusterDoorStateChangeEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.doorState = doorState; + return ret; + } +} +public static class DoorLockClusterLockOperationEvent implements Cloneable { + public Integer lockOperationType; + public Integer operationSource; + public @Nullable Integer userIndex; + public @Nullable Integer fabricIndex; + public @Nullable Long sourceNode; + public @Nullable Optional> credentials; + public DoorLockClusterLockOperationEvent( + Integer lockOperationType, + Integer operationSource, + @Nullable Integer userIndex, + @Nullable Integer fabricIndex, + @Nullable Long sourceNode, + @Nullable Optional> credentials + ) { + this.lockOperationType = lockOperationType; + this.operationSource = operationSource; + this.userIndex = userIndex; + this.fabricIndex = fabricIndex; + this.sourceNode = sourceNode; + this.credentials = credentials; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("DoorLockClusterLockOperationEvent {\n"); + output.append("\tlockOperationType: "); + output.append(lockOperationType); + output.append("\n"); + output.append("\toperationSource: "); + output.append(operationSource); + output.append("\n"); + output.append("\tuserIndex: "); + output.append(userIndex); + output.append("\n"); + output.append("\tfabricIndex: "); + output.append(fabricIndex); + output.append("\n"); + output.append("\tsourceNode: "); + output.append(sourceNode); + output.append("\n"); + output.append("\tcredentials: "); + output.append(credentials); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public DoorLockClusterLockOperationEvent clone() { + DoorLockClusterLockOperationEvent ret; + try { + ret = (DoorLockClusterLockOperationEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.lockOperationType = lockOperationType; + ret.operationSource = operationSource; + ret.userIndex = (userIndex != null ? userIndex : null); + ret.fabricIndex = (fabricIndex != null ? fabricIndex : null); + ret.sourceNode = (sourceNode != null ? sourceNode : null); + ret.credentials = (credentials != null ? credentials.map(credentials_map -> arrayClone(credentials_map, credentials_map_it -> credentials_map_it.clone())) : null); + return ret; + } +} +public static class DoorLockClusterLockOperationErrorEvent implements Cloneable { + public Integer lockOperationType; + public Integer operationSource; + public Integer operationError; + public @Nullable Integer userIndex; + public @Nullable Integer fabricIndex; + public @Nullable Long sourceNode; + public @Nullable Optional> credentials; + public DoorLockClusterLockOperationErrorEvent( + Integer lockOperationType, + Integer operationSource, + Integer operationError, + @Nullable Integer userIndex, + @Nullable Integer fabricIndex, + @Nullable Long sourceNode, + @Nullable Optional> credentials + ) { + this.lockOperationType = lockOperationType; + this.operationSource = operationSource; + this.operationError = operationError; + this.userIndex = userIndex; + this.fabricIndex = fabricIndex; + this.sourceNode = sourceNode; + this.credentials = credentials; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("DoorLockClusterLockOperationErrorEvent {\n"); + output.append("\tlockOperationType: "); + output.append(lockOperationType); + output.append("\n"); + output.append("\toperationSource: "); + output.append(operationSource); + output.append("\n"); + output.append("\toperationError: "); + output.append(operationError); + output.append("\n"); + output.append("\tuserIndex: "); + output.append(userIndex); + output.append("\n"); + output.append("\tfabricIndex: "); + output.append(fabricIndex); + output.append("\n"); + output.append("\tsourceNode: "); + output.append(sourceNode); + output.append("\n"); + output.append("\tcredentials: "); + output.append(credentials); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public DoorLockClusterLockOperationErrorEvent clone() { + DoorLockClusterLockOperationErrorEvent ret; + try { + ret = (DoorLockClusterLockOperationErrorEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.lockOperationType = lockOperationType; + ret.operationSource = operationSource; + ret.operationError = operationError; + ret.userIndex = (userIndex != null ? userIndex : null); + ret.fabricIndex = (fabricIndex != null ? fabricIndex : null); + ret.sourceNode = (sourceNode != null ? sourceNode : null); + ret.credentials = (credentials != null ? credentials.map(credentials_map -> arrayClone(credentials_map, credentials_map_it -> credentials_map_it.clone())) : null); + return ret; + } +} +public static class DoorLockClusterLockUserChangeEvent implements Cloneable { + public Integer lockDataType; + public Integer dataOperationType; + public Integer operationSource; + public @Nullable Integer userIndex; + public @Nullable Integer fabricIndex; + public @Nullable Long sourceNode; + public @Nullable Integer dataIndex; + public DoorLockClusterLockUserChangeEvent( + Integer lockDataType, + Integer dataOperationType, + Integer operationSource, + @Nullable Integer userIndex, + @Nullable Integer fabricIndex, + @Nullable Long sourceNode, + @Nullable Integer dataIndex + ) { + this.lockDataType = lockDataType; + this.dataOperationType = dataOperationType; + this.operationSource = operationSource; + this.userIndex = userIndex; + this.fabricIndex = fabricIndex; + this.sourceNode = sourceNode; + this.dataIndex = dataIndex; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("DoorLockClusterLockUserChangeEvent {\n"); + output.append("\tlockDataType: "); + output.append(lockDataType); + output.append("\n"); + output.append("\tdataOperationType: "); + output.append(dataOperationType); + output.append("\n"); + output.append("\toperationSource: "); + output.append(operationSource); + output.append("\n"); + output.append("\tuserIndex: "); + output.append(userIndex); + output.append("\n"); + output.append("\tfabricIndex: "); + output.append(fabricIndex); + output.append("\n"); + output.append("\tsourceNode: "); + output.append(sourceNode); + output.append("\n"); + output.append("\tdataIndex: "); + output.append(dataIndex); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public DoorLockClusterLockUserChangeEvent clone() { + DoorLockClusterLockUserChangeEvent ret; + try { + ret = (DoorLockClusterLockUserChangeEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.lockDataType = lockDataType; + ret.dataOperationType = dataOperationType; + ret.operationSource = operationSource; + ret.userIndex = (userIndex != null ? userIndex : null); + ret.fabricIndex = (fabricIndex != null ? fabricIndex : null); + ret.sourceNode = (sourceNode != null ? sourceNode : null); + ret.dataIndex = (dataIndex != null ? dataIndex : null); + return ret; + } +} +public static class UnitTestingClusterTestEventEvent implements Cloneable { + public Integer arg1; + public Integer arg2; + public Boolean arg3; + public ChipStructs.UnitTestingClusterSimpleStruct arg4; + public ArrayList arg5; + public ArrayList arg6; + public UnitTestingClusterTestEventEvent( + Integer arg1, + Integer arg2, + Boolean arg3, + ChipStructs.UnitTestingClusterSimpleStruct arg4, + ArrayList arg5, + ArrayList arg6 + ) { + this.arg1 = arg1; + this.arg2 = arg2; + this.arg3 = arg3; + this.arg4 = arg4; + this.arg5 = arg5; + this.arg6 = arg6; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("UnitTestingClusterTestEventEvent {\n"); + output.append("\targ1: "); + output.append(arg1); + output.append("\n"); + output.append("\targ2: "); + output.append(arg2); + output.append("\n"); + output.append("\targ3: "); + output.append(arg3); + output.append("\n"); + output.append("\targ4: "); + output.append(arg4); + output.append("\n"); + output.append("\targ5: "); + output.append(arg5); + output.append("\n"); + output.append("\targ6: "); + output.append(arg6); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public UnitTestingClusterTestEventEvent clone() { + UnitTestingClusterTestEventEvent ret; + try { + ret = (UnitTestingClusterTestEventEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.arg1 = arg1; + ret.arg2 = arg2; + ret.arg3 = arg3; + ret.arg4 = arg4.clone(); + ret.arg5 = arrayClone(arg5, arg5_it -> arg5_it.clone()); + ret.arg6 = arrayClone(arg6, arg6_it -> arg6_it); + return ret; + } +} +public static class UnitTestingClusterTestFabricScopedEventEvent implements Cloneable { + public Integer fabricIndex; + public UnitTestingClusterTestFabricScopedEventEvent( + Integer fabricIndex + ) { + this.fabricIndex = fabricIndex; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("UnitTestingClusterTestFabricScopedEventEvent {\n"); + output.append("\tfabricIndex: "); + output.append(fabricIndex); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public UnitTestingClusterTestFabricScopedEventEvent clone() { + UnitTestingClusterTestFabricScopedEventEvent ret; + try { + ret = (UnitTestingClusterTestFabricScopedEventEvent)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.fabricIndex = fabricIndex; + return ret; + } +} + private interface ArrayCloneFunction { + T cloneFunction(T input) throws CloneNotSupportedException; + } + + private static ArrayList arrayClone(ArrayList inputArray, ArrayCloneFunction func) { + ArrayList ret = new ArrayList(inputArray.size()); + for (T it : inputArray) { + try { + ret.add(func.cloneFunction(it)); + } catch (CloneNotSupportedException e) { + // Ignore + } + } + return ret; + } +} diff --git a/src/controller/java/generated/java/chip/devicecontroller/ChipStructs.java b/src/controller/java/generated/java/chip/devicecontroller/ChipStructs.java new file mode 100644 index 00000000000000..35296d827d3dc1 --- /dev/null +++ b/src/controller/java/generated/java/chip/devicecontroller/ChipStructs.java @@ -0,0 +1,4075 @@ +/* + * + * Copyright (c) 2023 Project CHIP Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package chip.devicecontroller; + +import javax.annotation.Nullable; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Optional; + +public class ChipStructs { +public static class ScenesClusterAttributeValuePair implements Cloneable { + public Long attributeID; + public Long attributeValue; + public ScenesClusterAttributeValuePair( + Long attributeID, + Long attributeValue + ) { + this.attributeID = attributeID; + this.attributeValue = attributeValue; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("ScenesClusterAttributeValuePair {\n"); + output.append("\tattributeID: "); + output.append(attributeID); + output.append("\n"); + output.append("\tattributeValue: "); + output.append(attributeValue); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public ScenesClusterAttributeValuePair clone() { + ScenesClusterAttributeValuePair ret; + try { + ret = (ScenesClusterAttributeValuePair)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.attributeID = attributeID; + ret.attributeValue = attributeValue; + return ret; + } +} +public static class ScenesClusterExtensionFieldSet implements Cloneable { + public Long clusterID; + public ArrayList attributeValueList; + public ScenesClusterExtensionFieldSet( + Long clusterID, + ArrayList attributeValueList + ) { + this.clusterID = clusterID; + this.attributeValueList = attributeValueList; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("ScenesClusterExtensionFieldSet {\n"); + output.append("\tclusterID: "); + output.append(clusterID); + output.append("\n"); + output.append("\tattributeValueList: "); + output.append(attributeValueList); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public ScenesClusterExtensionFieldSet clone() { + ScenesClusterExtensionFieldSet ret; + try { + ret = (ScenesClusterExtensionFieldSet)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.clusterID = clusterID; + ret.attributeValueList = arrayClone(attributeValueList, attributeValueList_it -> attributeValueList_it.clone()); + return ret; + } +} +public static class DescriptorClusterDeviceTypeStruct implements Cloneable { + public Long deviceType; + public Integer revision; + public DescriptorClusterDeviceTypeStruct( + Long deviceType, + Integer revision + ) { + this.deviceType = deviceType; + this.revision = revision; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("DescriptorClusterDeviceTypeStruct {\n"); + output.append("\tdeviceType: "); + output.append(deviceType); + output.append("\n"); + output.append("\trevision: "); + output.append(revision); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public DescriptorClusterDeviceTypeStruct clone() { + DescriptorClusterDeviceTypeStruct ret; + try { + ret = (DescriptorClusterDeviceTypeStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.deviceType = deviceType; + ret.revision = revision; + return ret; + } +} +public static class DescriptorClusterSemanticTagStruct implements Cloneable { + public @Nullable Integer mfgCode; + public Integer namespaceID; + public Integer tag; + public @Nullable Optional label; + public DescriptorClusterSemanticTagStruct( + @Nullable Integer mfgCode, + Integer namespaceID, + Integer tag, + @Nullable Optional label + ) { + this.mfgCode = mfgCode; + this.namespaceID = namespaceID; + this.tag = tag; + this.label = label; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("DescriptorClusterSemanticTagStruct {\n"); + output.append("\tmfgCode: "); + output.append(mfgCode); + output.append("\n"); + output.append("\tnamespaceID: "); + output.append(namespaceID); + output.append("\n"); + output.append("\ttag: "); + output.append(tag); + output.append("\n"); + output.append("\tlabel: "); + output.append(label); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public DescriptorClusterSemanticTagStruct clone() { + DescriptorClusterSemanticTagStruct ret; + try { + ret = (DescriptorClusterSemanticTagStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.mfgCode = (mfgCode != null ? mfgCode : null); + ret.namespaceID = namespaceID; + ret.tag = tag; + ret.label = (label != null ? label.map(label_map -> label_map) : null); + return ret; + } +} +public static class BindingClusterTargetStruct implements Cloneable { + public Optional node; + public Optional group; + public Optional endpoint; + public Optional cluster; + public Integer fabricIndex; + public BindingClusterTargetStruct( + Optional node, + Optional group, + Optional endpoint, + Optional cluster, + Integer fabricIndex + ) { + this.node = node; + this.group = group; + this.endpoint = endpoint; + this.cluster = cluster; + this.fabricIndex = fabricIndex; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("BindingClusterTargetStruct {\n"); + output.append("\tnode: "); + output.append(node); + output.append("\n"); + output.append("\tgroup: "); + output.append(group); + output.append("\n"); + output.append("\tendpoint: "); + output.append(endpoint); + output.append("\n"); + output.append("\tcluster: "); + output.append(cluster); + output.append("\n"); + output.append("\tfabricIndex: "); + output.append(fabricIndex); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public BindingClusterTargetStruct clone() { + BindingClusterTargetStruct ret; + try { + ret = (BindingClusterTargetStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.node = node.map(node_map -> node_map); + ret.group = group.map(group_map -> group_map); + ret.endpoint = endpoint.map(endpoint_map -> endpoint_map); + ret.cluster = cluster.map(cluster_map -> cluster_map); + ret.fabricIndex = fabricIndex; + return ret; + } +} +public static class AccessControlClusterAccessControlTargetStruct implements Cloneable { + public @Nullable Long cluster; + public @Nullable Integer endpoint; + public @Nullable Long deviceType; + public AccessControlClusterAccessControlTargetStruct( + @Nullable Long cluster, + @Nullable Integer endpoint, + @Nullable Long deviceType + ) { + this.cluster = cluster; + this.endpoint = endpoint; + this.deviceType = deviceType; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("AccessControlClusterAccessControlTargetStruct {\n"); + output.append("\tcluster: "); + output.append(cluster); + output.append("\n"); + output.append("\tendpoint: "); + output.append(endpoint); + output.append("\n"); + output.append("\tdeviceType: "); + output.append(deviceType); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public AccessControlClusterAccessControlTargetStruct clone() { + AccessControlClusterAccessControlTargetStruct ret; + try { + ret = (AccessControlClusterAccessControlTargetStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.cluster = (cluster != null ? cluster : null); + ret.endpoint = (endpoint != null ? endpoint : null); + ret.deviceType = (deviceType != null ? deviceType : null); + return ret; + } +} +public static class AccessControlClusterAccessControlEntryStruct implements Cloneable { + public Integer privilege; + public Integer authMode; + public @Nullable ArrayList subjects; + public @Nullable ArrayList targets; + public Integer fabricIndex; + public AccessControlClusterAccessControlEntryStruct( + Integer privilege, + Integer authMode, + @Nullable ArrayList subjects, + @Nullable ArrayList targets, + Integer fabricIndex + ) { + this.privilege = privilege; + this.authMode = authMode; + this.subjects = subjects; + this.targets = targets; + this.fabricIndex = fabricIndex; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("AccessControlClusterAccessControlEntryStruct {\n"); + output.append("\tprivilege: "); + output.append(privilege); + output.append("\n"); + output.append("\tauthMode: "); + output.append(authMode); + output.append("\n"); + output.append("\tsubjects: "); + output.append(subjects); + output.append("\n"); + output.append("\ttargets: "); + output.append(targets); + output.append("\n"); + output.append("\tfabricIndex: "); + output.append(fabricIndex); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public AccessControlClusterAccessControlEntryStruct clone() { + AccessControlClusterAccessControlEntryStruct ret; + try { + ret = (AccessControlClusterAccessControlEntryStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.privilege = privilege; + ret.authMode = authMode; + ret.subjects = (subjects != null ? arrayClone(subjects, subjects_it -> subjects_it) : null); + ret.targets = (targets != null ? arrayClone(targets, targets_it -> targets_it.clone()) : null); + ret.fabricIndex = fabricIndex; + return ret; + } +} +public static class AccessControlClusterAccessControlExtensionStruct implements Cloneable { + public byte[] data; + public Integer fabricIndex; + public AccessControlClusterAccessControlExtensionStruct( + byte[] data, + Integer fabricIndex + ) { + this.data = data; + this.fabricIndex = fabricIndex; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("AccessControlClusterAccessControlExtensionStruct {\n"); + output.append("\tdata: "); + output.append(Arrays.toString(data)); + output.append("\n"); + output.append("\tfabricIndex: "); + output.append(fabricIndex); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public AccessControlClusterAccessControlExtensionStruct clone() { + AccessControlClusterAccessControlExtensionStruct ret; + try { + ret = (AccessControlClusterAccessControlExtensionStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.data = + data.clone(); + ret.fabricIndex = fabricIndex; + return ret; + } +} +public static class ActionsClusterActionStruct implements Cloneable { + public Integer actionID; + public String name; + public Integer type; + public Integer endpointListID; + public Integer supportedCommands; + public Integer state; + public ActionsClusterActionStruct( + Integer actionID, + String name, + Integer type, + Integer endpointListID, + Integer supportedCommands, + Integer state + ) { + this.actionID = actionID; + this.name = name; + this.type = type; + this.endpointListID = endpointListID; + this.supportedCommands = supportedCommands; + this.state = state; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("ActionsClusterActionStruct {\n"); + output.append("\tactionID: "); + output.append(actionID); + output.append("\n"); + output.append("\tname: "); + output.append(name); + output.append("\n"); + output.append("\ttype: "); + output.append(type); + output.append("\n"); + output.append("\tendpointListID: "); + output.append(endpointListID); + output.append("\n"); + output.append("\tsupportedCommands: "); + output.append(supportedCommands); + output.append("\n"); + output.append("\tstate: "); + output.append(state); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public ActionsClusterActionStruct clone() { + ActionsClusterActionStruct ret; + try { + ret = (ActionsClusterActionStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.actionID = actionID; + ret.name = name; + ret.type = type; + ret.endpointListID = endpointListID; + ret.supportedCommands = supportedCommands; + ret.state = state; + return ret; + } +} +public static class ActionsClusterEndpointListStruct implements Cloneable { + public Integer endpointListID; + public String name; + public Integer type; + public ArrayList endpoints; + public ActionsClusterEndpointListStruct( + Integer endpointListID, + String name, + Integer type, + ArrayList endpoints + ) { + this.endpointListID = endpointListID; + this.name = name; + this.type = type; + this.endpoints = endpoints; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("ActionsClusterEndpointListStruct {\n"); + output.append("\tendpointListID: "); + output.append(endpointListID); + output.append("\n"); + output.append("\tname: "); + output.append(name); + output.append("\n"); + output.append("\ttype: "); + output.append(type); + output.append("\n"); + output.append("\tendpoints: "); + output.append(endpoints); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public ActionsClusterEndpointListStruct clone() { + ActionsClusterEndpointListStruct ret; + try { + ret = (ActionsClusterEndpointListStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.endpointListID = endpointListID; + ret.name = name; + ret.type = type; + ret.endpoints = arrayClone(endpoints, endpoints_it -> endpoints_it); + return ret; + } +} +public static class BasicInformationClusterCapabilityMinimaStruct implements Cloneable { + public Integer caseSessionsPerFabric; + public Integer subscriptionsPerFabric; + public BasicInformationClusterCapabilityMinimaStruct( + Integer caseSessionsPerFabric, + Integer subscriptionsPerFabric + ) { + this.caseSessionsPerFabric = caseSessionsPerFabric; + this.subscriptionsPerFabric = subscriptionsPerFabric; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("BasicInformationClusterCapabilityMinimaStruct {\n"); + output.append("\tcaseSessionsPerFabric: "); + output.append(caseSessionsPerFabric); + output.append("\n"); + output.append("\tsubscriptionsPerFabric: "); + output.append(subscriptionsPerFabric); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public BasicInformationClusterCapabilityMinimaStruct clone() { + BasicInformationClusterCapabilityMinimaStruct ret; + try { + ret = (BasicInformationClusterCapabilityMinimaStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.caseSessionsPerFabric = caseSessionsPerFabric; + ret.subscriptionsPerFabric = subscriptionsPerFabric; + return ret; + } +} +public static class BasicInformationClusterProductAppearanceStruct implements Cloneable { + public Integer finish; + public @Nullable Integer primaryColor; + public BasicInformationClusterProductAppearanceStruct( + Integer finish, + @Nullable Integer primaryColor + ) { + this.finish = finish; + this.primaryColor = primaryColor; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("BasicInformationClusterProductAppearanceStruct {\n"); + output.append("\tfinish: "); + output.append(finish); + output.append("\n"); + output.append("\tprimaryColor: "); + output.append(primaryColor); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public BasicInformationClusterProductAppearanceStruct clone() { + BasicInformationClusterProductAppearanceStruct ret; + try { + ret = (BasicInformationClusterProductAppearanceStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.finish = finish; + ret.primaryColor = (primaryColor != null ? primaryColor : null); + return ret; + } +} +public static class OtaSoftwareUpdateRequestorClusterProviderLocation implements Cloneable { + public Long providerNodeID; + public Integer endpoint; + public Integer fabricIndex; + public OtaSoftwareUpdateRequestorClusterProviderLocation( + Long providerNodeID, + Integer endpoint, + Integer fabricIndex + ) { + this.providerNodeID = providerNodeID; + this.endpoint = endpoint; + this.fabricIndex = fabricIndex; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("OtaSoftwareUpdateRequestorClusterProviderLocation {\n"); + output.append("\tproviderNodeID: "); + output.append(providerNodeID); + output.append("\n"); + output.append("\tendpoint: "); + output.append(endpoint); + output.append("\n"); + output.append("\tfabricIndex: "); + output.append(fabricIndex); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public OtaSoftwareUpdateRequestorClusterProviderLocation clone() { + OtaSoftwareUpdateRequestorClusterProviderLocation ret; + try { + ret = (OtaSoftwareUpdateRequestorClusterProviderLocation)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.providerNodeID = providerNodeID; + ret.endpoint = endpoint; + ret.fabricIndex = fabricIndex; + return ret; + } +} +public static class PowerSourceClusterBatChargeFaultChangeType implements Cloneable { + public ArrayList current; + public ArrayList previous; + public PowerSourceClusterBatChargeFaultChangeType( + ArrayList current, + ArrayList previous + ) { + this.current = current; + this.previous = previous; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("PowerSourceClusterBatChargeFaultChangeType {\n"); + output.append("\tcurrent: "); + output.append(current); + output.append("\n"); + output.append("\tprevious: "); + output.append(previous); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public PowerSourceClusterBatChargeFaultChangeType clone() { + PowerSourceClusterBatChargeFaultChangeType ret; + try { + ret = (PowerSourceClusterBatChargeFaultChangeType)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.current = arrayClone(current, current_it -> current_it); + ret.previous = arrayClone(previous, previous_it -> previous_it); + return ret; + } +} +public static class PowerSourceClusterBatFaultChangeType implements Cloneable { + public ArrayList current; + public ArrayList previous; + public PowerSourceClusterBatFaultChangeType( + ArrayList current, + ArrayList previous + ) { + this.current = current; + this.previous = previous; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("PowerSourceClusterBatFaultChangeType {\n"); + output.append("\tcurrent: "); + output.append(current); + output.append("\n"); + output.append("\tprevious: "); + output.append(previous); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public PowerSourceClusterBatFaultChangeType clone() { + PowerSourceClusterBatFaultChangeType ret; + try { + ret = (PowerSourceClusterBatFaultChangeType)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.current = arrayClone(current, current_it -> current_it); + ret.previous = arrayClone(previous, previous_it -> previous_it); + return ret; + } +} +public static class PowerSourceClusterWiredFaultChangeType implements Cloneable { + public ArrayList current; + public ArrayList previous; + public PowerSourceClusterWiredFaultChangeType( + ArrayList current, + ArrayList previous + ) { + this.current = current; + this.previous = previous; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("PowerSourceClusterWiredFaultChangeType {\n"); + output.append("\tcurrent: "); + output.append(current); + output.append("\n"); + output.append("\tprevious: "); + output.append(previous); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public PowerSourceClusterWiredFaultChangeType clone() { + PowerSourceClusterWiredFaultChangeType ret; + try { + ret = (PowerSourceClusterWiredFaultChangeType)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.current = arrayClone(current, current_it -> current_it); + ret.previous = arrayClone(previous, previous_it -> previous_it); + return ret; + } +} +public static class GeneralCommissioningClusterBasicCommissioningInfo implements Cloneable { + public Integer failSafeExpiryLengthSeconds; + public Integer maxCumulativeFailsafeSeconds; + public GeneralCommissioningClusterBasicCommissioningInfo( + Integer failSafeExpiryLengthSeconds, + Integer maxCumulativeFailsafeSeconds + ) { + this.failSafeExpiryLengthSeconds = failSafeExpiryLengthSeconds; + this.maxCumulativeFailsafeSeconds = maxCumulativeFailsafeSeconds; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("GeneralCommissioningClusterBasicCommissioningInfo {\n"); + output.append("\tfailSafeExpiryLengthSeconds: "); + output.append(failSafeExpiryLengthSeconds); + output.append("\n"); + output.append("\tmaxCumulativeFailsafeSeconds: "); + output.append(maxCumulativeFailsafeSeconds); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public GeneralCommissioningClusterBasicCommissioningInfo clone() { + GeneralCommissioningClusterBasicCommissioningInfo ret; + try { + ret = (GeneralCommissioningClusterBasicCommissioningInfo)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.failSafeExpiryLengthSeconds = failSafeExpiryLengthSeconds; + ret.maxCumulativeFailsafeSeconds = maxCumulativeFailsafeSeconds; + return ret; + } +} +public static class NetworkCommissioningClusterNetworkInfoStruct implements Cloneable { + public byte[] networkID; + public Boolean connected; + public NetworkCommissioningClusterNetworkInfoStruct( + byte[] networkID, + Boolean connected + ) { + this.networkID = networkID; + this.connected = connected; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("NetworkCommissioningClusterNetworkInfoStruct {\n"); + output.append("\tnetworkID: "); + output.append(Arrays.toString(networkID)); + output.append("\n"); + output.append("\tconnected: "); + output.append(connected); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public NetworkCommissioningClusterNetworkInfoStruct clone() { + NetworkCommissioningClusterNetworkInfoStruct ret; + try { + ret = (NetworkCommissioningClusterNetworkInfoStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.networkID = + networkID.clone(); + ret.connected = connected; + return ret; + } +} +public static class NetworkCommissioningClusterThreadInterfaceScanResultStruct implements Cloneable { + public Integer panId; + public Long extendedPanId; + public String networkName; + public Integer channel; + public Integer version; + public byte[] extendedAddress; + public Integer rssi; + public Integer lqi; + public NetworkCommissioningClusterThreadInterfaceScanResultStruct( + Integer panId, + Long extendedPanId, + String networkName, + Integer channel, + Integer version, + byte[] extendedAddress, + Integer rssi, + Integer lqi + ) { + this.panId = panId; + this.extendedPanId = extendedPanId; + this.networkName = networkName; + this.channel = channel; + this.version = version; + this.extendedAddress = extendedAddress; + this.rssi = rssi; + this.lqi = lqi; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("NetworkCommissioningClusterThreadInterfaceScanResultStruct {\n"); + output.append("\tpanId: "); + output.append(panId); + output.append("\n"); + output.append("\textendedPanId: "); + output.append(extendedPanId); + output.append("\n"); + output.append("\tnetworkName: "); + output.append(networkName); + output.append("\n"); + output.append("\tchannel: "); + output.append(channel); + output.append("\n"); + output.append("\tversion: "); + output.append(version); + output.append("\n"); + output.append("\textendedAddress: "); + output.append(Arrays.toString(extendedAddress)); + output.append("\n"); + output.append("\trssi: "); + output.append(rssi); + output.append("\n"); + output.append("\tlqi: "); + output.append(lqi); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public NetworkCommissioningClusterThreadInterfaceScanResultStruct clone() { + NetworkCommissioningClusterThreadInterfaceScanResultStruct ret; + try { + ret = (NetworkCommissioningClusterThreadInterfaceScanResultStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.panId = panId; + ret.extendedPanId = extendedPanId; + ret.networkName = networkName; + ret.channel = channel; + ret.version = version; + ret.extendedAddress = + extendedAddress.clone(); + ret.rssi = rssi; + ret.lqi = lqi; + return ret; + } +} +public static class NetworkCommissioningClusterWiFiInterfaceScanResultStruct implements Cloneable { + public Integer security; + public byte[] ssid; + public byte[] bssid; + public Integer channel; + public Integer wiFiBand; + public Integer rssi; + public NetworkCommissioningClusterWiFiInterfaceScanResultStruct( + Integer security, + byte[] ssid, + byte[] bssid, + Integer channel, + Integer wiFiBand, + Integer rssi + ) { + this.security = security; + this.ssid = ssid; + this.bssid = bssid; + this.channel = channel; + this.wiFiBand = wiFiBand; + this.rssi = rssi; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("NetworkCommissioningClusterWiFiInterfaceScanResultStruct {\n"); + output.append("\tsecurity: "); + output.append(security); + output.append("\n"); + output.append("\tssid: "); + output.append(Arrays.toString(ssid)); + output.append("\n"); + output.append("\tbssid: "); + output.append(Arrays.toString(bssid)); + output.append("\n"); + output.append("\tchannel: "); + output.append(channel); + output.append("\n"); + output.append("\twiFiBand: "); + output.append(wiFiBand); + output.append("\n"); + output.append("\trssi: "); + output.append(rssi); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public NetworkCommissioningClusterWiFiInterfaceScanResultStruct clone() { + NetworkCommissioningClusterWiFiInterfaceScanResultStruct ret; + try { + ret = (NetworkCommissioningClusterWiFiInterfaceScanResultStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.security = security; + ret.ssid = + ssid.clone(); + ret.bssid = + bssid.clone(); + ret.channel = channel; + ret.wiFiBand = wiFiBand; + ret.rssi = rssi; + return ret; + } +} +public static class GeneralDiagnosticsClusterNetworkInterface implements Cloneable { + public String name; + public Boolean isOperational; + public @Nullable Boolean offPremiseServicesReachableIPv4; + public @Nullable Boolean offPremiseServicesReachableIPv6; + public byte[] hardwareAddress; + public ArrayList IPv4Addresses; + public ArrayList IPv6Addresses; + public Integer type; + public GeneralDiagnosticsClusterNetworkInterface( + String name, + Boolean isOperational, + @Nullable Boolean offPremiseServicesReachableIPv4, + @Nullable Boolean offPremiseServicesReachableIPv6, + byte[] hardwareAddress, + ArrayList IPv4Addresses, + ArrayList IPv6Addresses, + Integer type + ) { + this.name = name; + this.isOperational = isOperational; + this.offPremiseServicesReachableIPv4 = offPremiseServicesReachableIPv4; + this.offPremiseServicesReachableIPv6 = offPremiseServicesReachableIPv6; + this.hardwareAddress = hardwareAddress; + this.IPv4Addresses = IPv4Addresses; + this.IPv6Addresses = IPv6Addresses; + this.type = type; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("GeneralDiagnosticsClusterNetworkInterface {\n"); + output.append("\tname: "); + output.append(name); + output.append("\n"); + output.append("\tisOperational: "); + output.append(isOperational); + output.append("\n"); + output.append("\toffPremiseServicesReachableIPv4: "); + output.append(offPremiseServicesReachableIPv4); + output.append("\n"); + output.append("\toffPremiseServicesReachableIPv6: "); + output.append(offPremiseServicesReachableIPv6); + output.append("\n"); + output.append("\thardwareAddress: "); + output.append(Arrays.toString(hardwareAddress)); + output.append("\n"); + output.append("\tIPv4Addresses: "); + output.append(IPv4Addresses); + output.append("\n"); + output.append("\tIPv6Addresses: "); + output.append(IPv6Addresses); + output.append("\n"); + output.append("\ttype: "); + output.append(type); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public GeneralDiagnosticsClusterNetworkInterface clone() { + GeneralDiagnosticsClusterNetworkInterface ret; + try { + ret = (GeneralDiagnosticsClusterNetworkInterface)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.name = name; + ret.isOperational = isOperational; + ret.offPremiseServicesReachableIPv4 = (offPremiseServicesReachableIPv4 != null ? offPremiseServicesReachableIPv4 : null); + ret.offPremiseServicesReachableIPv6 = (offPremiseServicesReachableIPv6 != null ? offPremiseServicesReachableIPv6 : null); + ret.hardwareAddress = + hardwareAddress.clone(); + ret.IPv4Addresses = arrayClone(IPv4Addresses, IPv4Addresses_it -> + IPv4Addresses_it.clone()); + ret.IPv6Addresses = arrayClone(IPv6Addresses, IPv6Addresses_it -> + IPv6Addresses_it.clone()); + ret.type = type; + return ret; + } +} +public static class SoftwareDiagnosticsClusterThreadMetricsStruct implements Cloneable { + public Long id; + public Optional name; + public Optional stackFreeCurrent; + public Optional stackFreeMinimum; + public Optional stackSize; + public SoftwareDiagnosticsClusterThreadMetricsStruct( + Long id, + Optional name, + Optional stackFreeCurrent, + Optional stackFreeMinimum, + Optional stackSize + ) { + this.id = id; + this.name = name; + this.stackFreeCurrent = stackFreeCurrent; + this.stackFreeMinimum = stackFreeMinimum; + this.stackSize = stackSize; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("SoftwareDiagnosticsClusterThreadMetricsStruct {\n"); + output.append("\tid: "); + output.append(id); + output.append("\n"); + output.append("\tname: "); + output.append(name); + output.append("\n"); + output.append("\tstackFreeCurrent: "); + output.append(stackFreeCurrent); + output.append("\n"); + output.append("\tstackFreeMinimum: "); + output.append(stackFreeMinimum); + output.append("\n"); + output.append("\tstackSize: "); + output.append(stackSize); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public SoftwareDiagnosticsClusterThreadMetricsStruct clone() { + SoftwareDiagnosticsClusterThreadMetricsStruct ret; + try { + ret = (SoftwareDiagnosticsClusterThreadMetricsStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.id = id; + ret.name = name.map(name_map -> name_map); + ret.stackFreeCurrent = stackFreeCurrent.map(stackFreeCurrent_map -> stackFreeCurrent_map); + ret.stackFreeMinimum = stackFreeMinimum.map(stackFreeMinimum_map -> stackFreeMinimum_map); + ret.stackSize = stackSize.map(stackSize_map -> stackSize_map); + return ret; + } +} +public static class ThreadNetworkDiagnosticsClusterNeighborTableStruct implements Cloneable { + public Long extAddress; + public Long age; + public Integer rloc16; + public Long linkFrameCounter; + public Long mleFrameCounter; + public Integer lqi; + public @Nullable Integer averageRssi; + public @Nullable Integer lastRssi; + public Integer frameErrorRate; + public Integer messageErrorRate; + public Boolean rxOnWhenIdle; + public Boolean fullThreadDevice; + public Boolean fullNetworkData; + public Boolean isChild; + public ThreadNetworkDiagnosticsClusterNeighborTableStruct( + Long extAddress, + Long age, + Integer rloc16, + Long linkFrameCounter, + Long mleFrameCounter, + Integer lqi, + @Nullable Integer averageRssi, + @Nullable Integer lastRssi, + Integer frameErrorRate, + Integer messageErrorRate, + Boolean rxOnWhenIdle, + Boolean fullThreadDevice, + Boolean fullNetworkData, + Boolean isChild + ) { + this.extAddress = extAddress; + this.age = age; + this.rloc16 = rloc16; + this.linkFrameCounter = linkFrameCounter; + this.mleFrameCounter = mleFrameCounter; + this.lqi = lqi; + this.averageRssi = averageRssi; + this.lastRssi = lastRssi; + this.frameErrorRate = frameErrorRate; + this.messageErrorRate = messageErrorRate; + this.rxOnWhenIdle = rxOnWhenIdle; + this.fullThreadDevice = fullThreadDevice; + this.fullNetworkData = fullNetworkData; + this.isChild = isChild; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("ThreadNetworkDiagnosticsClusterNeighborTableStruct {\n"); + output.append("\textAddress: "); + output.append(extAddress); + output.append("\n"); + output.append("\tage: "); + output.append(age); + output.append("\n"); + output.append("\trloc16: "); + output.append(rloc16); + output.append("\n"); + output.append("\tlinkFrameCounter: "); + output.append(linkFrameCounter); + output.append("\n"); + output.append("\tmleFrameCounter: "); + output.append(mleFrameCounter); + output.append("\n"); + output.append("\tlqi: "); + output.append(lqi); + output.append("\n"); + output.append("\taverageRssi: "); + output.append(averageRssi); + output.append("\n"); + output.append("\tlastRssi: "); + output.append(lastRssi); + output.append("\n"); + output.append("\tframeErrorRate: "); + output.append(frameErrorRate); + output.append("\n"); + output.append("\tmessageErrorRate: "); + output.append(messageErrorRate); + output.append("\n"); + output.append("\trxOnWhenIdle: "); + output.append(rxOnWhenIdle); + output.append("\n"); + output.append("\tfullThreadDevice: "); + output.append(fullThreadDevice); + output.append("\n"); + output.append("\tfullNetworkData: "); + output.append(fullNetworkData); + output.append("\n"); + output.append("\tisChild: "); + output.append(isChild); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public ThreadNetworkDiagnosticsClusterNeighborTableStruct clone() { + ThreadNetworkDiagnosticsClusterNeighborTableStruct ret; + try { + ret = (ThreadNetworkDiagnosticsClusterNeighborTableStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.extAddress = extAddress; + ret.age = age; + ret.rloc16 = rloc16; + ret.linkFrameCounter = linkFrameCounter; + ret.mleFrameCounter = mleFrameCounter; + ret.lqi = lqi; + ret.averageRssi = (averageRssi != null ? averageRssi : null); + ret.lastRssi = (lastRssi != null ? lastRssi : null); + ret.frameErrorRate = frameErrorRate; + ret.messageErrorRate = messageErrorRate; + ret.rxOnWhenIdle = rxOnWhenIdle; + ret.fullThreadDevice = fullThreadDevice; + ret.fullNetworkData = fullNetworkData; + ret.isChild = isChild; + return ret; + } +} +public static class ThreadNetworkDiagnosticsClusterOperationalDatasetComponents implements Cloneable { + public Boolean activeTimestampPresent; + public Boolean pendingTimestampPresent; + public Boolean masterKeyPresent; + public Boolean networkNamePresent; + public Boolean extendedPanIdPresent; + public Boolean meshLocalPrefixPresent; + public Boolean delayPresent; + public Boolean panIdPresent; + public Boolean channelPresent; + public Boolean pskcPresent; + public Boolean securityPolicyPresent; + public Boolean channelMaskPresent; + public ThreadNetworkDiagnosticsClusterOperationalDatasetComponents( + Boolean activeTimestampPresent, + Boolean pendingTimestampPresent, + Boolean masterKeyPresent, + Boolean networkNamePresent, + Boolean extendedPanIdPresent, + Boolean meshLocalPrefixPresent, + Boolean delayPresent, + Boolean panIdPresent, + Boolean channelPresent, + Boolean pskcPresent, + Boolean securityPolicyPresent, + Boolean channelMaskPresent + ) { + this.activeTimestampPresent = activeTimestampPresent; + this.pendingTimestampPresent = pendingTimestampPresent; + this.masterKeyPresent = masterKeyPresent; + this.networkNamePresent = networkNamePresent; + this.extendedPanIdPresent = extendedPanIdPresent; + this.meshLocalPrefixPresent = meshLocalPrefixPresent; + this.delayPresent = delayPresent; + this.panIdPresent = panIdPresent; + this.channelPresent = channelPresent; + this.pskcPresent = pskcPresent; + this.securityPolicyPresent = securityPolicyPresent; + this.channelMaskPresent = channelMaskPresent; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("ThreadNetworkDiagnosticsClusterOperationalDatasetComponents {\n"); + output.append("\tactiveTimestampPresent: "); + output.append(activeTimestampPresent); + output.append("\n"); + output.append("\tpendingTimestampPresent: "); + output.append(pendingTimestampPresent); + output.append("\n"); + output.append("\tmasterKeyPresent: "); + output.append(masterKeyPresent); + output.append("\n"); + output.append("\tnetworkNamePresent: "); + output.append(networkNamePresent); + output.append("\n"); + output.append("\textendedPanIdPresent: "); + output.append(extendedPanIdPresent); + output.append("\n"); + output.append("\tmeshLocalPrefixPresent: "); + output.append(meshLocalPrefixPresent); + output.append("\n"); + output.append("\tdelayPresent: "); + output.append(delayPresent); + output.append("\n"); + output.append("\tpanIdPresent: "); + output.append(panIdPresent); + output.append("\n"); + output.append("\tchannelPresent: "); + output.append(channelPresent); + output.append("\n"); + output.append("\tpskcPresent: "); + output.append(pskcPresent); + output.append("\n"); + output.append("\tsecurityPolicyPresent: "); + output.append(securityPolicyPresent); + output.append("\n"); + output.append("\tchannelMaskPresent: "); + output.append(channelMaskPresent); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public ThreadNetworkDiagnosticsClusterOperationalDatasetComponents clone() { + ThreadNetworkDiagnosticsClusterOperationalDatasetComponents ret; + try { + ret = (ThreadNetworkDiagnosticsClusterOperationalDatasetComponents)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.activeTimestampPresent = activeTimestampPresent; + ret.pendingTimestampPresent = pendingTimestampPresent; + ret.masterKeyPresent = masterKeyPresent; + ret.networkNamePresent = networkNamePresent; + ret.extendedPanIdPresent = extendedPanIdPresent; + ret.meshLocalPrefixPresent = meshLocalPrefixPresent; + ret.delayPresent = delayPresent; + ret.panIdPresent = panIdPresent; + ret.channelPresent = channelPresent; + ret.pskcPresent = pskcPresent; + ret.securityPolicyPresent = securityPolicyPresent; + ret.channelMaskPresent = channelMaskPresent; + return ret; + } +} +public static class ThreadNetworkDiagnosticsClusterRouteTableStruct implements Cloneable { + public Long extAddress; + public Integer rloc16; + public Integer routerId; + public Integer nextHop; + public Integer pathCost; + public Integer LQIIn; + public Integer LQIOut; + public Integer age; + public Boolean allocated; + public Boolean linkEstablished; + public ThreadNetworkDiagnosticsClusterRouteTableStruct( + Long extAddress, + Integer rloc16, + Integer routerId, + Integer nextHop, + Integer pathCost, + Integer LQIIn, + Integer LQIOut, + Integer age, + Boolean allocated, + Boolean linkEstablished + ) { + this.extAddress = extAddress; + this.rloc16 = rloc16; + this.routerId = routerId; + this.nextHop = nextHop; + this.pathCost = pathCost; + this.LQIIn = LQIIn; + this.LQIOut = LQIOut; + this.age = age; + this.allocated = allocated; + this.linkEstablished = linkEstablished; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("ThreadNetworkDiagnosticsClusterRouteTableStruct {\n"); + output.append("\textAddress: "); + output.append(extAddress); + output.append("\n"); + output.append("\trloc16: "); + output.append(rloc16); + output.append("\n"); + output.append("\trouterId: "); + output.append(routerId); + output.append("\n"); + output.append("\tnextHop: "); + output.append(nextHop); + output.append("\n"); + output.append("\tpathCost: "); + output.append(pathCost); + output.append("\n"); + output.append("\tLQIIn: "); + output.append(LQIIn); + output.append("\n"); + output.append("\tLQIOut: "); + output.append(LQIOut); + output.append("\n"); + output.append("\tage: "); + output.append(age); + output.append("\n"); + output.append("\tallocated: "); + output.append(allocated); + output.append("\n"); + output.append("\tlinkEstablished: "); + output.append(linkEstablished); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public ThreadNetworkDiagnosticsClusterRouteTableStruct clone() { + ThreadNetworkDiagnosticsClusterRouteTableStruct ret; + try { + ret = (ThreadNetworkDiagnosticsClusterRouteTableStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.extAddress = extAddress; + ret.rloc16 = rloc16; + ret.routerId = routerId; + ret.nextHop = nextHop; + ret.pathCost = pathCost; + ret.LQIIn = LQIIn; + ret.LQIOut = LQIOut; + ret.age = age; + ret.allocated = allocated; + ret.linkEstablished = linkEstablished; + return ret; + } +} +public static class ThreadNetworkDiagnosticsClusterSecurityPolicy implements Cloneable { + public Integer rotationTime; + public Integer flags; + public ThreadNetworkDiagnosticsClusterSecurityPolicy( + Integer rotationTime, + Integer flags + ) { + this.rotationTime = rotationTime; + this.flags = flags; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("ThreadNetworkDiagnosticsClusterSecurityPolicy {\n"); + output.append("\trotationTime: "); + output.append(rotationTime); + output.append("\n"); + output.append("\tflags: "); + output.append(flags); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public ThreadNetworkDiagnosticsClusterSecurityPolicy clone() { + ThreadNetworkDiagnosticsClusterSecurityPolicy ret; + try { + ret = (ThreadNetworkDiagnosticsClusterSecurityPolicy)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.rotationTime = rotationTime; + ret.flags = flags; + return ret; + } +} +public static class TimeSynchronizationClusterDSTOffsetStruct implements Cloneable { + public Long offset; + public Long validStarting; + public @Nullable Long validUntil; + public TimeSynchronizationClusterDSTOffsetStruct( + Long offset, + Long validStarting, + @Nullable Long validUntil + ) { + this.offset = offset; + this.validStarting = validStarting; + this.validUntil = validUntil; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("TimeSynchronizationClusterDSTOffsetStruct {\n"); + output.append("\toffset: "); + output.append(offset); + output.append("\n"); + output.append("\tvalidStarting: "); + output.append(validStarting); + output.append("\n"); + output.append("\tvalidUntil: "); + output.append(validUntil); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public TimeSynchronizationClusterDSTOffsetStruct clone() { + TimeSynchronizationClusterDSTOffsetStruct ret; + try { + ret = (TimeSynchronizationClusterDSTOffsetStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.offset = offset; + ret.validStarting = validStarting; + ret.validUntil = (validUntil != null ? validUntil : null); + return ret; + } +} +public static class TimeSynchronizationClusterFabricScopedTrustedTimeSourceStruct implements Cloneable { + public Long nodeID; + public Integer endpoint; + public TimeSynchronizationClusterFabricScopedTrustedTimeSourceStruct( + Long nodeID, + Integer endpoint + ) { + this.nodeID = nodeID; + this.endpoint = endpoint; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("TimeSynchronizationClusterFabricScopedTrustedTimeSourceStruct {\n"); + output.append("\tnodeID: "); + output.append(nodeID); + output.append("\n"); + output.append("\tendpoint: "); + output.append(endpoint); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public TimeSynchronizationClusterFabricScopedTrustedTimeSourceStruct clone() { + TimeSynchronizationClusterFabricScopedTrustedTimeSourceStruct ret; + try { + ret = (TimeSynchronizationClusterFabricScopedTrustedTimeSourceStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.nodeID = nodeID; + ret.endpoint = endpoint; + return ret; + } +} +public static class TimeSynchronizationClusterTimeZoneStruct implements Cloneable { + public Long offset; + public Long validAt; + public Optional name; + public TimeSynchronizationClusterTimeZoneStruct( + Long offset, + Long validAt, + Optional name + ) { + this.offset = offset; + this.validAt = validAt; + this.name = name; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("TimeSynchronizationClusterTimeZoneStruct {\n"); + output.append("\toffset: "); + output.append(offset); + output.append("\n"); + output.append("\tvalidAt: "); + output.append(validAt); + output.append("\n"); + output.append("\tname: "); + output.append(name); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public TimeSynchronizationClusterTimeZoneStruct clone() { + TimeSynchronizationClusterTimeZoneStruct ret; + try { + ret = (TimeSynchronizationClusterTimeZoneStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.offset = offset; + ret.validAt = validAt; + ret.name = name.map(name_map -> name_map); + return ret; + } +} +public static class TimeSynchronizationClusterTrustedTimeSourceStruct implements Cloneable { + public Integer fabricIndex; + public Long nodeID; + public Integer endpoint; + public TimeSynchronizationClusterTrustedTimeSourceStruct( + Integer fabricIndex, + Long nodeID, + Integer endpoint + ) { + this.fabricIndex = fabricIndex; + this.nodeID = nodeID; + this.endpoint = endpoint; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("TimeSynchronizationClusterTrustedTimeSourceStruct {\n"); + output.append("\tfabricIndex: "); + output.append(fabricIndex); + output.append("\n"); + output.append("\tnodeID: "); + output.append(nodeID); + output.append("\n"); + output.append("\tendpoint: "); + output.append(endpoint); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public TimeSynchronizationClusterTrustedTimeSourceStruct clone() { + TimeSynchronizationClusterTrustedTimeSourceStruct ret; + try { + ret = (TimeSynchronizationClusterTrustedTimeSourceStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.fabricIndex = fabricIndex; + ret.nodeID = nodeID; + ret.endpoint = endpoint; + return ret; + } +} +public static class BridgedDeviceBasicInformationClusterProductAppearanceStruct implements Cloneable { + public Integer finish; + public @Nullable Integer primaryColor; + public BridgedDeviceBasicInformationClusterProductAppearanceStruct( + Integer finish, + @Nullable Integer primaryColor + ) { + this.finish = finish; + this.primaryColor = primaryColor; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("BridgedDeviceBasicInformationClusterProductAppearanceStruct {\n"); + output.append("\tfinish: "); + output.append(finish); + output.append("\n"); + output.append("\tprimaryColor: "); + output.append(primaryColor); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public BridgedDeviceBasicInformationClusterProductAppearanceStruct clone() { + BridgedDeviceBasicInformationClusterProductAppearanceStruct ret; + try { + ret = (BridgedDeviceBasicInformationClusterProductAppearanceStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.finish = finish; + ret.primaryColor = (primaryColor != null ? primaryColor : null); + return ret; + } +} +public static class OperationalCredentialsClusterFabricDescriptorStruct implements Cloneable { + public byte[] rootPublicKey; + public Integer vendorID; + public Long fabricID; + public Long nodeID; + public String label; + public Integer fabricIndex; + public OperationalCredentialsClusterFabricDescriptorStruct( + byte[] rootPublicKey, + Integer vendorID, + Long fabricID, + Long nodeID, + String label, + Integer fabricIndex + ) { + this.rootPublicKey = rootPublicKey; + this.vendorID = vendorID; + this.fabricID = fabricID; + this.nodeID = nodeID; + this.label = label; + this.fabricIndex = fabricIndex; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("OperationalCredentialsClusterFabricDescriptorStruct {\n"); + output.append("\trootPublicKey: "); + output.append(Arrays.toString(rootPublicKey)); + output.append("\n"); + output.append("\tvendorID: "); + output.append(vendorID); + output.append("\n"); + output.append("\tfabricID: "); + output.append(fabricID); + output.append("\n"); + output.append("\tnodeID: "); + output.append(nodeID); + output.append("\n"); + output.append("\tlabel: "); + output.append(label); + output.append("\n"); + output.append("\tfabricIndex: "); + output.append(fabricIndex); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public OperationalCredentialsClusterFabricDescriptorStruct clone() { + OperationalCredentialsClusterFabricDescriptorStruct ret; + try { + ret = (OperationalCredentialsClusterFabricDescriptorStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.rootPublicKey = + rootPublicKey.clone(); + ret.vendorID = vendorID; + ret.fabricID = fabricID; + ret.nodeID = nodeID; + ret.label = label; + ret.fabricIndex = fabricIndex; + return ret; + } +} +public static class OperationalCredentialsClusterNOCStruct implements Cloneable { + public byte[] noc; + public @Nullable byte[] icac; + public Integer fabricIndex; + public OperationalCredentialsClusterNOCStruct( + byte[] noc, + @Nullable byte[] icac, + Integer fabricIndex + ) { + this.noc = noc; + this.icac = icac; + this.fabricIndex = fabricIndex; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("OperationalCredentialsClusterNOCStruct {\n"); + output.append("\tnoc: "); + output.append(Arrays.toString(noc)); + output.append("\n"); + output.append("\ticac: "); + output.append(Arrays.toString(icac)); + output.append("\n"); + output.append("\tfabricIndex: "); + output.append(fabricIndex); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public OperationalCredentialsClusterNOCStruct clone() { + OperationalCredentialsClusterNOCStruct ret; + try { + ret = (OperationalCredentialsClusterNOCStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.noc = + noc.clone(); + ret.icac = (icac != null ? + icac.clone() : null); + ret.fabricIndex = fabricIndex; + return ret; + } +} +public static class GroupKeyManagementClusterGroupInfoMapStruct implements Cloneable { + public Integer groupId; + public ArrayList endpoints; + public Optional groupName; + public Integer fabricIndex; + public GroupKeyManagementClusterGroupInfoMapStruct( + Integer groupId, + ArrayList endpoints, + Optional groupName, + Integer fabricIndex + ) { + this.groupId = groupId; + this.endpoints = endpoints; + this.groupName = groupName; + this.fabricIndex = fabricIndex; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("GroupKeyManagementClusterGroupInfoMapStruct {\n"); + output.append("\tgroupId: "); + output.append(groupId); + output.append("\n"); + output.append("\tendpoints: "); + output.append(endpoints); + output.append("\n"); + output.append("\tgroupName: "); + output.append(groupName); + output.append("\n"); + output.append("\tfabricIndex: "); + output.append(fabricIndex); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public GroupKeyManagementClusterGroupInfoMapStruct clone() { + GroupKeyManagementClusterGroupInfoMapStruct ret; + try { + ret = (GroupKeyManagementClusterGroupInfoMapStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.groupId = groupId; + ret.endpoints = arrayClone(endpoints, endpoints_it -> endpoints_it); + ret.groupName = groupName.map(groupName_map -> groupName_map); + ret.fabricIndex = fabricIndex; + return ret; + } +} +public static class GroupKeyManagementClusterGroupKeyMapStruct implements Cloneable { + public Integer groupId; + public Integer groupKeySetID; + public Integer fabricIndex; + public GroupKeyManagementClusterGroupKeyMapStruct( + Integer groupId, + Integer groupKeySetID, + Integer fabricIndex + ) { + this.groupId = groupId; + this.groupKeySetID = groupKeySetID; + this.fabricIndex = fabricIndex; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("GroupKeyManagementClusterGroupKeyMapStruct {\n"); + output.append("\tgroupId: "); + output.append(groupId); + output.append("\n"); + output.append("\tgroupKeySetID: "); + output.append(groupKeySetID); + output.append("\n"); + output.append("\tfabricIndex: "); + output.append(fabricIndex); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public GroupKeyManagementClusterGroupKeyMapStruct clone() { + GroupKeyManagementClusterGroupKeyMapStruct ret; + try { + ret = (GroupKeyManagementClusterGroupKeyMapStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.groupId = groupId; + ret.groupKeySetID = groupKeySetID; + ret.fabricIndex = fabricIndex; + return ret; + } +} +public static class GroupKeyManagementClusterGroupKeySetStruct implements Cloneable { + public Integer groupKeySetID; + public Integer groupKeySecurityPolicy; + public @Nullable byte[] epochKey0; + public @Nullable Long epochStartTime0; + public @Nullable byte[] epochKey1; + public @Nullable Long epochStartTime1; + public @Nullable byte[] epochKey2; + public @Nullable Long epochStartTime2; + public GroupKeyManagementClusterGroupKeySetStruct( + Integer groupKeySetID, + Integer groupKeySecurityPolicy, + @Nullable byte[] epochKey0, + @Nullable Long epochStartTime0, + @Nullable byte[] epochKey1, + @Nullable Long epochStartTime1, + @Nullable byte[] epochKey2, + @Nullable Long epochStartTime2 + ) { + this.groupKeySetID = groupKeySetID; + this.groupKeySecurityPolicy = groupKeySecurityPolicy; + this.epochKey0 = epochKey0; + this.epochStartTime0 = epochStartTime0; + this.epochKey1 = epochKey1; + this.epochStartTime1 = epochStartTime1; + this.epochKey2 = epochKey2; + this.epochStartTime2 = epochStartTime2; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("GroupKeyManagementClusterGroupKeySetStruct {\n"); + output.append("\tgroupKeySetID: "); + output.append(groupKeySetID); + output.append("\n"); + output.append("\tgroupKeySecurityPolicy: "); + output.append(groupKeySecurityPolicy); + output.append("\n"); + output.append("\tepochKey0: "); + output.append(Arrays.toString(epochKey0)); + output.append("\n"); + output.append("\tepochStartTime0: "); + output.append(epochStartTime0); + output.append("\n"); + output.append("\tepochKey1: "); + output.append(Arrays.toString(epochKey1)); + output.append("\n"); + output.append("\tepochStartTime1: "); + output.append(epochStartTime1); + output.append("\n"); + output.append("\tepochKey2: "); + output.append(Arrays.toString(epochKey2)); + output.append("\n"); + output.append("\tepochStartTime2: "); + output.append(epochStartTime2); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public GroupKeyManagementClusterGroupKeySetStruct clone() { + GroupKeyManagementClusterGroupKeySetStruct ret; + try { + ret = (GroupKeyManagementClusterGroupKeySetStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.groupKeySetID = groupKeySetID; + ret.groupKeySecurityPolicy = groupKeySecurityPolicy; + ret.epochKey0 = (epochKey0 != null ? + epochKey0.clone() : null); + ret.epochStartTime0 = (epochStartTime0 != null ? epochStartTime0 : null); + ret.epochKey1 = (epochKey1 != null ? + epochKey1.clone() : null); + ret.epochStartTime1 = (epochStartTime1 != null ? epochStartTime1 : null); + ret.epochKey2 = (epochKey2 != null ? + epochKey2.clone() : null); + ret.epochStartTime2 = (epochStartTime2 != null ? epochStartTime2 : null); + return ret; + } +} +public static class FixedLabelClusterLabelStruct implements Cloneable { + public String label; + public String value; + public FixedLabelClusterLabelStruct( + String label, + String value + ) { + this.label = label; + this.value = value; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("FixedLabelClusterLabelStruct {\n"); + output.append("\tlabel: "); + output.append(label); + output.append("\n"); + output.append("\tvalue: "); + output.append(value); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public FixedLabelClusterLabelStruct clone() { + FixedLabelClusterLabelStruct ret; + try { + ret = (FixedLabelClusterLabelStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.label = label; + ret.value = value; + return ret; + } +} +public static class UserLabelClusterLabelStruct implements Cloneable { + public String label; + public String value; + public UserLabelClusterLabelStruct( + String label, + String value + ) { + this.label = label; + this.value = value; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("UserLabelClusterLabelStruct {\n"); + output.append("\tlabel: "); + output.append(label); + output.append("\n"); + output.append("\tvalue: "); + output.append(value); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public UserLabelClusterLabelStruct clone() { + UserLabelClusterLabelStruct ret; + try { + ret = (UserLabelClusterLabelStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.label = label; + ret.value = value; + return ret; + } +} +public static class IcdManagementClusterMonitoringRegistrationStruct implements Cloneable { + public Long checkInNodeID; + public Long monitoredSubject; + public byte[] key; + public Integer fabricIndex; + public IcdManagementClusterMonitoringRegistrationStruct( + Long checkInNodeID, + Long monitoredSubject, + byte[] key, + Integer fabricIndex + ) { + this.checkInNodeID = checkInNodeID; + this.monitoredSubject = monitoredSubject; + this.key = key; + this.fabricIndex = fabricIndex; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("IcdManagementClusterMonitoringRegistrationStruct {\n"); + output.append("\tcheckInNodeID: "); + output.append(checkInNodeID); + output.append("\n"); + output.append("\tmonitoredSubject: "); + output.append(monitoredSubject); + output.append("\n"); + output.append("\tkey: "); + output.append(Arrays.toString(key)); + output.append("\n"); + output.append("\tfabricIndex: "); + output.append(fabricIndex); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public IcdManagementClusterMonitoringRegistrationStruct clone() { + IcdManagementClusterMonitoringRegistrationStruct ret; + try { + ret = (IcdManagementClusterMonitoringRegistrationStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.checkInNodeID = checkInNodeID; + ret.monitoredSubject = monitoredSubject; + ret.key = + key.clone(); + ret.fabricIndex = fabricIndex; + return ret; + } +} +public static class ModeSelectClusterSemanticTagStruct implements Cloneable { + public Integer mfgCode; + public Integer value; + public ModeSelectClusterSemanticTagStruct( + Integer mfgCode, + Integer value + ) { + this.mfgCode = mfgCode; + this.value = value; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("ModeSelectClusterSemanticTagStruct {\n"); + output.append("\tmfgCode: "); + output.append(mfgCode); + output.append("\n"); + output.append("\tvalue: "); + output.append(value); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public ModeSelectClusterSemanticTagStruct clone() { + ModeSelectClusterSemanticTagStruct ret; + try { + ret = (ModeSelectClusterSemanticTagStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.mfgCode = mfgCode; + ret.value = value; + return ret; + } +} +public static class ModeSelectClusterModeOptionStruct implements Cloneable { + public String label; + public Integer mode; + public ArrayList semanticTags; + public ModeSelectClusterModeOptionStruct( + String label, + Integer mode, + ArrayList semanticTags + ) { + this.label = label; + this.mode = mode; + this.semanticTags = semanticTags; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("ModeSelectClusterModeOptionStruct {\n"); + output.append("\tlabel: "); + output.append(label); + output.append("\n"); + output.append("\tmode: "); + output.append(mode); + output.append("\n"); + output.append("\tsemanticTags: "); + output.append(semanticTags); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public ModeSelectClusterModeOptionStruct clone() { + ModeSelectClusterModeOptionStruct ret; + try { + ret = (ModeSelectClusterModeOptionStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.label = label; + ret.mode = mode; + ret.semanticTags = arrayClone(semanticTags, semanticTags_it -> semanticTags_it.clone()); + return ret; + } +} +public static class LaundryWasherModeClusterModeTagStruct implements Cloneable { + public Optional mfgCode; + public Integer value; + public LaundryWasherModeClusterModeTagStruct( + Optional mfgCode, + Integer value + ) { + this.mfgCode = mfgCode; + this.value = value; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("LaundryWasherModeClusterModeTagStruct {\n"); + output.append("\tmfgCode: "); + output.append(mfgCode); + output.append("\n"); + output.append("\tvalue: "); + output.append(value); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public LaundryWasherModeClusterModeTagStruct clone() { + LaundryWasherModeClusterModeTagStruct ret; + try { + ret = (LaundryWasherModeClusterModeTagStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.mfgCode = mfgCode.map(mfgCode_map -> mfgCode_map); + ret.value = value; + return ret; + } +} +public static class LaundryWasherModeClusterModeOptionStruct implements Cloneable { + public String label; + public Integer mode; + public ArrayList modeTags; + public LaundryWasherModeClusterModeOptionStruct( + String label, + Integer mode, + ArrayList modeTags + ) { + this.label = label; + this.mode = mode; + this.modeTags = modeTags; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("LaundryWasherModeClusterModeOptionStruct {\n"); + output.append("\tlabel: "); + output.append(label); + output.append("\n"); + output.append("\tmode: "); + output.append(mode); + output.append("\n"); + output.append("\tmodeTags: "); + output.append(modeTags); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public LaundryWasherModeClusterModeOptionStruct clone() { + LaundryWasherModeClusterModeOptionStruct ret; + try { + ret = (LaundryWasherModeClusterModeOptionStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.label = label; + ret.mode = mode; + ret.modeTags = arrayClone(modeTags, modeTags_it -> modeTags_it.clone()); + return ret; + } +} +public static class RefrigeratorAndTemperatureControlledCabinetModeClusterModeTagStruct implements Cloneable { + public Optional mfgCode; + public Integer value; + public RefrigeratorAndTemperatureControlledCabinetModeClusterModeTagStruct( + Optional mfgCode, + Integer value + ) { + this.mfgCode = mfgCode; + this.value = value; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("RefrigeratorAndTemperatureControlledCabinetModeClusterModeTagStruct {\n"); + output.append("\tmfgCode: "); + output.append(mfgCode); + output.append("\n"); + output.append("\tvalue: "); + output.append(value); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public RefrigeratorAndTemperatureControlledCabinetModeClusterModeTagStruct clone() { + RefrigeratorAndTemperatureControlledCabinetModeClusterModeTagStruct ret; + try { + ret = (RefrigeratorAndTemperatureControlledCabinetModeClusterModeTagStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.mfgCode = mfgCode.map(mfgCode_map -> mfgCode_map); + ret.value = value; + return ret; + } +} +public static class RefrigeratorAndTemperatureControlledCabinetModeClusterModeOptionStruct implements Cloneable { + public String label; + public Integer mode; + public ArrayList modeTags; + public RefrigeratorAndTemperatureControlledCabinetModeClusterModeOptionStruct( + String label, + Integer mode, + ArrayList modeTags + ) { + this.label = label; + this.mode = mode; + this.modeTags = modeTags; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("RefrigeratorAndTemperatureControlledCabinetModeClusterModeOptionStruct {\n"); + output.append("\tlabel: "); + output.append(label); + output.append("\n"); + output.append("\tmode: "); + output.append(mode); + output.append("\n"); + output.append("\tmodeTags: "); + output.append(modeTags); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public RefrigeratorAndTemperatureControlledCabinetModeClusterModeOptionStruct clone() { + RefrigeratorAndTemperatureControlledCabinetModeClusterModeOptionStruct ret; + try { + ret = (RefrigeratorAndTemperatureControlledCabinetModeClusterModeOptionStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.label = label; + ret.mode = mode; + ret.modeTags = arrayClone(modeTags, modeTags_it -> modeTags_it.clone()); + return ret; + } +} +public static class RvcRunModeClusterModeTagStruct implements Cloneable { + public Optional mfgCode; + public Integer value; + public RvcRunModeClusterModeTagStruct( + Optional mfgCode, + Integer value + ) { + this.mfgCode = mfgCode; + this.value = value; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("RvcRunModeClusterModeTagStruct {\n"); + output.append("\tmfgCode: "); + output.append(mfgCode); + output.append("\n"); + output.append("\tvalue: "); + output.append(value); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public RvcRunModeClusterModeTagStruct clone() { + RvcRunModeClusterModeTagStruct ret; + try { + ret = (RvcRunModeClusterModeTagStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.mfgCode = mfgCode.map(mfgCode_map -> mfgCode_map); + ret.value = value; + return ret; + } +} +public static class RvcRunModeClusterModeOptionStruct implements Cloneable { + public String label; + public Integer mode; + public ArrayList modeTags; + public RvcRunModeClusterModeOptionStruct( + String label, + Integer mode, + ArrayList modeTags + ) { + this.label = label; + this.mode = mode; + this.modeTags = modeTags; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("RvcRunModeClusterModeOptionStruct {\n"); + output.append("\tlabel: "); + output.append(label); + output.append("\n"); + output.append("\tmode: "); + output.append(mode); + output.append("\n"); + output.append("\tmodeTags: "); + output.append(modeTags); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public RvcRunModeClusterModeOptionStruct clone() { + RvcRunModeClusterModeOptionStruct ret; + try { + ret = (RvcRunModeClusterModeOptionStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.label = label; + ret.mode = mode; + ret.modeTags = arrayClone(modeTags, modeTags_it -> modeTags_it.clone()); + return ret; + } +} +public static class RvcCleanModeClusterModeTagStruct implements Cloneable { + public Optional mfgCode; + public Integer value; + public RvcCleanModeClusterModeTagStruct( + Optional mfgCode, + Integer value + ) { + this.mfgCode = mfgCode; + this.value = value; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("RvcCleanModeClusterModeTagStruct {\n"); + output.append("\tmfgCode: "); + output.append(mfgCode); + output.append("\n"); + output.append("\tvalue: "); + output.append(value); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public RvcCleanModeClusterModeTagStruct clone() { + RvcCleanModeClusterModeTagStruct ret; + try { + ret = (RvcCleanModeClusterModeTagStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.mfgCode = mfgCode.map(mfgCode_map -> mfgCode_map); + ret.value = value; + return ret; + } +} +public static class RvcCleanModeClusterModeOptionStruct implements Cloneable { + public String label; + public Integer mode; + public ArrayList modeTags; + public RvcCleanModeClusterModeOptionStruct( + String label, + Integer mode, + ArrayList modeTags + ) { + this.label = label; + this.mode = mode; + this.modeTags = modeTags; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("RvcCleanModeClusterModeOptionStruct {\n"); + output.append("\tlabel: "); + output.append(label); + output.append("\n"); + output.append("\tmode: "); + output.append(mode); + output.append("\n"); + output.append("\tmodeTags: "); + output.append(modeTags); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public RvcCleanModeClusterModeOptionStruct clone() { + RvcCleanModeClusterModeOptionStruct ret; + try { + ret = (RvcCleanModeClusterModeOptionStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.label = label; + ret.mode = mode; + ret.modeTags = arrayClone(modeTags, modeTags_it -> modeTags_it.clone()); + return ret; + } +} +public static class DishwasherModeClusterModeTagStruct implements Cloneable { + public Optional mfgCode; + public Integer value; + public DishwasherModeClusterModeTagStruct( + Optional mfgCode, + Integer value + ) { + this.mfgCode = mfgCode; + this.value = value; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("DishwasherModeClusterModeTagStruct {\n"); + output.append("\tmfgCode: "); + output.append(mfgCode); + output.append("\n"); + output.append("\tvalue: "); + output.append(value); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public DishwasherModeClusterModeTagStruct clone() { + DishwasherModeClusterModeTagStruct ret; + try { + ret = (DishwasherModeClusterModeTagStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.mfgCode = mfgCode.map(mfgCode_map -> mfgCode_map); + ret.value = value; + return ret; + } +} +public static class DishwasherModeClusterModeOptionStruct implements Cloneable { + public String label; + public Integer mode; + public ArrayList modeTags; + public DishwasherModeClusterModeOptionStruct( + String label, + Integer mode, + ArrayList modeTags + ) { + this.label = label; + this.mode = mode; + this.modeTags = modeTags; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("DishwasherModeClusterModeOptionStruct {\n"); + output.append("\tlabel: "); + output.append(label); + output.append("\n"); + output.append("\tmode: "); + output.append(mode); + output.append("\n"); + output.append("\tmodeTags: "); + output.append(modeTags); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public DishwasherModeClusterModeOptionStruct clone() { + DishwasherModeClusterModeOptionStruct ret; + try { + ret = (DishwasherModeClusterModeOptionStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.label = label; + ret.mode = mode; + ret.modeTags = arrayClone(modeTags, modeTags_it -> modeTags_it.clone()); + return ret; + } +} +public static class OperationalStateClusterErrorStateStruct implements Cloneable { + public Integer errorStateID; + public Optional errorStateLabel; + public Optional errorStateDetails; + public OperationalStateClusterErrorStateStruct( + Integer errorStateID, + Optional errorStateLabel, + Optional errorStateDetails + ) { + this.errorStateID = errorStateID; + this.errorStateLabel = errorStateLabel; + this.errorStateDetails = errorStateDetails; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("OperationalStateClusterErrorStateStruct {\n"); + output.append("\terrorStateID: "); + output.append(errorStateID); + output.append("\n"); + output.append("\terrorStateLabel: "); + output.append(errorStateLabel); + output.append("\n"); + output.append("\terrorStateDetails: "); + output.append(errorStateDetails); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public OperationalStateClusterErrorStateStruct clone() { + OperationalStateClusterErrorStateStruct ret; + try { + ret = (OperationalStateClusterErrorStateStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.errorStateID = errorStateID; + ret.errorStateLabel = errorStateLabel.map(errorStateLabel_map -> errorStateLabel_map); + ret.errorStateDetails = errorStateDetails.map(errorStateDetails_map -> errorStateDetails_map); + return ret; + } +} +public static class OperationalStateClusterOperationalStateStruct implements Cloneable { + public Integer operationalStateID; + public Optional operationalStateLabel; + public OperationalStateClusterOperationalStateStruct( + Integer operationalStateID, + Optional operationalStateLabel + ) { + this.operationalStateID = operationalStateID; + this.operationalStateLabel = operationalStateLabel; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("OperationalStateClusterOperationalStateStruct {\n"); + output.append("\toperationalStateID: "); + output.append(operationalStateID); + output.append("\n"); + output.append("\toperationalStateLabel: "); + output.append(operationalStateLabel); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public OperationalStateClusterOperationalStateStruct clone() { + OperationalStateClusterOperationalStateStruct ret; + try { + ret = (OperationalStateClusterOperationalStateStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.operationalStateID = operationalStateID; + ret.operationalStateLabel = operationalStateLabel.map(operationalStateLabel_map -> operationalStateLabel_map); + return ret; + } +} +public static class RvcOperationalStateClusterErrorStateStruct implements Cloneable { + public Integer errorStateID; + public Optional errorStateLabel; + public Optional errorStateDetails; + public RvcOperationalStateClusterErrorStateStruct( + Integer errorStateID, + Optional errorStateLabel, + Optional errorStateDetails + ) { + this.errorStateID = errorStateID; + this.errorStateLabel = errorStateLabel; + this.errorStateDetails = errorStateDetails; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("RvcOperationalStateClusterErrorStateStruct {\n"); + output.append("\terrorStateID: "); + output.append(errorStateID); + output.append("\n"); + output.append("\terrorStateLabel: "); + output.append(errorStateLabel); + output.append("\n"); + output.append("\terrorStateDetails: "); + output.append(errorStateDetails); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public RvcOperationalStateClusterErrorStateStruct clone() { + RvcOperationalStateClusterErrorStateStruct ret; + try { + ret = (RvcOperationalStateClusterErrorStateStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.errorStateID = errorStateID; + ret.errorStateLabel = errorStateLabel.map(errorStateLabel_map -> errorStateLabel_map); + ret.errorStateDetails = errorStateDetails.map(errorStateDetails_map -> errorStateDetails_map); + return ret; + } +} +public static class RvcOperationalStateClusterOperationalStateStruct implements Cloneable { + public Integer operationalStateID; + public Optional operationalStateLabel; + public RvcOperationalStateClusterOperationalStateStruct( + Integer operationalStateID, + Optional operationalStateLabel + ) { + this.operationalStateID = operationalStateID; + this.operationalStateLabel = operationalStateLabel; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("RvcOperationalStateClusterOperationalStateStruct {\n"); + output.append("\toperationalStateID: "); + output.append(operationalStateID); + output.append("\n"); + output.append("\toperationalStateLabel: "); + output.append(operationalStateLabel); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public RvcOperationalStateClusterOperationalStateStruct clone() { + RvcOperationalStateClusterOperationalStateStruct ret; + try { + ret = (RvcOperationalStateClusterOperationalStateStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.operationalStateID = operationalStateID; + ret.operationalStateLabel = operationalStateLabel.map(operationalStateLabel_map -> operationalStateLabel_map); + return ret; + } +} +public static class HepaFilterMonitoringClusterReplacementProductStruct implements Cloneable { + public Integer productIdentifierType; + public String productIdentifierValue; + public HepaFilterMonitoringClusterReplacementProductStruct( + Integer productIdentifierType, + String productIdentifierValue + ) { + this.productIdentifierType = productIdentifierType; + this.productIdentifierValue = productIdentifierValue; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("HepaFilterMonitoringClusterReplacementProductStruct {\n"); + output.append("\tproductIdentifierType: "); + output.append(productIdentifierType); + output.append("\n"); + output.append("\tproductIdentifierValue: "); + output.append(productIdentifierValue); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public HepaFilterMonitoringClusterReplacementProductStruct clone() { + HepaFilterMonitoringClusterReplacementProductStruct ret; + try { + ret = (HepaFilterMonitoringClusterReplacementProductStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.productIdentifierType = productIdentifierType; + ret.productIdentifierValue = productIdentifierValue; + return ret; + } +} +public static class ActivatedCarbonFilterMonitoringClusterReplacementProductStruct implements Cloneable { + public Integer productIdentifierType; + public String productIdentifierValue; + public ActivatedCarbonFilterMonitoringClusterReplacementProductStruct( + Integer productIdentifierType, + String productIdentifierValue + ) { + this.productIdentifierType = productIdentifierType; + this.productIdentifierValue = productIdentifierValue; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("ActivatedCarbonFilterMonitoringClusterReplacementProductStruct {\n"); + output.append("\tproductIdentifierType: "); + output.append(productIdentifierType); + output.append("\n"); + output.append("\tproductIdentifierValue: "); + output.append(productIdentifierValue); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public ActivatedCarbonFilterMonitoringClusterReplacementProductStruct clone() { + ActivatedCarbonFilterMonitoringClusterReplacementProductStruct ret; + try { + ret = (ActivatedCarbonFilterMonitoringClusterReplacementProductStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.productIdentifierType = productIdentifierType; + ret.productIdentifierValue = productIdentifierValue; + return ret; + } +} +public static class DoorLockClusterCredentialStruct implements Cloneable { + public Integer credentialType; + public Integer credentialIndex; + public DoorLockClusterCredentialStruct( + Integer credentialType, + Integer credentialIndex + ) { + this.credentialType = credentialType; + this.credentialIndex = credentialIndex; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("DoorLockClusterCredentialStruct {\n"); + output.append("\tcredentialType: "); + output.append(credentialType); + output.append("\n"); + output.append("\tcredentialIndex: "); + output.append(credentialIndex); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public DoorLockClusterCredentialStruct clone() { + DoorLockClusterCredentialStruct ret; + try { + ret = (DoorLockClusterCredentialStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.credentialType = credentialType; + ret.credentialIndex = credentialIndex; + return ret; + } +} +public static class ThermostatClusterThermostatScheduleTransition implements Cloneable { + public Integer transitionTime; + public @Nullable Integer heatSetpoint; + public @Nullable Integer coolSetpoint; + public ThermostatClusterThermostatScheduleTransition( + Integer transitionTime, + @Nullable Integer heatSetpoint, + @Nullable Integer coolSetpoint + ) { + this.transitionTime = transitionTime; + this.heatSetpoint = heatSetpoint; + this.coolSetpoint = coolSetpoint; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("ThermostatClusterThermostatScheduleTransition {\n"); + output.append("\ttransitionTime: "); + output.append(transitionTime); + output.append("\n"); + output.append("\theatSetpoint: "); + output.append(heatSetpoint); + output.append("\n"); + output.append("\tcoolSetpoint: "); + output.append(coolSetpoint); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public ThermostatClusterThermostatScheduleTransition clone() { + ThermostatClusterThermostatScheduleTransition ret; + try { + ret = (ThermostatClusterThermostatScheduleTransition)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.transitionTime = transitionTime; + ret.heatSetpoint = (heatSetpoint != null ? heatSetpoint : null); + ret.coolSetpoint = (coolSetpoint != null ? coolSetpoint : null); + return ret; + } +} +public static class ChannelClusterChannelInfoStruct implements Cloneable { + public Integer majorNumber; + public Integer minorNumber; + public Optional name; + public Optional callSign; + public Optional affiliateCallSign; + public ChannelClusterChannelInfoStruct( + Integer majorNumber, + Integer minorNumber, + Optional name, + Optional callSign, + Optional affiliateCallSign + ) { + this.majorNumber = majorNumber; + this.minorNumber = minorNumber; + this.name = name; + this.callSign = callSign; + this.affiliateCallSign = affiliateCallSign; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("ChannelClusterChannelInfoStruct {\n"); + output.append("\tmajorNumber: "); + output.append(majorNumber); + output.append("\n"); + output.append("\tminorNumber: "); + output.append(minorNumber); + output.append("\n"); + output.append("\tname: "); + output.append(name); + output.append("\n"); + output.append("\tcallSign: "); + output.append(callSign); + output.append("\n"); + output.append("\taffiliateCallSign: "); + output.append(affiliateCallSign); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public ChannelClusterChannelInfoStruct clone() { + ChannelClusterChannelInfoStruct ret; + try { + ret = (ChannelClusterChannelInfoStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.majorNumber = majorNumber; + ret.minorNumber = minorNumber; + ret.name = name.map(name_map -> name_map); + ret.callSign = callSign.map(callSign_map -> callSign_map); + ret.affiliateCallSign = affiliateCallSign.map(affiliateCallSign_map -> affiliateCallSign_map); + return ret; + } +} +public static class ChannelClusterLineupInfoStruct implements Cloneable { + public String operatorName; + public Optional lineupName; + public Optional postalCode; + public Integer lineupInfoType; + public ChannelClusterLineupInfoStruct( + String operatorName, + Optional lineupName, + Optional postalCode, + Integer lineupInfoType + ) { + this.operatorName = operatorName; + this.lineupName = lineupName; + this.postalCode = postalCode; + this.lineupInfoType = lineupInfoType; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("ChannelClusterLineupInfoStruct {\n"); + output.append("\toperatorName: "); + output.append(operatorName); + output.append("\n"); + output.append("\tlineupName: "); + output.append(lineupName); + output.append("\n"); + output.append("\tpostalCode: "); + output.append(postalCode); + output.append("\n"); + output.append("\tlineupInfoType: "); + output.append(lineupInfoType); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public ChannelClusterLineupInfoStruct clone() { + ChannelClusterLineupInfoStruct ret; + try { + ret = (ChannelClusterLineupInfoStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.operatorName = operatorName; + ret.lineupName = lineupName.map(lineupName_map -> lineupName_map); + ret.postalCode = postalCode.map(postalCode_map -> postalCode_map); + ret.lineupInfoType = lineupInfoType; + return ret; + } +} +public static class TargetNavigatorClusterTargetInfoStruct implements Cloneable { + public Integer identifier; + public String name; + public TargetNavigatorClusterTargetInfoStruct( + Integer identifier, + String name + ) { + this.identifier = identifier; + this.name = name; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("TargetNavigatorClusterTargetInfoStruct {\n"); + output.append("\tidentifier: "); + output.append(identifier); + output.append("\n"); + output.append("\tname: "); + output.append(name); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public TargetNavigatorClusterTargetInfoStruct clone() { + TargetNavigatorClusterTargetInfoStruct ret; + try { + ret = (TargetNavigatorClusterTargetInfoStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.identifier = identifier; + ret.name = name; + return ret; + } +} +public static class MediaPlaybackClusterPlaybackPositionStruct implements Cloneable { + public Long updatedAt; + public @Nullable Long position; + public MediaPlaybackClusterPlaybackPositionStruct( + Long updatedAt, + @Nullable Long position + ) { + this.updatedAt = updatedAt; + this.position = position; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("MediaPlaybackClusterPlaybackPositionStruct {\n"); + output.append("\tupdatedAt: "); + output.append(updatedAt); + output.append("\n"); + output.append("\tposition: "); + output.append(position); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public MediaPlaybackClusterPlaybackPositionStruct clone() { + MediaPlaybackClusterPlaybackPositionStruct ret; + try { + ret = (MediaPlaybackClusterPlaybackPositionStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.updatedAt = updatedAt; + ret.position = (position != null ? position : null); + return ret; + } +} +public static class MediaInputClusterInputInfoStruct implements Cloneable { + public Integer index; + public Integer inputType; + public String name; + public String description; + public MediaInputClusterInputInfoStruct( + Integer index, + Integer inputType, + String name, + String description + ) { + this.index = index; + this.inputType = inputType; + this.name = name; + this.description = description; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("MediaInputClusterInputInfoStruct {\n"); + output.append("\tindex: "); + output.append(index); + output.append("\n"); + output.append("\tinputType: "); + output.append(inputType); + output.append("\n"); + output.append("\tname: "); + output.append(name); + output.append("\n"); + output.append("\tdescription: "); + output.append(description); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public MediaInputClusterInputInfoStruct clone() { + MediaInputClusterInputInfoStruct ret; + try { + ret = (MediaInputClusterInputInfoStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.index = index; + ret.inputType = inputType; + ret.name = name; + ret.description = description; + return ret; + } +} +public static class ContentLauncherClusterDimensionStruct implements Cloneable { + public Double width; + public Double height; + public Integer metric; + public ContentLauncherClusterDimensionStruct( + Double width, + Double height, + Integer metric + ) { + this.width = width; + this.height = height; + this.metric = metric; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("ContentLauncherClusterDimensionStruct {\n"); + output.append("\twidth: "); + output.append(width); + output.append("\n"); + output.append("\theight: "); + output.append(height); + output.append("\n"); + output.append("\tmetric: "); + output.append(metric); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public ContentLauncherClusterDimensionStruct clone() { + ContentLauncherClusterDimensionStruct ret; + try { + ret = (ContentLauncherClusterDimensionStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.width = width; + ret.height = height; + ret.metric = metric; + return ret; + } +} +public static class ContentLauncherClusterAdditionalInfoStruct implements Cloneable { + public String name; + public String value; + public ContentLauncherClusterAdditionalInfoStruct( + String name, + String value + ) { + this.name = name; + this.value = value; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("ContentLauncherClusterAdditionalInfoStruct {\n"); + output.append("\tname: "); + output.append(name); + output.append("\n"); + output.append("\tvalue: "); + output.append(value); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public ContentLauncherClusterAdditionalInfoStruct clone() { + ContentLauncherClusterAdditionalInfoStruct ret; + try { + ret = (ContentLauncherClusterAdditionalInfoStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.name = name; + ret.value = value; + return ret; + } +} +public static class ContentLauncherClusterParameterStruct implements Cloneable { + public Integer type; + public String value; + public Optional> externalIDList; + public ContentLauncherClusterParameterStruct( + Integer type, + String value, + Optional> externalIDList + ) { + this.type = type; + this.value = value; + this.externalIDList = externalIDList; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("ContentLauncherClusterParameterStruct {\n"); + output.append("\ttype: "); + output.append(type); + output.append("\n"); + output.append("\tvalue: "); + output.append(value); + output.append("\n"); + output.append("\texternalIDList: "); + output.append(externalIDList); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public ContentLauncherClusterParameterStruct clone() { + ContentLauncherClusterParameterStruct ret; + try { + ret = (ContentLauncherClusterParameterStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.type = type; + ret.value = value; + ret.externalIDList = externalIDList.map(externalIDList_map -> arrayClone(externalIDList_map, externalIDList_map_it -> externalIDList_map_it.clone())); + return ret; + } +} +public static class ContentLauncherClusterContentSearchStruct implements Cloneable { + public ArrayList parameterList; + public ContentLauncherClusterContentSearchStruct( + ArrayList parameterList + ) { + this.parameterList = parameterList; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("ContentLauncherClusterContentSearchStruct {\n"); + output.append("\tparameterList: "); + output.append(parameterList); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public ContentLauncherClusterContentSearchStruct clone() { + ContentLauncherClusterContentSearchStruct ret; + try { + ret = (ContentLauncherClusterContentSearchStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.parameterList = arrayClone(parameterList, parameterList_it -> parameterList_it.clone()); + return ret; + } +} +public static class ContentLauncherClusterStyleInformationStruct implements Cloneable { + public Optional imageURL; + public Optional color; + public Optional size; + public ContentLauncherClusterStyleInformationStruct( + Optional imageURL, + Optional color, + Optional size + ) { + this.imageURL = imageURL; + this.color = color; + this.size = size; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("ContentLauncherClusterStyleInformationStruct {\n"); + output.append("\timageURL: "); + output.append(imageURL); + output.append("\n"); + output.append("\tcolor: "); + output.append(color); + output.append("\n"); + output.append("\tsize: "); + output.append(size); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public ContentLauncherClusterStyleInformationStruct clone() { + ContentLauncherClusterStyleInformationStruct ret; + try { + ret = (ContentLauncherClusterStyleInformationStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.imageURL = imageURL.map(imageURL_map -> imageURL_map); + ret.color = color.map(color_map -> color_map); + ret.size = size.map(size_map -> size_map.clone()); + return ret; + } +} +public static class ContentLauncherClusterBrandingInformationStruct implements Cloneable { + public String providerName; + public Optional background; + public Optional logo; + public Optional progressBar; + public Optional splash; + public Optional waterMark; + public ContentLauncherClusterBrandingInformationStruct( + String providerName, + Optional background, + Optional logo, + Optional progressBar, + Optional splash, + Optional waterMark + ) { + this.providerName = providerName; + this.background = background; + this.logo = logo; + this.progressBar = progressBar; + this.splash = splash; + this.waterMark = waterMark; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("ContentLauncherClusterBrandingInformationStruct {\n"); + output.append("\tproviderName: "); + output.append(providerName); + output.append("\n"); + output.append("\tbackground: "); + output.append(background); + output.append("\n"); + output.append("\tlogo: "); + output.append(logo); + output.append("\n"); + output.append("\tprogressBar: "); + output.append(progressBar); + output.append("\n"); + output.append("\tsplash: "); + output.append(splash); + output.append("\n"); + output.append("\twaterMark: "); + output.append(waterMark); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public ContentLauncherClusterBrandingInformationStruct clone() { + ContentLauncherClusterBrandingInformationStruct ret; + try { + ret = (ContentLauncherClusterBrandingInformationStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.providerName = providerName; + ret.background = background.map(background_map -> background_map.clone()); + ret.logo = logo.map(logo_map -> logo_map.clone()); + ret.progressBar = progressBar.map(progressBar_map -> progressBar_map.clone()); + ret.splash = splash.map(splash_map -> splash_map.clone()); + ret.waterMark = waterMark.map(waterMark_map -> waterMark_map.clone()); + return ret; + } +} +public static class AudioOutputClusterOutputInfoStruct implements Cloneable { + public Integer index; + public Integer outputType; + public String name; + public AudioOutputClusterOutputInfoStruct( + Integer index, + Integer outputType, + String name + ) { + this.index = index; + this.outputType = outputType; + this.name = name; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("AudioOutputClusterOutputInfoStruct {\n"); + output.append("\tindex: "); + output.append(index); + output.append("\n"); + output.append("\toutputType: "); + output.append(outputType); + output.append("\n"); + output.append("\tname: "); + output.append(name); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public AudioOutputClusterOutputInfoStruct clone() { + AudioOutputClusterOutputInfoStruct ret; + try { + ret = (AudioOutputClusterOutputInfoStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.index = index; + ret.outputType = outputType; + ret.name = name; + return ret; + } +} +public static class ApplicationLauncherClusterApplicationStruct implements Cloneable { + public Integer catalogVendorID; + public String applicationID; + public ApplicationLauncherClusterApplicationStruct( + Integer catalogVendorID, + String applicationID + ) { + this.catalogVendorID = catalogVendorID; + this.applicationID = applicationID; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("ApplicationLauncherClusterApplicationStruct {\n"); + output.append("\tcatalogVendorID: "); + output.append(catalogVendorID); + output.append("\n"); + output.append("\tapplicationID: "); + output.append(applicationID); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public ApplicationLauncherClusterApplicationStruct clone() { + ApplicationLauncherClusterApplicationStruct ret; + try { + ret = (ApplicationLauncherClusterApplicationStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.catalogVendorID = catalogVendorID; + ret.applicationID = applicationID; + return ret; + } +} +public static class ApplicationLauncherClusterApplicationEPStruct implements Cloneable { + public ChipStructs.ApplicationLauncherClusterApplicationStruct application; + public Optional endpoint; + public ApplicationLauncherClusterApplicationEPStruct( + ChipStructs.ApplicationLauncherClusterApplicationStruct application, + Optional endpoint + ) { + this.application = application; + this.endpoint = endpoint; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("ApplicationLauncherClusterApplicationEPStruct {\n"); + output.append("\tapplication: "); + output.append(application); + output.append("\n"); + output.append("\tendpoint: "); + output.append(endpoint); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public ApplicationLauncherClusterApplicationEPStruct clone() { + ApplicationLauncherClusterApplicationEPStruct ret; + try { + ret = (ApplicationLauncherClusterApplicationEPStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.application = application.clone(); + ret.endpoint = endpoint.map(endpoint_map -> endpoint_map); + return ret; + } +} +public static class ApplicationBasicClusterApplicationStruct implements Cloneable { + public Integer catalogVendorID; + public String applicationID; + public ApplicationBasicClusterApplicationStruct( + Integer catalogVendorID, + String applicationID + ) { + this.catalogVendorID = catalogVendorID; + this.applicationID = applicationID; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("ApplicationBasicClusterApplicationStruct {\n"); + output.append("\tcatalogVendorID: "); + output.append(catalogVendorID); + output.append("\n"); + output.append("\tapplicationID: "); + output.append(applicationID); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public ApplicationBasicClusterApplicationStruct clone() { + ApplicationBasicClusterApplicationStruct ret; + try { + ret = (ApplicationBasicClusterApplicationStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.catalogVendorID = catalogVendorID; + ret.applicationID = applicationID; + return ret; + } +} +public static class UnitTestingClusterSimpleStruct implements Cloneable { + public Integer a; + public Boolean b; + public Integer c; + public byte[] d; + public String e; + public Integer f; + public Float g; + public Double h; + public UnitTestingClusterSimpleStruct( + Integer a, + Boolean b, + Integer c, + byte[] d, + String e, + Integer f, + Float g, + Double h + ) { + this.a = a; + this.b = b; + this.c = c; + this.d = d; + this.e = e; + this.f = f; + this.g = g; + this.h = h; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("UnitTestingClusterSimpleStruct {\n"); + output.append("\ta: "); + output.append(a); + output.append("\n"); + output.append("\tb: "); + output.append(b); + output.append("\n"); + output.append("\tc: "); + output.append(c); + output.append("\n"); + output.append("\td: "); + output.append(Arrays.toString(d)); + output.append("\n"); + output.append("\te: "); + output.append(e); + output.append("\n"); + output.append("\tf: "); + output.append(f); + output.append("\n"); + output.append("\tg: "); + output.append(g); + output.append("\n"); + output.append("\th: "); + output.append(h); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public UnitTestingClusterSimpleStruct clone() { + UnitTestingClusterSimpleStruct ret; + try { + ret = (UnitTestingClusterSimpleStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.a = a; + ret.b = b; + ret.c = c; + ret.d = + d.clone(); + ret.e = e; + ret.f = f; + ret.g = g; + ret.h = h; + return ret; + } +} +public static class UnitTestingClusterTestFabricScoped implements Cloneable { + public Integer fabricSensitiveInt8u; + public Optional optionalFabricSensitiveInt8u; + public @Nullable Integer nullableFabricSensitiveInt8u; + public @Nullable Optional nullableOptionalFabricSensitiveInt8u; + public String fabricSensitiveCharString; + public ChipStructs.UnitTestingClusterSimpleStruct fabricSensitiveStruct; + public ArrayList fabricSensitiveInt8uList; + public Integer fabricIndex; + public UnitTestingClusterTestFabricScoped( + Integer fabricSensitiveInt8u, + Optional optionalFabricSensitiveInt8u, + @Nullable Integer nullableFabricSensitiveInt8u, + @Nullable Optional nullableOptionalFabricSensitiveInt8u, + String fabricSensitiveCharString, + ChipStructs.UnitTestingClusterSimpleStruct fabricSensitiveStruct, + ArrayList fabricSensitiveInt8uList, + Integer fabricIndex + ) { + this.fabricSensitiveInt8u = fabricSensitiveInt8u; + this.optionalFabricSensitiveInt8u = optionalFabricSensitiveInt8u; + this.nullableFabricSensitiveInt8u = nullableFabricSensitiveInt8u; + this.nullableOptionalFabricSensitiveInt8u = nullableOptionalFabricSensitiveInt8u; + this.fabricSensitiveCharString = fabricSensitiveCharString; + this.fabricSensitiveStruct = fabricSensitiveStruct; + this.fabricSensitiveInt8uList = fabricSensitiveInt8uList; + this.fabricIndex = fabricIndex; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("UnitTestingClusterTestFabricScoped {\n"); + output.append("\tfabricSensitiveInt8u: "); + output.append(fabricSensitiveInt8u); + output.append("\n"); + output.append("\toptionalFabricSensitiveInt8u: "); + output.append(optionalFabricSensitiveInt8u); + output.append("\n"); + output.append("\tnullableFabricSensitiveInt8u: "); + output.append(nullableFabricSensitiveInt8u); + output.append("\n"); + output.append("\tnullableOptionalFabricSensitiveInt8u: "); + output.append(nullableOptionalFabricSensitiveInt8u); + output.append("\n"); + output.append("\tfabricSensitiveCharString: "); + output.append(fabricSensitiveCharString); + output.append("\n"); + output.append("\tfabricSensitiveStruct: "); + output.append(fabricSensitiveStruct); + output.append("\n"); + output.append("\tfabricSensitiveInt8uList: "); + output.append(fabricSensitiveInt8uList); + output.append("\n"); + output.append("\tfabricIndex: "); + output.append(fabricIndex); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public UnitTestingClusterTestFabricScoped clone() { + UnitTestingClusterTestFabricScoped ret; + try { + ret = (UnitTestingClusterTestFabricScoped)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.fabricSensitiveInt8u = fabricSensitiveInt8u; + ret.optionalFabricSensitiveInt8u = optionalFabricSensitiveInt8u.map(optionalFabricSensitiveInt8u_map -> optionalFabricSensitiveInt8u_map); + ret.nullableFabricSensitiveInt8u = (nullableFabricSensitiveInt8u != null ? nullableFabricSensitiveInt8u : null); + ret.nullableOptionalFabricSensitiveInt8u = (nullableOptionalFabricSensitiveInt8u != null ? nullableOptionalFabricSensitiveInt8u.map(nullableOptionalFabricSensitiveInt8u_map -> nullableOptionalFabricSensitiveInt8u_map) : null); + ret.fabricSensitiveCharString = fabricSensitiveCharString; + ret.fabricSensitiveStruct = fabricSensitiveStruct.clone(); + ret.fabricSensitiveInt8uList = arrayClone(fabricSensitiveInt8uList, fabricSensitiveInt8uList_it -> fabricSensitiveInt8uList_it); + ret.fabricIndex = fabricIndex; + return ret; + } +} +public static class UnitTestingClusterNullablesAndOptionalsStruct implements Cloneable { + public @Nullable Integer nullableInt; + public Optional optionalInt; + public @Nullable Optional nullableOptionalInt; + public @Nullable String nullableString; + public Optional optionalString; + public @Nullable Optional nullableOptionalString; + public @Nullable ChipStructs.UnitTestingClusterSimpleStruct nullableStruct; + public Optional optionalStruct; + public @Nullable Optional nullableOptionalStruct; + public @Nullable ArrayList nullableList; + public Optional> optionalList; + public @Nullable Optional> nullableOptionalList; + public UnitTestingClusterNullablesAndOptionalsStruct( + @Nullable Integer nullableInt, + Optional optionalInt, + @Nullable Optional nullableOptionalInt, + @Nullable String nullableString, + Optional optionalString, + @Nullable Optional nullableOptionalString, + @Nullable ChipStructs.UnitTestingClusterSimpleStruct nullableStruct, + Optional optionalStruct, + @Nullable Optional nullableOptionalStruct, + @Nullable ArrayList nullableList, + Optional> optionalList, + @Nullable Optional> nullableOptionalList + ) { + this.nullableInt = nullableInt; + this.optionalInt = optionalInt; + this.nullableOptionalInt = nullableOptionalInt; + this.nullableString = nullableString; + this.optionalString = optionalString; + this.nullableOptionalString = nullableOptionalString; + this.nullableStruct = nullableStruct; + this.optionalStruct = optionalStruct; + this.nullableOptionalStruct = nullableOptionalStruct; + this.nullableList = nullableList; + this.optionalList = optionalList; + this.nullableOptionalList = nullableOptionalList; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("UnitTestingClusterNullablesAndOptionalsStruct {\n"); + output.append("\tnullableInt: "); + output.append(nullableInt); + output.append("\n"); + output.append("\toptionalInt: "); + output.append(optionalInt); + output.append("\n"); + output.append("\tnullableOptionalInt: "); + output.append(nullableOptionalInt); + output.append("\n"); + output.append("\tnullableString: "); + output.append(nullableString); + output.append("\n"); + output.append("\toptionalString: "); + output.append(optionalString); + output.append("\n"); + output.append("\tnullableOptionalString: "); + output.append(nullableOptionalString); + output.append("\n"); + output.append("\tnullableStruct: "); + output.append(nullableStruct); + output.append("\n"); + output.append("\toptionalStruct: "); + output.append(optionalStruct); + output.append("\n"); + output.append("\tnullableOptionalStruct: "); + output.append(nullableOptionalStruct); + output.append("\n"); + output.append("\tnullableList: "); + output.append(nullableList); + output.append("\n"); + output.append("\toptionalList: "); + output.append(optionalList); + output.append("\n"); + output.append("\tnullableOptionalList: "); + output.append(nullableOptionalList); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public UnitTestingClusterNullablesAndOptionalsStruct clone() { + UnitTestingClusterNullablesAndOptionalsStruct ret; + try { + ret = (UnitTestingClusterNullablesAndOptionalsStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.nullableInt = (nullableInt != null ? nullableInt : null); + ret.optionalInt = optionalInt.map(optionalInt_map -> optionalInt_map); + ret.nullableOptionalInt = (nullableOptionalInt != null ? nullableOptionalInt.map(nullableOptionalInt_map -> nullableOptionalInt_map) : null); + ret.nullableString = (nullableString != null ? nullableString : null); + ret.optionalString = optionalString.map(optionalString_map -> optionalString_map); + ret.nullableOptionalString = (nullableOptionalString != null ? nullableOptionalString.map(nullableOptionalString_map -> nullableOptionalString_map) : null); + ret.nullableStruct = (nullableStruct != null ? nullableStruct.clone() : null); + ret.optionalStruct = optionalStruct.map(optionalStruct_map -> optionalStruct_map.clone()); + ret.nullableOptionalStruct = (nullableOptionalStruct != null ? nullableOptionalStruct.map(nullableOptionalStruct_map -> nullableOptionalStruct_map.clone()) : null); + ret.nullableList = (nullableList != null ? arrayClone(nullableList, nullableList_it -> nullableList_it) : null); + ret.optionalList = optionalList.map(optionalList_map -> arrayClone(optionalList_map, optionalList_map_it -> optionalList_map_it)); + ret.nullableOptionalList = (nullableOptionalList != null ? nullableOptionalList.map(nullableOptionalList_map -> arrayClone(nullableOptionalList_map, nullableOptionalList_map_it -> nullableOptionalList_map_it)) : null); + return ret; + } +} +public static class UnitTestingClusterNestedStruct implements Cloneable { + public Integer a; + public Boolean b; + public ChipStructs.UnitTestingClusterSimpleStruct c; + public UnitTestingClusterNestedStruct( + Integer a, + Boolean b, + ChipStructs.UnitTestingClusterSimpleStruct c + ) { + this.a = a; + this.b = b; + this.c = c; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("UnitTestingClusterNestedStruct {\n"); + output.append("\ta: "); + output.append(a); + output.append("\n"); + output.append("\tb: "); + output.append(b); + output.append("\n"); + output.append("\tc: "); + output.append(c); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public UnitTestingClusterNestedStruct clone() { + UnitTestingClusterNestedStruct ret; + try { + ret = (UnitTestingClusterNestedStruct)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.a = a; + ret.b = b; + ret.c = c.clone(); + return ret; + } +} +public static class UnitTestingClusterNestedStructList implements Cloneable { + public Integer a; + public Boolean b; + public ChipStructs.UnitTestingClusterSimpleStruct c; + public ArrayList d; + public ArrayList e; + public ArrayList f; + public ArrayList g; + public UnitTestingClusterNestedStructList( + Integer a, + Boolean b, + ChipStructs.UnitTestingClusterSimpleStruct c, + ArrayList d, + ArrayList e, + ArrayList f, + ArrayList g + ) { + this.a = a; + this.b = b; + this.c = c; + this.d = d; + this.e = e; + this.f = f; + this.g = g; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("UnitTestingClusterNestedStructList {\n"); + output.append("\ta: "); + output.append(a); + output.append("\n"); + output.append("\tb: "); + output.append(b); + output.append("\n"); + output.append("\tc: "); + output.append(c); + output.append("\n"); + output.append("\td: "); + output.append(d); + output.append("\n"); + output.append("\te: "); + output.append(e); + output.append("\n"); + output.append("\tf: "); + output.append(f); + output.append("\n"); + output.append("\tg: "); + output.append(g); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public UnitTestingClusterNestedStructList clone() { + UnitTestingClusterNestedStructList ret; + try { + ret = (UnitTestingClusterNestedStructList)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.a = a; + ret.b = b; + ret.c = c.clone(); + ret.d = arrayClone(d, d_it -> d_it.clone()); + ret.e = arrayClone(e, e_it -> e_it); + ret.f = arrayClone(f, f_it -> + f_it.clone()); + ret.g = arrayClone(g, g_it -> g_it); + return ret; + } +} +public static class UnitTestingClusterDoubleNestedStructList implements Cloneable { + public ArrayList a; + public UnitTestingClusterDoubleNestedStructList( + ArrayList a + ) { + this.a = a; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("UnitTestingClusterDoubleNestedStructList {\n"); + output.append("\ta: "); + output.append(a); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public UnitTestingClusterDoubleNestedStructList clone() { + UnitTestingClusterDoubleNestedStructList ret; + try { + ret = (UnitTestingClusterDoubleNestedStructList)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.a = arrayClone(a, a_it -> a_it.clone()); + return ret; + } +} +public static class UnitTestingClusterTestListStructOctet implements Cloneable { + public Long member1; + public byte[] member2; + public UnitTestingClusterTestListStructOctet( + Long member1, + byte[] member2 + ) { + this.member1 = member1; + this.member2 = member2; + } + + @Override + public String toString() { + StringBuilder output = new StringBuilder(); + output.append("UnitTestingClusterTestListStructOctet {\n"); + output.append("\tmember1: "); + output.append(member1); + output.append("\n"); + output.append("\tmember2: "); + output.append(Arrays.toString(member2)); + output.append("\n"); + output.append("}\n"); + return output.toString(); + } + + @Override + public UnitTestingClusterTestListStructOctet clone() { + UnitTestingClusterTestListStructOctet ret; + try { + ret = (UnitTestingClusterTestListStructOctet)super.clone(); + } catch (CloneNotSupportedException e) { + return null; + } + ret.member1 = member1; + ret.member2 = + member2.clone(); + return ret; + } +} + + private interface ArrayCloneFunction { + T cloneFunction(T input) throws CloneNotSupportedException; + } + + private static ArrayList arrayClone(ArrayList inputArray, ArrayCloneFunction func) { + ArrayList ret = new ArrayList(inputArray.size()); + for (T it : inputArray) { + try { + ret.add(func.cloneFunction(it)); + } catch (CloneNotSupportedException e) { + // Ignore + } + } + return ret; + } +} diff --git a/src/controller/java/templates/ChipEventStructs-java.zapt b/src/controller/java/templates/ChipEventStructs-java.zapt deleted file mode 100644 index 51a1e91ee299fe..00000000000000 --- a/src/controller/java/templates/ChipEventStructs-java.zapt +++ /dev/null @@ -1,55 +0,0 @@ -{{> header}} -package chip.devicecontroller; - -import javax.annotation.Nullable; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Optional; - -{{! TODO: Use AutoValue for inner classes. }} -public class ChipEventStructs { -{{#zcl_clusters}} -{{#zcl_events}} -public static class {{asUpperCamelCase parent.name}}Cluster{{asUpperCamelCase name}}Event { -{{#zcl_event_fields}} -{{! TODO: This uses the vague type List for some list types. }} -public {{asJavaType type null parent.parent.name includeAnnotations=true}} {{asLowerCamelCase (asSymbol name)}}; -{{/zcl_event_fields}} - - public {{asUpperCamelCase parent.name}}Cluster{{asUpperCamelCase name}}Event( - {{#zcl_event_fields}} - {{#not_first}}, {{/not_first}}{{asJavaType type null parent.parent.name includeAnnotations=true}} {{asLowerCamelCase (asSymbol name)}} - {{/zcl_event_fields}}) { - {{#zcl_event_fields}} - this.{{asLowerCamelCase (asSymbol name)}} = {{asLowerCamelCase (asSymbol name)}}; - {{/zcl_event_fields}} - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("{{asUpperCamelCase parent.name}}Cluster{{asUpperCamelCase name}}Event {\n"); - {{#zcl_event_fields}} - {{! TODO: Print more descriptive types for optional, nullable, array, and struct. }} - output.append("\t{{asLowerCamelCase name}}: "); - {{#if isArray}} - output.append({{asLowerCamelCase name}}); - {{else if (isOctetString type)}} - {{#if isOptional}} - output.append({{asLowerCamelCase name}}.isPresent() ? Arrays.toString({{asLowerCamelCase name}}.get()) : ""); - {{else}} - output.append(Arrays.toString({{asLowerCamelCase name}})); - {{/if}} - {{else}} - output.append({{asLowerCamelCase name}}); - {{/if}} - output.append("\n"); - {{/zcl_event_fields}} - output.append("}\n"); - return output.toString(); - } -} - -{{/zcl_events}} -{{/zcl_clusters}} -} \ No newline at end of file diff --git a/src/controller/java/templates/ChipStructs-java.zapt b/src/controller/java/templates/ChipStructs-java.zapt deleted file mode 100644 index 8ab62d9308fbbf..00000000000000 --- a/src/controller/java/templates/ChipStructs-java.zapt +++ /dev/null @@ -1,53 +0,0 @@ -{{> header}} -package chip.devicecontroller; - -import javax.annotation.Nullable; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Optional; - -{{! TODO: Use AutoValue for inner classes. }} -public class ChipStructs { -{{#zcl_clusters}} -{{#zcl_structs}} -{{#if itemCnt}} -public static class {{asUpperCamelCase parent.name}}Cluster{{asUnderlyingType name}} { -{{#zcl_struct_items}} -{{! TODO: This uses the vague type List for some list types. }} -public {{asJavaType type null parent.parent.name includeAnnotations=true}} {{asLowerCamelCase (asSymbol label)}}; -{{/zcl_struct_items}} - - public {{asUpperCamelCase parent.name}}Cluster{{asUnderlyingType name}}( - {{#zcl_struct_items}} - {{#not_first}}, {{/not_first}}{{asJavaType type null parent.parent.name includeAnnotations=true}} {{asLowerCamelCase (asSymbol label)}} - {{/zcl_struct_items}}) { - {{#zcl_struct_items}} - this.{{asLowerCamelCase (asSymbol label)}} = {{asLowerCamelCase (asSymbol label)}}; - {{/zcl_struct_items}} - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("{{asUpperCamelCase parent.name}}Cluster{{asUnderlyingType name}} {\n"); - {{#zcl_struct_items}} - {{! TODO: Print more descriptive types for optional, nullable, array, and struct. }} - output.append("\t{{asLowerCamelCase name}}: "); - {{#if isArray}} - output.append({{asLowerCamelCase name}}); - {{else if (isOctetString type)}} - output.append(Arrays.toString({{asLowerCamelCase name}})); - {{else}} - output.append({{asLowerCamelCase name}}); - {{/if}} - output.append("\n"); - {{/zcl_struct_items}} - output.append("}\n"); - return output.toString(); - } -} -{{/if}} - -{{/zcl_structs}} -{{/zcl_clusters}} -} \ No newline at end of file diff --git a/src/controller/java/templates/templates.json b/src/controller/java/templates/templates.json index 5e729f44f0b32b..b518036c56425a 100644 --- a/src/controller/java/templates/templates.json +++ b/src/controller/java/templates/templates.json @@ -34,16 +34,6 @@ } ], "templates": [ - { - "path": "ChipStructs-java.zapt", - "name": "CHIP structs for Java", - "output": "src/controller/java/zap-generated/chip/devicecontroller/ChipStructs.java" - }, - { - "path": "ChipEventStructs-java.zapt", - "name": "CHIP Event structs for Java", - "output": "src/controller/java/zap-generated/chip/devicecontroller/ChipEventStructs.java" - }, { "path": "CHIPInvokeCallbacks.zapt", "name": "CHIP cluster invoke callbacks for Java (native code)", diff --git a/src/controller/java/zap-generated/chip/devicecontroller/ChipEventStructs.java b/src/controller/java/zap-generated/chip/devicecontroller/ChipEventStructs.java deleted file mode 100644 index 61eeb49bb048c2..00000000000000 --- a/src/controller/java/zap-generated/chip/devicecontroller/ChipEventStructs.java +++ /dev/null @@ -1,1965 +0,0 @@ -/* - * - * Copyright (c) 2022 Project CHIP Authors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -// THIS FILE IS GENERATED BY ZAP -package chip.devicecontroller; - -import javax.annotation.Nullable; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Optional; - -public class ChipEventStructs { -public static class AccessControlClusterAccessControlEntryChangedEvent { -public @Nullable Long adminNodeID; -public @Nullable Integer adminPasscodeID; -public Integer changeType; -public @Nullable ChipStructs.AccessControlClusterAccessControlEntryStruct latestValue; -public Integer fabricIndex; - - public AccessControlClusterAccessControlEntryChangedEvent( - @Nullable Long adminNodeID - , @Nullable Integer adminPasscodeID - , Integer changeType - , @Nullable ChipStructs.AccessControlClusterAccessControlEntryStruct latestValue - , Integer fabricIndex - ) { - this.adminNodeID = adminNodeID; - this.adminPasscodeID = adminPasscodeID; - this.changeType = changeType; - this.latestValue = latestValue; - this.fabricIndex = fabricIndex; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("AccessControlClusterAccessControlEntryChangedEvent {\n"); - output.append("\tadminNodeID: "); - output.append(adminNodeID); - output.append("\n"); - output.append("\tadminPasscodeID: "); - output.append(adminPasscodeID); - output.append("\n"); - output.append("\tchangeType: "); - output.append(changeType); - output.append("\n"); - output.append("\tlatestValue: "); - output.append(latestValue); - output.append("\n"); - output.append("\tfabricIndex: "); - output.append(fabricIndex); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class AccessControlClusterAccessControlExtensionChangedEvent { -public @Nullable Long adminNodeID; -public @Nullable Integer adminPasscodeID; -public Integer changeType; -public @Nullable ChipStructs.AccessControlClusterAccessControlExtensionStruct latestValue; -public Integer fabricIndex; - - public AccessControlClusterAccessControlExtensionChangedEvent( - @Nullable Long adminNodeID - , @Nullable Integer adminPasscodeID - , Integer changeType - , @Nullable ChipStructs.AccessControlClusterAccessControlExtensionStruct latestValue - , Integer fabricIndex - ) { - this.adminNodeID = adminNodeID; - this.adminPasscodeID = adminPasscodeID; - this.changeType = changeType; - this.latestValue = latestValue; - this.fabricIndex = fabricIndex; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("AccessControlClusterAccessControlExtensionChangedEvent {\n"); - output.append("\tadminNodeID: "); - output.append(adminNodeID); - output.append("\n"); - output.append("\tadminPasscodeID: "); - output.append(adminPasscodeID); - output.append("\n"); - output.append("\tchangeType: "); - output.append(changeType); - output.append("\n"); - output.append("\tlatestValue: "); - output.append(latestValue); - output.append("\n"); - output.append("\tfabricIndex: "); - output.append(fabricIndex); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class ActionsClusterStateChangedEvent { -public Integer actionID; -public Long invokeID; -public Integer newState; - - public ActionsClusterStateChangedEvent( - Integer actionID - , Long invokeID - , Integer newState - ) { - this.actionID = actionID; - this.invokeID = invokeID; - this.newState = newState; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("ActionsClusterStateChangedEvent {\n"); - output.append("\tactionID: "); - output.append(actionID); - output.append("\n"); - output.append("\tinvokeID: "); - output.append(invokeID); - output.append("\n"); - output.append("\tnewState: "); - output.append(newState); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class ActionsClusterActionFailedEvent { -public Integer actionID; -public Long invokeID; -public Integer newState; -public Integer error; - - public ActionsClusterActionFailedEvent( - Integer actionID - , Long invokeID - , Integer newState - , Integer error - ) { - this.actionID = actionID; - this.invokeID = invokeID; - this.newState = newState; - this.error = error; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("ActionsClusterActionFailedEvent {\n"); - output.append("\tactionID: "); - output.append(actionID); - output.append("\n"); - output.append("\tinvokeID: "); - output.append(invokeID); - output.append("\n"); - output.append("\tnewState: "); - output.append(newState); - output.append("\n"); - output.append("\terror: "); - output.append(error); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class BasicInformationClusterStartUpEvent { -public Long softwareVersion; - - public BasicInformationClusterStartUpEvent( - Long softwareVersion - ) { - this.softwareVersion = softwareVersion; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("BasicInformationClusterStartUpEvent {\n"); - output.append("\tsoftwareVersion: "); - output.append(softwareVersion); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class BasicInformationClusterShutDownEvent { - - public BasicInformationClusterShutDownEvent( -) { - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("BasicInformationClusterShutDownEvent {\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class BasicInformationClusterLeaveEvent { -public Integer fabricIndex; - - public BasicInformationClusterLeaveEvent( - Integer fabricIndex - ) { - this.fabricIndex = fabricIndex; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("BasicInformationClusterLeaveEvent {\n"); - output.append("\tfabricIndex: "); - output.append(fabricIndex); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class BasicInformationClusterReachableChangedEvent { -public Boolean reachableNewValue; - - public BasicInformationClusterReachableChangedEvent( - Boolean reachableNewValue - ) { - this.reachableNewValue = reachableNewValue; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("BasicInformationClusterReachableChangedEvent {\n"); - output.append("\treachableNewValue: "); - output.append(reachableNewValue); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class OtaSoftwareUpdateRequestorClusterStateTransitionEvent { -public Integer previousState; -public Integer newState; -public Integer reason; -public @Nullable Long targetSoftwareVersion; - - public OtaSoftwareUpdateRequestorClusterStateTransitionEvent( - Integer previousState - , Integer newState - , Integer reason - , @Nullable Long targetSoftwareVersion - ) { - this.previousState = previousState; - this.newState = newState; - this.reason = reason; - this.targetSoftwareVersion = targetSoftwareVersion; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("OtaSoftwareUpdateRequestorClusterStateTransitionEvent {\n"); - output.append("\tpreviousState: "); - output.append(previousState); - output.append("\n"); - output.append("\tnewState: "); - output.append(newState); - output.append("\n"); - output.append("\treason: "); - output.append(reason); - output.append("\n"); - output.append("\ttargetSoftwareVersion: "); - output.append(targetSoftwareVersion); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class OtaSoftwareUpdateRequestorClusterVersionAppliedEvent { -public Long softwareVersion; -public Integer productID; - - public OtaSoftwareUpdateRequestorClusterVersionAppliedEvent( - Long softwareVersion - , Integer productID - ) { - this.softwareVersion = softwareVersion; - this.productID = productID; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("OtaSoftwareUpdateRequestorClusterVersionAppliedEvent {\n"); - output.append("\tsoftwareVersion: "); - output.append(softwareVersion); - output.append("\n"); - output.append("\tproductID: "); - output.append(productID); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class OtaSoftwareUpdateRequestorClusterDownloadErrorEvent { -public Long softwareVersion; -public Long bytesDownloaded; -public @Nullable Integer progressPercent; -public @Nullable Long platformCode; - - public OtaSoftwareUpdateRequestorClusterDownloadErrorEvent( - Long softwareVersion - , Long bytesDownloaded - , @Nullable Integer progressPercent - , @Nullable Long platformCode - ) { - this.softwareVersion = softwareVersion; - this.bytesDownloaded = bytesDownloaded; - this.progressPercent = progressPercent; - this.platformCode = platformCode; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("OtaSoftwareUpdateRequestorClusterDownloadErrorEvent {\n"); - output.append("\tsoftwareVersion: "); - output.append(softwareVersion); - output.append("\n"); - output.append("\tbytesDownloaded: "); - output.append(bytesDownloaded); - output.append("\n"); - output.append("\tprogressPercent: "); - output.append(progressPercent); - output.append("\n"); - output.append("\tplatformCode: "); - output.append(platformCode); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class PowerSourceClusterWiredFaultChangeEvent { -public ArrayList current; -public ArrayList previous; - - public PowerSourceClusterWiredFaultChangeEvent( - ArrayList current - , ArrayList previous - ) { - this.current = current; - this.previous = previous; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("PowerSourceClusterWiredFaultChangeEvent {\n"); - output.append("\tcurrent: "); - output.append(current); - output.append("\n"); - output.append("\tprevious: "); - output.append(previous); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class PowerSourceClusterBatFaultChangeEvent { -public ArrayList current; -public ArrayList previous; - - public PowerSourceClusterBatFaultChangeEvent( - ArrayList current - , ArrayList previous - ) { - this.current = current; - this.previous = previous; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("PowerSourceClusterBatFaultChangeEvent {\n"); - output.append("\tcurrent: "); - output.append(current); - output.append("\n"); - output.append("\tprevious: "); - output.append(previous); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class PowerSourceClusterBatChargeFaultChangeEvent { -public ArrayList current; -public ArrayList previous; - - public PowerSourceClusterBatChargeFaultChangeEvent( - ArrayList current - , ArrayList previous - ) { - this.current = current; - this.previous = previous; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("PowerSourceClusterBatChargeFaultChangeEvent {\n"); - output.append("\tcurrent: "); - output.append(current); - output.append("\n"); - output.append("\tprevious: "); - output.append(previous); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class GeneralDiagnosticsClusterHardwareFaultChangeEvent { -public ArrayList current; -public ArrayList previous; - - public GeneralDiagnosticsClusterHardwareFaultChangeEvent( - ArrayList current - , ArrayList previous - ) { - this.current = current; - this.previous = previous; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("GeneralDiagnosticsClusterHardwareFaultChangeEvent {\n"); - output.append("\tcurrent: "); - output.append(current); - output.append("\n"); - output.append("\tprevious: "); - output.append(previous); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class GeneralDiagnosticsClusterRadioFaultChangeEvent { -public ArrayList current; -public ArrayList previous; - - public GeneralDiagnosticsClusterRadioFaultChangeEvent( - ArrayList current - , ArrayList previous - ) { - this.current = current; - this.previous = previous; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("GeneralDiagnosticsClusterRadioFaultChangeEvent {\n"); - output.append("\tcurrent: "); - output.append(current); - output.append("\n"); - output.append("\tprevious: "); - output.append(previous); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class GeneralDiagnosticsClusterNetworkFaultChangeEvent { -public ArrayList current; -public ArrayList previous; - - public GeneralDiagnosticsClusterNetworkFaultChangeEvent( - ArrayList current - , ArrayList previous - ) { - this.current = current; - this.previous = previous; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("GeneralDiagnosticsClusterNetworkFaultChangeEvent {\n"); - output.append("\tcurrent: "); - output.append(current); - output.append("\n"); - output.append("\tprevious: "); - output.append(previous); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class GeneralDiagnosticsClusterBootReasonEvent { -public Integer bootReason; - - public GeneralDiagnosticsClusterBootReasonEvent( - Integer bootReason - ) { - this.bootReason = bootReason; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("GeneralDiagnosticsClusterBootReasonEvent {\n"); - output.append("\tbootReason: "); - output.append(bootReason); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class SoftwareDiagnosticsClusterSoftwareFaultEvent { -public Long id; -public Optional name; -public Optional faultRecording; - - public SoftwareDiagnosticsClusterSoftwareFaultEvent( - Long id - , Optional name - , Optional faultRecording - ) { - this.id = id; - this.name = name; - this.faultRecording = faultRecording; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("SoftwareDiagnosticsClusterSoftwareFaultEvent {\n"); - output.append("\tid: "); - output.append(id); - output.append("\n"); - output.append("\tname: "); - output.append(name); - output.append("\n"); - output.append("\tfaultRecording: "); - output.append(faultRecording.isPresent() ? Arrays.toString(faultRecording.get()) : ""); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class ThreadNetworkDiagnosticsClusterConnectionStatusEvent { -public Integer connectionStatus; - - public ThreadNetworkDiagnosticsClusterConnectionStatusEvent( - Integer connectionStatus - ) { - this.connectionStatus = connectionStatus; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("ThreadNetworkDiagnosticsClusterConnectionStatusEvent {\n"); - output.append("\tconnectionStatus: "); - output.append(connectionStatus); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class ThreadNetworkDiagnosticsClusterNetworkFaultChangeEvent { -public ArrayList current; -public ArrayList previous; - - public ThreadNetworkDiagnosticsClusterNetworkFaultChangeEvent( - ArrayList current - , ArrayList previous - ) { - this.current = current; - this.previous = previous; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("ThreadNetworkDiagnosticsClusterNetworkFaultChangeEvent {\n"); - output.append("\tcurrent: "); - output.append(current); - output.append("\n"); - output.append("\tprevious: "); - output.append(previous); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class WiFiNetworkDiagnosticsClusterDisconnectionEvent { -public Integer reasonCode; - - public WiFiNetworkDiagnosticsClusterDisconnectionEvent( - Integer reasonCode - ) { - this.reasonCode = reasonCode; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("WiFiNetworkDiagnosticsClusterDisconnectionEvent {\n"); - output.append("\treasonCode: "); - output.append(reasonCode); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class WiFiNetworkDiagnosticsClusterAssociationFailureEvent { -public Integer associationFailure; -public Integer status; - - public WiFiNetworkDiagnosticsClusterAssociationFailureEvent( - Integer associationFailure - , Integer status - ) { - this.associationFailure = associationFailure; - this.status = status; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("WiFiNetworkDiagnosticsClusterAssociationFailureEvent {\n"); - output.append("\tassociationFailure: "); - output.append(associationFailure); - output.append("\n"); - output.append("\tstatus: "); - output.append(status); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class WiFiNetworkDiagnosticsClusterConnectionStatusEvent { -public Integer connectionStatus; - - public WiFiNetworkDiagnosticsClusterConnectionStatusEvent( - Integer connectionStatus - ) { - this.connectionStatus = connectionStatus; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("WiFiNetworkDiagnosticsClusterConnectionStatusEvent {\n"); - output.append("\tconnectionStatus: "); - output.append(connectionStatus); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class TimeSynchronizationClusterDSTTableEmptyEvent { - - public TimeSynchronizationClusterDSTTableEmptyEvent( -) { - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("TimeSynchronizationClusterDSTTableEmptyEvent {\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class TimeSynchronizationClusterDSTStatusEvent { -public Boolean DSTOffsetActive; - - public TimeSynchronizationClusterDSTStatusEvent( - Boolean DSTOffsetActive - ) { - this.DSTOffsetActive = DSTOffsetActive; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("TimeSynchronizationClusterDSTStatusEvent {\n"); - output.append("\tDSTOffsetActive: "); - output.append(DSTOffsetActive); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class TimeSynchronizationClusterTimeZoneStatusEvent { -public Long offset; -public Optional name; - - public TimeSynchronizationClusterTimeZoneStatusEvent( - Long offset - , Optional name - ) { - this.offset = offset; - this.name = name; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("TimeSynchronizationClusterTimeZoneStatusEvent {\n"); - output.append("\toffset: "); - output.append(offset); - output.append("\n"); - output.append("\tname: "); - output.append(name); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class TimeSynchronizationClusterTimeFailureEvent { - - public TimeSynchronizationClusterTimeFailureEvent( -) { - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("TimeSynchronizationClusterTimeFailureEvent {\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class TimeSynchronizationClusterMissingTrustedTimeSourceEvent { - - public TimeSynchronizationClusterMissingTrustedTimeSourceEvent( -) { - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("TimeSynchronizationClusterMissingTrustedTimeSourceEvent {\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class BridgedDeviceBasicInformationClusterStartUpEvent { -public Long softwareVersion; - - public BridgedDeviceBasicInformationClusterStartUpEvent( - Long softwareVersion - ) { - this.softwareVersion = softwareVersion; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("BridgedDeviceBasicInformationClusterStartUpEvent {\n"); - output.append("\tsoftwareVersion: "); - output.append(softwareVersion); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class BridgedDeviceBasicInformationClusterShutDownEvent { - - public BridgedDeviceBasicInformationClusterShutDownEvent( -) { - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("BridgedDeviceBasicInformationClusterShutDownEvent {\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class BridgedDeviceBasicInformationClusterLeaveEvent { - - public BridgedDeviceBasicInformationClusterLeaveEvent( -) { - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("BridgedDeviceBasicInformationClusterLeaveEvent {\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class BridgedDeviceBasicInformationClusterReachableChangedEvent { -public Boolean reachableNewValue; - - public BridgedDeviceBasicInformationClusterReachableChangedEvent( - Boolean reachableNewValue - ) { - this.reachableNewValue = reachableNewValue; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("BridgedDeviceBasicInformationClusterReachableChangedEvent {\n"); - output.append("\treachableNewValue: "); - output.append(reachableNewValue); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class SwitchClusterSwitchLatchedEvent { -public Integer newPosition; - - public SwitchClusterSwitchLatchedEvent( - Integer newPosition - ) { - this.newPosition = newPosition; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("SwitchClusterSwitchLatchedEvent {\n"); - output.append("\tnewPosition: "); - output.append(newPosition); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class SwitchClusterInitialPressEvent { -public Integer newPosition; - - public SwitchClusterInitialPressEvent( - Integer newPosition - ) { - this.newPosition = newPosition; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("SwitchClusterInitialPressEvent {\n"); - output.append("\tnewPosition: "); - output.append(newPosition); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class SwitchClusterLongPressEvent { -public Integer newPosition; - - public SwitchClusterLongPressEvent( - Integer newPosition - ) { - this.newPosition = newPosition; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("SwitchClusterLongPressEvent {\n"); - output.append("\tnewPosition: "); - output.append(newPosition); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class SwitchClusterShortReleaseEvent { -public Integer previousPosition; - - public SwitchClusterShortReleaseEvent( - Integer previousPosition - ) { - this.previousPosition = previousPosition; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("SwitchClusterShortReleaseEvent {\n"); - output.append("\tpreviousPosition: "); - output.append(previousPosition); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class SwitchClusterLongReleaseEvent { -public Integer previousPosition; - - public SwitchClusterLongReleaseEvent( - Integer previousPosition - ) { - this.previousPosition = previousPosition; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("SwitchClusterLongReleaseEvent {\n"); - output.append("\tpreviousPosition: "); - output.append(previousPosition); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class SwitchClusterMultiPressOngoingEvent { -public Integer newPosition; -public Integer currentNumberOfPressesCounted; - - public SwitchClusterMultiPressOngoingEvent( - Integer newPosition - , Integer currentNumberOfPressesCounted - ) { - this.newPosition = newPosition; - this.currentNumberOfPressesCounted = currentNumberOfPressesCounted; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("SwitchClusterMultiPressOngoingEvent {\n"); - output.append("\tnewPosition: "); - output.append(newPosition); - output.append("\n"); - output.append("\tcurrentNumberOfPressesCounted: "); - output.append(currentNumberOfPressesCounted); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class SwitchClusterMultiPressCompleteEvent { -public Integer previousPosition; -public Integer totalNumberOfPressesCounted; - - public SwitchClusterMultiPressCompleteEvent( - Integer previousPosition - , Integer totalNumberOfPressesCounted - ) { - this.previousPosition = previousPosition; - this.totalNumberOfPressesCounted = totalNumberOfPressesCounted; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("SwitchClusterMultiPressCompleteEvent {\n"); - output.append("\tpreviousPosition: "); - output.append(previousPosition); - output.append("\n"); - output.append("\ttotalNumberOfPressesCounted: "); - output.append(totalNumberOfPressesCounted); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class BooleanStateClusterStateChangeEvent { -public Boolean stateValue; - - public BooleanStateClusterStateChangeEvent( - Boolean stateValue - ) { - this.stateValue = stateValue; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("BooleanStateClusterStateChangeEvent {\n"); - output.append("\tstateValue: "); - output.append(stateValue); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class RefrigeratorAlarmClusterNotifyEvent { -public Long active; -public Long inactive; -public Long state; -public Long mask; - - public RefrigeratorAlarmClusterNotifyEvent( - Long active - , Long inactive - , Long state - , Long mask - ) { - this.active = active; - this.inactive = inactive; - this.state = state; - this.mask = mask; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("RefrigeratorAlarmClusterNotifyEvent {\n"); - output.append("\tactive: "); - output.append(active); - output.append("\n"); - output.append("\tinactive: "); - output.append(inactive); - output.append("\n"); - output.append("\tstate: "); - output.append(state); - output.append("\n"); - output.append("\tmask: "); - output.append(mask); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class SmokeCoAlarmClusterSmokeAlarmEvent { -public Integer alarmSeverityLevel; - - public SmokeCoAlarmClusterSmokeAlarmEvent( - Integer alarmSeverityLevel - ) { - this.alarmSeverityLevel = alarmSeverityLevel; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("SmokeCoAlarmClusterSmokeAlarmEvent {\n"); - output.append("\talarmSeverityLevel: "); - output.append(alarmSeverityLevel); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class SmokeCoAlarmClusterCOAlarmEvent { -public Integer alarmSeverityLevel; - - public SmokeCoAlarmClusterCOAlarmEvent( - Integer alarmSeverityLevel - ) { - this.alarmSeverityLevel = alarmSeverityLevel; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("SmokeCoAlarmClusterCOAlarmEvent {\n"); - output.append("\talarmSeverityLevel: "); - output.append(alarmSeverityLevel); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class SmokeCoAlarmClusterLowBatteryEvent { -public Integer alarmSeverityLevel; - - public SmokeCoAlarmClusterLowBatteryEvent( - Integer alarmSeverityLevel - ) { - this.alarmSeverityLevel = alarmSeverityLevel; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("SmokeCoAlarmClusterLowBatteryEvent {\n"); - output.append("\talarmSeverityLevel: "); - output.append(alarmSeverityLevel); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class SmokeCoAlarmClusterHardwareFaultEvent { - - public SmokeCoAlarmClusterHardwareFaultEvent( -) { - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("SmokeCoAlarmClusterHardwareFaultEvent {\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class SmokeCoAlarmClusterEndOfServiceEvent { - - public SmokeCoAlarmClusterEndOfServiceEvent( -) { - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("SmokeCoAlarmClusterEndOfServiceEvent {\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class SmokeCoAlarmClusterSelfTestCompleteEvent { - - public SmokeCoAlarmClusterSelfTestCompleteEvent( -) { - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("SmokeCoAlarmClusterSelfTestCompleteEvent {\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class SmokeCoAlarmClusterAlarmMutedEvent { - - public SmokeCoAlarmClusterAlarmMutedEvent( -) { - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("SmokeCoAlarmClusterAlarmMutedEvent {\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class SmokeCoAlarmClusterMuteEndedEvent { - - public SmokeCoAlarmClusterMuteEndedEvent( -) { - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("SmokeCoAlarmClusterMuteEndedEvent {\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class SmokeCoAlarmClusterInterconnectSmokeAlarmEvent { -public Integer alarmSeverityLevel; - - public SmokeCoAlarmClusterInterconnectSmokeAlarmEvent( - Integer alarmSeverityLevel - ) { - this.alarmSeverityLevel = alarmSeverityLevel; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("SmokeCoAlarmClusterInterconnectSmokeAlarmEvent {\n"); - output.append("\talarmSeverityLevel: "); - output.append(alarmSeverityLevel); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class SmokeCoAlarmClusterInterconnectCOAlarmEvent { -public Integer alarmSeverityLevel; - - public SmokeCoAlarmClusterInterconnectCOAlarmEvent( - Integer alarmSeverityLevel - ) { - this.alarmSeverityLevel = alarmSeverityLevel; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("SmokeCoAlarmClusterInterconnectCOAlarmEvent {\n"); - output.append("\talarmSeverityLevel: "); - output.append(alarmSeverityLevel); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class SmokeCoAlarmClusterAllClearEvent { - - public SmokeCoAlarmClusterAllClearEvent( -) { - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("SmokeCoAlarmClusterAllClearEvent {\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class DishwasherAlarmClusterNotifyEvent { -public Long active; -public Long inactive; -public Long state; -public Long mask; - - public DishwasherAlarmClusterNotifyEvent( - Long active - , Long inactive - , Long state - , Long mask - ) { - this.active = active; - this.inactive = inactive; - this.state = state; - this.mask = mask; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("DishwasherAlarmClusterNotifyEvent {\n"); - output.append("\tactive: "); - output.append(active); - output.append("\n"); - output.append("\tinactive: "); - output.append(inactive); - output.append("\n"); - output.append("\tstate: "); - output.append(state); - output.append("\n"); - output.append("\tmask: "); - output.append(mask); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class OperationalStateClusterOperationalErrorEvent { -public ChipStructs.OperationalStateClusterErrorStateStruct errorState; - - public OperationalStateClusterOperationalErrorEvent( - ChipStructs.OperationalStateClusterErrorStateStruct errorState - ) { - this.errorState = errorState; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("OperationalStateClusterOperationalErrorEvent {\n"); - output.append("\terrorState: "); - output.append(errorState); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class OperationalStateClusterOperationCompletionEvent { -public Integer completionErrorCode; -public @Nullable Optional totalOperationalTime; -public @Nullable Optional pausedTime; - - public OperationalStateClusterOperationCompletionEvent( - Integer completionErrorCode - , @Nullable Optional totalOperationalTime - , @Nullable Optional pausedTime - ) { - this.completionErrorCode = completionErrorCode; - this.totalOperationalTime = totalOperationalTime; - this.pausedTime = pausedTime; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("OperationalStateClusterOperationCompletionEvent {\n"); - output.append("\tcompletionErrorCode: "); - output.append(completionErrorCode); - output.append("\n"); - output.append("\ttotalOperationalTime: "); - output.append(totalOperationalTime); - output.append("\n"); - output.append("\tpausedTime: "); - output.append(pausedTime); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class RvcOperationalStateClusterOperationalErrorEvent { -public ChipStructs.RvcOperationalStateClusterErrorStateStruct errorState; - - public RvcOperationalStateClusterOperationalErrorEvent( - ChipStructs.RvcOperationalStateClusterErrorStateStruct errorState - ) { - this.errorState = errorState; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("RvcOperationalStateClusterOperationalErrorEvent {\n"); - output.append("\terrorState: "); - output.append(errorState); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class RvcOperationalStateClusterOperationCompletionEvent { -public Integer completionErrorCode; -public @Nullable Optional totalOperationalTime; -public @Nullable Optional pausedTime; - - public RvcOperationalStateClusterOperationCompletionEvent( - Integer completionErrorCode - , @Nullable Optional totalOperationalTime - , @Nullable Optional pausedTime - ) { - this.completionErrorCode = completionErrorCode; - this.totalOperationalTime = totalOperationalTime; - this.pausedTime = pausedTime; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("RvcOperationalStateClusterOperationCompletionEvent {\n"); - output.append("\tcompletionErrorCode: "); - output.append(completionErrorCode); - output.append("\n"); - output.append("\ttotalOperationalTime: "); - output.append(totalOperationalTime); - output.append("\n"); - output.append("\tpausedTime: "); - output.append(pausedTime); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class DoorLockClusterDoorLockAlarmEvent { -public Integer alarmCode; - - public DoorLockClusterDoorLockAlarmEvent( - Integer alarmCode - ) { - this.alarmCode = alarmCode; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("DoorLockClusterDoorLockAlarmEvent {\n"); - output.append("\talarmCode: "); - output.append(alarmCode); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class DoorLockClusterDoorStateChangeEvent { -public Integer doorState; - - public DoorLockClusterDoorStateChangeEvent( - Integer doorState - ) { - this.doorState = doorState; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("DoorLockClusterDoorStateChangeEvent {\n"); - output.append("\tdoorState: "); - output.append(doorState); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class DoorLockClusterLockOperationEvent { -public Integer lockOperationType; -public Integer operationSource; -public @Nullable Integer userIndex; -public @Nullable Integer fabricIndex; -public @Nullable Long sourceNode; -public @Nullable Optional> credentials; - - public DoorLockClusterLockOperationEvent( - Integer lockOperationType - , Integer operationSource - , @Nullable Integer userIndex - , @Nullable Integer fabricIndex - , @Nullable Long sourceNode - , @Nullable Optional> credentials - ) { - this.lockOperationType = lockOperationType; - this.operationSource = operationSource; - this.userIndex = userIndex; - this.fabricIndex = fabricIndex; - this.sourceNode = sourceNode; - this.credentials = credentials; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("DoorLockClusterLockOperationEvent {\n"); - output.append("\tlockOperationType: "); - output.append(lockOperationType); - output.append("\n"); - output.append("\toperationSource: "); - output.append(operationSource); - output.append("\n"); - output.append("\tuserIndex: "); - output.append(userIndex); - output.append("\n"); - output.append("\tfabricIndex: "); - output.append(fabricIndex); - output.append("\n"); - output.append("\tsourceNode: "); - output.append(sourceNode); - output.append("\n"); - output.append("\tcredentials: "); - output.append(credentials); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class DoorLockClusterLockOperationErrorEvent { -public Integer lockOperationType; -public Integer operationSource; -public Integer operationError; -public @Nullable Integer userIndex; -public @Nullable Integer fabricIndex; -public @Nullable Long sourceNode; -public @Nullable Optional> credentials; - - public DoorLockClusterLockOperationErrorEvent( - Integer lockOperationType - , Integer operationSource - , Integer operationError - , @Nullable Integer userIndex - , @Nullable Integer fabricIndex - , @Nullable Long sourceNode - , @Nullable Optional> credentials - ) { - this.lockOperationType = lockOperationType; - this.operationSource = operationSource; - this.operationError = operationError; - this.userIndex = userIndex; - this.fabricIndex = fabricIndex; - this.sourceNode = sourceNode; - this.credentials = credentials; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("DoorLockClusterLockOperationErrorEvent {\n"); - output.append("\tlockOperationType: "); - output.append(lockOperationType); - output.append("\n"); - output.append("\toperationSource: "); - output.append(operationSource); - output.append("\n"); - output.append("\toperationError: "); - output.append(operationError); - output.append("\n"); - output.append("\tuserIndex: "); - output.append(userIndex); - output.append("\n"); - output.append("\tfabricIndex: "); - output.append(fabricIndex); - output.append("\n"); - output.append("\tsourceNode: "); - output.append(sourceNode); - output.append("\n"); - output.append("\tcredentials: "); - output.append(credentials); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class DoorLockClusterLockUserChangeEvent { -public Integer lockDataType; -public Integer dataOperationType; -public Integer operationSource; -public @Nullable Integer userIndex; -public @Nullable Integer fabricIndex; -public @Nullable Long sourceNode; -public @Nullable Integer dataIndex; - - public DoorLockClusterLockUserChangeEvent( - Integer lockDataType - , Integer dataOperationType - , Integer operationSource - , @Nullable Integer userIndex - , @Nullable Integer fabricIndex - , @Nullable Long sourceNode - , @Nullable Integer dataIndex - ) { - this.lockDataType = lockDataType; - this.dataOperationType = dataOperationType; - this.operationSource = operationSource; - this.userIndex = userIndex; - this.fabricIndex = fabricIndex; - this.sourceNode = sourceNode; - this.dataIndex = dataIndex; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("DoorLockClusterLockUserChangeEvent {\n"); - output.append("\tlockDataType: "); - output.append(lockDataType); - output.append("\n"); - output.append("\tdataOperationType: "); - output.append(dataOperationType); - output.append("\n"); - output.append("\toperationSource: "); - output.append(operationSource); - output.append("\n"); - output.append("\tuserIndex: "); - output.append(userIndex); - output.append("\n"); - output.append("\tfabricIndex: "); - output.append(fabricIndex); - output.append("\n"); - output.append("\tsourceNode: "); - output.append(sourceNode); - output.append("\n"); - output.append("\tdataIndex: "); - output.append(dataIndex); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class PumpConfigurationAndControlClusterSupplyVoltageLowEvent { - - public PumpConfigurationAndControlClusterSupplyVoltageLowEvent( -) { - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("PumpConfigurationAndControlClusterSupplyVoltageLowEvent {\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class PumpConfigurationAndControlClusterSupplyVoltageHighEvent { - - public PumpConfigurationAndControlClusterSupplyVoltageHighEvent( -) { - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("PumpConfigurationAndControlClusterSupplyVoltageHighEvent {\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class PumpConfigurationAndControlClusterPowerMissingPhaseEvent { - - public PumpConfigurationAndControlClusterPowerMissingPhaseEvent( -) { - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("PumpConfigurationAndControlClusterPowerMissingPhaseEvent {\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class PumpConfigurationAndControlClusterSystemPressureLowEvent { - - public PumpConfigurationAndControlClusterSystemPressureLowEvent( -) { - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("PumpConfigurationAndControlClusterSystemPressureLowEvent {\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class PumpConfigurationAndControlClusterSystemPressureHighEvent { - - public PumpConfigurationAndControlClusterSystemPressureHighEvent( -) { - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("PumpConfigurationAndControlClusterSystemPressureHighEvent {\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class PumpConfigurationAndControlClusterDryRunningEvent { - - public PumpConfigurationAndControlClusterDryRunningEvent( -) { - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("PumpConfigurationAndControlClusterDryRunningEvent {\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class PumpConfigurationAndControlClusterMotorTemperatureHighEvent { - - public PumpConfigurationAndControlClusterMotorTemperatureHighEvent( -) { - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("PumpConfigurationAndControlClusterMotorTemperatureHighEvent {\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class PumpConfigurationAndControlClusterPumpMotorFatalFailureEvent { - - public PumpConfigurationAndControlClusterPumpMotorFatalFailureEvent( -) { - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("PumpConfigurationAndControlClusterPumpMotorFatalFailureEvent {\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class PumpConfigurationAndControlClusterElectronicTemperatureHighEvent { - - public PumpConfigurationAndControlClusterElectronicTemperatureHighEvent( -) { - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("PumpConfigurationAndControlClusterElectronicTemperatureHighEvent {\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class PumpConfigurationAndControlClusterPumpBlockedEvent { - - public PumpConfigurationAndControlClusterPumpBlockedEvent( -) { - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("PumpConfigurationAndControlClusterPumpBlockedEvent {\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class PumpConfigurationAndControlClusterSensorFailureEvent { - - public PumpConfigurationAndControlClusterSensorFailureEvent( -) { - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("PumpConfigurationAndControlClusterSensorFailureEvent {\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class PumpConfigurationAndControlClusterElectronicNonFatalFailureEvent { - - public PumpConfigurationAndControlClusterElectronicNonFatalFailureEvent( -) { - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("PumpConfigurationAndControlClusterElectronicNonFatalFailureEvent {\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class PumpConfigurationAndControlClusterElectronicFatalFailureEvent { - - public PumpConfigurationAndControlClusterElectronicFatalFailureEvent( -) { - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("PumpConfigurationAndControlClusterElectronicFatalFailureEvent {\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class PumpConfigurationAndControlClusterGeneralFaultEvent { - - public PumpConfigurationAndControlClusterGeneralFaultEvent( -) { - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("PumpConfigurationAndControlClusterGeneralFaultEvent {\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class PumpConfigurationAndControlClusterLeakageEvent { - - public PumpConfigurationAndControlClusterLeakageEvent( -) { - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("PumpConfigurationAndControlClusterLeakageEvent {\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class PumpConfigurationAndControlClusterAirDetectionEvent { - - public PumpConfigurationAndControlClusterAirDetectionEvent( -) { - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("PumpConfigurationAndControlClusterAirDetectionEvent {\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class PumpConfigurationAndControlClusterTurbineOperationEvent { - - public PumpConfigurationAndControlClusterTurbineOperationEvent( -) { - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("PumpConfigurationAndControlClusterTurbineOperationEvent {\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class UnitTestingClusterTestEventEvent { -public Integer arg1; -public Integer arg2; -public Boolean arg3; -public ChipStructs.UnitTestingClusterSimpleStruct arg4; -public ArrayList arg5; -public ArrayList arg6; - - public UnitTestingClusterTestEventEvent( - Integer arg1 - , Integer arg2 - , Boolean arg3 - , ChipStructs.UnitTestingClusterSimpleStruct arg4 - , ArrayList arg5 - , ArrayList arg6 - ) { - this.arg1 = arg1; - this.arg2 = arg2; - this.arg3 = arg3; - this.arg4 = arg4; - this.arg5 = arg5; - this.arg6 = arg6; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("UnitTestingClusterTestEventEvent {\n"); - output.append("\targ1: "); - output.append(arg1); - output.append("\n"); - output.append("\targ2: "); - output.append(arg2); - output.append("\n"); - output.append("\targ3: "); - output.append(arg3); - output.append("\n"); - output.append("\targ4: "); - output.append(arg4); - output.append("\n"); - output.append("\targ5: "); - output.append(arg5); - output.append("\n"); - output.append("\targ6: "); - output.append(arg6); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class UnitTestingClusterTestFabricScopedEventEvent { -public Integer fabricIndex; - - public UnitTestingClusterTestFabricScopedEventEvent( - Integer fabricIndex - ) { - this.fabricIndex = fabricIndex; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("UnitTestingClusterTestFabricScopedEventEvent {\n"); - output.append("\tfabricIndex: "); - output.append(fabricIndex); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -} \ No newline at end of file diff --git a/src/controller/java/zap-generated/chip/devicecontroller/ChipStructs.java b/src/controller/java/zap-generated/chip/devicecontroller/ChipStructs.java deleted file mode 100644 index 6907c0912103af..00000000000000 --- a/src/controller/java/zap-generated/chip/devicecontroller/ChipStructs.java +++ /dev/null @@ -1,3018 +0,0 @@ -/* - * - * Copyright (c) 2022 Project CHIP Authors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -// THIS FILE IS GENERATED BY ZAP -package chip.devicecontroller; - -import javax.annotation.Nullable; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Optional; - -public class ChipStructs { -public static class ScenesClusterAttributeValuePair { -public Long attributeID; -public Long attributeValue; - - public ScenesClusterAttributeValuePair( - Long attributeID - , Long attributeValue - ) { - this.attributeID = attributeID; - this.attributeValue = attributeValue; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("ScenesClusterAttributeValuePair {\n"); - output.append("\tattributeID: "); - output.append(attributeID); - output.append("\n"); - output.append("\tattributeValue: "); - output.append(attributeValue); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class ScenesClusterExtensionFieldSet { -public Long clusterID; -public ArrayList attributeValueList; - - public ScenesClusterExtensionFieldSet( - Long clusterID - , ArrayList attributeValueList - ) { - this.clusterID = clusterID; - this.attributeValueList = attributeValueList; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("ScenesClusterExtensionFieldSet {\n"); - output.append("\tclusterID: "); - output.append(clusterID); - output.append("\n"); - output.append("\tattributeValueList: "); - output.append(attributeValueList); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class DescriptorClusterDeviceTypeStruct { -public Long deviceType; -public Integer revision; - - public DescriptorClusterDeviceTypeStruct( - Long deviceType - , Integer revision - ) { - this.deviceType = deviceType; - this.revision = revision; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("DescriptorClusterDeviceTypeStruct {\n"); - output.append("\tdeviceType: "); - output.append(deviceType); - output.append("\n"); - output.append("\trevision: "); - output.append(revision); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class DescriptorClusterSemanticTagStruct { -public @Nullable Integer mfgCode; -public Integer namespaceID; -public Integer tag; -public @Nullable Optional label; - - public DescriptorClusterSemanticTagStruct( - @Nullable Integer mfgCode - , Integer namespaceID - , Integer tag - , @Nullable Optional label - ) { - this.mfgCode = mfgCode; - this.namespaceID = namespaceID; - this.tag = tag; - this.label = label; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("DescriptorClusterSemanticTagStruct {\n"); - output.append("\tmfgCode: "); - output.append(mfgCode); - output.append("\n"); - output.append("\tnamespaceID: "); - output.append(namespaceID); - output.append("\n"); - output.append("\ttag: "); - output.append(tag); - output.append("\n"); - output.append("\tlabel: "); - output.append(label); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class BindingClusterTargetStruct { -public Optional node; -public Optional group; -public Optional endpoint; -public Optional cluster; -public Integer fabricIndex; - - public BindingClusterTargetStruct( - Optional node - , Optional group - , Optional endpoint - , Optional cluster - , Integer fabricIndex - ) { - this.node = node; - this.group = group; - this.endpoint = endpoint; - this.cluster = cluster; - this.fabricIndex = fabricIndex; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("BindingClusterTargetStruct {\n"); - output.append("\tnode: "); - output.append(node); - output.append("\n"); - output.append("\tgroup: "); - output.append(group); - output.append("\n"); - output.append("\tendpoint: "); - output.append(endpoint); - output.append("\n"); - output.append("\tcluster: "); - output.append(cluster); - output.append("\n"); - output.append("\tfabricIndex: "); - output.append(fabricIndex); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class AccessControlClusterAccessControlTargetStruct { -public @Nullable Long cluster; -public @Nullable Integer endpoint; -public @Nullable Long deviceType; - - public AccessControlClusterAccessControlTargetStruct( - @Nullable Long cluster - , @Nullable Integer endpoint - , @Nullable Long deviceType - ) { - this.cluster = cluster; - this.endpoint = endpoint; - this.deviceType = deviceType; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("AccessControlClusterAccessControlTargetStruct {\n"); - output.append("\tcluster: "); - output.append(cluster); - output.append("\n"); - output.append("\tendpoint: "); - output.append(endpoint); - output.append("\n"); - output.append("\tdeviceType: "); - output.append(deviceType); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class AccessControlClusterAccessControlEntryStruct { -public Integer privilege; -public Integer authMode; -public @Nullable ArrayList subjects; -public @Nullable ArrayList targets; -public Integer fabricIndex; - - public AccessControlClusterAccessControlEntryStruct( - Integer privilege - , Integer authMode - , @Nullable ArrayList subjects - , @Nullable ArrayList targets - , Integer fabricIndex - ) { - this.privilege = privilege; - this.authMode = authMode; - this.subjects = subjects; - this.targets = targets; - this.fabricIndex = fabricIndex; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("AccessControlClusterAccessControlEntryStruct {\n"); - output.append("\tprivilege: "); - output.append(privilege); - output.append("\n"); - output.append("\tauthMode: "); - output.append(authMode); - output.append("\n"); - output.append("\tsubjects: "); - output.append(subjects); - output.append("\n"); - output.append("\ttargets: "); - output.append(targets); - output.append("\n"); - output.append("\tfabricIndex: "); - output.append(fabricIndex); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class AccessControlClusterAccessControlExtensionStruct { -public byte[] data; -public Integer fabricIndex; - - public AccessControlClusterAccessControlExtensionStruct( - byte[] data - , Integer fabricIndex - ) { - this.data = data; - this.fabricIndex = fabricIndex; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("AccessControlClusterAccessControlExtensionStruct {\n"); - output.append("\tdata: "); - output.append(Arrays.toString(data)); - output.append("\n"); - output.append("\tfabricIndex: "); - output.append(fabricIndex); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class ActionsClusterActionStruct { -public Integer actionID; -public String name; -public Integer type; -public Integer endpointListID; -public Integer supportedCommands; -public Integer state; - - public ActionsClusterActionStruct( - Integer actionID - , String name - , Integer type - , Integer endpointListID - , Integer supportedCommands - , Integer state - ) { - this.actionID = actionID; - this.name = name; - this.type = type; - this.endpointListID = endpointListID; - this.supportedCommands = supportedCommands; - this.state = state; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("ActionsClusterActionStruct {\n"); - output.append("\tactionID: "); - output.append(actionID); - output.append("\n"); - output.append("\tname: "); - output.append(name); - output.append("\n"); - output.append("\ttype: "); - output.append(type); - output.append("\n"); - output.append("\tendpointListID: "); - output.append(endpointListID); - output.append("\n"); - output.append("\tsupportedCommands: "); - output.append(supportedCommands); - output.append("\n"); - output.append("\tstate: "); - output.append(state); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class ActionsClusterEndpointListStruct { -public Integer endpointListID; -public String name; -public Integer type; -public ArrayList endpoints; - - public ActionsClusterEndpointListStruct( - Integer endpointListID - , String name - , Integer type - , ArrayList endpoints - ) { - this.endpointListID = endpointListID; - this.name = name; - this.type = type; - this.endpoints = endpoints; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("ActionsClusterEndpointListStruct {\n"); - output.append("\tendpointListID: "); - output.append(endpointListID); - output.append("\n"); - output.append("\tname: "); - output.append(name); - output.append("\n"); - output.append("\ttype: "); - output.append(type); - output.append("\n"); - output.append("\tendpoints: "); - output.append(endpoints); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class BasicInformationClusterCapabilityMinimaStruct { -public Integer caseSessionsPerFabric; -public Integer subscriptionsPerFabric; - - public BasicInformationClusterCapabilityMinimaStruct( - Integer caseSessionsPerFabric - , Integer subscriptionsPerFabric - ) { - this.caseSessionsPerFabric = caseSessionsPerFabric; - this.subscriptionsPerFabric = subscriptionsPerFabric; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("BasicInformationClusterCapabilityMinimaStruct {\n"); - output.append("\tcaseSessionsPerFabric: "); - output.append(caseSessionsPerFabric); - output.append("\n"); - output.append("\tsubscriptionsPerFabric: "); - output.append(subscriptionsPerFabric); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class BasicInformationClusterProductAppearanceStruct { -public Integer finish; -public @Nullable Integer primaryColor; - - public BasicInformationClusterProductAppearanceStruct( - Integer finish - , @Nullable Integer primaryColor - ) { - this.finish = finish; - this.primaryColor = primaryColor; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("BasicInformationClusterProductAppearanceStruct {\n"); - output.append("\tfinish: "); - output.append(finish); - output.append("\n"); - output.append("\tprimaryColor: "); - output.append(primaryColor); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class OtaSoftwareUpdateRequestorClusterProviderLocation { -public Long providerNodeID; -public Integer endpoint; -public Integer fabricIndex; - - public OtaSoftwareUpdateRequestorClusterProviderLocation( - Long providerNodeID - , Integer endpoint - , Integer fabricIndex - ) { - this.providerNodeID = providerNodeID; - this.endpoint = endpoint; - this.fabricIndex = fabricIndex; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("OtaSoftwareUpdateRequestorClusterProviderLocation {\n"); - output.append("\tproviderNodeID: "); - output.append(providerNodeID); - output.append("\n"); - output.append("\tendpoint: "); - output.append(endpoint); - output.append("\n"); - output.append("\tfabricIndex: "); - output.append(fabricIndex); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class PowerSourceClusterBatChargeFaultChangeType { -public ArrayList current; -public ArrayList previous; - - public PowerSourceClusterBatChargeFaultChangeType( - ArrayList current - , ArrayList previous - ) { - this.current = current; - this.previous = previous; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("PowerSourceClusterBatChargeFaultChangeType {\n"); - output.append("\tcurrent: "); - output.append(current); - output.append("\n"); - output.append("\tprevious: "); - output.append(previous); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class PowerSourceClusterBatFaultChangeType { -public ArrayList current; -public ArrayList previous; - - public PowerSourceClusterBatFaultChangeType( - ArrayList current - , ArrayList previous - ) { - this.current = current; - this.previous = previous; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("PowerSourceClusterBatFaultChangeType {\n"); - output.append("\tcurrent: "); - output.append(current); - output.append("\n"); - output.append("\tprevious: "); - output.append(previous); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class PowerSourceClusterWiredFaultChangeType { -public ArrayList current; -public ArrayList previous; - - public PowerSourceClusterWiredFaultChangeType( - ArrayList current - , ArrayList previous - ) { - this.current = current; - this.previous = previous; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("PowerSourceClusterWiredFaultChangeType {\n"); - output.append("\tcurrent: "); - output.append(current); - output.append("\n"); - output.append("\tprevious: "); - output.append(previous); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class GeneralCommissioningClusterBasicCommissioningInfo { -public Integer failSafeExpiryLengthSeconds; -public Integer maxCumulativeFailsafeSeconds; - - public GeneralCommissioningClusterBasicCommissioningInfo( - Integer failSafeExpiryLengthSeconds - , Integer maxCumulativeFailsafeSeconds - ) { - this.failSafeExpiryLengthSeconds = failSafeExpiryLengthSeconds; - this.maxCumulativeFailsafeSeconds = maxCumulativeFailsafeSeconds; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("GeneralCommissioningClusterBasicCommissioningInfo {\n"); - output.append("\tfailSafeExpiryLengthSeconds: "); - output.append(failSafeExpiryLengthSeconds); - output.append("\n"); - output.append("\tmaxCumulativeFailsafeSeconds: "); - output.append(maxCumulativeFailsafeSeconds); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class NetworkCommissioningClusterNetworkInfoStruct { -public byte[] networkID; -public Boolean connected; - - public NetworkCommissioningClusterNetworkInfoStruct( - byte[] networkID - , Boolean connected - ) { - this.networkID = networkID; - this.connected = connected; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("NetworkCommissioningClusterNetworkInfoStruct {\n"); - output.append("\tnetworkID: "); - output.append(Arrays.toString(networkID)); - output.append("\n"); - output.append("\tconnected: "); - output.append(connected); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class NetworkCommissioningClusterThreadInterfaceScanResultStruct { -public Integer panId; -public Long extendedPanId; -public String networkName; -public Integer channel; -public Integer version; -public byte[] extendedAddress; -public Integer rssi; -public Integer lqi; - - public NetworkCommissioningClusterThreadInterfaceScanResultStruct( - Integer panId - , Long extendedPanId - , String networkName - , Integer channel - , Integer version - , byte[] extendedAddress - , Integer rssi - , Integer lqi - ) { - this.panId = panId; - this.extendedPanId = extendedPanId; - this.networkName = networkName; - this.channel = channel; - this.version = version; - this.extendedAddress = extendedAddress; - this.rssi = rssi; - this.lqi = lqi; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("NetworkCommissioningClusterThreadInterfaceScanResultStruct {\n"); - output.append("\tpanId: "); - output.append(panId); - output.append("\n"); - output.append("\textendedPanId: "); - output.append(extendedPanId); - output.append("\n"); - output.append("\tnetworkName: "); - output.append(networkName); - output.append("\n"); - output.append("\tchannel: "); - output.append(channel); - output.append("\n"); - output.append("\tversion: "); - output.append(version); - output.append("\n"); - output.append("\textendedAddress: "); - output.append(Arrays.toString(extendedAddress)); - output.append("\n"); - output.append("\trssi: "); - output.append(rssi); - output.append("\n"); - output.append("\tlqi: "); - output.append(lqi); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class NetworkCommissioningClusterWiFiInterfaceScanResultStruct { -public Integer security; -public byte[] ssid; -public byte[] bssid; -public Integer channel; -public Integer wiFiBand; -public Integer rssi; - - public NetworkCommissioningClusterWiFiInterfaceScanResultStruct( - Integer security - , byte[] ssid - , byte[] bssid - , Integer channel - , Integer wiFiBand - , Integer rssi - ) { - this.security = security; - this.ssid = ssid; - this.bssid = bssid; - this.channel = channel; - this.wiFiBand = wiFiBand; - this.rssi = rssi; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("NetworkCommissioningClusterWiFiInterfaceScanResultStruct {\n"); - output.append("\tsecurity: "); - output.append(security); - output.append("\n"); - output.append("\tssid: "); - output.append(Arrays.toString(ssid)); - output.append("\n"); - output.append("\tbssid: "); - output.append(Arrays.toString(bssid)); - output.append("\n"); - output.append("\tchannel: "); - output.append(channel); - output.append("\n"); - output.append("\twiFiBand: "); - output.append(wiFiBand); - output.append("\n"); - output.append("\trssi: "); - output.append(rssi); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class GeneralDiagnosticsClusterNetworkInterface { -public String name; -public Boolean isOperational; -public @Nullable Boolean offPremiseServicesReachableIPv4; -public @Nullable Boolean offPremiseServicesReachableIPv6; -public byte[] hardwareAddress; -public ArrayList IPv4Addresses; -public ArrayList IPv6Addresses; -public Integer type; - - public GeneralDiagnosticsClusterNetworkInterface( - String name - , Boolean isOperational - , @Nullable Boolean offPremiseServicesReachableIPv4 - , @Nullable Boolean offPremiseServicesReachableIPv6 - , byte[] hardwareAddress - , ArrayList IPv4Addresses - , ArrayList IPv6Addresses - , Integer type - ) { - this.name = name; - this.isOperational = isOperational; - this.offPremiseServicesReachableIPv4 = offPremiseServicesReachableIPv4; - this.offPremiseServicesReachableIPv6 = offPremiseServicesReachableIPv6; - this.hardwareAddress = hardwareAddress; - this.IPv4Addresses = IPv4Addresses; - this.IPv6Addresses = IPv6Addresses; - this.type = type; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("GeneralDiagnosticsClusterNetworkInterface {\n"); - output.append("\tname: "); - output.append(name); - output.append("\n"); - output.append("\tisOperational: "); - output.append(isOperational); - output.append("\n"); - output.append("\toffPremiseServicesReachableIPv4: "); - output.append(offPremiseServicesReachableIPv4); - output.append("\n"); - output.append("\toffPremiseServicesReachableIPv6: "); - output.append(offPremiseServicesReachableIPv6); - output.append("\n"); - output.append("\thardwareAddress: "); - output.append(Arrays.toString(hardwareAddress)); - output.append("\n"); - output.append("\tIPv4Addresses: "); - output.append(IPv4Addresses); - output.append("\n"); - output.append("\tIPv6Addresses: "); - output.append(IPv6Addresses); - output.append("\n"); - output.append("\ttype: "); - output.append(type); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class SoftwareDiagnosticsClusterThreadMetricsStruct { -public Long id; -public Optional name; -public Optional stackFreeCurrent; -public Optional stackFreeMinimum; -public Optional stackSize; - - public SoftwareDiagnosticsClusterThreadMetricsStruct( - Long id - , Optional name - , Optional stackFreeCurrent - , Optional stackFreeMinimum - , Optional stackSize - ) { - this.id = id; - this.name = name; - this.stackFreeCurrent = stackFreeCurrent; - this.stackFreeMinimum = stackFreeMinimum; - this.stackSize = stackSize; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("SoftwareDiagnosticsClusterThreadMetricsStruct {\n"); - output.append("\tid: "); - output.append(id); - output.append("\n"); - output.append("\tname: "); - output.append(name); - output.append("\n"); - output.append("\tstackFreeCurrent: "); - output.append(stackFreeCurrent); - output.append("\n"); - output.append("\tstackFreeMinimum: "); - output.append(stackFreeMinimum); - output.append("\n"); - output.append("\tstackSize: "); - output.append(stackSize); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class ThreadNetworkDiagnosticsClusterNeighborTableStruct { -public Long extAddress; -public Long age; -public Integer rloc16; -public Long linkFrameCounter; -public Long mleFrameCounter; -public Integer lqi; -public @Nullable Integer averageRssi; -public @Nullable Integer lastRssi; -public Integer frameErrorRate; -public Integer messageErrorRate; -public Boolean rxOnWhenIdle; -public Boolean fullThreadDevice; -public Boolean fullNetworkData; -public Boolean isChild; - - public ThreadNetworkDiagnosticsClusterNeighborTableStruct( - Long extAddress - , Long age - , Integer rloc16 - , Long linkFrameCounter - , Long mleFrameCounter - , Integer lqi - , @Nullable Integer averageRssi - , @Nullable Integer lastRssi - , Integer frameErrorRate - , Integer messageErrorRate - , Boolean rxOnWhenIdle - , Boolean fullThreadDevice - , Boolean fullNetworkData - , Boolean isChild - ) { - this.extAddress = extAddress; - this.age = age; - this.rloc16 = rloc16; - this.linkFrameCounter = linkFrameCounter; - this.mleFrameCounter = mleFrameCounter; - this.lqi = lqi; - this.averageRssi = averageRssi; - this.lastRssi = lastRssi; - this.frameErrorRate = frameErrorRate; - this.messageErrorRate = messageErrorRate; - this.rxOnWhenIdle = rxOnWhenIdle; - this.fullThreadDevice = fullThreadDevice; - this.fullNetworkData = fullNetworkData; - this.isChild = isChild; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("ThreadNetworkDiagnosticsClusterNeighborTableStruct {\n"); - output.append("\textAddress: "); - output.append(extAddress); - output.append("\n"); - output.append("\tage: "); - output.append(age); - output.append("\n"); - output.append("\trloc16: "); - output.append(rloc16); - output.append("\n"); - output.append("\tlinkFrameCounter: "); - output.append(linkFrameCounter); - output.append("\n"); - output.append("\tmleFrameCounter: "); - output.append(mleFrameCounter); - output.append("\n"); - output.append("\tlqi: "); - output.append(lqi); - output.append("\n"); - output.append("\taverageRssi: "); - output.append(averageRssi); - output.append("\n"); - output.append("\tlastRssi: "); - output.append(lastRssi); - output.append("\n"); - output.append("\tframeErrorRate: "); - output.append(frameErrorRate); - output.append("\n"); - output.append("\tmessageErrorRate: "); - output.append(messageErrorRate); - output.append("\n"); - output.append("\trxOnWhenIdle: "); - output.append(rxOnWhenIdle); - output.append("\n"); - output.append("\tfullThreadDevice: "); - output.append(fullThreadDevice); - output.append("\n"); - output.append("\tfullNetworkData: "); - output.append(fullNetworkData); - output.append("\n"); - output.append("\tisChild: "); - output.append(isChild); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class ThreadNetworkDiagnosticsClusterOperationalDatasetComponents { -public Boolean activeTimestampPresent; -public Boolean pendingTimestampPresent; -public Boolean masterKeyPresent; -public Boolean networkNamePresent; -public Boolean extendedPanIdPresent; -public Boolean meshLocalPrefixPresent; -public Boolean delayPresent; -public Boolean panIdPresent; -public Boolean channelPresent; -public Boolean pskcPresent; -public Boolean securityPolicyPresent; -public Boolean channelMaskPresent; - - public ThreadNetworkDiagnosticsClusterOperationalDatasetComponents( - Boolean activeTimestampPresent - , Boolean pendingTimestampPresent - , Boolean masterKeyPresent - , Boolean networkNamePresent - , Boolean extendedPanIdPresent - , Boolean meshLocalPrefixPresent - , Boolean delayPresent - , Boolean panIdPresent - , Boolean channelPresent - , Boolean pskcPresent - , Boolean securityPolicyPresent - , Boolean channelMaskPresent - ) { - this.activeTimestampPresent = activeTimestampPresent; - this.pendingTimestampPresent = pendingTimestampPresent; - this.masterKeyPresent = masterKeyPresent; - this.networkNamePresent = networkNamePresent; - this.extendedPanIdPresent = extendedPanIdPresent; - this.meshLocalPrefixPresent = meshLocalPrefixPresent; - this.delayPresent = delayPresent; - this.panIdPresent = panIdPresent; - this.channelPresent = channelPresent; - this.pskcPresent = pskcPresent; - this.securityPolicyPresent = securityPolicyPresent; - this.channelMaskPresent = channelMaskPresent; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("ThreadNetworkDiagnosticsClusterOperationalDatasetComponents {\n"); - output.append("\tactiveTimestampPresent: "); - output.append(activeTimestampPresent); - output.append("\n"); - output.append("\tpendingTimestampPresent: "); - output.append(pendingTimestampPresent); - output.append("\n"); - output.append("\tmasterKeyPresent: "); - output.append(masterKeyPresent); - output.append("\n"); - output.append("\tnetworkNamePresent: "); - output.append(networkNamePresent); - output.append("\n"); - output.append("\textendedPanIdPresent: "); - output.append(extendedPanIdPresent); - output.append("\n"); - output.append("\tmeshLocalPrefixPresent: "); - output.append(meshLocalPrefixPresent); - output.append("\n"); - output.append("\tdelayPresent: "); - output.append(delayPresent); - output.append("\n"); - output.append("\tpanIdPresent: "); - output.append(panIdPresent); - output.append("\n"); - output.append("\tchannelPresent: "); - output.append(channelPresent); - output.append("\n"); - output.append("\tpskcPresent: "); - output.append(pskcPresent); - output.append("\n"); - output.append("\tsecurityPolicyPresent: "); - output.append(securityPolicyPresent); - output.append("\n"); - output.append("\tchannelMaskPresent: "); - output.append(channelMaskPresent); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class ThreadNetworkDiagnosticsClusterRouteTableStruct { -public Long extAddress; -public Integer rloc16; -public Integer routerId; -public Integer nextHop; -public Integer pathCost; -public Integer LQIIn; -public Integer LQIOut; -public Integer age; -public Boolean allocated; -public Boolean linkEstablished; - - public ThreadNetworkDiagnosticsClusterRouteTableStruct( - Long extAddress - , Integer rloc16 - , Integer routerId - , Integer nextHop - , Integer pathCost - , Integer LQIIn - , Integer LQIOut - , Integer age - , Boolean allocated - , Boolean linkEstablished - ) { - this.extAddress = extAddress; - this.rloc16 = rloc16; - this.routerId = routerId; - this.nextHop = nextHop; - this.pathCost = pathCost; - this.LQIIn = LQIIn; - this.LQIOut = LQIOut; - this.age = age; - this.allocated = allocated; - this.linkEstablished = linkEstablished; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("ThreadNetworkDiagnosticsClusterRouteTableStruct {\n"); - output.append("\textAddress: "); - output.append(extAddress); - output.append("\n"); - output.append("\trloc16: "); - output.append(rloc16); - output.append("\n"); - output.append("\trouterId: "); - output.append(routerId); - output.append("\n"); - output.append("\tnextHop: "); - output.append(nextHop); - output.append("\n"); - output.append("\tpathCost: "); - output.append(pathCost); - output.append("\n"); - output.append("\tLQIIn: "); - output.append(LQIIn); - output.append("\n"); - output.append("\tLQIOut: "); - output.append(LQIOut); - output.append("\n"); - output.append("\tage: "); - output.append(age); - output.append("\n"); - output.append("\tallocated: "); - output.append(allocated); - output.append("\n"); - output.append("\tlinkEstablished: "); - output.append(linkEstablished); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class ThreadNetworkDiagnosticsClusterSecurityPolicy { -public Integer rotationTime; -public Integer flags; - - public ThreadNetworkDiagnosticsClusterSecurityPolicy( - Integer rotationTime - , Integer flags - ) { - this.rotationTime = rotationTime; - this.flags = flags; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("ThreadNetworkDiagnosticsClusterSecurityPolicy {\n"); - output.append("\trotationTime: "); - output.append(rotationTime); - output.append("\n"); - output.append("\tflags: "); - output.append(flags); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class TimeSynchronizationClusterDSTOffsetStruct { -public Long offset; -public Long validStarting; -public @Nullable Long validUntil; - - public TimeSynchronizationClusterDSTOffsetStruct( - Long offset - , Long validStarting - , @Nullable Long validUntil - ) { - this.offset = offset; - this.validStarting = validStarting; - this.validUntil = validUntil; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("TimeSynchronizationClusterDSTOffsetStruct {\n"); - output.append("\toffset: "); - output.append(offset); - output.append("\n"); - output.append("\tvalidStarting: "); - output.append(validStarting); - output.append("\n"); - output.append("\tvalidUntil: "); - output.append(validUntil); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class TimeSynchronizationClusterFabricScopedTrustedTimeSourceStruct { -public Long nodeID; -public Integer endpoint; - - public TimeSynchronizationClusterFabricScopedTrustedTimeSourceStruct( - Long nodeID - , Integer endpoint - ) { - this.nodeID = nodeID; - this.endpoint = endpoint; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("TimeSynchronizationClusterFabricScopedTrustedTimeSourceStruct {\n"); - output.append("\tnodeID: "); - output.append(nodeID); - output.append("\n"); - output.append("\tendpoint: "); - output.append(endpoint); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class TimeSynchronizationClusterTimeZoneStruct { -public Long offset; -public Long validAt; -public Optional name; - - public TimeSynchronizationClusterTimeZoneStruct( - Long offset - , Long validAt - , Optional name - ) { - this.offset = offset; - this.validAt = validAt; - this.name = name; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("TimeSynchronizationClusterTimeZoneStruct {\n"); - output.append("\toffset: "); - output.append(offset); - output.append("\n"); - output.append("\tvalidAt: "); - output.append(validAt); - output.append("\n"); - output.append("\tname: "); - output.append(name); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class TimeSynchronizationClusterTrustedTimeSourceStruct { -public Integer fabricIndex; -public Long nodeID; -public Integer endpoint; - - public TimeSynchronizationClusterTrustedTimeSourceStruct( - Integer fabricIndex - , Long nodeID - , Integer endpoint - ) { - this.fabricIndex = fabricIndex; - this.nodeID = nodeID; - this.endpoint = endpoint; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("TimeSynchronizationClusterTrustedTimeSourceStruct {\n"); - output.append("\tfabricIndex: "); - output.append(fabricIndex); - output.append("\n"); - output.append("\tnodeID: "); - output.append(nodeID); - output.append("\n"); - output.append("\tendpoint: "); - output.append(endpoint); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class BridgedDeviceBasicInformationClusterProductAppearanceStruct { -public Integer finish; -public @Nullable Integer primaryColor; - - public BridgedDeviceBasicInformationClusterProductAppearanceStruct( - Integer finish - , @Nullable Integer primaryColor - ) { - this.finish = finish; - this.primaryColor = primaryColor; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("BridgedDeviceBasicInformationClusterProductAppearanceStruct {\n"); - output.append("\tfinish: "); - output.append(finish); - output.append("\n"); - output.append("\tprimaryColor: "); - output.append(primaryColor); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class OperationalCredentialsClusterFabricDescriptorStruct { -public byte[] rootPublicKey; -public Integer vendorID; -public Long fabricID; -public Long nodeID; -public String label; -public Integer fabricIndex; - - public OperationalCredentialsClusterFabricDescriptorStruct( - byte[] rootPublicKey - , Integer vendorID - , Long fabricID - , Long nodeID - , String label - , Integer fabricIndex - ) { - this.rootPublicKey = rootPublicKey; - this.vendorID = vendorID; - this.fabricID = fabricID; - this.nodeID = nodeID; - this.label = label; - this.fabricIndex = fabricIndex; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("OperationalCredentialsClusterFabricDescriptorStruct {\n"); - output.append("\trootPublicKey: "); - output.append(Arrays.toString(rootPublicKey)); - output.append("\n"); - output.append("\tvendorID: "); - output.append(vendorID); - output.append("\n"); - output.append("\tfabricID: "); - output.append(fabricID); - output.append("\n"); - output.append("\tnodeID: "); - output.append(nodeID); - output.append("\n"); - output.append("\tlabel: "); - output.append(label); - output.append("\n"); - output.append("\tfabricIndex: "); - output.append(fabricIndex); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class OperationalCredentialsClusterNOCStruct { -public byte[] noc; -public @Nullable byte[] icac; -public Integer fabricIndex; - - public OperationalCredentialsClusterNOCStruct( - byte[] noc - , @Nullable byte[] icac - , Integer fabricIndex - ) { - this.noc = noc; - this.icac = icac; - this.fabricIndex = fabricIndex; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("OperationalCredentialsClusterNOCStruct {\n"); - output.append("\tnoc: "); - output.append(Arrays.toString(noc)); - output.append("\n"); - output.append("\ticac: "); - output.append(Arrays.toString(icac)); - output.append("\n"); - output.append("\tfabricIndex: "); - output.append(fabricIndex); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class GroupKeyManagementClusterGroupInfoMapStruct { -public Integer groupId; -public ArrayList endpoints; -public Optional groupName; -public Integer fabricIndex; - - public GroupKeyManagementClusterGroupInfoMapStruct( - Integer groupId - , ArrayList endpoints - , Optional groupName - , Integer fabricIndex - ) { - this.groupId = groupId; - this.endpoints = endpoints; - this.groupName = groupName; - this.fabricIndex = fabricIndex; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("GroupKeyManagementClusterGroupInfoMapStruct {\n"); - output.append("\tgroupId: "); - output.append(groupId); - output.append("\n"); - output.append("\tendpoints: "); - output.append(endpoints); - output.append("\n"); - output.append("\tgroupName: "); - output.append(groupName); - output.append("\n"); - output.append("\tfabricIndex: "); - output.append(fabricIndex); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class GroupKeyManagementClusterGroupKeyMapStruct { -public Integer groupId; -public Integer groupKeySetID; -public Integer fabricIndex; - - public GroupKeyManagementClusterGroupKeyMapStruct( - Integer groupId - , Integer groupKeySetID - , Integer fabricIndex - ) { - this.groupId = groupId; - this.groupKeySetID = groupKeySetID; - this.fabricIndex = fabricIndex; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("GroupKeyManagementClusterGroupKeyMapStruct {\n"); - output.append("\tgroupId: "); - output.append(groupId); - output.append("\n"); - output.append("\tgroupKeySetID: "); - output.append(groupKeySetID); - output.append("\n"); - output.append("\tfabricIndex: "); - output.append(fabricIndex); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class GroupKeyManagementClusterGroupKeySetStruct { -public Integer groupKeySetID; -public Integer groupKeySecurityPolicy; -public @Nullable byte[] epochKey0; -public @Nullable Long epochStartTime0; -public @Nullable byte[] epochKey1; -public @Nullable Long epochStartTime1; -public @Nullable byte[] epochKey2; -public @Nullable Long epochStartTime2; - - public GroupKeyManagementClusterGroupKeySetStruct( - Integer groupKeySetID - , Integer groupKeySecurityPolicy - , @Nullable byte[] epochKey0 - , @Nullable Long epochStartTime0 - , @Nullable byte[] epochKey1 - , @Nullable Long epochStartTime1 - , @Nullable byte[] epochKey2 - , @Nullable Long epochStartTime2 - ) { - this.groupKeySetID = groupKeySetID; - this.groupKeySecurityPolicy = groupKeySecurityPolicy; - this.epochKey0 = epochKey0; - this.epochStartTime0 = epochStartTime0; - this.epochKey1 = epochKey1; - this.epochStartTime1 = epochStartTime1; - this.epochKey2 = epochKey2; - this.epochStartTime2 = epochStartTime2; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("GroupKeyManagementClusterGroupKeySetStruct {\n"); - output.append("\tgroupKeySetID: "); - output.append(groupKeySetID); - output.append("\n"); - output.append("\tgroupKeySecurityPolicy: "); - output.append(groupKeySecurityPolicy); - output.append("\n"); - output.append("\tepochKey0: "); - output.append(Arrays.toString(epochKey0)); - output.append("\n"); - output.append("\tepochStartTime0: "); - output.append(epochStartTime0); - output.append("\n"); - output.append("\tepochKey1: "); - output.append(Arrays.toString(epochKey1)); - output.append("\n"); - output.append("\tepochStartTime1: "); - output.append(epochStartTime1); - output.append("\n"); - output.append("\tepochKey2: "); - output.append(Arrays.toString(epochKey2)); - output.append("\n"); - output.append("\tepochStartTime2: "); - output.append(epochStartTime2); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class FixedLabelClusterLabelStruct { -public String label; -public String value; - - public FixedLabelClusterLabelStruct( - String label - , String value - ) { - this.label = label; - this.value = value; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("FixedLabelClusterLabelStruct {\n"); - output.append("\tlabel: "); - output.append(label); - output.append("\n"); - output.append("\tvalue: "); - output.append(value); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class UserLabelClusterLabelStruct { -public String label; -public String value; - - public UserLabelClusterLabelStruct( - String label - , String value - ) { - this.label = label; - this.value = value; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("UserLabelClusterLabelStruct {\n"); - output.append("\tlabel: "); - output.append(label); - output.append("\n"); - output.append("\tvalue: "); - output.append(value); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class IcdManagementClusterMonitoringRegistrationStruct { -public Long checkInNodeID; -public Long monitoredSubject; -public byte[] key; -public Integer fabricIndex; - - public IcdManagementClusterMonitoringRegistrationStruct( - Long checkInNodeID - , Long monitoredSubject - , byte[] key - , Integer fabricIndex - ) { - this.checkInNodeID = checkInNodeID; - this.monitoredSubject = monitoredSubject; - this.key = key; - this.fabricIndex = fabricIndex; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("IcdManagementClusterMonitoringRegistrationStruct {\n"); - output.append("\tcheckInNodeID: "); - output.append(checkInNodeID); - output.append("\n"); - output.append("\tmonitoredSubject: "); - output.append(monitoredSubject); - output.append("\n"); - output.append("\tkey: "); - output.append(Arrays.toString(key)); - output.append("\n"); - output.append("\tfabricIndex: "); - output.append(fabricIndex); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class ModeSelectClusterSemanticTagStruct { -public Integer mfgCode; -public Integer value; - - public ModeSelectClusterSemanticTagStruct( - Integer mfgCode - , Integer value - ) { - this.mfgCode = mfgCode; - this.value = value; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("ModeSelectClusterSemanticTagStruct {\n"); - output.append("\tmfgCode: "); - output.append(mfgCode); - output.append("\n"); - output.append("\tvalue: "); - output.append(value); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class ModeSelectClusterModeOptionStruct { -public String label; -public Integer mode; -public ArrayList semanticTags; - - public ModeSelectClusterModeOptionStruct( - String label - , Integer mode - , ArrayList semanticTags - ) { - this.label = label; - this.mode = mode; - this.semanticTags = semanticTags; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("ModeSelectClusterModeOptionStruct {\n"); - output.append("\tlabel: "); - output.append(label); - output.append("\n"); - output.append("\tmode: "); - output.append(mode); - output.append("\n"); - output.append("\tsemanticTags: "); - output.append(semanticTags); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class LaundryWasherModeClusterModeTagStruct { -public Optional mfgCode; -public Integer value; - - public LaundryWasherModeClusterModeTagStruct( - Optional mfgCode - , Integer value - ) { - this.mfgCode = mfgCode; - this.value = value; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("LaundryWasherModeClusterModeTagStruct {\n"); - output.append("\tmfgCode: "); - output.append(mfgCode); - output.append("\n"); - output.append("\tvalue: "); - output.append(value); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class LaundryWasherModeClusterModeOptionStruct { -public String label; -public Integer mode; -public ArrayList modeTags; - - public LaundryWasherModeClusterModeOptionStruct( - String label - , Integer mode - , ArrayList modeTags - ) { - this.label = label; - this.mode = mode; - this.modeTags = modeTags; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("LaundryWasherModeClusterModeOptionStruct {\n"); - output.append("\tlabel: "); - output.append(label); - output.append("\n"); - output.append("\tmode: "); - output.append(mode); - output.append("\n"); - output.append("\tmodeTags: "); - output.append(modeTags); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class RefrigeratorAndTemperatureControlledCabinetModeClusterModeTagStruct { -public Optional mfgCode; -public Integer value; - - public RefrigeratorAndTemperatureControlledCabinetModeClusterModeTagStruct( - Optional mfgCode - , Integer value - ) { - this.mfgCode = mfgCode; - this.value = value; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("RefrigeratorAndTemperatureControlledCabinetModeClusterModeTagStruct {\n"); - output.append("\tmfgCode: "); - output.append(mfgCode); - output.append("\n"); - output.append("\tvalue: "); - output.append(value); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class RefrigeratorAndTemperatureControlledCabinetModeClusterModeOptionStruct { -public String label; -public Integer mode; -public ArrayList modeTags; - - public RefrigeratorAndTemperatureControlledCabinetModeClusterModeOptionStruct( - String label - , Integer mode - , ArrayList modeTags - ) { - this.label = label; - this.mode = mode; - this.modeTags = modeTags; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("RefrigeratorAndTemperatureControlledCabinetModeClusterModeOptionStruct {\n"); - output.append("\tlabel: "); - output.append(label); - output.append("\n"); - output.append("\tmode: "); - output.append(mode); - output.append("\n"); - output.append("\tmodeTags: "); - output.append(modeTags); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class RvcRunModeClusterModeTagStruct { -public Optional mfgCode; -public Integer value; - - public RvcRunModeClusterModeTagStruct( - Optional mfgCode - , Integer value - ) { - this.mfgCode = mfgCode; - this.value = value; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("RvcRunModeClusterModeTagStruct {\n"); - output.append("\tmfgCode: "); - output.append(mfgCode); - output.append("\n"); - output.append("\tvalue: "); - output.append(value); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class RvcRunModeClusterModeOptionStruct { -public String label; -public Integer mode; -public ArrayList modeTags; - - public RvcRunModeClusterModeOptionStruct( - String label - , Integer mode - , ArrayList modeTags - ) { - this.label = label; - this.mode = mode; - this.modeTags = modeTags; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("RvcRunModeClusterModeOptionStruct {\n"); - output.append("\tlabel: "); - output.append(label); - output.append("\n"); - output.append("\tmode: "); - output.append(mode); - output.append("\n"); - output.append("\tmodeTags: "); - output.append(modeTags); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class RvcCleanModeClusterModeTagStruct { -public Optional mfgCode; -public Integer value; - - public RvcCleanModeClusterModeTagStruct( - Optional mfgCode - , Integer value - ) { - this.mfgCode = mfgCode; - this.value = value; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("RvcCleanModeClusterModeTagStruct {\n"); - output.append("\tmfgCode: "); - output.append(mfgCode); - output.append("\n"); - output.append("\tvalue: "); - output.append(value); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class RvcCleanModeClusterModeOptionStruct { -public String label; -public Integer mode; -public ArrayList modeTags; - - public RvcCleanModeClusterModeOptionStruct( - String label - , Integer mode - , ArrayList modeTags - ) { - this.label = label; - this.mode = mode; - this.modeTags = modeTags; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("RvcCleanModeClusterModeOptionStruct {\n"); - output.append("\tlabel: "); - output.append(label); - output.append("\n"); - output.append("\tmode: "); - output.append(mode); - output.append("\n"); - output.append("\tmodeTags: "); - output.append(modeTags); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class DishwasherModeClusterModeTagStruct { -public Optional mfgCode; -public Integer value; - - public DishwasherModeClusterModeTagStruct( - Optional mfgCode - , Integer value - ) { - this.mfgCode = mfgCode; - this.value = value; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("DishwasherModeClusterModeTagStruct {\n"); - output.append("\tmfgCode: "); - output.append(mfgCode); - output.append("\n"); - output.append("\tvalue: "); - output.append(value); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class DishwasherModeClusterModeOptionStruct { -public String label; -public Integer mode; -public ArrayList modeTags; - - public DishwasherModeClusterModeOptionStruct( - String label - , Integer mode - , ArrayList modeTags - ) { - this.label = label; - this.mode = mode; - this.modeTags = modeTags; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("DishwasherModeClusterModeOptionStruct {\n"); - output.append("\tlabel: "); - output.append(label); - output.append("\n"); - output.append("\tmode: "); - output.append(mode); - output.append("\n"); - output.append("\tmodeTags: "); - output.append(modeTags); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class OperationalStateClusterErrorStateStruct { -public Integer errorStateID; -public Optional errorStateLabel; -public Optional errorStateDetails; - - public OperationalStateClusterErrorStateStruct( - Integer errorStateID - , Optional errorStateLabel - , Optional errorStateDetails - ) { - this.errorStateID = errorStateID; - this.errorStateLabel = errorStateLabel; - this.errorStateDetails = errorStateDetails; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("OperationalStateClusterErrorStateStruct {\n"); - output.append("\terrorStateID: "); - output.append(errorStateID); - output.append("\n"); - output.append("\terrorStateLabel: "); - output.append(errorStateLabel); - output.append("\n"); - output.append("\terrorStateDetails: "); - output.append(errorStateDetails); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class OperationalStateClusterOperationalStateStruct { -public Integer operationalStateID; -public Optional operationalStateLabel; - - public OperationalStateClusterOperationalStateStruct( - Integer operationalStateID - , Optional operationalStateLabel - ) { - this.operationalStateID = operationalStateID; - this.operationalStateLabel = operationalStateLabel; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("OperationalStateClusterOperationalStateStruct {\n"); - output.append("\toperationalStateID: "); - output.append(operationalStateID); - output.append("\n"); - output.append("\toperationalStateLabel: "); - output.append(operationalStateLabel); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class RvcOperationalStateClusterErrorStateStruct { -public Integer errorStateID; -public Optional errorStateLabel; -public Optional errorStateDetails; - - public RvcOperationalStateClusterErrorStateStruct( - Integer errorStateID - , Optional errorStateLabel - , Optional errorStateDetails - ) { - this.errorStateID = errorStateID; - this.errorStateLabel = errorStateLabel; - this.errorStateDetails = errorStateDetails; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("RvcOperationalStateClusterErrorStateStruct {\n"); - output.append("\terrorStateID: "); - output.append(errorStateID); - output.append("\n"); - output.append("\terrorStateLabel: "); - output.append(errorStateLabel); - output.append("\n"); - output.append("\terrorStateDetails: "); - output.append(errorStateDetails); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class RvcOperationalStateClusterOperationalStateStruct { -public Integer operationalStateID; -public Optional operationalStateLabel; - - public RvcOperationalStateClusterOperationalStateStruct( - Integer operationalStateID - , Optional operationalStateLabel - ) { - this.operationalStateID = operationalStateID; - this.operationalStateLabel = operationalStateLabel; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("RvcOperationalStateClusterOperationalStateStruct {\n"); - output.append("\toperationalStateID: "); - output.append(operationalStateID); - output.append("\n"); - output.append("\toperationalStateLabel: "); - output.append(operationalStateLabel); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class HepaFilterMonitoringClusterReplacementProductStruct { -public Integer productIdentifierType; -public String productIdentifierValue; - - public HepaFilterMonitoringClusterReplacementProductStruct( - Integer productIdentifierType - , String productIdentifierValue - ) { - this.productIdentifierType = productIdentifierType; - this.productIdentifierValue = productIdentifierValue; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("HepaFilterMonitoringClusterReplacementProductStruct {\n"); - output.append("\tproductIdentifierType: "); - output.append(productIdentifierType); - output.append("\n"); - output.append("\tproductIdentifierValue: "); - output.append(productIdentifierValue); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class ActivatedCarbonFilterMonitoringClusterReplacementProductStruct { -public Integer productIdentifierType; -public String productIdentifierValue; - - public ActivatedCarbonFilterMonitoringClusterReplacementProductStruct( - Integer productIdentifierType - , String productIdentifierValue - ) { - this.productIdentifierType = productIdentifierType; - this.productIdentifierValue = productIdentifierValue; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("ActivatedCarbonFilterMonitoringClusterReplacementProductStruct {\n"); - output.append("\tproductIdentifierType: "); - output.append(productIdentifierType); - output.append("\n"); - output.append("\tproductIdentifierValue: "); - output.append(productIdentifierValue); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class DoorLockClusterCredentialStruct { -public Integer credentialType; -public Integer credentialIndex; - - public DoorLockClusterCredentialStruct( - Integer credentialType - , Integer credentialIndex - ) { - this.credentialType = credentialType; - this.credentialIndex = credentialIndex; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("DoorLockClusterCredentialStruct {\n"); - output.append("\tcredentialType: "); - output.append(credentialType); - output.append("\n"); - output.append("\tcredentialIndex: "); - output.append(credentialIndex); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class ThermostatClusterThermostatScheduleTransition { -public Integer transitionTime; -public @Nullable Integer heatSetpoint; -public @Nullable Integer coolSetpoint; - - public ThermostatClusterThermostatScheduleTransition( - Integer transitionTime - , @Nullable Integer heatSetpoint - , @Nullable Integer coolSetpoint - ) { - this.transitionTime = transitionTime; - this.heatSetpoint = heatSetpoint; - this.coolSetpoint = coolSetpoint; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("ThermostatClusterThermostatScheduleTransition {\n"); - output.append("\ttransitionTime: "); - output.append(transitionTime); - output.append("\n"); - output.append("\theatSetpoint: "); - output.append(heatSetpoint); - output.append("\n"); - output.append("\tcoolSetpoint: "); - output.append(coolSetpoint); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class ChannelClusterChannelInfoStruct { -public Integer majorNumber; -public Integer minorNumber; -public Optional name; -public Optional callSign; -public Optional affiliateCallSign; - - public ChannelClusterChannelInfoStruct( - Integer majorNumber - , Integer minorNumber - , Optional name - , Optional callSign - , Optional affiliateCallSign - ) { - this.majorNumber = majorNumber; - this.minorNumber = minorNumber; - this.name = name; - this.callSign = callSign; - this.affiliateCallSign = affiliateCallSign; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("ChannelClusterChannelInfoStruct {\n"); - output.append("\tmajorNumber: "); - output.append(majorNumber); - output.append("\n"); - output.append("\tminorNumber: "); - output.append(minorNumber); - output.append("\n"); - output.append("\tname: "); - output.append(name); - output.append("\n"); - output.append("\tcallSign: "); - output.append(callSign); - output.append("\n"); - output.append("\taffiliateCallSign: "); - output.append(affiliateCallSign); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class ChannelClusterLineupInfoStruct { -public String operatorName; -public Optional lineupName; -public Optional postalCode; -public Integer lineupInfoType; - - public ChannelClusterLineupInfoStruct( - String operatorName - , Optional lineupName - , Optional postalCode - , Integer lineupInfoType - ) { - this.operatorName = operatorName; - this.lineupName = lineupName; - this.postalCode = postalCode; - this.lineupInfoType = lineupInfoType; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("ChannelClusterLineupInfoStruct {\n"); - output.append("\toperatorName: "); - output.append(operatorName); - output.append("\n"); - output.append("\tlineupName: "); - output.append(lineupName); - output.append("\n"); - output.append("\tpostalCode: "); - output.append(postalCode); - output.append("\n"); - output.append("\tlineupInfoType: "); - output.append(lineupInfoType); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class TargetNavigatorClusterTargetInfoStruct { -public Integer identifier; -public String name; - - public TargetNavigatorClusterTargetInfoStruct( - Integer identifier - , String name - ) { - this.identifier = identifier; - this.name = name; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("TargetNavigatorClusterTargetInfoStruct {\n"); - output.append("\tidentifier: "); - output.append(identifier); - output.append("\n"); - output.append("\tname: "); - output.append(name); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class MediaPlaybackClusterPlaybackPositionStruct { -public Long updatedAt; -public @Nullable Long position; - - public MediaPlaybackClusterPlaybackPositionStruct( - Long updatedAt - , @Nullable Long position - ) { - this.updatedAt = updatedAt; - this.position = position; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("MediaPlaybackClusterPlaybackPositionStruct {\n"); - output.append("\tupdatedAt: "); - output.append(updatedAt); - output.append("\n"); - output.append("\tposition: "); - output.append(position); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class MediaInputClusterInputInfoStruct { -public Integer index; -public Integer inputType; -public String name; -public String description; - - public MediaInputClusterInputInfoStruct( - Integer index - , Integer inputType - , String name - , String description - ) { - this.index = index; - this.inputType = inputType; - this.name = name; - this.description = description; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("MediaInputClusterInputInfoStruct {\n"); - output.append("\tindex: "); - output.append(index); - output.append("\n"); - output.append("\tinputType: "); - output.append(inputType); - output.append("\n"); - output.append("\tname: "); - output.append(name); - output.append("\n"); - output.append("\tdescription: "); - output.append(description); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class ContentLauncherClusterDimensionStruct { -public Double width; -public Double height; -public Integer metric; - - public ContentLauncherClusterDimensionStruct( - Double width - , Double height - , Integer metric - ) { - this.width = width; - this.height = height; - this.metric = metric; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("ContentLauncherClusterDimensionStruct {\n"); - output.append("\twidth: "); - output.append(width); - output.append("\n"); - output.append("\theight: "); - output.append(height); - output.append("\n"); - output.append("\tmetric: "); - output.append(metric); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class ContentLauncherClusterAdditionalInfoStruct { -public String name; -public String value; - - public ContentLauncherClusterAdditionalInfoStruct( - String name - , String value - ) { - this.name = name; - this.value = value; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("ContentLauncherClusterAdditionalInfoStruct {\n"); - output.append("\tname: "); - output.append(name); - output.append("\n"); - output.append("\tvalue: "); - output.append(value); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class ContentLauncherClusterParameterStruct { -public Integer type; -public String value; -public Optional> externalIDList; - - public ContentLauncherClusterParameterStruct( - Integer type - , String value - , Optional> externalIDList - ) { - this.type = type; - this.value = value; - this.externalIDList = externalIDList; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("ContentLauncherClusterParameterStruct {\n"); - output.append("\ttype: "); - output.append(type); - output.append("\n"); - output.append("\tvalue: "); - output.append(value); - output.append("\n"); - output.append("\texternalIDList: "); - output.append(externalIDList); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class ContentLauncherClusterContentSearchStruct { -public ArrayList parameterList; - - public ContentLauncherClusterContentSearchStruct( - ArrayList parameterList - ) { - this.parameterList = parameterList; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("ContentLauncherClusterContentSearchStruct {\n"); - output.append("\tparameterList: "); - output.append(parameterList); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class ContentLauncherClusterStyleInformationStruct { -public Optional imageURL; -public Optional color; -public Optional size; - - public ContentLauncherClusterStyleInformationStruct( - Optional imageURL - , Optional color - , Optional size - ) { - this.imageURL = imageURL; - this.color = color; - this.size = size; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("ContentLauncherClusterStyleInformationStruct {\n"); - output.append("\timageURL: "); - output.append(imageURL); - output.append("\n"); - output.append("\tcolor: "); - output.append(color); - output.append("\n"); - output.append("\tsize: "); - output.append(size); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class ContentLauncherClusterBrandingInformationStruct { -public String providerName; -public Optional background; -public Optional logo; -public Optional progressBar; -public Optional splash; -public Optional waterMark; - - public ContentLauncherClusterBrandingInformationStruct( - String providerName - , Optional background - , Optional logo - , Optional progressBar - , Optional splash - , Optional waterMark - ) { - this.providerName = providerName; - this.background = background; - this.logo = logo; - this.progressBar = progressBar; - this.splash = splash; - this.waterMark = waterMark; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("ContentLauncherClusterBrandingInformationStruct {\n"); - output.append("\tproviderName: "); - output.append(providerName); - output.append("\n"); - output.append("\tbackground: "); - output.append(background); - output.append("\n"); - output.append("\tlogo: "); - output.append(logo); - output.append("\n"); - output.append("\tprogressBar: "); - output.append(progressBar); - output.append("\n"); - output.append("\tsplash: "); - output.append(splash); - output.append("\n"); - output.append("\twaterMark: "); - output.append(waterMark); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class AudioOutputClusterOutputInfoStruct { -public Integer index; -public Integer outputType; -public String name; - - public AudioOutputClusterOutputInfoStruct( - Integer index - , Integer outputType - , String name - ) { - this.index = index; - this.outputType = outputType; - this.name = name; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("AudioOutputClusterOutputInfoStruct {\n"); - output.append("\tindex: "); - output.append(index); - output.append("\n"); - output.append("\toutputType: "); - output.append(outputType); - output.append("\n"); - output.append("\tname: "); - output.append(name); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class ApplicationLauncherClusterApplicationStruct { -public Integer catalogVendorID; -public String applicationID; - - public ApplicationLauncherClusterApplicationStruct( - Integer catalogVendorID - , String applicationID - ) { - this.catalogVendorID = catalogVendorID; - this.applicationID = applicationID; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("ApplicationLauncherClusterApplicationStruct {\n"); - output.append("\tcatalogVendorID: "); - output.append(catalogVendorID); - output.append("\n"); - output.append("\tapplicationID: "); - output.append(applicationID); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class ApplicationLauncherClusterApplicationEPStruct { -public ChipStructs.ApplicationLauncherClusterApplicationStruct application; -public Optional endpoint; - - public ApplicationLauncherClusterApplicationEPStruct( - ChipStructs.ApplicationLauncherClusterApplicationStruct application - , Optional endpoint - ) { - this.application = application; - this.endpoint = endpoint; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("ApplicationLauncherClusterApplicationEPStruct {\n"); - output.append("\tapplication: "); - output.append(application); - output.append("\n"); - output.append("\tendpoint: "); - output.append(endpoint); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class ApplicationBasicClusterApplicationStruct { -public Integer catalogVendorID; -public String applicationID; - - public ApplicationBasicClusterApplicationStruct( - Integer catalogVendorID - , String applicationID - ) { - this.catalogVendorID = catalogVendorID; - this.applicationID = applicationID; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("ApplicationBasicClusterApplicationStruct {\n"); - output.append("\tcatalogVendorID: "); - output.append(catalogVendorID); - output.append("\n"); - output.append("\tapplicationID: "); - output.append(applicationID); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class UnitTestingClusterSimpleStruct { -public Integer a; -public Boolean b; -public Integer c; -public byte[] d; -public String e; -public Integer f; -public Float g; -public Double h; - - public UnitTestingClusterSimpleStruct( - Integer a - , Boolean b - , Integer c - , byte[] d - , String e - , Integer f - , Float g - , Double h - ) { - this.a = a; - this.b = b; - this.c = c; - this.d = d; - this.e = e; - this.f = f; - this.g = g; - this.h = h; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("UnitTestingClusterSimpleStruct {\n"); - output.append("\ta: "); - output.append(a); - output.append("\n"); - output.append("\tb: "); - output.append(b); - output.append("\n"); - output.append("\tc: "); - output.append(c); - output.append("\n"); - output.append("\td: "); - output.append(Arrays.toString(d)); - output.append("\n"); - output.append("\te: "); - output.append(e); - output.append("\n"); - output.append("\tf: "); - output.append(f); - output.append("\n"); - output.append("\tg: "); - output.append(g); - output.append("\n"); - output.append("\th: "); - output.append(h); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class UnitTestingClusterTestFabricScoped { -public Integer fabricSensitiveInt8u; -public Optional optionalFabricSensitiveInt8u; -public @Nullable Integer nullableFabricSensitiveInt8u; -public @Nullable Optional nullableOptionalFabricSensitiveInt8u; -public String fabricSensitiveCharString; -public ChipStructs.UnitTestingClusterSimpleStruct fabricSensitiveStruct; -public ArrayList fabricSensitiveInt8uList; -public Integer fabricIndex; - - public UnitTestingClusterTestFabricScoped( - Integer fabricSensitiveInt8u - , Optional optionalFabricSensitiveInt8u - , @Nullable Integer nullableFabricSensitiveInt8u - , @Nullable Optional nullableOptionalFabricSensitiveInt8u - , String fabricSensitiveCharString - , ChipStructs.UnitTestingClusterSimpleStruct fabricSensitiveStruct - , ArrayList fabricSensitiveInt8uList - , Integer fabricIndex - ) { - this.fabricSensitiveInt8u = fabricSensitiveInt8u; - this.optionalFabricSensitiveInt8u = optionalFabricSensitiveInt8u; - this.nullableFabricSensitiveInt8u = nullableFabricSensitiveInt8u; - this.nullableOptionalFabricSensitiveInt8u = nullableOptionalFabricSensitiveInt8u; - this.fabricSensitiveCharString = fabricSensitiveCharString; - this.fabricSensitiveStruct = fabricSensitiveStruct; - this.fabricSensitiveInt8uList = fabricSensitiveInt8uList; - this.fabricIndex = fabricIndex; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("UnitTestingClusterTestFabricScoped {\n"); - output.append("\tfabricSensitiveInt8u: "); - output.append(fabricSensitiveInt8u); - output.append("\n"); - output.append("\toptionalFabricSensitiveInt8u: "); - output.append(optionalFabricSensitiveInt8u); - output.append("\n"); - output.append("\tnullableFabricSensitiveInt8u: "); - output.append(nullableFabricSensitiveInt8u); - output.append("\n"); - output.append("\tnullableOptionalFabricSensitiveInt8u: "); - output.append(nullableOptionalFabricSensitiveInt8u); - output.append("\n"); - output.append("\tfabricSensitiveCharString: "); - output.append(fabricSensitiveCharString); - output.append("\n"); - output.append("\tfabricSensitiveStruct: "); - output.append(fabricSensitiveStruct); - output.append("\n"); - output.append("\tfabricSensitiveInt8uList: "); - output.append(fabricSensitiveInt8uList); - output.append("\n"); - output.append("\tfabricIndex: "); - output.append(fabricIndex); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class UnitTestingClusterNullablesAndOptionalsStruct { -public @Nullable Integer nullableInt; -public Optional optionalInt; -public @Nullable Optional nullableOptionalInt; -public @Nullable String nullableString; -public Optional optionalString; -public @Nullable Optional nullableOptionalString; -public @Nullable ChipStructs.UnitTestingClusterSimpleStruct nullableStruct; -public Optional optionalStruct; -public @Nullable Optional nullableOptionalStruct; -public @Nullable ArrayList nullableList; -public Optional> optionalList; -public @Nullable Optional> nullableOptionalList; - - public UnitTestingClusterNullablesAndOptionalsStruct( - @Nullable Integer nullableInt - , Optional optionalInt - , @Nullable Optional nullableOptionalInt - , @Nullable String nullableString - , Optional optionalString - , @Nullable Optional nullableOptionalString - , @Nullable ChipStructs.UnitTestingClusterSimpleStruct nullableStruct - , Optional optionalStruct - , @Nullable Optional nullableOptionalStruct - , @Nullable ArrayList nullableList - , Optional> optionalList - , @Nullable Optional> nullableOptionalList - ) { - this.nullableInt = nullableInt; - this.optionalInt = optionalInt; - this.nullableOptionalInt = nullableOptionalInt; - this.nullableString = nullableString; - this.optionalString = optionalString; - this.nullableOptionalString = nullableOptionalString; - this.nullableStruct = nullableStruct; - this.optionalStruct = optionalStruct; - this.nullableOptionalStruct = nullableOptionalStruct; - this.nullableList = nullableList; - this.optionalList = optionalList; - this.nullableOptionalList = nullableOptionalList; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("UnitTestingClusterNullablesAndOptionalsStruct {\n"); - output.append("\tnullableInt: "); - output.append(nullableInt); - output.append("\n"); - output.append("\toptionalInt: "); - output.append(optionalInt); - output.append("\n"); - output.append("\tnullableOptionalInt: "); - output.append(nullableOptionalInt); - output.append("\n"); - output.append("\tnullableString: "); - output.append(nullableString); - output.append("\n"); - output.append("\toptionalString: "); - output.append(optionalString); - output.append("\n"); - output.append("\tnullableOptionalString: "); - output.append(nullableOptionalString); - output.append("\n"); - output.append("\tnullableStruct: "); - output.append(nullableStruct); - output.append("\n"); - output.append("\toptionalStruct: "); - output.append(optionalStruct); - output.append("\n"); - output.append("\tnullableOptionalStruct: "); - output.append(nullableOptionalStruct); - output.append("\n"); - output.append("\tnullableList: "); - output.append(nullableList); - output.append("\n"); - output.append("\toptionalList: "); - output.append(optionalList); - output.append("\n"); - output.append("\tnullableOptionalList: "); - output.append(nullableOptionalList); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class UnitTestingClusterNestedStruct { -public Integer a; -public Boolean b; -public ChipStructs.UnitTestingClusterSimpleStruct c; - - public UnitTestingClusterNestedStruct( - Integer a - , Boolean b - , ChipStructs.UnitTestingClusterSimpleStruct c - ) { - this.a = a; - this.b = b; - this.c = c; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("UnitTestingClusterNestedStruct {\n"); - output.append("\ta: "); - output.append(a); - output.append("\n"); - output.append("\tb: "); - output.append(b); - output.append("\n"); - output.append("\tc: "); - output.append(c); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class UnitTestingClusterNestedStructList { -public Integer a; -public Boolean b; -public ChipStructs.UnitTestingClusterSimpleStruct c; -public ArrayList d; -public ArrayList e; -public ArrayList f; -public ArrayList g; - - public UnitTestingClusterNestedStructList( - Integer a - , Boolean b - , ChipStructs.UnitTestingClusterSimpleStruct c - , ArrayList d - , ArrayList e - , ArrayList f - , ArrayList g - ) { - this.a = a; - this.b = b; - this.c = c; - this.d = d; - this.e = e; - this.f = f; - this.g = g; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("UnitTestingClusterNestedStructList {\n"); - output.append("\ta: "); - output.append(a); - output.append("\n"); - output.append("\tb: "); - output.append(b); - output.append("\n"); - output.append("\tc: "); - output.append(c); - output.append("\n"); - output.append("\td: "); - output.append(d); - output.append("\n"); - output.append("\te: "); - output.append(e); - output.append("\n"); - output.append("\tf: "); - output.append(f); - output.append("\n"); - output.append("\tg: "); - output.append(g); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class UnitTestingClusterDoubleNestedStructList { -public ArrayList a; - - public UnitTestingClusterDoubleNestedStructList( - ArrayList a - ) { - this.a = a; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("UnitTestingClusterDoubleNestedStructList {\n"); - output.append("\ta: "); - output.append(a); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -public static class UnitTestingClusterTestListStructOctet { -public Long member1; -public byte[] member2; - - public UnitTestingClusterTestListStructOctet( - Long member1 - , byte[] member2 - ) { - this.member1 = member1; - this.member2 = member2; - } - - @Override - public String toString() { - StringBuilder output = new StringBuilder(); - output.append("UnitTestingClusterTestListStructOctet {\n"); - output.append("\tmember1: "); - output.append(member1); - output.append("\n"); - output.append("\tmember2: "); - output.append(Arrays.toString(member2)); - output.append("\n"); - output.append("}\n"); - return output.toString(); - } -} - -} \ No newline at end of file