Class: GrpcKit::Calls::Server::ClientStreamer

Inherits:
Call
  • Object
show all
Defined in:
lib/grpc_kit/calls/server_client_streamer.rb

Instance Attribute Summary collapse

Attributes inherited from Call

#method

Instance Method Summary collapse

Methods inherited from Call

#normal_mode, #restrict_mode

Constructor Details

#initializeClientStreamer

Returns a new instance of ClientStreamer.



12
13
14
15
16
17
# File 'lib/grpc_kit/calls/server_client_streamer.rb', line 12

def initialize(*)
  super

  @outgoing_initial_metadata = {}
  @outgoing_trailing_metadata = {}
end

Instance Attribute Details

#deadlineObject (readonly)

Returns the value of attribute deadline.



8
9
10
# File 'lib/grpc_kit/calls/server_client_streamer.rb', line 8

def deadline
  @deadline
end

#metadataObject (readonly) Also known as: incoming_metadata

Returns the value of attribute metadata.



8
9
10
# File 'lib/grpc_kit/calls/server_client_streamer.rb', line 8

def 
  @metadata
end

#outgoing_initial_metadataObject (readonly)

Returns the value of attribute outgoing_initial_metadata.



9
10
11
# File 'lib/grpc_kit/calls/server_client_streamer.rb', line 9

def 
  @outgoing_initial_metadata
end

#outgoing_trailing_metadataObject (readonly)

Returns the value of attribute outgoing_trailing_metadata.



9
10
11
# File 'lib/grpc_kit/calls/server_client_streamer.rb', line 9

def 
  @outgoing_trailing_metadata
end

Instance Method Details

#recv(last: false) ⇒ Object



32
33
34
35
36
# File 'lib/grpc_kit/calls/server_client_streamer.rb', line 32

def recv(last: false)
  raise 'No method error' if @restrict

  @stream.recv_msg(@protobuf, last: last, limit_size: @config.max_receive_message_size)
end

#send_msg(data, last: false) ⇒ Object



19
20
21
22
23
24
25
26
27
28
29
30
# File 'lib/grpc_kit/calls/server_client_streamer.rb', line 19

def send_msg(data, last: false)
  raise 'No method error' if @restrict

  @stream.send_msg(
    data,
    @protobuf,
    last: last,
    initial_metadata: @outgoing_initial_metadata,
    trailing_metadata: @outgoing_trailing_metadata,
    limit_size: @config.max_send_message_size,
  )
end