1: <?php
2: /**
3: * Defines a bridge between the Kolab format parser and the objects fetched from
4: * the backend.
5: *
6: * PHP version 5
7: *
8: * @category Kolab
9: * @package Kolab_Storage
10: * @author Gunnar Wrobel <wrobel@pardus.de>
11: * @license http://www.horde.org/licenses/lgpl21 LGPL 2.1
12: * @link http://pear.horde.org/index.php?package=Kolab_Storage
13: */
14:
15: /**
16: * Defines a bridge between the Kolab format parser and the objects fetched from
17: * the backend.
18: *
19: * Copyright 2011-2012 Horde LLC (http://www.horde.org/)
20: *
21: * See the enclosed file COPYING for license information (LGPL). If you
22: * did not receive this file, see http://www.horde.org/licenses/lgpl21.
23: *
24: * @category Kolab
25: * @package Kolab_Storage
26: * @author Gunnar Wrobel <wrobel@pardus.de>
27: * @license http://www.horde.org/licenses/lgpl21 LGPL 2.1
28: * @link http://pear.horde.org/index.php?package=Kolab_Storage
29: */
30: interface Horde_Kolab_Storage_Data_Format
31: {
32: /**
33: * Parses the objects for the specified backend IDs.
34: *
35: * @param string $folder The folder to access.
36: * @param array $uid The object backend ID.
37: * @param mixed $data The data that should get parsed.
38: * @param array $options Additional options for fetching.
39: *
40: * @return array The parsed object.
41: */
42: public function parse($folder, $obid, $data, array $options);
43: }
44: