Package org.a2aproject.sdk.transport.grpc.handler


@NullMarked package org.a2aproject.sdk.transport.grpc.handler
gRPC transport handler implementations for the A2A protocol.

This package contains the core gRPC handler that processes gRPC requests and translates them to A2A protocol operations. It supports both unary (blocking) and streaming responses with proper gRPC error handling and status codes.

gRPC Protocol

This implementation uses Protocol Buffers for message serialization and provides:

  • Unary RPC calls for blocking operations
  • Server streaming RPC for streaming responses
  • Rich error handling with gRPC status codes
  • Context-aware metadata extraction

Supported Methods

  • SendMessage - Send message (unary/blocking)
  • SendStreamingMessage - Send message (server streaming)
  • SubscribeToTask - Subscribe to task updates (server streaming)
  • GetTask - Get task by ID
  • ListTasks - List tasks with filtering
  • CancelTask - Cancel task execution
  • GetTaskPushNotificationConfig - Get push notification config
  • CreateTaskPushNotificationConfig - Create push notification config
  • ListTaskPushNotificationConfigs - List push notification configs
  • DeleteTaskPushNotificationConfig - Delete push notification config
  • GetExtendedAgentCard - Get extended agent card

Context Access

The gRPC handler provides rich context information equivalent to Python's grpc.aio.ServicerContext, including:

  • Request metadata (headers)
  • Method name
  • Peer information
  • A2A protocol version and extensions
See Also:
  • Class
    Description
    Factory interface for creating ServerCallContext from gRPC request context.
    gRPC transport handler for processing A2A protocol requests.