1: <?php
2: /**
3: * A library for accessing the Kolab user database.
4: *
5: * PHP version 5
6: *
7: * @category Kolab
8: * @package Kolab_Server
9: * @author Gunnar Wrobel <wrobel@pardus.de>
10: * @license http://www.horde.org/licenses/lgpl21 LGPL 2.1
11: * @link http://pear.horde.org/index.php?package=Kolab_Server
12: */
13:
14: /**
15: * Defines the interface of the search handler for a Kolab Server.
16: *
17: * Copyright 2008-2012 Horde LLC (http://www.horde.org/)
18: *
19: * See the enclosed file COPYING for license information (LGPL). If you
20: * did not receive this file, see http://www.horde.org/licenses/lgpl21.
21: *
22: * @category Kolab
23: * @package Kolab_Server
24: * @author Gunnar Wrobel <wrobel@pardus.de>
25: * @license http://www.horde.org/licenses/lgpl21 LGPL 2.1
26: * @link http://pear.horde.org/index.php?package=Kolab_Server
27: */
28: interface Horde_Kolab_Server_Search_Interface
29: {
30: /**
31: * Set the composite server reference for this object.
32: *
33: * @param Horde_Kolab_Server_Composite $composite A link to the composite
34: * server handler.
35: */
36: public function setComposite(
37: Horde_Kolab_Server_Composite $composite
38: );
39:
40: /**
41: * Returns the set of search operations supported by this server type.
42: *
43: * @return array An array of supported search operations.
44: */
45: public function getSearchOperations();
46:
47: /**
48: * Capture undefined calls.
49: *
50: * @param string $method The name of the called method.
51: * @param array $args Arguments of the call.
52: *
53: * @return NULL.
54: *
55: * @throws Horde_Kolab_Server_Exception
56: */
57: public function __call($method, $args);
58: }