Вход Регистрация
Файл: sngine-v2.8/Script/includes/libs/AWS/Aws/DynamoDb/SessionConnectionConfigTrait.php
Строк: 224
<?php
namespace AwsDynamoDb;

trait 
SessionConnectionConfigTrait
{
    
/** @var string Name of table to store the sessions */
    
protected $tableName 'sessions';

    
/** @var string Name of hash key in table. Default: "id" */
    
protected $hashKey 'id';

    
/** @var string Name of the data attribute in table. Default: "data" */
    
protected $dataAttribute 'data';

    
/** @var string Type of the data attribute in table. Default: "string" */
    
protected $dataAttributeType 'string';

    
/** @var integer Lifetime of inactive sessions expiration */
    
protected $sessionLifetime;

    
/** @var string Name of the session life time attribute in table. Default: "expires" */
    
protected $sessionLifetimeAttribute 'expires';

    
/** @var string Whether or not to use consistent reads */
    
protected $consistentRead true;

    
/** @var string Batch options used for garbage collection */
    
protected $batchConfig = [];

    
/** @var boolean Whether or not to use session locking */
    
protected $locking false;

    
/** @var integer Max time (s) to wait for lock acquisition */
    
protected $maxLockWaitTime 10;

    
/** @var integer Min time (µs) to wait between lock attempts */
    
protected $minLockRetryMicrotime 10000;

    
/** @var integer Max time (µs) to wait between lock attempts */
    
protected $maxLockRetryMicrotime 50000;

    
/**
     * It initialize the Config class and
     * it sets values in case of valid configurations.
     * 
     * It transforms parameters underscore separated in camelcase "this_is_a_test" => ThisIsATest
     * and it uses it in order to set the values.
     * 
     * @param array $config
     */
    
public function initConfig( array $config = [] )
    {
        if (!empty(
$config))
        {
            foreach (
$config as $key => $value)
            {
                
$method 'set' str_replace('_'''ucwords($key'_'));
                if(
method_exists($this,$method))
                {
                    
call_user_func_array(array($this$method), array($value));
                }
            }
        }

        
// It applies the default PHP session lifetime, if no session lifetime config is provided
        
if(!isset($config['session_lifetime']))
        {
            
$this->setSessionLifetime((int) ini_get('session.gc_maxlifetime'));
        }
    }

    
/**
     * @return string
     */
    
public function getTableName()
    {
        return 
$this->tableName;
    }

    
/**
     * @param string $tableName
     */
    
public function setTableName($tableName)
    {
        
$this->tableName $tableName;
    }

    
/**
     * @return string
     */
    
public function getHashKey()
    {
        return 
$this->hashKey;
    }

    
/**
     * @param string $hashKey
     */
    
public function setHashKey($hashKey)
    {
        
$this->hashKey $hashKey;
    }

    
/**
     * @return string
     */
    
public function getDataAttribute()
    {
        return 
$this->dataAttribute;
    }

    
/**
     * @param string $dataAttribute
     */
    
public function setDataAttribute($dataAttribute)
    {
        
$this->dataAttribute $dataAttribute;
    }

    
/**
     * @return string
     */
    
public function getDataAttributeType()
    {
        return 
$this->dataAttributeType;
    }

    
/**
     * @param string $dataAttributeType
     */
    
public function setDataAttributeType($dataAttributeType)
    {
        
$this->dataAttributeType $dataAttributeType;
    }

    
/**
     * @return number
     */
    
public function getSessionLifetime()
    {
        return 
$this->sessionLifetime;
    }

    
/**
     * @param number $sessionLifetime
     */
    
public function setSessionLifetime($sessionLifetime)
    {
        
$this->sessionLifetime $sessionLifetime;
    }

    
/**
     * @return string
     */
    
public function getSessionLifetimeAttribute()
    {
        return 
$this->sessionLifetimeAttribute;
    }

    
/**
     * @param string $sessionLifetimeAttribute
     */
    
public function setSessionLifetimeAttribute($sessionLifetimeAttribute)
    {
        
$this->sessionLifetimeAttribute $sessionLifetimeAttribute;
    }

    
/**
     * @return boolean
     */
    
public function isConsistentRead()
    {
        return 
$this->consistentRead;
    }

    
/**
     * @param boolean $consistentRead
     */
    
public function setConsistentRead($consistentRead)
    {
        
$this->consistentRead $consistentRead;
    }

    
/**
     * @return mixed
     */
    
public function getBatchConfig()
    {
        return 
$this->batchConfig;
    }

    
/**
     * @param mixed $batchConfig
     */
    
public function setBatchConfig($batchConfig)
    {
        
$this->batchConfig $batchConfig;
    }
    
/**
     * @return boolean
     */
    
public function isLocking()
    {
        return 
$this->locking;
    }

    
/**
     * @param boolean $locking
     */
    
public function setLocking($locking)
    {
        
$this->locking $locking;
    }

    
/**
     * @return number
     */
    
public function getMaxLockWaitTime()
    {
        return 
$this->maxLockWaitTime;
    }

    
/**
     * @param number $maxLockWaitTime
     */
    
public function setMaxLockWaitTime($maxLockWaitTime)
    {
        
$this->maxLockWaitTime $maxLockWaitTime;
    }

    
/**
     * @return number
     */
    
public function getMinLockRetryMicrotime()
    {
        return 
$this->minLockRetryMicrotime;
    }

    
/**
     * @param number $minLockRetryMicrotime
     */
    
public function setMinLockRetryMicrotime($minLockRetryMicrotime)
    {
        
$this->minLockRetryMicrotime $minLockRetryMicrotime;
    }

    
/**
     * @return number
     */
    
public function getMaxLockRetryMicrotime()
    {
        return 
$this->maxLockRetryMicrotime;
    }

    
/**
     * @param number $maxLockRetryMicrotime
     */
    
public function setMaxLockRetryMicrotime($maxLockRetryMicrotime)
    {
        
$this->maxLockRetryMicrotime $maxLockRetryMicrotime;
    }
}
Онлайн: 0
Реклама