EVOLUTION-MANAGER
Edit File: JsonRestExceptionParser.php
<?php /** * Copyright 2010-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ namespace DuplicatorPro\Aws\Common\Exception\Parser; use DuplicatorPro\Guzzle\Http\Message\Response; /** * Parses JSON encoded exception responses from REST services */ class JsonRestExceptionParser extends AbstractJsonExceptionParser { /** * {@inheritdoc} */ protected function doParse(array $data, Response $response) { // Merge in error data from the JSON body if ($json = $data['parsed']) { $data = array_replace($data, $json); } // Correct error type from services like Amazon Glacier if (!empty($data['type'])) { $data['type'] = strtolower($data['type']); } // Retrieve the error code from services like Amazon Elastic Transcoder if ($code = (string) $response->getHeader('x-amzn-ErrorType')) { $data['code'] = substr($code, 0, strpos($code, ':')); } return $data; } }