class GrpcKit::Session::Stream
Attributes
headers[R]
inflight[RW]
pending_recv_data[R]
pending_send_data[R]
status[R]
stream_id[RW]
trailer_data[R]
Public Class Methods
new(stream_id:)
click to toggle source
@param stream_id
[Integer]
# File lib/grpc_kit/session/stream.rb, line 21 def initialize(stream_id:) @stream_id = stream_id @end_read_stream = false @headers = GrpcKit::Session::Headers.new @pending_send_data = GrpcKit::Session::SendBuffer.new @pending_recv_data = GrpcKit::Session::RecvBuffer.new @inflight = false @trailer_data = {} @status = GrpcKit::Session::StreamStatus.new @draining = false end
Public Instance Methods
add_header(name, value)
click to toggle source
@param name [String] @param value [String] @return [void]
# File lib/grpc_kit/session/stream.rb, line 70 def add_header(name, value) @headers.add(name, value) end
close()
click to toggle source
# File lib/grpc_kit/session/stream.rb, line 76 def close status.close pending_recv_data.close end
close_remote()
click to toggle source
# File lib/grpc_kit/session/stream.rb, line 81 def close_remote status.close_remote pending_recv_data.close end
drain()
click to toggle source
@return [void]
# File lib/grpc_kit/session/stream.rb, line 43 def drain @draining = true end
end_read()
click to toggle source
# File lib/grpc_kit/session/stream.rb, line 38 def end_read @pending_recv_data.end_read end
end_write()
click to toggle source
# File lib/grpc_kit/session/stream.rb, line 34 def end_write @pending_send_data.end_write end
read_recv_data(last: false, blocking:)
click to toggle source
@param last [Boolean] @param blocking [Boolean] @return [void]
# File lib/grpc_kit/session/stream.rb, line 63 def read_recv_data(last: false, blocking:) @pending_recv_data.read(last: last, blocking: blocking) end
write_send_data(data, last: false)
click to toggle source
@param data [String] @param last [Boolean] @return [void]
# File lib/grpc_kit/session/stream.rb, line 56 def write_send_data(data, last: false) @pending_send_data.write(data, last: last) end
write_trailers_data(tarilers)
click to toggle source
@param tarilers [Hash<String,String>] @return [void]
# File lib/grpc_kit/session/stream.rb, line 49 def write_trailers_data(tarilers) @trailer_data = tarilers end