Sha256: ebc8a45ddc65843a3345effbbbeec0386e9a965992414148684658b07f800299
Contents?: true
Size: 659 Bytes
Versions: 17
Compression:
Stored size: 659 Bytes
Contents
class JsonFormat include LHC::BasicMethods def self.request(options) options[:headers] ||= {} options[:headers]['Content-Type'] = 'application/json' options[:headers]['Accept'] = 'application/json' options[:format] = new super(options) end def as_json(response) parse(response, Hash) end def as_open_struct(response) parse(response, OpenStruct) end def to_s 'json' end def to_sym to_s.to_sym end private def parse(response, object_class) JSON.parse(response.body, object_class: object_class) rescue JSON::ParserError => e raise LHC::ParserError.new(e.message, response) end end
Version data entries
17 entries across 17 versions & 1 rubygems