Sha256: c615bbea3c7e918fe2c2e352760cc5509a65ce7b4f3c0a6b4994a9257ccd2020

Contents?: true

Size: 791 Bytes

Versions: 13

Compression:

Stored size: 791 Bytes

Contents

# frozen_string_literal: true

module ActiveResource
  module Formats
    autoload :XmlFormat, "active_resource/formats/xml_format"
    autoload :JsonFormat, "active_resource/formats/json_format"

    # Lookup the format class from a mime type reference symbol. Example:
    #
    #   ActiveResource::Formats[:xml]  # => ActiveResource::Formats::XmlFormat
    #   ActiveResource::Formats[:json] # => ActiveResource::Formats::JsonFormat
    def self.[](mime_type_reference)
      ActiveResource::Formats.const_get(ActiveSupport::Inflector.camelize(mime_type_reference.to_s) + "Format")
    end

    def self.remove_root(data)
      if data.is_a?(Hash) && data.keys.size == 1 && data.values.first.is_a?(Enumerable)
        data.values.first
      else
        data
      end
    end
  end
end

Version data entries

13 entries across 13 versions & 2 rubygems

Version Path
activeresource-6.1.4 lib/active_resource/formats.rb
activeresource-6.1.3 lib/active_resource/formats.rb
activeresource-6.1.2 lib/active_resource/formats.rb
activeresource-6.1.1 lib/active_resource/formats.rb
activeresource-6.1.0 lib/active_resource/formats.rb
ric-0.14.2 vendor/bundle/ruby/2.7.0/gems/activeresource-5.1.1/lib/active_resource/formats.rb
ric-0.14.1 vendor/bundle/ruby/2.7.0/gems/activeresource-5.1.1/lib/active_resource/formats.rb
activeresource-6.0.0 lib/active_resource/formats.rb
ric-0.14.0 vendor/bundle/ruby/2.7.0/gems/activeresource-5.1.1/lib/active_resource/formats.rb
activeresource-5.1.1 lib/active_resource/formats.rb
ric-0.13.0 vendor/bundle/ruby/2.5.0/gems/activeresource-5.1.0/lib/active_resource/formats.rb
ric-0.12.2 vendor/bundle/ruby/2.5.0/gems/activeresource-5.1.0/lib/active_resource/formats.rb
activeresource-5.1.0 lib/active_resource/formats.rb