File ManagerCurrent Directory: wp-content/plugins/backwpup/vendor/aws/aws-sdk-php/src/RetryLinux appserver-0d5e4f1e-php-cc8da225320a42ba9b7d66cba40b1f03 6.6.123+ #1 SMP PREEMPT_DYNAMIC Wed Mar 11 09:04:28 UTC 2026 x86_64Edit File: QuotaManager.php <?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; } } Upload File Directory Listing NameTypeSizeActions.. (Parent Directory)DirConfiguration.phpFile1.36 KB Rename | Delete | EditConfigurationInterface.phpFile587.00 B Rename | Delete | EditConfigurationProvider.phpFile7.75 KB Rename | Delete | EditExceptionDirectory Rename | DeleteQuotaManager.phpFile2.51 KB Rename | Delete | EditRateLimiter.phpFile5.02 KB Rename | Delete | EditRetryHelperTrait.phpFile1.52 KB Rename | Delete | Edit