org.jboss.soa.esb.services.soapui
Class SoapUIClientService

java.lang.Object
  extended by org.jboss.mx.util.JBossNotificationBroadcasterSupport
      extended by org.jboss.system.ServiceMBeanSupport
          extended by org.jboss.soa.esb.services.soapui.SoapUIClientService
All Implemented Interfaces:
javax.management.MBeanRegistration, javax.management.NotificationBroadcaster, javax.management.NotificationEmitter, SoapUIClientServiceMBean, org.jboss.system.Service, org.jboss.system.ServiceMBean

public class SoapUIClientService
extends org.jboss.system.ServiceMBeanSupport
implements SoapUIClientServiceMBean

Soap UI Soap Client Service MBean.

Author:
tom.fennelly@jboss.com

Field Summary
 
Fields inherited from class org.jboss.system.ServiceMBeanSupport
log, server, SERVICE_CONTROLLER_SIG, serviceName
 
Fields inherited from interface org.jboss.system.ServiceMBean
CREATE_EVENT, CREATED, DESTROY_EVENT, DESTROYED, FAILED, REGISTERED, START_EVENT, STARTED, STARTING, states, STOP_EVENT, STOPPED, STOPPING, UNREGISTERED
 
Constructor Summary
SoapUIClientService()
          Public default constructor.
 
Method Summary
 java.lang.String buildFault(java.lang.String wsdl, java.lang.String operation, java.lang.String serviceName, java.lang.String faultName, java.util.Map params, java.util.Properties httpClientProps, java.lang.String smooksResource, java.lang.String soapNs)
           
 java.lang.String buildRequest(java.lang.String wsdl, java.lang.String operation, java.lang.String serviceName, java.util.Map params, java.util.Properties httpClientProps, java.lang.String smooksResource, java.lang.String soapNs)
          Build a SOAP request for the specified operation on the specified WSDL.
 java.lang.String buildResponse(java.lang.String wsdl, java.lang.String operation, java.lang.String serviceName, java.util.Map params, java.util.Properties httpClientProps, java.lang.String smooksResource, java.lang.String soapNs)
          Use soapUI to build a SOAP response for the specified operation on the specified WSDL.
 java.lang.String getContentType(java.lang.String wsdl, java.lang.String serviceName, java.util.Properties httpClientProps)
          Get the Content Type for the appropriate SOAP version of the 1st interface from the specified WSDL.
 java.lang.String getEndpoint(java.lang.String wsdl, java.lang.String serviceName, java.util.Properties httpClientProps)
          Get the 1st endpoint from the specified WSDL.
protected  com.eviware.soapui.model.iface.Operation getOperation(java.lang.String wsdl, java.lang.String operationName, java.lang.String serviceName, java.util.Properties httpClientProps, boolean refresh)
           
 java.lang.String getPropertyFile()
          Get the property file.
 java.lang.String getSchemas()
          Get the additional schema resources.
 java.lang.String getServerDataDir()
           
 java.lang.String mergeResponseTemplate(java.lang.String wsdl, java.lang.String operation, java.lang.String serviceName, java.lang.String response, java.util.Properties httpClientProps, java.lang.String smooksResource, java.lang.String soapNs)
          Use soapUI to Merge a SOAP response for the specified operation on the specified WSDL with its template.
 void setPropertyFile(java.lang.String propertyFile)
          Set the property file.
 void setSchemas(java.lang.String schemas)
          Set the additional schemes.
 void setServerDataDir(java.lang.String datadir)
           
protected  void startService()
           
protected  void stopService()
           
 
Methods inherited from class org.jboss.system.ServiceMBeanSupport
create, createService, destroy, destroyService, getDeploymentInfo, getLog, getName, getNextNotificationSequenceNumber, getObjectName, getServer, getServiceName, getState, getStateString, jbossInternalCreate, jbossInternalDescription, jbossInternalDestroy, jbossInternalLifecycle, jbossInternalStart, jbossInternalStop, postDeregister, postRegister, preDeregister, preRegister, start, stop
 
