Sha256: ddb656ca6c7cf3c322e306c6d94b8949a080d6e019e6912d152985a5b9b66a48
Contents?: true
Size: 951 Bytes
Versions: 34
Compression:
Stored size: 951 Bytes
Contents
module Aws module Plugins class S3CompleteMultipartUploadFix < Seahorse::Client::Plugin class Handler < Seahorse::Client::Handler def call(context) @handler.call(context).on(200) do |response| if error = check_for_error(context) context.http_response.status_code = 500 response.data = nil response.error = error end end end def check_for_error(context) xml = context.http_response.body_contents if xml.match(/<Error>/) error_code = xml.match(/<Code>(.+?)<\/Code>/)[1] error_message = xml.match(/<Message>(.+?)<\/Message>/)[1] S3::Errors.error_class(error_code).new(context, error_message) end end end handler(Handler, step: :build, priority: 40, operations: [:complete_multipart_upload] ) end end end
Version data entries
34 entries across 34 versions & 1 rubygems