PluginProbe ʕ •ᴥ•ʔ
Transferito: WP Migration / trunk
Transferito: WP Migration vtrunk
trunk 11.4.0 12.0.0 13.1.0 14.0.0 14.0.11 14.0.7 14.1.0 14.1.1 14.1.2 14.1.3 14.1.4
transferito / vendor / aws / aws-sdk-php / src / DynamoDb / SessionConnectionConfigTrait.php
transferito / vendor / aws / aws-sdk-php / src / DynamoDb Last commit date
Exception 11 months ago BinaryValue.php 11 months ago DynamoDbClient.php 11 months ago LockingSessionConnection.php 11 months ago Marshaler.php 11 months ago NumberValue.php 11 months ago SessionConnectionConfigTrait.php 11 months ago SessionConnectionInterface.php 11 months ago SessionHandler.php 11 months ago SetValue.php 11 months ago StandardSessionConnection.php 11 months ago WriteRequestBatch.php 11 months ago
SessionConnectionConfigTrait.php
263 lines
1 <?php
2 namespace Aws\DynamoDb;
3
4 trait SessionConnectionConfigTrait
5 {
6 /** @var string Name of table to store the sessions */
7 protected $tableName = 'sessions';
8
9 /** @var string Name of hash key in table. Default: "id" */
10 protected $hashKey = 'id';
11
12 /** @var string Name of the data attribute in table. Default: "data" */
13 protected $dataAttribute = 'data';
14
15 /** @var string Type of the data attribute in table. Default: "string" */
16 protected $dataAttributeType = 'string';
17
18 /** @var integer Lifetime of inactive sessions expiration */
19 protected $sessionLifetime;
20
21 /** @var string Name of the session life time attribute in table. Default: "expires" */
22 protected $sessionLifetimeAttribute = 'expires';
23
24 /** @var string Whether or not to use consistent reads */
25 protected $consistentRead = true;
26
27 /** @var string Batch options used for garbage collection */
28 protected $batchConfig = [];
29
30 /** @var boolean Whether or not to use session locking */
31 protected $locking = false;
32
33 /** @var integer Max time (s) to wait for lock acquisition */
34 protected $maxLockWaitTime = 10;
35
36 /** @var integer Min time (µs) to wait between lock attempts */
37 protected $minLockRetryMicrotime = 10000;
38
39 /** @var integer Max time (µs) to wait between lock attempts */
40 protected $maxLockRetryMicrotime = 50000;
41
42 /**
43 * It initialize the Config class and
44 * it sets values in case of valid configurations.
45 *
46 * It transforms parameters underscore separated in camelcase "this_is_a_test" => ThisIsATest
47 * and it uses it in order to set the values.
48 *
49 * @param array $config
50 */
51 public function initConfig( array $config = [] )
52 {
53 if (!empty($config))
54 {
55 foreach ($config as $key => $value)
56 {
57 $method = 'set' . str_replace('_', '', ucwords($key, '_'));
58 if(method_exists($this,$method))
59 {
60 call_user_func_array(array($this, $method), array($value));
61 }
62 }
63 }
64
65 // It applies the default PHP session lifetime, if no session lifetime config is provided
66 if(!isset($config['session_lifetime']))
67 {
68 $this->setSessionLifetime((int) ini_get('session.gc_maxlifetime'));
69 }
70 }
71
72 /**
73 * @return string
74 */
75 public function getTableName()
76 {
77 return $this->tableName;
78 }
79
80 /**
81 * @param string $tableName
82 */
83 public function setTableName($tableName)
84 {
85 $this->tableName = $tableName;
86 }
87
88 /**
89 * @return string
90 */
91 public function getHashKey()
92 {
93 return $this->hashKey;
94 }
95
96 /**
97 * @param string $hashKey
98 */
99 public function setHashKey($hashKey)
100 {
101 $this->hashKey = $hashKey;
102 }
103
104 /**
105 * @return string
106 */
107 public function getDataAttribute()
108 {
109 return $this->dataAttribute;
110 }
111
112 /**
113 * @param string $dataAttribute
114 */
115 public function setDataAttribute($dataAttribute)
116 {
117 $this->dataAttribute = $dataAttribute;
118 }
119
120 /**
121 * @return string
122 */
123 public function getDataAttributeType()
124 {
125 return $this->dataAttributeType;
126 }
127
128 /**
129 * @param string $dataAttributeType
130 */
131 public function setDataAttributeType($dataAttributeType)
132 {
133 $this->dataAttributeType = $dataAttributeType;
134 }
135
136 /**
137 * @return number
138 */
139 public function getSessionLifetime()
140 {
141 return $this->sessionLifetime;
142 }
143
144 /**
145 * @param number $sessionLifetime
146 */
147 public function setSessionLifetime($sessionLifetime)
148 {
149 $this->sessionLifetime = $sessionLifetime;
150 }
151
152 /**
153 * @return string
154 */
155 public function getSessionLifetimeAttribute()
156 {
157 return $this->sessionLifetimeAttribute;
158 }
159
160 /**
161 * @param string $sessionLifetimeAttribute
162 */
163 public function setSessionLifetimeAttribute($sessionLifetimeAttribute)
164 {
165 $this->sessionLifetimeAttribute = $sessionLifetimeAttribute;
166 }
167
168 /**
169 * @return boolean
170 */
171 public function isConsistentRead()
172 {
173 return $this->consistentRead;
174 }
175
176 /**
177 * @param boolean $consistentRead
178 */
179 public function setConsistentRead($consistentRead)
180 {
181 $this->consistentRead = $consistentRead;
182 }
183
184 /**
185 * @return mixed
186 */
187 public function getBatchConfig()
188 {
189 return $this->batchConfig;
190 }
191
192 /**
193 * @param mixed $batchConfig
194 */
195 public function setBatchConfig($batchConfig)
196 {
197 $this->batchConfig = $batchConfig;
198 }
199 /**
200 * @return boolean
201 */
202 public function isLocking()
203 {
204 return $this->locking;
205 }
206
207 /**
208 * @param boolean $locking
209 */
210 public function setLocking($locking)
211 {
212 $this->locking = $locking;
213 }
214
215 /**
216 * @return number
217 */
218 public function getMaxLockWaitTime()
219 {
220 return $this->maxLockWaitTime;
221 }
222
223 /**
224 * @param number $maxLockWaitTime
225 */
226 public function setMaxLockWaitTime($maxLockWaitTime)
227 {
228 $this->maxLockWaitTime = $maxLockWaitTime;
229 }
230
231 /**
232 * @return number
233 */
234 public function getMinLockRetryMicrotime()
235 {
236 return $this->minLockRetryMicrotime;
237 }
238
239 /**
240 * @param number $minLockRetryMicrotime
241 */
242 public function setMinLockRetryMicrotime($minLockRetryMicrotime)
243 {
244 $this->minLockRetryMicrotime = $minLockRetryMicrotime;
245 }
246
247 /**
248 * @return number
249 */
250 public function getMaxLockRetryMicrotime()
251 {
252 return $this->maxLockRetryMicrotime;
253 }
254
255 /**
256 * @param number $maxLockRetryMicrotime
257 */
258 public function setMaxLockRetryMicrotime($maxLockRetryMicrotime)
259 {
260 $this->maxLockRetryMicrotime = $maxLockRetryMicrotime;
261 }
262 }
263