OXIESEC PANEL
- Current Dir:
/
/
var
/
www
/
cream
/
aws-ses
/
vendor
/
aws
/
aws-sdk-php
/
src
/
Retry
Server IP: 139.59.38.164
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
05/19/2025 10:07:21 AM
rwxr-xr-x
📄
Configuration.php
1.42 KB
05/19/2025 10:07:20 AM
rw-r--r--
📄
ConfigurationInterface.php
617 bytes
05/19/2025 10:07:20 AM
rw-r--r--
📄
ConfigurationProvider.php
7.97 KB
05/19/2025 10:07:20 AM
rw-r--r--
📁
Exception
-
05/19/2025 10:07:20 AM
rwxr-xr-x
📄
QuotaManager.php
2.59 KB
05/19/2025 10:07:20 AM
rw-r--r--
📄
RateLimiter.php
5.2 KB
05/19/2025 10:07:20 AM
rw-r--r--
📄
RetryHelperTrait.php
1.57 KB
05/19/2025 10:07:20 AM
rw-r--r--
Editing: QuotaManager.php
Close
<?php namespace Aws\Retry; use Aws\Exception\AwsException; use Aws\ResultInterface; /** * @internal */ class QuotaManager { private $availableCapacity; private $capacityAmount; private $initialRetryTokens; private $maxCapacity; private $noRetryIncrement; private $retryCost; private $timeoutRetryCost; public function __construct($config = []) { $this->initialRetryTokens = isset($config['initial_retry_tokens']) ? $config['initial_retry_tokens'] : 500; $this->noRetryIncrement = isset($config['no_retry_increment']) ? $config['no_retry_increment'] : 1; $this->retryCost = isset($config['retry_cost']) ? $config['retry_cost'] : 5; $this->timeoutRetryCost = isset($config['timeout_retry_cost']) ? $config['timeout_retry_cost'] : 10; $this->maxCapacity = $this->initialRetryTokens; $this->availableCapacity = $this->initialRetryTokens; } public function hasRetryQuota($result) { if ($result instanceof AwsException && $result->isConnectionError()) { $this->capacityAmount = $this->timeoutRetryCost; } else { $this->capacityAmount = $this->retryCost; } if ($this->capacityAmount > $this->availableCapacity) { return false; } $this->availableCapacity -= $this->capacityAmount; return true; } public function releaseToQuota($result) { if ($result instanceof AwsException) { $statusCode = (int) $result->getStatusCode(); } elseif ($result instanceof ResultInterface) { $statusCode = isset($result['@metadata']['statusCode']) ? (int) $result['@metadata']['statusCode'] : null; } if (!empty($statusCode) && $statusCode >= 200 && $statusCode < 300) { if (isset($this->capacityAmount)) { $amount = $this->capacityAmount; $this->availableCapacity += $amount; unset($this->capacityAmount); } else { $amount = $this->noRetryIncrement; $this->availableCapacity += $amount; } $this->availableCapacity = min( $this->availableCapacity, $this->maxCapacity ); } return (isset($amount) ? $amount : 0); } public function getAvailableCapacity() { return $this->availableCapacity; } }