Passed
Push — master ( f2daf3...fc29ab )
by Tim
03:13
created

MemCacheTicketStore::deleteTicket()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 5
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 2
nc 1
nop 1
dl 0
loc 5
rs 10
c 0
b 0
f 0
1
<?php
2
3
/*
4
 *    simpleSAMLphp-casserver is a CAS 1.0 and 2.0 compliant CAS server in the form of a simpleSAMLphp module
5
 *
6
 *    Copyright (C) 2013  Bjorn R. Jensen
7
 *
8
 *    This library is free software; you can redistribute it and/or
9
 *    modify it under the terms of the GNU Lesser General Public
10
 *    License as published by the Free Software Foundation; either
11
 *    version 2.1 of the License, or (at your option) any later version.
12
 *
13
 *    This library is distributed in the hope that it will be useful,
14
 *    but WITHOUT ANY WARRANTY; without even the implied warranty of
15
 *    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
16
 *    Lesser General Public License for more details.
17
 *
18
 *    You should have received a copy of the GNU Lesser General Public
19
 *    License along with this library; if not, write to the Free Software
20
 *    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
21
 *
22
 */
23
24
namespace \SimpleSAML\Module\casserver\Cas\Ticket;
0 ignored issues
show
Bug introduced by
The constant SimpleSAML\Module\casserver\Cas\Ticket was not found. Maybe you did not declare it correctly or list all dependencies?
Loading history...
25
26
class MemCacheTicketStore extends TicketStore
0 ignored issues
show
Bug introduced by
The type TicketStore was not found. Maybe you did not declare it correctly or list all dependencies?

The issue could also be caused by a filter entry in the build configuration. If the path has been excluded in your configuration, e.g. excluded_paths: ["lib/*"], you can move it to the dependency path list as follows:

filter:
    dependency_paths: ["lib/*"]

For further information see https://scrutinizer-ci.com/docs/tools/php/php-scrutinizer/#list-dependency-paths

Loading history...
27
{
28
    private $prefix = '';
29
30
    public function __construct(\SimpleSAML\Configuration $config)
0 ignored issues
show
Bug introduced by
The type SimpleSAML\Configuration was not found. Maybe you did not declare it correctly or list all dependencies?

The issue could also be caused by a filter entry in the build configuration. If the path has been excluded in your configuration, e.g. excluded_paths: ["lib/*"], you can move it to the dependency path list as follows:

filter:
    dependency_paths: ["lib/*"]

For further information see https://scrutinizer-ci.com/docs/tools/php/php-scrutinizer/#list-dependency-paths

Loading history...
31
    {
32
        parent::__construct($config);
33
34
        $storeConfig = $config->getValue('ticketstore');
35
36
        if (array_key_exists('prefix', $storeConfig)) {
37
            $this->prefix = $storeConfig['prefix'];
38
        }
39
    }
40
41
    /**
42
     * @param $ticketId string
43
     * @return array|null
44
     */
45
    public function getTicket($ticketId)
46
    {
47
        $scopedTicketId = $this->scopeTicketId($ticketId);
48
49
        return \SimpleSAML\Memcache::get($scopedTicketId);
0 ignored issues
show
Bug introduced by
The type SimpleSAML\Memcache was not found. Maybe you did not declare it correctly or list all dependencies?

The issue could also be caused by a filter entry in the build configuration. If the path has been excluded in your configuration, e.g. excluded_paths: ["lib/*"], you can move it to the dependency path list as follows:

filter:
    dependency_paths: ["lib/*"]

For further information see https://scrutinizer-ci.com/docs/tools/php/php-scrutinizer/#list-dependency-paths

Loading history...
50
    }
51
52
    public function addTicket(array $ticket)
53
    {
54
        $scopedTicketId = $this->scopeTicketId($ticket['id']);
55
56
        \SimpleSAML\Memcache::set($scopedTicketId, $ticket, $ticket['validBefore']);
57
    }
58
59
    /**
60
     * @param $ticketId string
61
     */
62
    public function deleteTicket($ticketId)
63
    {
64
        $scopedTicketId = $this->scopeTicketId($ticketId);
65
66
        \SimpleSAML\Memcache::delete($scopedTicketId);
67
    }
68
69
    /**
70
     * @param $ticketId string
71
     * @return string
72
     */
73
    private function scopeTicketId($ticketId)
74
    {
75
        return $this->prefix.'.'.$ticketId;
76
    }
77
}
78