Blame view

sources/lib/private/memcache/cache.php 1.33 KB
31b7f2792   Kload   Upgrade to ownclo...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
  <?php
  /**
   * Copyright (c) 2013 Robin Appelman <icewind@owncloud.com>
   * This file is licensed under the Affero General Public License version 3 or
   * later.
   * See the COPYING-README file.
   */
  
  namespace OC\Memcache;
  
  abstract class Cache implements \ArrayAccess {
  	/**
  	 * @var string $prefix
  	 */
  	protected $prefix;
  
  	/**
  	 * @param string $prefix
  	 */
  	public function __construct($prefix = '') {
6d9380f96   Cédric Dupont   Update sources OC...
21
  		$this->prefix = $prefix;
31b7f2792   Kload   Upgrade to ownclo...
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
  	}
  
  	public function getPrefix() {
  		return $this->prefix;
  	}
  
  	/**
  	 * @param string $key
  	 * @return mixed
  	 */
  	abstract public function get($key);
  
  	/**
  	 * @param string $key
  	 * @param mixed $value
  	 * @param int $ttl
  	 * @return mixed
  	 */
  	abstract public function set($key, $value, $ttl = 0);
  
  	/**
  	 * @param string $key
  	 * @return mixed
  	 */
  	abstract public function hasKey($key);
  
  	/**
  	 * @param string $key
  	 * @return mixed
  	 */
  	abstract public function remove($key);
  
  	/**
  	 * @param string $prefix
  	 * @return mixed
  	 */
  	abstract public function clear($prefix = '');
  
  	//implement the ArrayAccess interface
  
  	public function offsetExists($offset) {
  		return $this->hasKey($offset);
  	}
  
  	public function offsetSet($offset, $value) {
  		$this->set($offset, $value);
  	}
  
  	public function offsetGet($offset) {
  		return $this->get($offset);
  	}
  
  	public function offsetUnset($offset) {
  		$this->remove($offset);
  	}
  }