Completed
Push — 2.0 ( a52f91...c9f4d8 )
by Marco
12:16
created

AbstractDriver   A

Complexity

Total Complexity 1

Size/Duplication

Total Lines 33
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 0

Importance

Changes 0
Metric Value
wmc 1
lcom 0
cbo 0
dl 0
loc 33
rs 10
c 0
b 0
f 0

12 Methods

Rating   Name   Duplication   Size   Complexity  
__construct() 0 1 ?
A getName() 0 5 1
test() 0 1 ?
get() 0 1 ?
set() 0 1 ?
delete() 0 1 ?
clear() 0 1 ?
getMultiple() 0 1 ?
setMultiple() 0 1 ?
deleteMultiple() 0 1 ?
has() 0 1 ?
stats() 0 1 ?
1
<?php namespace Comodojo\Cache\Drivers;
2
3
use \Comodojo\Cache\Interfaces\CacheDriverInterface;
4
use \Comodojo\Cache\Components\UniqueId;
5
use \Exception;
6
7
/**
8
 * Apcu provider
9
 *
10
 * @package     Comodojo Spare Parts
11
 * @author      Marco Giovinazzi <[email protected]>
12
 * @license     MIT
13
 *
14
 * LICENSE:
15
 *
16
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
22
 * THE SOFTWARE.
23
 */
24
25
abstract class AbstractDriver implements CacheDriverInterface {
26
27
    const DRIVER_NAME = "";
28
29
    abstract public function __construct(array $configuration);
30
31
    public function getName() {
32
33
        return static::DRIVER_NAME;
34
35
    }
36
37
    abstract public function test();
38
39
    abstract public function get($key, $namespace);
40
41
    abstract public function set($key, $namespace, $value, $ttl = null);
42
43
    abstract public function delete($key, $namespace);
44
45
    abstract public function clear($namespace = null);
46
47
    abstract public function getMultiple(array $keys, $namespace);
48
49
    abstract public function setMultiple(array $key_values, $namespace, $ttl = null);
50
51
    abstract public function deleteMultiple(array $keys, $namespace);
52
53
    abstract public function has($key, $namespace);
54
55
    abstract public function stats();
56
57
}
58