class ElasticAPM::Transport::Serializers::Container

@api private

def initialize(config)

def initialize(config)
  @transaction = Serializers::TransactionSerializer.new(config)
  @span = Serializers::SpanSerializer.new(config)
  @error = Serializers::ErrorSerializer.new(config)
  @metadata = Serializers::MetadataSerializer.new(config)
  @metricset = Serializers::MetricsetSerializer.new(config)
end

def serialize(resource)

def serialize(resource)
  case resource
  when Transaction
    transaction.build(resource)
  when Span
    span.build(resource)
  when Error
    error.build(resource)
  when Metricset
    metricset.build(resource)
  when Metadata
    metadata.build(resource)
  else
    raise UnrecognizedResource, resource.inspect
  end
end