1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
|
# frozen_string_literal: true
module Sentry
# @api private
class Envelope
class Item
attr_accessor :headers, :payload
def initialize(headers, payload)
@headers = headers
@payload = payload
end
def type
@headers[:type] || 'event'
end
def to_s
<<~ITEM
#{JSON.generate(@headers)}
#{JSON.generate(@payload)}
ITEM
end
end
attr_accessor :headers, :items
def initialize(headers = {})
@headers = headers
@items = []
end
def add_item(headers, payload)
@items << Item.new(headers, payload)
end
def item_types
@items.map(&:type)
end
def event_id
@headers[:event_id]
end
end
end
|