Sha256: b6db60fd6b9f865ea4713ebf96869baf526ff51306938e2a9ac2b9a29ab6942e
Contents?: true
Size: 912 Bytes
Versions: 17
Compression:
Stored size: 912 Bytes
Contents
require 'multi_json' module Aws module Json # This plugin performs two trivial translations: # # * The request parameters are serialized as JSON for the request body # * The response body is deserialized as JSON for the response data # # No attempt is made to extract errors from the HTTP response body. # Parsing the response only happens for a successful response. # class SimpleBodyHandler < Seahorse::Client::Handler def call(context) build_json(context) @handler.call(context).on_success do |response| response.error = nil response.data = parse_json(context) end end private def build_json(context) context.http_request.body = MultiJson.dump(context.params) end def parse_json(context) MultiJson.load(context.http_response.body_contents) end end end end
Version data entries
17 entries across 17 versions & 1 rubygems