1 package org.codehaus.xfire.service; 2 3 import java.net.URL; 4 import java.util.Hashtable; 5 6 import javax.wsdl.WSDLException; 7 8 import org.codehaus.xfire.AbstractXFireComponent; 9 import org.codehaus.xfire.fault.FaultHandler; 10 import org.codehaus.xfire.fault.FaultHandlerPipeline; 11 import org.codehaus.xfire.handler.Handler; 12 import org.codehaus.xfire.handler.HandlerPipeline; 13 import org.codehaus.xfire.soap.SoapVersion; 14 import org.codehaus.xfire.wsdl.ResourceWSDL; 15 import org.codehaus.xfire.wsdl.WSDLWriter; 16 17 /*** 18 * A simple service implementation. 19 * 20 * @author <a href="mailto:dan@envoisolutions.com">Dan Diephouse</a> 21 */ 22 public class MessageService 23 extends AbstractXFireComponent 24 implements Service 25 { 26 private String name; 27 28 private String style; 29 30 private String use; 31 32 private SoapVersion soapVersion; 33 34 private String defaultNamespace; 35 36 private Hashtable properties; 37 38 private WSDLWriter wsdl; 39 40 private FaultHandler faultHandler; 41 42 private Handler serviceHandler; 43 44 private HandlerPipeline requestPipeline; 45 private HandlerPipeline responsePipeline; 46 private FaultHandlerPipeline faultPipeline; 47 48 public MessageService() 49 { 50 properties = new Hashtable(); 51 } 52 53 /*** 54 * @see org.codehaus.xfire.service.Service#getWSDLWriter() 55 */ 56 public WSDLWriter getWSDLWriter() throws WSDLException 57 { 58 return wsdl; 59 } 60 61 public void setWSDLWriter(WSDLWriter wsdl) 62 { 63 this.wsdl = wsdl; 64 } 65 66 /*** 67 * @param wsdlUri The WSDL URL. 68 */ 69 public void setWSDLURL(String wsdlUri) throws WSDLException 70 { 71 if ( wsdlUri == null 72 || 73 wsdlUri.equals("") ) 74 { 75 throw new WSDLException(WSDLException.CONFIGURATION_ERROR, "URL to WSDL file is null"); 76 } 77 setWSDLWriter( new ResourceWSDL( wsdlUri ) ); 78 } 79 80 /*** 81 * @param wsdlUri The WSDL URL. 82 */ 83 public void setWSDLURL(URL wsdlUri) 84 { 85 setWSDLWriter( new ResourceWSDL( wsdlUri ) ); 86 } 87 88 /*** 89 * @return Returns the defaultNamespace. 90 */ 91 public String getDefaultNamespace() 92 { 93 return defaultNamespace; 94 } 95 96 /*** 97 * @param defaultNamespace The defaultNamespace to set. 98 */ 99 public void setDefaultNamespace( String defaultNamespace ) 100 { 101 this.defaultNamespace = defaultNamespace; 102 } 103 /*** 104 * @return Returns the style. 105 */ 106 public String getStyle() 107 { 108 return style; 109 } 110 111 /*** 112 * @param style The style to set. 113 */ 114 public void setStyle( String style ) 115 { 116 this.style = style; 117 } 118 119 /*** 120 * @return Returns the use. 121 */ 122 public String getUse() 123 { 124 return use; 125 } 126 127 /*** 128 * @param use The use to set. 129 */ 130 public void setUse( String use ) 131 { 132 this.use = use; 133 } 134 135 /*** 136 * @see org.codehaus.xfire.service.Service#getSoapVersion() 137 */ 138 public SoapVersion getSoapVersion() 139 { 140 return soapVersion; 141 } 142 143 public void setSoapVersion(SoapVersion soapVersion) 144 { 145 this.soapVersion = soapVersion; 146 } 147 148 public String getName() 149 { 150 return name; 151 } 152 153 public void setName(String name) 154 { 155 this.name = name; 156 } 157 158 /*** 159 * @see org.codehaus.xfire.service.Service#setProperty(java.lang.String, java.lang.Object) 160 */ 161 public void setProperty( String name, Object value ) 162 { 163 properties.put( name, value ); 164 } 165 166 /*** 167 * @see org.codehaus.xfire.service.Service#getProperty(java.lang.String) 168 */ 169 public Object getProperty( String name ) 170 { 171 return properties.get( name ); 172 } 173 174 public FaultHandler getFaultHandler() 175 { 176 return faultHandler; 177 } 178 179 public void setFaultHandler( FaultHandler faultHandler ) 180 { 181 this.faultHandler = faultHandler; 182 } 183 184 public Handler getServiceHandler() 185 { 186 return serviceHandler; 187 } 188 189 public void setServiceHandler( Handler serviceHandler ) 190 { 191 this.serviceHandler = serviceHandler; 192 } 193 194 public void setWSDL( WSDLWriter wsdl ) 195 { 196 this.wsdl = wsdl; 197 } 198 199 /*** 200 * @return Returns the faultPipeline. 201 */ 202 public FaultHandlerPipeline getFaultPipeline() 203 { 204 return faultPipeline; 205 } 206 207 /*** 208 * @param faultPipeline The faultPipeline to set. 209 */ 210 public void setFaultPipeline(FaultHandlerPipeline faultPipeline) 211 { 212 this.faultPipeline = faultPipeline; 213 } 214 215 /*** 216 * @return Returns the requestPipeline. 217 */ 218 public HandlerPipeline getRequestPipeline() 219 { 220 return requestPipeline; 221 } 222 223 /*** 224 * @param requestPipeline The requestPipeline to set. 225 */ 226 public void setRequestPipeline(HandlerPipeline requestPipeline) 227 { 228 this.requestPipeline = requestPipeline; 229 } 230 231 /*** 232 * @return Returns the responsePipeline. 233 */ 234 public HandlerPipeline getResponsePipeline() 235 { 236 return responsePipeline; 237 } 238 239 /*** 240 * @param responsePipeline The responsePipeline to set. 241 */ 242 public void setResponsePipeline(HandlerPipeline responsePipeline) 243 { 244 this.responsePipeline = responsePipeline; 245 } 246 }