Skip to content

Commit eeed1ac

Browse files
committed
Make SDK and TCK agent executors use TaskUpdater
1 parent a114391 commit eeed1ac

File tree

2 files changed

+6
-11
lines changed

2 files changed

+6
-11
lines changed

src/test/java/io/a2a/server/apps/AgentExecutorProducer.java

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
import io.a2a.server.agentexecution.AgentExecutor;
77
import io.a2a.server.agentexecution.RequestContext;
88
import io.a2a.server.events.EventQueue;
9+
import io.a2a.server.tasks.TaskUpdater;
910
import io.a2a.spec.JSONRPCError;
1011
import io.a2a.spec.Task;
1112
import io.a2a.spec.TaskState;
@@ -29,12 +30,8 @@ public void execute(RequestContext context, EventQueue eventQueue) throws JSONRP
2930
@Override
3031
public void cancel(RequestContext context, EventQueue eventQueue) throws JSONRPCError {
3132
if (context.getTask().getId().equals("cancel-task-123")) {
32-
Task task = context.getTask();
33-
Task updated = new Task.Builder(task)
34-
.status(new TaskStatus(TaskState.CANCELED))
35-
.build();
36-
37-
eventQueue.enqueueEvent(updated);
33+
TaskUpdater taskUpdater = new TaskUpdater(eventQueue, context);
34+
taskUpdater.cancel();
3835
} else if (context.getTask().getId().equals("cancel-task-not-supported-123")) {
3936
throw new UnsupportedOperationError();
4037
}

src/test/java/io/a2a/server/requesthandlers/JSONRPCHandlerTest.java

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@
3535
import io.a2a.server.tasks.PushNotifier;
3636
import io.a2a.server.tasks.ResultAggregator;
3737
import io.a2a.server.tasks.TaskStore;
38+
import io.a2a.server.tasks.TaskUpdater;
3839
import io.a2a.spec.AgentCapabilities;
3940
import io.a2a.spec.AgentCard;
4041
import io.a2a.spec.Artifact;
@@ -166,11 +167,8 @@ public void testOnCancelTaskSuccess() throws Exception {
166167
// Looking at the Python implementation, they typically use AgentExecutors that
167168
// don't support cancellation. So my theory is the Agent updates the task to the CANCEL status
168169
Task task = context.getTask();
169-
Task updated = new Task.Builder(task)
170-
.status(new TaskStatus(TaskState.CANCELED))
171-
.build();
172-
173-
eventQueue.enqueueEvent(updated);
170+
TaskUpdater taskUpdater = new TaskUpdater(eventQueue, context);
171+
taskUpdater.cancel();
174172
};
175173

176174
CancelTaskRequest request = new CancelTaskRequest("111", new TaskIdParams(MINIMAL_TASK.getId()));

0 commit comments

Comments
 (0)