Mongo.php
2.1 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
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
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
<?php 
namespace Phalcon\Cache\Backend {
	/**
	 * Phalcon\Cache\Backend\Mongo
	 *
	 * Allows to cache output fragments, PHP data or raw data to a MongoDb backend
	 *
	 *<code>
	 *
	 * // Cache data for 2 days
	 * $frontCache = new Phalcon\Cache\Frontend\Base64(array(
	 *		"lifetime" => 172800
	 * ));
	 *
	 * //Create a MongoDB cache
	 * $cache = new Phalcon\Cache\Backend\Mongo($frontCache, array(
	 *		'server' => "mongodb://localhost",
	 *      'db' => 'caches',
	 *		'collection' => 'images'
	 * ));
	 *
	 * //Cache arbitrary data
	 * $cache->save('my-data', file_get_contents('some-image.jpg'));
	 *
	 * //Get data
	 * $data = $cache->get('my-data');
	 *
	 *</code>
	 */
	
	class Mongo extends \Phalcon\Cache\Backend implements \Phalcon\Cache\BackendInterface {
		protected $_collection;
		/**
		 * \Phalcon\Cache\Backend\Mongo constructor
		 *
		 * @param \Phalcon\Cache\FrontendInterface $frontend
		 * @param array $options
		 */
		public function __construct($frontend, $options=null){ }
		/**
		 * Returns a MongoDb collection based on the backend parameters
		 *
		 * @return MongoCollection
		 */
		protected function _getCollection(){ }
		/**
		 * Returns a cached content
		 *
		 * @param int|string $keyName
		 * @param   long $lifetime
		 * @return  mixed
		 */
		public function get($keyName, $lifetime=null){ }
		/**
		 * Stores cached content into the Mongo backend and stops the frontend
		 *
		 * @param int|string $keyName
		 * @param string $content
		 * @param long $lifetime
		 * @param boolean $stopBuffer
		 */
		public function save($keyName=null, $content=null, $lifetime=null, $stopBuffer=null){ }
		/**
		 * Deletes a value from the cache by its key
		 *
		 * @param int|string $keyName
		 * @return boolean
		 */
		public function delete($keyName){ }
		/**
		 * Query the existing cached keys
		 *
		 * @param string $prefix
		 * @return array
		 */
		public function queryKeys($prefix=null){ }
		/**
		 * Checks if cache exists and it hasn't expired
		 *
		 * @param  string $keyName
		 * @param  long $lifetime
		 * @return boolean
		 */
		public function exists($keyName=null, $lifetime=null){ }
	}
}