Submit
Path:
~
/
/
opt
/
psa
/
admin
/
plib
/
modules
/
letsencrypt
/
vendor
/
aws
/
aws-sdk-php
/
src
/
Api
/
ErrorParser
/
File Content:
RestJsonErrorParser.php
<?php namespace PleskLetsEncrypt\Aws\Api\ErrorParser; use PleskLetsEncrypt\Aws\Api\Parser\JsonParser; use PleskLetsEncrypt\Aws\Api\Service; use PleskLetsEncrypt\Aws\Api\StructureShape; use PleskLetsEncrypt\Aws\CommandInterface; use Psr\Http\Message\ResponseInterface; /** * Parses JSON-REST errors. */ class RestJsonErrorParser extends AbstractErrorParser { use JsonParserTrait; private $parser; public function __construct(?Service $api = null, ?JsonParser $parser = null) { parent::__construct($api); $this->parser = $parser ?: new JsonParser(); } public function __invoke(ResponseInterface $response, ?CommandInterface $command = null) { $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; } // Retrieve error message directly $data['message'] = isset($data['parsed']['message']) ? $data['parsed']['message'] : (isset($data['parsed']['Message']) ? $data['parsed']['Message'] : null); $this->populateShape($data, $response, $command); return $data; } }
Submit
FILE
FOLDER
INFO
Name
Size
Permission
Action
AbstractErrorParser.php
2863 bytes
0644
JsonParserTrait.php
1505 bytes
0644
JsonRpcErrorParser.php
1304 bytes
0644
RestJsonErrorParser.php
1623 bytes
0644
XmlErrorParser.php
3125 bytes
0644
N4ST4R_ID | Naxtarrr