Method: Aws::Binary::EventStreamEncoder#encode

Defined in:
lib/aws-sdk-core/binary/event_stream_encoder.rb

#encode(event_type, params) ⇒ Object

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.



27
28
29
30
31
32
33
34
35
36
37
38
39
40
# File 'lib/aws-sdk-core/binary/event_stream_encoder.rb', line 27

def encode(event_type, params)
  if event_type == :end_stream
    payload = ''
  else
    payload = @encoder.encode(@event_builder.apply(event_type, params))
  end
  headers, signature = @signer.sign_event(@prior_signature, payload, @encoder)
  @prior_signature = signature
  message = Aws::EventStream::Message.new(
    headers: headers,
    payload: StringIO.new(payload)
  )
  @encoder.encode(message)
end