class MagicPipe::Senders::Sync
Public Instance Methods
build_message(metadata)
click to toggle source
# File lib/magic_pipe/senders/sync.rb, line 20 def build_message(metadata) Envelope.new(body: data, **metadata) end
build_metadata()
click to toggle source
# File lib/magic_pipe/senders/sync.rb, line 24 def build_metadata { topic: @topic, producer: @config.producer_name, time: @time.to_i, mime: @codec::TYPE } end
call()
click to toggle source
# File lib/magic_pipe/senders/sync.rb, line 9 def call metadata = build_metadata envelope = build_message(metadata) payload = @codec.new(envelope).encode @transport.submit!(payload, metadata) track_success(@metrics, @topic) rescue => e track_failure(@metrics, @topic) raise e end
data()
click to toggle source
# File lib/magic_pipe/senders/sync.rb, line 33 def data @wrapper ? @wrapper.new(@object) : @object end