Methods inherited from class org.jboss.mx.util.JBossNotificationBroadcasterSupport
addNotificationListener, getNotificationInfo, handleNotification, nextNotificationSequenceNumber, removeNotificationListener, removeNotificationListener, sendNotification
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.jboss.system.ServiceMBean
getName, getState, getStateString, jbossInternalLifecycle
 
Methods inherited from interface org.jboss.system.Service
create, destroy, start, stop
 

Constructor Detail

SoapUIClientService

public SoapUIClientService()
                    throws ConfigurationException
Public default constructor.

Throws:
ConfigurationException
Method Detail

startService

protected void startService()
                     throws java.lang.Exception
Overrides:
startService in class org.jboss.system.ServiceMBeanSupport
Throws:
java.lang.Exception

stopService

protected void stopService()
                    throws java.lang.Exception
Overrides:
stopService in class org.jboss.system.ServiceMBeanSupport
Throws:
java.lang.Exception

getPropertyFile

public java.lang.String getPropertyFile()
Get the property file.

Specified by:
getPropertyFile in interface SoapUIClientServiceMBean
Returns:
The name of the property file being used.

setPropertyFile

public void setPropertyFile(java.lang.String propertyFile)
Set the property file.

Specified by:
setPropertyFile in interface SoapUIClientServiceMBean
Parameters:
propertyFile - The name of the property file being used.

getSchemas

public java.lang.String getSchemas()
Get the additional schema resources.

Specified by:
getSchemas in interface SoapUIClientServiceMBean
Returns:
The additional schema resources.

setSchemas

public void setSchemas(java.lang.String schemas)
Set the additional schemes.

Specified by:
setSchemas in interface SoapUIClientServiceMBean
Parameters:
schemas - The additional schema resources to setup for SoapUI. This needs support through the soapui-settings.xml file
See Also:
setPropertyFile

buildRequest

public java.lang.String buildRequest(java.lang.String wsdl,
                                     java.lang.String operation,
                                     java.lang.String serviceName,
                                     java.util.Map params,
                                     java.util.Properties httpClientProps,
                                     java.lang.String smooksResource,
                                     java.lang.String soapNs)
                              throws java.io.IOException,
                                     java.lang.UnsupportedOperationException,
                                     org.xml.sax.SAXException
Build a SOAP request for the specified operation on the specified WSDL.

Specified by:
buildRequest in interface SoapUIClientServiceMBean
Parameters:
wsdl - WSDL URL.
operation - Operation name.
serviceName - Service Name.
params - Message parameter map.
httpClientProps - HttpClient creation properties.
smooksResource - Smooks transformation configuration resource. This is the actual Smooks resource configuration XML, not a file name. Null if no transformations are to be performed on the SOAP message before serializing it for return.
soapNs - optional SOAP namespace
Returns:
The SOAP Message.
Throws:
java.io.IOException - Failed to load WSDL.
java.lang.UnsupportedOperationException - Operation not supported on specified WSDL.
org.xml.sax.SAXException - Failed to parse the SOAP UI generated request message.

buildResponse

public java.lang.String buildResponse(java.lang.String wsdl,
                                      java.lang.String operation,
                                      java.lang.String serviceName,
                                      java.util.Map params,
                                      java.util.Properties httpClientProps,
                                      java.lang.String smooksResource,
                                      java.lang.String soapNs)
                               throws java.io.IOException,
                                      java.lang.UnsupportedOperationException,
                                      org.xml.sax.SAXException
Use soapUI to build a SOAP response for the specified operation on the specified WSDL.

