Package io.a2a.client
Class Client
java.lang.Object
io.a2a.client.AbstractClient
io.a2a.client.Client
-
Method Summary
Modifier and TypeMethodDescriptionstatic ClientBuildercancelTask(TaskIdParams request, @Nullable ClientCallContext context) Request the agent to cancel a specific task.voidclose()Close the transport and release any associated resources.voiddeleteTaskPushNotificationConfigurations(DeleteTaskPushNotificationConfigParams request, @Nullable ClientCallContext context) Delete the list of push notification configurations for a specific task.getAgentCard(@Nullable ClientCallContext context) Retrieve the AgentCard.getTask(TaskQueryParams request, @Nullable ClientCallContext context) Retrieve the current state and history of a specific task.getTaskPushNotificationConfiguration(GetTaskPushNotificationConfigParams request, @Nullable ClientCallContext context) Retrieve the push notification configuration for a specific task.listTaskPushNotificationConfigurations(ListTaskPushNotificationConfigParams request, @Nullable ClientCallContext context) Retrieve the list of push notification configurations for a specific task.voidresubscribe(TaskIdParams request, @Nullable ClientCallContext context) Resubscribe to a task's event stream.voidresubscribe(TaskIdParams request, @Nullable List<BiConsumer<ClientEvent, AgentCard>> consumers, @Nullable Consumer<Throwable> streamingErrorHandler, @Nullable ClientCallContext context) Resubscribe to a task's event stream.voidsendMessage(Message request, @Nullable ClientCallContext context) Send a message to the remote agent.voidsendMessage(Message request, PushNotificationConfig pushNotificationConfiguration, Map<String, Object> metatadata, @Nullable ClientCallContext context) Send a message to the remote agent.voidsendMessage(Message request, List<BiConsumer<ClientEvent, AgentCard>> consumers, Consumer<Throwable> streamingErrorHandler, @Nullable ClientCallContext context) Send a message to the remote agent.setTaskPushNotificationConfiguration(TaskPushNotificationConfig request, @Nullable ClientCallContext context) Set or update the push notification configuration for a specific task.Methods inherited from class io.a2a.client.AbstractClient
cancelTask, deleteTaskPushNotificationConfigurations, getAgentCard, getStreamingErrorHandler, getTask, getTaskPushNotificationConfiguration, listTaskPushNotificationConfigurations, resubscribe, resubscribe, sendMessage, sendMessage, sendMessage, setTaskPushNotificationConfiguration
-
Method Details
-
builder
-
sendMessage
public void sendMessage(Message request, @Nullable ClientCallContext context) throws A2AClientException Description copied from class:AbstractClientSend a message to the remote agent. This method will automatically use the streaming or non-streaming approach as determined by the server's agent card and the client configuration. The configured client consumers will be used to handle messages, tasks, and update events received from the remote agent. The configured streaming error handler will be used if an error occurs during streaming. The configured client push notification configuration will get used for streaming.- Specified by:
sendMessagein classAbstractClient- Parameters:
request- the messagecontext- optional client call context for the request (may benull)- Throws:
A2AClientException- if sending the message fails for any reason
-
sendMessage
public void sendMessage(Message request, List<BiConsumer<ClientEvent, AgentCard>> consumers, Consumer<Throwable> streamingErrorHandler, @Nullable ClientCallContext context) throws A2AClientExceptionDescription copied from class:AbstractClientSend a message to the remote agent. This method will automatically use the streaming or non-streaming approach as determined by the server's agent card and the client configuration. The specified client consumers will be used to handle messages, tasks, and update events received from the remote agent. The specified streaming error handler will be used if an error occurs during streaming. The configured client push notification configuration will get used for streaming.- Specified by:
sendMessagein classAbstractClient- Parameters:
request- the messageconsumers- a list of consumers to pass responses from the remote agent tostreamingErrorHandler- an error handler that should be used for the streaming case if an error occurscontext- optional client call context for the request (may benull)- Throws:
A2AClientException- if sending the message fails for any reason
-
sendMessage
public void sendMessage(Message request, PushNotificationConfig pushNotificationConfiguration, Map<String, Object> metatadata, @Nullable ClientCallContext context) throws A2AClientExceptionDescription copied from class:AbstractClientSend a message to the remote agent. This method will automatically use the streaming or non-streaming approach as determined by the server's agent card and the client configuration. The configured client consumers will be used to handle messages, tasks, and update events received from the remote agent. The configured streaming error handler will be used if an error occurs during streaming.- Specified by:
sendMessagein classAbstractClient- Parameters:
request- the messagepushNotificationConfiguration- the push notification configuration that should be used if the streaming approach is usedmetatadata- the optional metadata to include when sending the messagecontext- optional client call context for the request (may benull)- Throws:
A2AClientException- if sending the message fails for any reason
-
getTask
public Task getTask(TaskQueryParams request, @Nullable ClientCallContext context) throws A2AClientException Description copied from class:AbstractClientRetrieve the current state and history of a specific task.- Specified by:
getTaskin classAbstractClient- Parameters:
request- the task query parameters specifying which task to retrievecontext- optional client call context for the request (may benull)- Returns:
- the task
- Throws:
A2AClientException- if retrieving the task fails for any reason
-
cancelTask
public Task cancelTask(TaskIdParams request, @Nullable ClientCallContext context) throws A2AClientException Description copied from class:AbstractClientRequest the agent to cancel a specific task.- Specified by:
cancelTaskin classAbstractClient- Parameters:
request- the task ID parameters specifying which task to cancelcontext- optional client call context for the request (may benull)- Returns:
- the cancelled task
- Throws:
A2AClientException- if cancelling the task fails for any reason
-
setTaskPushNotificationConfiguration
public TaskPushNotificationConfig setTaskPushNotificationConfiguration(TaskPushNotificationConfig request, @Nullable ClientCallContext context) throws A2AClientException Description copied from class:AbstractClientSet or update the push notification configuration for a specific task.- Specified by:
setTaskPushNotificationConfigurationin classAbstractClient- Parameters:
request- the push notification configuration to set for the taskcontext- optional client call context for the request (may benull)- Returns:
- the configured TaskPushNotificationConfig
- Throws:
A2AClientException- if setting the task push notification configuration fails for any reason
-
getTaskPushNotificationConfiguration
public TaskPushNotificationConfig getTaskPushNotificationConfiguration(GetTaskPushNotificationConfigParams request, @Nullable ClientCallContext context) throws A2AClientException Description copied from class:AbstractClientRetrieve the push notification configuration for a specific task.- Specified by:
getTaskPushNotificationConfigurationin classAbstractClient- Parameters:
request- the parameters specifying which task's notification config to retrievecontext- optional client call context for the request (may benull)- Returns:
- the task push notification config
- Throws:
A2AClientException- if getting the task push notification config fails for any reason
-
listTaskPushNotificationConfigurations
public List<TaskPushNotificationConfig> listTaskPushNotificationConfigurations(ListTaskPushNotificationConfigParams request, @Nullable ClientCallContext context) throws A2AClientException Description copied from class:AbstractClientRetrieve the list of push notification configurations for a specific task.- Specified by:
listTaskPushNotificationConfigurationsin classAbstractClient- Parameters:
request- the parameters specifying which task's notification configs to retrievecontext- optional client call context for the request (may benull)- Returns:
- the list of task push notification configs
- Throws:
A2AClientException- if getting the task push notification configs fails for any reason
-
deleteTaskPushNotificationConfigurations
public void deleteTaskPushNotificationConfigurations(DeleteTaskPushNotificationConfigParams request, @Nullable ClientCallContext context) throws A2AClientException Description copied from class:AbstractClientDelete the list of push notification configurations for a specific task.- Specified by:
deleteTaskPushNotificationConfigurationsin classAbstractClient- Parameters:
request- the parameters specifying which task's notification configs to deletecontext- optional client call context for the request (may benull)- Throws:
A2AClientException- if deleting the task push notification configs fails for any reason
-
resubscribe
public void resubscribe(TaskIdParams request, @Nullable ClientCallContext context) throws A2AClientException Description copied from class:AbstractClientResubscribe to a task's event stream. This is only available if both the client and server support streaming. The configured client consumers will be used to handle messages, tasks, and update events received from the remote agent. The configured streaming error handler will be used if an error occurs during streaming.- Specified by:
resubscribein classAbstractClient- Parameters:
request- the parameters specifying which task's notification configs to deletecontext- optional client call context for the request (may benull)- Throws:
A2AClientException- if resubscribing fails for any reason
-
resubscribe
public void resubscribe(TaskIdParams request, @Nullable List<BiConsumer<ClientEvent, AgentCard>> consumers, @Nullable Consumer<Throwable> streamingErrorHandler, @Nullable ClientCallContext context) throws A2AClientExceptionDescription copied from class:AbstractClientResubscribe to a task's event stream. This is only available if both the client and server support streaming. The specified client consumers will be used to handle messages, tasks, and update events received from the remote agent. The specified streaming error handler will be used if an error occurs during streaming.- Specified by:
resubscribein classAbstractClient- Parameters:
request- the parameters specifying which task's notification configs to deleteconsumers- a list of consumers to pass responses from the remote agent tostreamingErrorHandler- an error handler that should be used for the streaming case if an error occurscontext- optional client call context for the request (may benull)- Throws:
A2AClientException- if resubscribing fails for any reason
-
getAgentCard
Description copied from class:AbstractClientRetrieve the AgentCard.- Specified by:
getAgentCardin classAbstractClient- Parameters:
context- optional client call context for the request (may benull)- Returns:
- the AgentCard
- Throws:
A2AClientException- if retrieving the agent card fails for any reason
-
close
public void close()Description copied from class:AbstractClientClose the transport and release any associated resources.- Specified by:
closein classAbstractClient
-