summaryrefslogtreecommitdiff
path: root/vendor/aws/aws-sdk-php/src/DynamoDb/SessionConnectionConfigTrait.php
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/aws/aws-sdk-php/src/DynamoDb/SessionConnectionConfigTrait.php')
-rw-r--r--vendor/aws/aws-sdk-php/src/DynamoDb/SessionConnectionConfigTrait.php262
1 files changed, 262 insertions, 0 deletions
diff --git a/vendor/aws/aws-sdk-php/src/DynamoDb/SessionConnectionConfigTrait.php b/vendor/aws/aws-sdk-php/src/DynamoDb/SessionConnectionConfigTrait.php
new file mode 100644
index 0000000..371a932
--- /dev/null
+++ b/vendor/aws/aws-sdk-php/src/DynamoDb/SessionConnectionConfigTrait.php
@@ -0,0 +1,262 @@
+<?php
+namespace Aws\DynamoDb;
+
+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;
+ }
+}