1 | <?php |
||
22 | class Backup |
||
23 | { |
||
24 | |||
25 | /** |
||
26 | * Database class instance |
||
27 | * @var \gplcart\core\Database $db |
||
28 | */ |
||
29 | protected $db; |
||
30 | |||
31 | /** |
||
32 | * Hook class instance |
||
33 | * @var \gplcart\core\Hook $hook |
||
34 | */ |
||
35 | protected $hook; |
||
36 | |||
37 | /** |
||
38 | * Translation UI model instance |
||
39 | * @var \gplcart\core\models\Translation $translation |
||
40 | */ |
||
41 | protected $translation; |
||
42 | |||
43 | /** |
||
44 | * User model instance |
||
45 | * @var \gplcart\core\models\User $user |
||
46 | */ |
||
47 | protected $user; |
||
48 | |||
49 | /** |
||
50 | * Backup constructor. |
||
51 | * @param Hook $hook |
||
52 | * @param Config $config |
||
53 | * @param User $user |
||
54 | * @param Translation $translation |
||
55 | */ |
||
56 | public function __construct(Hook $hook, Config $config, User $user, Translation $translation) |
||
63 | |||
64 | /** |
||
65 | * Returns an array of backups or counts them |
||
66 | * @param array $data |
||
67 | * @return array|integer |
||
68 | */ |
||
69 | public function getList(array $data = array()) |
||
129 | |||
130 | /** |
||
131 | * Adds a backup to the database |
||
132 | * @param array $data |
||
133 | * @return boolean|integer |
||
134 | */ |
||
135 | public function add(array $data) |
||
163 | |||
164 | /** |
||
165 | * Loads a backup from the database |
||
166 | * @param integer $id |
||
167 | * @return array |
||
168 | */ |
||
169 | public function get($id) |
||
174 | |||
175 | /** |
||
176 | * Deletes a backup from disk and database |
||
177 | * @param integer $id |
||
178 | * @return boolean |
||
179 | */ |
||
180 | public function delete($id) |
||
198 | |||
199 | /** |
||
200 | * Deletes a backup ZIP archive |
||
201 | * @param integer $backup_id |
||
202 | * @return boolean |
||
203 | */ |
||
204 | protected function deleteZip($backup_id) |
||
215 | |||
216 | /** |
||
217 | * Performs backup operation |
||
218 | * @param string $handler_id |
||
219 | * @param array $data |
||
220 | * @return boolean|string |
||
221 | */ |
||
222 | public function backup($handler_id, $data) |
||
226 | |||
227 | /** |
||
228 | * Performs restore operation |
||
229 | * @param string $handler_id |
||
230 | * @param array $data |
||
231 | * @return boolean|string |
||
232 | */ |
||
233 | public function restore($handler_id, $data) |
||
237 | |||
238 | /** |
||
239 | * Whether a backup already exists |
||
240 | * @param string $id |
||
241 | * @param null|string $version |
||
242 | * @return bool |
||
243 | */ |
||
244 | public function exists($id, $version = null) |
||
249 | |||
250 | /** |
||
251 | * Returns an array of backup handlers |
||
252 | * @return array |
||
253 | */ |
||
254 | public function getHandlers() |
||
266 | |||
267 | /** |
||
268 | * Returns a single handler |
||
269 | * @param string $handler_id |
||
270 | * @return array |
||
271 | */ |
||
272 | public function getHandler($handler_id) |
||
277 | |||
278 | /** |
||
279 | * Cal a handler |
||
280 | * @param string $handler_id |
||
281 | * @param string $method |
||
282 | * @param array $arguments |
||
283 | * @return mixed |
||
284 | */ |
||
285 | protected function callHandler($handler_id, $method, array $arguments) |
||
294 | |||
295 | /** |
||
296 | * Returns an array of default backup handlers |
||
297 | * @return array |
||
298 | */ |
||
299 | protected function getDefaultHandlers() |
||
311 | |||
312 | } |
||
313 |