123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262 |
- <?php
- namespace Aws\DynamoDb;
- trait SessionConnectionConfigTrait
- {
-
- protected $tableName = 'sessions';
-
- protected $hashKey = 'id';
-
- protected $dataAttribute = 'data';
-
- protected $dataAttributeType = 'string';
-
- protected $sessionLifetime;
-
- protected $sessionLifetimeAttribute = 'expires';
-
- protected $consistentRead = true;
-
- protected $batchConfig = [];
-
- protected $locking = false;
-
- protected $maxLockWaitTime = 10;
-
- protected $minLockRetryMicrotime = 10000;
-
- protected $maxLockRetryMicrotime = 50000;
-
- 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));
- }
- }
- }
-
- if(!isset($config['session_lifetime']))
- {
- $this->setSessionLifetime((int) ini_get('session.gc_maxlifetime'));
- }
- }
-
- public function getTableName()
- {
- return $this->tableName;
- }
-
- public function setTableName($tableName)
- {
- $this->tableName = $tableName;
- }
-
- public function getHashKey()
- {
- return $this->hashKey;
- }
-
- public function setHashKey($hashKey)
- {
- $this->hashKey = $hashKey;
- }
-
- public function getDataAttribute()
- {
- return $this->dataAttribute;
- }
-
- public function setDataAttribute($dataAttribute)
- {
- $this->dataAttribute = $dataAttribute;
- }
-
- public function getDataAttributeType()
- {
- return $this->dataAttributeType;
- }
-
- public function setDataAttributeType($dataAttributeType)
- {
- $this->dataAttributeType = $dataAttributeType;
- }
-
- public function getSessionLifetime()
- {
- return $this->sessionLifetime;
- }
-
- public function setSessionLifetime($sessionLifetime)
- {
- $this->sessionLifetime = $sessionLifetime;
- }
-
- public function getSessionLifetimeAttribute()
- {
- return $this->sessionLifetimeAttribute;
- }
-
- public function setSessionLifetimeAttribute($sessionLifetimeAttribute)
- {
- $this->sessionLifetimeAttribute = $sessionLifetimeAttribute;
- }
-
- public function isConsistentRead()
- {
- return $this->consistentRead;
- }
-
- public function setConsistentRead($consistentRead)
- {
- $this->consistentRead = $consistentRead;
- }
-
- public function getBatchConfig()
- {
- return $this->batchConfig;
- }
-
- public function setBatchConfig($batchConfig)
- {
- $this->batchConfig = $batchConfig;
- }
-
- public function isLocking()
- {
- return $this->locking;
- }
-
- public function setLocking($locking)
- {
- $this->locking = $locking;
- }
-
- public function getMaxLockWaitTime()
- {
- return $this->maxLockWaitTime;
- }
-
- public function setMaxLockWaitTime($maxLockWaitTime)
- {
- $this->maxLockWaitTime = $maxLockWaitTime;
- }
-
- public function getMinLockRetryMicrotime()
- {
- return $this->minLockRetryMicrotime;
- }
-
- public function setMinLockRetryMicrotime($minLockRetryMicrotime)
- {
- $this->minLockRetryMicrotime = $minLockRetryMicrotime;
- }
-
- public function getMaxLockRetryMicrotime()
- {
- return $this->maxLockRetryMicrotime;
- }
-
- public function setMaxLockRetryMicrotime($maxLockRetryMicrotime)
- {
- $this->maxLockRetryMicrotime = $maxLockRetryMicrotime;
- }
- }
|