OXIESEC PANEL
- Current Dir:
/
/
var
/
www
/
cream
/
Xpress
/
vendor
/
aws
/
aws-sdk-php
/
src
/
EndpointDiscovery
Server IP: 139.59.38.164
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
05/19/2025 10:07:17 AM
rwxr-xr-x
📄
Configuration.php
1.12 KB
05/19/2025 10:07:16 AM
rw-r--r--
📄
ConfigurationInterface.php
610 bytes
05/19/2025 10:07:16 AM
rw-r--r--
📄
ConfigurationProvider.php
8.89 KB
05/19/2025 10:07:16 AM
rw-r--r--
📄
EndpointDiscoveryMiddleware.php
13.7 KB
05/19/2025 10:07:16 AM
rw-r--r--
📄
EndpointList.php
1.98 KB
05/19/2025 10:07:16 AM
rw-r--r--
📁
Exception
-
05/19/2025 10:07:16 AM
rwxr-xr-x
Editing: EndpointList.php
Close
<?php namespace Aws\EndpointDiscovery; class EndpointList { private $active; private $expired = []; public function __construct(array $endpoints) { $this->active = $endpoints; reset($this->active); } /** * Gets an active (unexpired) endpoint. Returns null if none found. * * @return null|string */ public function getActive() { if (count($this->active) < 1) { return null; } while (time() > current($this->active)) { $key = key($this->active); $this->expired[$key] = current($this->active); $this->increment($this->active); unset($this->active[$key]); if (count($this->active) < 1) { return null; } } $active = key($this->active); $this->increment($this->active); return $active; } /** * Gets an active endpoint if possible, then an expired endpoint if possible. * Returns null if no endpoints found. * * @return null|string */ public function getEndpoint() { if (!empty($active = $this->getActive())) { return $active; } return $this->getExpired(); } /** * Removes an endpoint from both lists. * * @param string $key */ public function remove($key) { unset($this->active[$key]); unset($this->expired[$key]); } /** * Get an expired endpoint. Returns null if none found. * * @return null|string */ private function getExpired() { if (count($this->expired) < 1) { return null; } $expired = key($this->expired); $this->increment($this->expired); return $expired; } private function increment(&$array) { if (next($array) === false) { reset($array); } } }