PHP Classes

File: application/modules/extensions/aws/Aws/Api/ErrorParser/RestJsonErrorParser.php

Recommend this page to a friend!
  Classes of Tran Tuan   Pretty PHP S3 Files Manager   application/modules/extensions/aws/Aws/Api/ErrorParser/RestJsonErrorParser.php   Download  
File: application/modules/extensions/aws/Aws/Api/ErrorParser/RestJsonErrorParser.php
Role: Application script
Content type: text/plain
Description: Application script
Class: Pretty PHP S3 Files Manager
Web based interface to manage files in Amazon S3
Author: By
Last change:
Date: 7 years ago
Size: 901 bytes
 

Contents

Class file image Download
<?php
namespace Aws\Api\ErrorParser;

use
Psr\Http\Message\ResponseInterface;

/**
 * Parses JSON-REST errors.
 */
class RestJsonErrorParser
{
    use
JsonParserTrait;

    public function
__invoke(ResponseInterface $response)
    {
       
$data = $this->genericHandler($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 = $response->getHeaderLine('x-amzn-errortype')) {
           
$colon = strpos($code, ':');
           
$data['code'] = $colon ? substr($code, 0, $colon) : $code;
        }

        return
$data;
    }
}