View Javadoc

1   package org.codehaus.xfire.java.message;
2   
3   import javax.xml.stream.XMLStreamReader;
4   import javax.xml.stream.XMLStreamWriter;
5   
6   import org.codehaus.xfire.MessageContext;
7   import org.codehaus.xfire.java.JavaService;
8   
9   /***
10   * Create a MessageReaders and MessageWriters for a JavaService.
11   * 
12   * @author <a href="mailto:dan@envoisolutions.com">Dan Diephouse</a>
13   * @since Apr 7, 2004
14   */
15  public class MessageBridgeFactory
16  {
17  
18  	public static MessageBridge createMessageBridge( JavaService service,
19                                                       MessageContext context,
20                                                       XMLStreamReader request,
21                                                       XMLStreamWriter response )
22  	{
23          AbstractMessageBridge bridge;
24          
25  		if ( service.getStyle().equals("wrapped")
26               &&
27               service.getUse().equals("literal") )
28          {
29              bridge = new WrappedBridge( service, context, request, response );
30          }
31          else if ( service.getStyle().equals("document")
32                    &&
33                    service.getUse().equals("literal") )
34          {
35              bridge = new DocumentBridge( service, context, request, response );
36          }
37          else
38          {
39          	throw new UnsupportedOperationException( "Service style/use not supported." );
40          }
41          
42          return bridge;
43  	}
44  }