Class: Gritz::Controller::Request

Inherits:
Object
  • Object
show all
Defined in:
/home/runner/work/gritz/gritz/sources/gritz-core/lib/gritz/controller.rb

Constant Summary collapse

STORE_KEY =
Object.new.freeze

Instance Method Summary collapse

Constructor Details

#initialize(call, context) ⇒ Request

Returns a new instance of Request.



103
104
105
106
107
108
109
110
# File '/home/runner/work/gritz/gritz/sources/gritz-core/lib/gritz/controller.rb', line 103

def initialize(call, context)
  @call = call
  @context = context
  unless context.method.client_streaming?
    @message = @call.read
    @context.record_received(@message)
  end
end

Instance Method Details

#each_message ⇒ Object Also known as: messages



122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
# File '/home/runner/work/gritz/gritz/sources/gritz-core/lib/gritz/controller.rb', line 122

def each_message
  return enum_for(__method__) unless block_given?

  unless @context.method.client_streaming?
    value = message
    yield value if value
    return
  end

  @call.each_message do |message|
    @context.check_deadline!
    @context.check_cancelled!
    @context.record_received(message)
    yield message
  end
end

#message ⇒ Object



112
113
114
115
116
117
118
119
120
# File '/home/runner/work/gritz/gritz/sources/gritz-core/lib/gritz/controller.rb', line 112

def message
  @context.check_deadline!
  @context.check_cancelled!
  return @message if defined?(@message)

  @message = @call.read
  @context.record_received(@message)
  @message
end