1 package org.apache.fulcrum.xmlrpc;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 import java.io.IOException;
25
26 import org.apache.xmlrpc.XmlRpcException;
27
28 /***
29 * The interface a server-side XmlRpcService implements.
30 *
31 * @avalon.service version="1.0"
32 * @author <a href="mailto:josh@stonecottage.com">Josh Lucas</a>
33 * @author <a href="mailto:magnus@handtolvur.is">Magn?s ?Ūr Torfason</a>
34 * @author <a href="mailto:Rafal.Krzewski@e-point.pl">Rafal Krzewski</a>
35 * @author <a href="mailto:jvanzyl@periapt.com">Jason van Zyl</a>
36 * @author <a href="mailto:quintonm@bellsouth.net">Quinton McCombs</a>
37 * @version $Id: XmlRpcServerComponent.java 535465 2007-05-05 06:58:06Z tv $
38 */
39 public interface XmlRpcServerComponent
40 {
41 /*** XmlRpcServerComponent. */
42 public static final String ROLE = XmlRpcServerComponent.class.getName();
43
44 /***
45 * Register an object as a handler for the XmlRpc Server part.
46 *
47 * @param handlerName The name under which we want
48 * to register the service
49 * @param handler The handler object
50 * @exception XmlRpcException
51 * @exception IOException
52 */
53 void registerHandler(String handlerName, Object handler)
54 throws XmlRpcException, IOException;
55
56 /***
57 * Register an object as a the default handler for
58 * the XmlRpc Server part.
59 *
60 * @param handler The handler object
61 * @exception XmlRpcException
62 * @exception IOException
63 */
64 void registerHandler(Object handler)
65 throws XmlRpcException, IOException;
66
67 /***
68 * Unregister a handler.
69 *
70 * @param handlerName The name of the handler to unregister.
71 */
72 void unregisterHandler(String handlerName);
73
74 /***
75 * Switch client filtering on/off.
76 * @see #acceptClient(java.lang.String)
77 * @see #denyClient(java.lang.String)
78 */
79 void setParanoid(boolean state);
80
81 /***
82 * Add an IP address to the list of accepted clients. The parameter can
83 * contain '*' as wildcard character, e.g. "192.168.*.*". You must
84 * call setParanoid(true) in order for this to have
85 * any effect.
86 *
87 * @see #denyClient(java.lang.String)
88 * @see #setParanoid(boolean)
89 */
90 void acceptClient(String address);
91
92 /***
93 * Add an IP address to the list of denied clients. The parameter can
94 * contain '*' as wildcard character, e.g. "192.168.*.*". You must call
95 * setParanoid(true) in order for this to have any effect.
96 *
97 * @see #acceptClient(java.lang.String)
98 * @see #setParanoid(boolean)
99 */
100 void denyClient(String address);
101 }