Sha256: fb2804b1f05987c9610f3cb61ab90673aebc73c35d40d5955c8703a1af932771

Contents?: true

Size: 480 Bytes

Versions: 45

Compression:

Stored size: 480 Bytes

Contents

require "json"
require "http/mime_type/adapter"

module HTTP
  module MimeType
    # JSON encode/decode MIME type adapter
    class JSON < Adapter
      # Encodes object to JSON
      def encode(obj)
        return obj.to_json if obj.respond_to?(:to_json)
        ::JSON.dump obj
      end

      # Decodes JSON
      def decode(str)
        ::JSON.load str
      end
    end

    register_adapter "application/json", JSON
    register_alias   "application/json", :json
  end
end

Version data entries

45 entries across 45 versions & 1 rubygems

Version Path
http-2.0.1 lib/http/mime_type/json.rb
http-2.0.0 lib/http/mime_type/json.rb
http-2.0.0.pre lib/http/mime_type/json.rb
http-1.0.4 lib/http/mime_type/json.rb
http-0.9.9 lib/http/mime_type/json.rb
http-1.0.3 lib/http/mime_type/json.rb
http-1.0.2 lib/http/mime_type/json.rb
http-1.0.1 lib/http/mime_type/json.rb
http-1.0.0 lib/http/mime_type/json.rb
http-1.0.0.pre6 lib/http/mime_type/json.rb
http-1.0.0.pre5 lib/http/mime_type/json.rb
http-1.0.0.pre4 lib/http/mime_type/json.rb
http-1.0.0.pre3 lib/http/mime_type/json.rb
http-1.0.0.pre2 lib/http/mime_type/json.rb
http-1.0.0.pre1 lib/http/mime_type/json.rb
http-0.9.8 lib/http/mime_type/json.rb
http-0.9.7 lib/http/mime_type/json.rb
http-0.9.6 lib/http/mime_type/json.rb
http-0.9.5 lib/http/mime_type/json.rb
http-0.9.4 lib/http/mime_type/json.rb