1 package org.codehaus.xfire;
2
3 import java.io.OutputStream;
4 import java.util.List;
5
6 import org.codehaus.xfire.handler.HandlerSupport;
7 import org.codehaus.xfire.service.ServiceRegistry;
8 import org.codehaus.xfire.transport.TransportManager;
9
10 /***
11 * <p>Central processing point for XFire. This can be instantiated programmatically by using one of the implementations
12 * (such as <code>DefaultXFire</code> or can be managed by a container like Pico or Plexus. </p>
13 * <p/>
14 * Central, however, does not mean that there can be only one. Implementations can be very lightweight, creating fast
15 * generic SOAP processors. </p>
16 *
17 * @author <a href="mailto:dan@envoisolutions.com">Dan Diephouse</a>
18 * @since Feb 18, 2004
19 */
20 public interface XFire extends HandlerSupport
21 {
22 final public static String ROLE = XFire.class.getName();
23
24 /***
25 * Generate WSDL for a service.
26 *
27 * @param service The name of the service.
28 * @param out The OutputStream to write the WSDL to.
29 */
30 void generateWSDL(String service, OutputStream out);
31
32 /***
33 * Get the <code>ServiceRegistry</code>.
34 */
35 ServiceRegistry getServiceRegistry();
36
37 /***
38 * Get the <code>TransportManager</code>.
39 */
40 TransportManager getTransportManager();
41
42 List getInPhases();
43
44 List getOutPhases();
45
46 List getFaultPhases();
47
48 }