Specified by:
buildResponse in interface SoapUIClientServiceMBean
Parameters:
wsdl - WSDL URL
operation - Operation name.
serviceName - Service Name.
params - Message parameter map.
httpClientProps - HttpClient creation properties.
smooksResource - Smooks transformation configuration resource file. Null if no transformations are to be performed on the SOAP message before serializing it for return.
soapNs - optional SOAP namespace
Returns:
The SOAP Message.
Throws:
java.io.IOException - Failed to load WSDL.
java.lang.UnsupportedOperationException - Operation not supported on specified WSDL.
org.xml.sax.SAXException - Failed to parse the SOAP UI generated request message.

buildFault

public java.lang.String buildFault(java.lang.String wsdl,
                                   java.lang.String operation,
                                   java.lang.String serviceName,
                                   java.lang.String faultName,
                                   java.util.Map params,
                                   java.util.Properties httpClientProps,
                                   java.lang.String smooksResource,
                                   java.lang.String soapNs)
                            throws java.io.IOException,
                                   java.lang.UnsupportedOperationException,
                                   org.xml.sax.SAXException
Specified by:
buildFault in interface SoapUIClientServiceMBean
Throws:
java.io.IOException
java.lang.UnsupportedOperationException
org.xml.sax.SAXException

getEndpoint

public java.lang.String getEndpoint(java.lang.String wsdl,
                                    java.lang.String serviceName,
                                    java.util.Properties httpClientProps)
                             throws java.io.IOException
Get the 1st endpoint from the specified WSDL.

Specified by:
getEndpoint in interface SoapUIClientServiceMBean
Parameters:
wsdl - WSDL URL.
httpClientProps - HttpClient creation properties.
serviceName - Service Name.
Returns:
The operation endpoint URL.
Throws:
java.io.IOException - Failed to load WSDL.

getContentType

public java.lang.String getContentType(java.lang.String wsdl,
                                       java.lang.String serviceName,
                                       java.util.Properties httpClientProps)
                                throws java.io.IOException
Get the Content Type for the appropriate SOAP version of the 1st interface from the specified WSDL.

Specified by:
getContentType in interface SoapUIClientServiceMBean
Parameters:
wsdl - WSDL URL.
httpClientProps - HttpClient creation properties.
serviceName - Service Name.
Returns:
The operation endpoint URL.
Throws:
java.io.IOException - Failed to load WSDL.

mergeResponseTemplate

public java.lang.String mergeResponseTemplate(java.lang.String wsdl,
                                              java.lang.String operation,
                                              java.lang.String serviceName,
                                              java.lang.String response,
                                              java.util.Properties httpClientProps,
                                              java.lang.String smooksResource,
                                              java.lang.String soapNs)
                                       throws java.io.IOException,
                                              java.lang.UnsupportedOperationException,
                                              org.xml.sax.SAXException
Use soapUI to Merge a SOAP response for the specified operation on the specified WSDL with its template.

Specified by:
mergeResponseTemplate in interface SoapUIClientServiceMBean
Parameters:
wsdl - WSDL URL.
operation - Operation name.
serviceName - Service Name.
response - The actual response.
smooksResource - Smooks transformation configuration resource file. Null if no transformations are to be performed on the SOAP message before serializing it for return.
soapNs - optional SOAP namespace
Returns:
The SOAP Message.
Throws:
java.io.IOException - Failed to load WSDL.
java.lang.UnsupportedOperationException - Operation not supported on specified WSDL.
org.xml.sax.SAXException - Failed to parse the SOAP UI generated request message.

getOperation

protected com.eviware.soapui.model.iface.Operation getOperation(java.lang.String wsdl,
                                                                java.lang.String operationName,
                                                                java.lang.String serviceName,
                                                                java.util.Properties httpClientProps,
                                                                boolean refresh)
                                                         throws java.io.IOException
Throws:
java.io.IOException

setServerDataDir

public void setServerDataDir(java.lang.String datadir)
Specified by:
setServerDataDir in interface SoapUIClientServiceMBean

getServerDataDir

public java.lang.String getServerDataDir()
Specified by:
getServerDataDir in interface SoapUIClientServiceMBean