REDROOM
PHP 7.4.33
Path:
Logout
Edit File
Size: 3.14 KB
Close
/home/godevadmin/www/admin/vendor/aws/Aws/Api/Parser/EventParsingIterator.php
Text
Base64
<?php namespace Aws\Api\Parser; use \Iterator; use Aws\Exception\EventStreamDataException; use Aws\Api\Parser\Exception\ParserException; use Aws\Api\StructureShape; use Psr\Http\Message\StreamInterface; /** * @internal Implements a decoder for a binary encoded event stream that will * decode, validate, and provide individual events from the stream. */ class EventParsingIterator implements Iterator { /** @var StreamInterface */ private $decodingIterator; /** @var StructureShape */ private $shape; /** @var AbstractParser */ private $parser; public function __construct( StreamInterface $stream, StructureShape $shape, AbstractParser $parser ) { $this->decodingIterator = new DecodingEventStreamIterator($stream); $this->shape = $shape; $this->parser = $parser; } #[\ReturnTypeWillChange] public function current() { return $this->parseEvent($this->decodingIterator->current()); } #[\ReturnTypeWillChange] public function key() { return $this->decodingIterator->key(); } #[\ReturnTypeWillChange] public function next() { $this->decodingIterator->next(); } #[\ReturnTypeWillChange] public function rewind() { $this->decodingIterator->rewind(); } #[\ReturnTypeWillChange] public function valid() { return $this->decodingIterator->valid(); } private function parseEvent(array $event) { if (!empty($event['headers'][':message-type'])) { if ($event['headers'][':message-type'] === 'error') { return $this->parseError($event); } if ($event['headers'][':message-type'] !== 'event') { throw new ParserException('Failed to parse unknown message type.'); } } if (empty($event['headers'][':event-type'])) { throw new ParserException('Failed to parse without event type.'); } $eventShape = $this->shape->getMember($event['headers'][':event-type']); $parsedEvent = []; foreach ($eventShape['members'] as $shape => $details) { if (!empty($details['eventpayload'])) { $payloadShape = $eventShape->getMember($shape); if ($payloadShape['type'] === 'blob') { $parsedEvent[$shape] = $event['payload']; } else { $parsedEvent[$shape] = $this->parser->parseMemberFromStream( $event['payload'], $payloadShape, null ); } } else { $parsedEvent[$shape] = $event['headers'][$shape]; } } return [ $event['headers'][':event-type'] => $parsedEvent ]; } private function parseError(array $event) { throw new EventStreamDataException( $event['headers'][':error-code'], $event['headers'][':error-message'] ); } }
Save
Close
Exit & Reset
Text mode: syntax highlighting auto-detects file type.
Directory Contents
Dirs: 1 × Files: 13
Delete Selected
Select All
Select None
Sort:
Name
Size
Modified
Enable drag-to-move
Name
Size
Perms
Modified
Actions
Exception
DIR
-
drwxrwxr-x
2024-06-18 20:09:54
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
AbstractParser.php
1.03 KB
lrwxrwxr-x
2024-06-18 20:09:54
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
AbstractRestParser.php
5.65 KB
lrwxrwxr-x
2024-06-18 20:09:54
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
Crc32ValidatingParser.php
1.53 KB
lrwxrwxr-x
2024-06-18 20:09:54
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
DecodingEventStreamIterator.php
9.08 KB
lrwxrwxr-x
2024-06-18 20:09:54
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
EventParsingIterator.php
3.14 KB
lrwxrwxr-x
2024-06-18 20:09:54
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
JsonParser.php
2.08 KB
lrwxrwxr-x
2024-06-18 20:09:54
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
JsonRpcParser.php
1.34 KB
lrwxrwxr-x
2024-06-18 20:09:54
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
MetadataParserTrait.php
2.66 KB
lrwxrwxr-x
2024-06-18 20:09:54
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
PayloadParserTrait.php
1.50 KB
lrwxrwxr-x
2024-06-18 20:09:54
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
QueryParser.php
1.79 KB
lrwxrwxr-x
2024-06-18 20:09:54
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
RestJsonParser.php
1.26 KB
lrwxrwxr-x
2024-06-18 20:09:54
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
RestXmlParser.php
1.10 KB
lrwxrwxr-x
2024-06-18 20:09:54
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
XmlParser.php
5.19 KB
lrwxrwxr-x
2024-06-18 20:09:54
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
Zip Selected
If ZipArchive is unavailable, a
.tar
will be created (no compression).