Sha256: 8d8a8218e71d65900505ddcd69208a9add11188d9b8d449b3022b9d13d773af9

Contents?: true

Size: 632 Bytes

Versions: 77

Compression:

Stored size: 632 Bytes

Contents

module Rollbar
  module Encoding
    class << self
      attr_accessor :encoding_class
    end

    def self.setup
      if String.instance_methods.include?(:encode)
        require 'rollbar/encoding/encoder'
        self.encoding_class = Rollbar::Encoding::Encoder
      else
        require 'rollbar/encoding/legacy_encoder'
        self.encoding_class = Rollbar::Encoding::LegacyEncoder
      end
    end

    def self.encode(object)
      can_be_encoded = object.is_a?(String) || object.is_a?(Symbol)

      return object unless can_be_encoded

      encoding_class.new(object).encode
    end
  end
end

Rollbar::Encoding.setup

Version data entries

77 entries across 77 versions & 1 rubygems

Version Path
rollbar-2.22.1 lib/rollbar/encoding.rb
rollbar-2.22.0 lib/rollbar/encoding.rb
rollbar-2.21.0 lib/rollbar/encoding.rb
rollbar-2.20.2 lib/rollbar/encoding.rb
rollbar-2.20.1 lib/rollbar/encoding.rb
rollbar-2.20.0 lib/rollbar/encoding.rb
rollbar-2.19.4 lib/rollbar/encoding.rb
rollbar-2.19.3 lib/rollbar/encoding.rb
rollbar-2.19.2 lib/rollbar/encoding.rb
rollbar-2.19.1 lib/rollbar/encoding.rb
rollbar-2.19.0 lib/rollbar/encoding.rb
rollbar-2.18.2 lib/rollbar/encoding.rb
rollbar-2.18.0 lib/rollbar/encoding.rb
rollbar-2.17.0 lib/rollbar/encoding.rb
rollbar-2.16.4 lib/rollbar/encoding.rb
rollbar-2.16.3 lib/rollbar/encoding.rb
rollbar-2.16.2 lib/rollbar/encoding.rb
rollbar-2.16.0 lib/rollbar/encoding.rb
rollbar-2.15.6 lib/rollbar/encoding.rb
rollbar-2.15.5 lib/rollbar/encoding.rb