Skip to content

Commit a786904

Browse files
authored
Merge pull request #3 from jiriferkl/master
Added session ttl option
2 parents dd671af + 8f57c5f commit a786904

File tree

2 files changed

+6
-3
lines changed

2 files changed

+6
-3
lines changed

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ predisClient:
3333
prefix: 'fooPrefix:'
3434
# other options
3535
sessions: true # Whether to register redis session handler or not
36+
sessionsTtl: null # Seconds or null (null = ini_get('session.gc_maxlifetime'))
3637
```
3738

3839
## Usage

src/DI/PredisClientNetteExtension.php

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,8 @@ class PredisClientNetteExtension extends CompilerExtension
2323
*/
2424
'uri' => 'tcp://127.0.0.1:6379',
2525
'options' => [],
26-
'sessions' => false
26+
'sessions' => false,
27+
'sessionsTtl' => null,
2728
];
2829

2930
/**
@@ -48,13 +49,14 @@ public function beforeCompile()
4849
{
4950
$builder = $this->getContainerBuilder();
5051

51-
$builder->addDefinition($this->prefix('client'))
52+
$client = $builder->addDefinition($this->prefix('client'))
5253
->setClass(Client::class)
5354
->setArguments([$this->config['uri'], $this->config['options']]);
5455

5556
if ($this->config['sessions']) {
5657
$sessionHandler = $builder->addDefinition($this->prefix('sessionHandler'))
57-
->setClass(Handler::class);
58+
->setClass(Handler::class)
59+
->setArguments([$client, ['gc_maxlifetime' => $this->config['sessionsTtl']]]);
5860

5961
$builder->getDefinition($builder->getByType(Session::class))
6062
->addSetup('setHandler', [$sessionHandler]);

0 commit comments

Comments
 (0)