Reference documentation and code samples for the gapic-common class Gapic::ServiceStub::RpcCall.
Inherits
- Object
Methods
#call
def call(request, options: nil) { |response, operation| ... } -> Object
Invoke the RPC call.
- request (Object) — The request object.
- options (Gapic::CallOptions, Hash) (defaults to: nil) — The options for making the RPC call. A Hash can be provided to customize the options object, using keys that match the arguments for CallOptions.new. This object should only be used once.
-
(response, operation) — Access the response along with the RPC operation. Additionally, throwing
:response, obj
within the block will change the return value toobj
.
- response (Object) — The response object.
- operation (::GRPC::ActiveCall::Operation) — The RPC operation for the response.
- (Object) — The response object.
require "google/showcase/v1beta1/echo_pb" require "google/showcase/v1beta1/echo_services_pb" require "gapic" require "gapic/grpc" echo_channel = ::GRPC::Core::Channel.new( "localhost:7469", nil, :this_channel_is_insecure ) echo_stub = Gapic::ServiceStub.new( Google::Showcase::V1beta1::Echo::Stub, endpoint: "localhost:7469", credentials: echo_channel ) echo_call = Gapic::ServiceStub::RpcCall.new echo_stub.method :echo request = Google::Showcase::V1beta1::EchoRequest.new response = echo_call.call request
Using custom call options:
require "google/showcase/v1beta1/echo_pb" require "google/showcase/v1beta1/echo_services_pb" require "gapic" require "gapic/grpc" echo_channel = ::GRPC::Core::Channel.new( "localhost:7469", nil, :this_channel_is_insecure ) echo_stub = Gapic::ServiceStub.new( Google::Showcase::V1beta1::Echo::Stub, endpoint: "localhost:7469", credentials: echo_channel ) echo_call = Gapic::ServiceStub::RpcCall.new echo_stub.method :echo request = Google::Showcase::V1beta1::EchoRequest.new options = Gapic::CallOptions.new( retry_policy = { retry_codes: [::GRPC::Core::StatusCodes::UNAVAILABLE] } ) response = echo_call.call request, options: options
Accessing the RPC operation using a block:
require "google/showcase/v1beta1/echo_pb" require "google/showcase/v1beta1/echo_services_pb" require "gapic" require "gapic/grpc" echo_channel = ::GRPC::Core::Channel.new( "localhost:7469", nil, :this_channel_is_insecure ) echo_stub = Gapic::ServiceStub.new( Google::Showcase::V1beta1::Echo::Stub, endpoint: "localhost:7469", credentials: echo_channel ) echo_call = Gapic::ServiceStub::RpcCall.new echo_stub.method :echo request = Google::Showcase::V1beta1::EchoRequest.new metadata = echo_call.call request do |_response, operation| throw :response, operation.trailing_metadata end
#initialize
def initialize(stub_method, stub_logger: nil, method_name: nil) -> RpcCall
Creates an API object for making a single RPC call.
In typical usage, stub_method
will be a proc used to make an RPC request. This will mostly likely be a bound
method from a request Stub used to make an RPC call.
The result is created by applying a series of function decorators defined in this module to stub_method
.
The result is another proc which has the same signature as the original.
- stub_method (Proc) — Used to make a bare rpc call.
- (RpcCall) — a new instance of RpcCall
#stub_method
def stub_method()
Returns the value of attribute stub_method.