Manages gRPC connections with pooling and lifecycle management.
Summary
Functions
Calls a tool via gRPC.
Calls a tool stream via gRPC.
Returns a specification to start this module under a supervisor.
Closes the gRPC connection.
Gets the manual (available tools) from the gRPC service.
Checks if the connection is healthy.
Starts a new gRPC connection process.
Types
@type t() :: %ExUtcp.Transports.Grpc.Connection{ channel: GRPC.Channel.t(), connection_state: :connecting | :connected | :disconnected | :error, last_used: DateTime.t(), max_retries: non_neg_integer(), provider: map(), retry_count: non_neg_integer(), stub: module() }
Functions
Calls a tool via gRPC.
Calls a tool stream via gRPC.
Returns a specification to start this module under a supervisor.
See Supervisor.
@spec close(pid()) :: :ok
Closes the gRPC connection.
Gets the manual (available tools) from the gRPC service.
Checks if the connection is healthy.
Starts a new gRPC connection process.