Skip to content

Commit 28a8dfb

Browse files
committed
breadcrumb field in SetActiveDataset command should be optional
1 parent b157c5d commit 28a8dfb

File tree

10 files changed

+24
-17
lines changed

10 files changed

+24
-17
lines changed

src/app/zap-templates/zcl/data-model/chip/thread-border-router-management-cluster.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ limitations under the License.
6262
<command source="client" code="0x03" name="SetActiveDatasetRequest" optional="false">
6363
<description>On receipt of this command, the Thread Border Router will set or update the active Dataset of the Thread network that the Stub Router is connected to.</description>
6464
<arg name="ActiveDataset" type="octet_string" length="254"/>
65-
<arg name="Breadcrumb" type="int64u"/>
65+
<arg name="Breadcrumb" type="int64u" optional="true"/>
6666
<access op="invoke" privilege="manage"/>
6767
</command>
6868

src/controller/data_model/controller-clusters.matter

+1-1
Original file line numberDiff line numberDiff line change
@@ -7700,7 +7700,7 @@ cluster ThreadBorderRouterManagement = 1106 {
77007700

77017701
request struct SetActiveDatasetRequestRequest {
77027702
octet_string<254> activeDataset = 0;
7703-
int64u breadcrumb = 1;
7703+
optional int64u breadcrumb = 1;
77047704
}
77057705

77067706
request struct SetPendingDatasetRequestRequest {

src/controller/java/generated/java/chip/devicecontroller/ChipClusters.java

+3-3
Original file line numberDiff line numberDiff line change
@@ -53160,11 +53160,11 @@ public void onResponse(StructType invokeStructValue) {
5316053160
}}, commandId, commandArgs, timedInvokeTimeoutMs);
5316153161
}
5316253162

53163-
public void setActiveDatasetRequest(DefaultClusterCallback callback, byte[] activeDataset, Long breadcrumb) {
53163+
public void setActiveDatasetRequest(DefaultClusterCallback callback, byte[] activeDataset, Optional<Long> breadcrumb) {
5316453164
setActiveDatasetRequest(callback, activeDataset, breadcrumb, 0);
5316553165
}
5316653166

53167-
public void setActiveDatasetRequest(DefaultClusterCallback callback, byte[] activeDataset, Long breadcrumb, int timedInvokeTimeoutMs) {
53167+
public void setActiveDatasetRequest(DefaultClusterCallback callback, byte[] activeDataset, Optional<Long> breadcrumb, int timedInvokeTimeoutMs) {
5316853168
final long commandId = 3L;
5316953169

5317053170
ArrayList<StructElement> elements = new ArrayList<>();
@@ -53173,7 +53173,7 @@ public void setActiveDatasetRequest(DefaultClusterCallback callback, byte[] acti
5317353173
elements.add(new StructElement(activeDatasetFieldID, activeDatasettlvValue));
5317453174

5317553175
final long breadcrumbFieldID = 1L;
53176-
BaseTLVType breadcrumbtlvValue = new UIntType(breadcrumb);
53176+
BaseTLVType breadcrumbtlvValue = breadcrumb.<BaseTLVType>map((nonOptionalbreadcrumb) -> new UIntType(nonOptionalbreadcrumb)).orElse(new EmptyType());
5317753177
elements.add(new StructElement(breadcrumbFieldID, breadcrumbtlvValue));
5317853178

5317953179
StructType commandArgs = new StructType(elements);

src/controller/java/generated/java/chip/devicecontroller/ClusterInfoMapping.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -26670,15 +26670,15 @@ public Map<String, Map<String, InteractionInfo>> getCommandMap() {
2667026670
CommandParameterInfo threadBorderRouterManagementsetActiveDatasetRequestactiveDatasetCommandParameterInfo = new CommandParameterInfo("activeDataset", byte[].class, byte[].class);
2667126671
threadBorderRouterManagementsetActiveDatasetRequestCommandParams.put("activeDataset",threadBorderRouterManagementsetActiveDatasetRequestactiveDatasetCommandParameterInfo);
2667226672

26673-
CommandParameterInfo threadBorderRouterManagementsetActiveDatasetRequestbreadcrumbCommandParameterInfo = new CommandParameterInfo("breadcrumb", Long.class, Long.class);
26673+
CommandParameterInfo threadBorderRouterManagementsetActiveDatasetRequestbreadcrumbCommandParameterInfo = new CommandParameterInfo("breadcrumb", Optional.class, Long.class);
2667426674
threadBorderRouterManagementsetActiveDatasetRequestCommandParams.put("breadcrumb",threadBorderRouterManagementsetActiveDatasetRequestbreadcrumbCommandParameterInfo);
2667526675
InteractionInfo threadBorderRouterManagementsetActiveDatasetRequestInteractionInfo = new InteractionInfo(
2667626676
(cluster, callback, commandArguments) -> {
2667726677
((ChipClusters.ThreadBorderRouterManagementCluster) cluster)
2667826678
.setActiveDatasetRequest((DefaultClusterCallback) callback
2667926679
, (byte[])
2668026680
commandArguments.get("activeDataset")
26681-
, (Long)
26681+
, (Optional<Long>)
2668226682
commandArguments.get("breadcrumb")
2668326683
);
2668426684
},

src/controller/java/generated/java/matter/controller/cluster/clusters/ThreadBorderRouterManagementCluster.kt

+2-2
Original file line numberDiff line numberDiff line change
@@ -182,7 +182,7 @@ class ThreadBorderRouterManagementCluster(
182182

183183
suspend fun setActiveDatasetRequest(
184184
activeDataset: ByteArray,
185-
breadcrumb: ULong,
185+
breadcrumb: ULong?,
186186
timedInvokeTimeout: Duration? = null
187187
) {
188188
val commandId: UInt = 3u
@@ -194,7 +194,7 @@ class ThreadBorderRouterManagementCluster(
194194
tlvWriter.put(ContextSpecificTag(TAG_ACTIVE_DATASET_REQ), activeDataset)
195195

196196
val TAG_BREADCRUMB_REQ: Int = 1
197-
tlvWriter.put(ContextSpecificTag(TAG_BREADCRUMB_REQ), breadcrumb)
197+
breadcrumb?.let { tlvWriter.put(ContextSpecificTag(TAG_BREADCRUMB_REQ), breadcrumb) }
198198
tlvWriter.endStructure()
199199

200200
val request: InvokeRequest =

src/controller/python/chip/clusters/Objects.py

+2-2
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/darwin/Framework/CHIP/zap-generated/MTRCommandPayloadsObjc.h

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/darwin/Framework/CHIP/zap-generated/MTRCommandPayloadsObjc.mm

+5-2
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

zzz_generated/app-common/app-common/zap-generated/cluster-objects.h

+2-2
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

zzz_generated/darwin-framework-tool/zap-generated/cluster/Commands.h

+5-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)