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.