Вход Регистрация
Файл: sngine-v2.8/Script/includes/libs/AWS/Aws/Api/Parser/RestJsonParser.php
Строк: 45
<?php
namespace AwsApiParser;

use 
AwsApiService;
use 
AwsApiStructureShape;
use 
PsrHttpMessageResponseInterface;
use 
PsrHttpMessageStreamInterface;

/**
 * @internal Implements REST-JSON parsing (e.g., Glacier, Elastic Transcoder)
 */
class RestJsonParser extends AbstractRestParser
{
    use 
PayloadParserTrait;

    
/**
     * @param Service    $api    Service description
     * @param JsonParser $parser JSON body builder
     */
    
public function __construct(Service $apiJsonParser $parser null)
    {
        
parent::__construct($api);
        
$this->parser $parser ?: new JsonParser();
    }

    protected function 
payload(
        
ResponseInterface $response,
        
StructureShape $member,
        array &
$result
    
) {
        
$jsonBody $this->parseJson($response->getBody(), $response);

        if (
$jsonBody) {
            
$result += $this->parser->parse($member$jsonBody);
        }
    }

    public function 
parseMemberFromStream(
        
StreamInterface $stream,
        
StructureShape $member,
        
$response
    
) {
        
$jsonBody $this->parseJson($stream$response);
        if (
$jsonBody) {
            return 
$this->parser->parse($member$jsonBody);
        }
        return [];
    }
}
Онлайн: 0
Реклама