Linux cesa-www-main 6.1.0-49-cloud-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.174-1 (2026-05-26) x86_64
Apache/2.4.68 (Debian)
Server IP : 10.218.0.2 & Your IP : 216.73.216.28
Domains :
Cant Read [ /etc/named.conf ]
User : www-data
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
var /
www /
cesa.co.za /
vendor /
google /
gax /
src /
Delete
Unzip
Name
Size
Permission
Date
Action
Middleware
[ DIR ]
drwxr-sr-x
2026-03-12 21:22
Options
[ DIR ]
drwxr-sr-x
2026-03-12 21:22
ResourceTemplate
[ DIR ]
drwxr-sr-x
2026-03-12 21:22
Testing
[ DIR ]
drwxr-sr-x
2026-03-12 21:22
Transport
[ DIR ]
drwxr-sr-x
2026-03-12 21:22
AgentHeader.php
5.84
KB
-rw-r--r--
2026-03-12 21:22
ApiException.php
12.17
KB
-rw-r--r--
2026-03-12 21:22
ApiKeyHeaderCredentials.php
3.71
KB
-rw-r--r--
2026-03-12 21:22
ApiStatus.php
6.51
KB
-rw-r--r--
2026-03-12 21:22
ArrayTrait.php
4.57
KB
-rw-r--r--
2026-03-12 21:22
BidiStream.php
7.11
KB
-rw-r--r--
2026-03-12 21:22
Call.php
3.46
KB
-rw-r--r--
2026-03-12 21:22
ClientOptionsTrait.php
15.28
KB
-rw-r--r--
2026-03-12 21:22
ClientStream.php
4.72
KB
-rw-r--r--
2026-03-12 21:22
CredentialsWrapper.php
13.6
KB
-rw-r--r--
2026-03-12 21:22
FixedSizeCollection.php
6.26
KB
-rw-r--r--
2026-03-12 21:22
GPBLabel.php
1.82
KB
-rw-r--r--
2026-03-12 21:22
GPBType.php
2.19
KB
-rw-r--r--
2026-03-12 21:22
GapicClientTrait.php
38.24
KB
-rw-r--r--
2026-03-12 21:22
GrpcSupportTrait.php
2.24
KB
-rw-r--r--
2026-03-12 21:22
HeaderCredentialsInterface.php
2.1
KB
-rw-r--r--
2026-03-12 21:22
InsecureCredentialsWrapper.php
2.09
KB
-rw-r--r--
2026-03-12 21:22
InsecureRequestBuilder.php
649
B
-rw-r--r--
2026-03-12 21:22
KnownTypes.php
3.87
KB
-rw-r--r--
2026-03-12 21:22
OperationResponse.php
20.86
KB
-rw-r--r--
2026-03-12 21:22
Page.php
9.22
KB
-rw-r--r--
2026-03-12 21:22
PageStreamingDescriptor.php
6.18
KB
-rw-r--r--
2026-03-12 21:22
PagedListResponse.php
6.78
KB
-rw-r--r--
2026-03-12 21:22
PathTemplate.php
4.06
KB
-rw-r--r--
2026-03-12 21:22
PollingTrait.php
3.65
KB
-rw-r--r--
2026-03-12 21:22
RequestBuilder.php
9.77
KB
-rw-r--r--
2026-03-12 21:22
RequestParamsHeaderDescriptor.php
2.57
KB
-rw-r--r--
2026-03-12 21:22
ResourceHelperTrait.php
3.93
KB
-rw-r--r--
2026-03-12 21:22
RetrySettings.php
21.64
KB
-rw-r--r--
2026-03-12 21:22
Serializer.php
19.45
KB
-rw-r--r--
2026-03-12 21:22
ServerStream.php
4.49
KB
-rw-r--r--
2026-03-12 21:22
ServerStreamingCallInterface.php
2.94
KB
-rw-r--r--
2026-03-12 21:22
ServiceAddressTrait.php
2.48
KB
-rw-r--r--
2026-03-12 21:22
UriTrait.php
2.33
KB
-rw-r--r--
2026-03-12 21:22
ValidationException.php
1.7
KB
-rw-r--r--
2026-03-12 21:22
ValidationTrait.php
2.93
KB
-rw-r--r--
2026-03-12 21:22
Version.php
2.49
KB
-rw-r--r--
2026-03-12 21:22
Save
Rename
<?php /* * Copyright 2016 Google LLC * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are * met: * * * Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * * Redistributions in binary form must reproduce the above * copyright notice, this list of conditions and the following disclaimer * in the documentation and/or other materials provided with the * distribution. * * Neither the name of Google Inc. nor the names of its * contributors may be used to endorse or promote products derived from * this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ namespace Google\ApiCore; use Google\Auth\Logging\LoggingTrait; use Google\Auth\Logging\RpcLogEvent; use Google\Protobuf\Internal\Message; use Google\Rpc\Code; use Grpc\BidiStreamingCall; use Psr\Log\LoggerInterface; /** * BidiStream is the response object from a gRPC bidirectional streaming API call. */ class BidiStream { use LoggingTrait; private $call; private $isComplete = false; private $writesClosed = false; private $resourcesGetMethod = null; private $pendingResources = []; private null|LoggerInterface $logger = null; /** * BidiStream constructor. * * @param BidiStreamingCall $bidiStreamingCall The gRPC bidirectional streaming call object * @param array $streamingDescriptor * @param null|LoggerInterface $logger */ public function __construct( BidiStreamingCall $bidiStreamingCall, array $streamingDescriptor = [], null|LoggerInterface $logger = null, ) { $this->call = $bidiStreamingCall; if (array_key_exists('resourcesGetMethod', $streamingDescriptor)) { $this->resourcesGetMethod = $streamingDescriptor['resourcesGetMethod']; } $this->logger = $logger; } /** * Write request to the server. * * @param mixed $request The request to write * @throws ValidationException */ public function write($request) { if ($this->isComplete) { throw new ValidationException('Cannot call write() after streaming call is complete.'); } if ($this->writesClosed) { throw new ValidationException('Cannot call write() after calling closeWrite().'); } if ($this->logger && $request instanceof Message) { $logEvent = new RpcLogEvent(); $logEvent->headers = null; $logEvent->payload = $request->serializeToJsonString(); $logEvent->processId = (int) getmypid(); $logEvent->requestId = crc32((string) spl_object_id($this) . getmypid()); $this->logRequest($logEvent); } $this->call->write($request); } /** * Write all requests in $requests. * * @param iterable $requests An Iterable of request objects to write to the server * * @throws ValidationException */ public function writeAll($requests = []) { foreach ($requests as $request) { $this->write($request); } } /** * Inform the server that no more requests will be written. The write() function cannot be * called after closeWrite() is called. * @throws ValidationException */ public function closeWrite() { if ($this->isComplete) { throw new ValidationException( 'Cannot call closeWrite() after streaming call is complete.' ); } if (!$this->writesClosed) { $this->call->writesDone(); $this->writesClosed = true; } } /** * Read the next response from the server. Returns null if the streaming call completed * successfully. Throws an ApiException if the streaming call failed. * * @throws ValidationException * @throws ApiException * @return mixed */ public function read() { if ($this->isComplete) { throw new ValidationException('Cannot call read() after streaming call is complete.'); } $resourcesGetMethod = $this->resourcesGetMethod; if (!is_null($resourcesGetMethod)) { if (count($this->pendingResources) === 0) { $response = $this->call->read(); if (!is_null($response)) { $pendingResources = []; foreach ($response->$resourcesGetMethod() as $resource) { $pendingResources[] = $resource; } $this->pendingResources = array_reverse($pendingResources); } } $result = array_pop($this->pendingResources); } else { $result = $this->call->read(); } if (is_null($result)) { $status = $this->call->getStatus(); $this->isComplete = true; if (!($status->code == Code::OK)) { throw ApiException::createFromStdClass($status); } } if ($this->logger) { $responseEvent = new RpcLogEvent(); $responseEvent->headers = $this->call->getMetadata(); $responseEvent->status = $status->code ?? null; $responseEvent->processId = (int) getmypid(); $responseEvent->requestId = crc32((string) spl_object_id($this) . getmypid()); if ($result instanceof Message) { $responseEvent->payload = $result->serializeToJsonString(); } $this->logResponse($responseEvent); } return $result; } /** * Call closeWrite(), and read all responses from the server, until the streaming call is * completed. Throws an ApiException if the streaming call failed. * * @throws ValidationException * @throws ApiException * @return \Generator|mixed[] */ public function closeWriteAndReadAll() { $this->closeWrite(); $response = $this->read(); while (!is_null($response)) { yield $response; $response = $this->read(); } } /** * Return the underlying gRPC call object * * @return \Grpc\BidiStreamingCall|mixed */ public function getBidiStreamingCall() { return $this->call; } }