Skip to content

Commit 253d068

Browse files
committed
Fix mergedMetadata maintain null
1 parent 0e7215a commit 253d068

1 file changed

Lines changed: 10 additions & 7 deletions

File tree

spec/src/main/java/io/a2a/util/Utils.java

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -132,17 +132,20 @@ public static Task appendArtifactToTask(Task task, TaskArtifactUpdateEvent event
132132
List<Part<?>> parts = new ArrayList<>(existingArtifact.parts());
133133
parts.addAll(newArtifact.parts());
134134

135-
Map<String, Object> metadata = new HashMap<>();
136-
if (existingArtifact.metadata() != null) {
137-
metadata.putAll(existingArtifact.metadata());
138-
}
139-
if (newArtifact.metadata() != null) {
140-
metadata.putAll(newArtifact.metadata());
135+
Map<String, Object> mergedMetadata = null;
136+
if (existingArtifact.metadata() != null || newArtifact.metadata() != null) {
137+
mergedMetadata = new HashMap<>();
138+
if (existingArtifact.metadata() != null) {
139+
mergedMetadata.putAll(existingArtifact.metadata());
140+
}
141+
if (newArtifact.metadata() != null) {
142+
mergedMetadata.putAll(newArtifact.metadata());
143+
}
141144
}
142145

143146
Artifact updated = Artifact.builder(existingArtifact)
144147
.parts(parts)
145-
.metadata(metadata)
148+
.metadata(mergedMetadata)
146149
.build();
147150
artifacts.set(existingArtifactIndex, updated);
148151
} else {

0 commit comments

Comments
 (0)