org.apache.axis.configuration
Class SimpleProvider

java.lang.Object
  extended byorg.apache.axis.configuration.SimpleProvider
All Implemented Interfaces:
EngineConfiguration
Direct Known Subclasses:
BasicClientConfig, BasicServerConfig

public class SimpleProvider
extends java.lang.Object
implements EngineConfiguration

A SimpleProvider is an EngineConfiguration which contains a simple HashMap-based registry of Handlers, Transports, and Services. This is for when you want to programatically deploy components which you create. SimpleProvider may also optionally contain a reference to a "default" EngineConfiguration, which will be scanned for components not found in the internal registry. This is handy when you want to start with a base configuration (like the default WSDD) and then quickly add stuff without changing the WSDD document.

Author:
Glen Daniels (gdaniels@apache.org)

Field Summary
 
Fields inherited from interface org.apache.axis.EngineConfiguration
PROPERTY_NAME
 
Constructor Summary
SimpleProvider()
          Default constructor.
SimpleProvider(EngineConfiguration defaultConfiguration)
          Constructor which takes an EngineConfiguration which will be used as the default.
SimpleProvider(TypeMappingRegistry typeMappingRegistry)
          Construct a SimpleProvider using the supplied TypeMappingRegistry.
 
Method Summary
 void addRole(java.lang.String role)
          Add a role to the configuration's global list
 void configureEngine(AxisEngine engine)
          Configure an AxisEngine.
 void deployService(QName qname, SOAPService service)
           
 void deployService(java.lang.String name, SOAPService service)
           
 void deployTransport(QName qname, Handler transport)
           
 void deployTransport(java.lang.String name, Handler transport)
           
 java.util.Iterator getDeployedServices()
          Get an enumeration of the services deployed to this engine
 java.util.Hashtable getGlobalOptions()
          Returns the global configuration options.
 Handler getGlobalRequest()
          Returns a global request handler.
 Handler getGlobalResponse()
          Returns a global response handler.
 Handler getHandler(QName qname)
          Retrieve an instance of the named handler.
 java.util.List getRoles()
          Get a list of roles that this engine plays globally.
 SOAPService getService(QName qname)
          Retrieve an instance of the named service.
 SOAPService getServiceByNamespaceURI(java.lang.String namespace)
          Get a service which has been mapped to a particular namespace
 Handler getTransport(QName qname)
          Retrieve an instance of the named transport.
 TypeMapping getTypeMapping(java.lang.String encodingStyle)
           
 TypeMappingRegistry getTypeMappingRegistry()
          Get our TypeMappingRegistry.
 void removeRole(java.lang.String role)
          Remove a role from the configuration's global list
 void setGlobalOptions(java.util.Hashtable options)
          Set the global options Hashtable
 void setGlobalRequest(Handler globalRequest)
          Set the global request Handler
 void setGlobalResponse(Handler globalResponse)
          Set the global response Handler
 void setRoles(java.util.List roles)
          Set the global role list for this configuration.
 void writeEngineConfig(AxisEngine engine)
          We don't write ourselves out, so this is a noop.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SimpleProvider

public SimpleProvider()
Default constructor.


SimpleProvider

public SimpleProvider(EngineConfiguration defaultConfiguration)
Constructor which takes an EngineConfiguration which will be used as the default.


SimpleProvider

public SimpleProvider(TypeMappingRegistry typeMappingRegistry)
Construct a SimpleProvider using the supplied TypeMappingRegistry.

Parameters:
typeMappingRegistry -
Method Detail

configureEngine

public void configureEngine(AxisEngine engine)
                     throws ConfigurationException
Configure an AxisEngine. Right now just calls the default configuration if there is one, since we don't do anything special.

Specified by:
configureEngine in interface EngineConfiguration
Parameters:
engine - the AxisEngine we'll deploy state to
Throws:
ConfigurationException - if there was a problem

writeEngineConfig

public void writeEngineConfig(AxisEngine engine)
                       throws ConfigurationException
We don't write ourselves out, so this is a noop.

Specified by:
writeEngineConfig in interface EngineConfiguration
Parameters:
engine - the AxisEngine from which to read state.
Throws:
ConfigurationException - if there was a problem

getGlobalOptions

public java.util.Hashtable getGlobalOptions()
                                     throws ConfigurationException
Returns the global configuration options.

Specified by:
getGlobalOptions in interface EngineConfiguration
Returns:
the global options as a Hashtable
Throws:
ConfigurationException - if the global options could not be returned

setGlobalOptions

public void setGlobalOptions(java.util.Hashtable options)
Set the global options Hashtable

Parameters:
options -

getGlobalRequest

public Handler getGlobalRequest()
                         throws ConfigurationException
Returns a global request handler.

Specified by:
getGlobalRequest in interface EngineConfiguration
Returns:
the Handler that globally handles requests
Throws:
ConfigurationException - if there was some error fetching the handler

setGlobalRequest

public void setGlobalRequest(Handler globalRequest)
Set the global request Handler

Parameters:
globalRequest -

getGlobalResponse

public Handler getGlobalResponse()
                          throws ConfigurationException
Returns a global response handler.

Specified by:
getGlobalResponse in interface EngineConfiguration
Returns:
the Handler that globally handles responses
Throws:
ConfigurationException - if there was some error fetching the handler

setGlobalResponse

public void setGlobalResponse(Handler globalResponse)
Set the global response Handler

Parameters:
globalResponse -

getTypeMappingRegistry

public TypeMappingRegistry getTypeMappingRegistry()
                                           throws ConfigurationException
Get our TypeMappingRegistry. Returns our specific one if we have one, otherwise the one from our defaultConfiguration. If we don't have one and also don't have a defaultConfiguration, we create one.

Specified by:
getTypeMappingRegistry in interface EngineConfiguration
Returns:
the type mapping registry
Throws:
ConfigurationException - if there was an error resolving the registry

getTypeMapping

public TypeMapping getTypeMapping(java.lang.String encodingStyle)
                           throws ConfigurationException
Throws:
ConfigurationException

getTransport

public Handler getTransport(QName qname)
                     throws ConfigurationException
Description copied from interface: EngineConfiguration
Retrieve an instance of the named transport.

Specified by:
getTransport in interface EngineConfiguration
Parameters:
qname - the QName of the transport
Returns:
a Handler implementing the transport
Throws:
ConfigurationException - if there was an error resolving the transport

getService

public SOAPService getService(QName qname)
                       throws ConfigurationException
Description copied from interface: EngineConfiguration
Retrieve an instance of the named service.

Specified by:
getService in interface EngineConfiguration
Parameters:
qname - the QName identifying the Service
Returns:
the Service associated with qname
Throws:
ConfigurationException - if there was an error resolving the qname

getServiceByNamespaceURI

public SOAPService getServiceByNamespaceURI(java.lang.String namespace)
                                     throws ConfigurationException
Get a service which has been mapped to a particular namespace

Specified by:
getServiceByNamespaceURI in interface EngineConfiguration
Parameters:
namespace - a namespace URI
Returns:
an instance of the appropriate Service, or null
Throws:
ConfigurationException - if there was an error resolving the namespace

getHandler

public Handler getHandler(QName qname)
                   throws ConfigurationException
Description copied from interface: EngineConfiguration
Retrieve an instance of the named handler.

Specified by:
getHandler in interface EngineConfiguration
Parameters:
qname - the QName identifying the Handler
Returns:
the Handler associated with qname
Throws:
ConfigurationException - if there was a failure in resolving qname

deployService

public void deployService(QName qname,
                          SOAPService service)

deployService

public void deployService(java.lang.String name,
                          SOAPService service)

deployTransport

public void deployTransport(QName qname,
                            Handler transport)

deployTransport

public void deployTransport(java.lang.String name,
                            Handler transport)

getDeployedServices

public java.util.Iterator getDeployedServices()
                                       throws ConfigurationException
Get an enumeration of the services deployed to this engine

Specified by:
getDeployedServices in interface EngineConfiguration
Returns:
an Iterator over the ServiceDesc objects
Throws:
ConfigurationException - if the deployed services could not be returned
See Also:
ServiceDesc

setRoles

public void setRoles(java.util.List roles)
Set the global role list for this configuration. Note that we use the actual passed value, so if anyone else changes that collection, our role list will change. Be careful to pass this a cloned list if you want to change the list later without affecting the config.

Parameters:
roles -

addRole

public void addRole(java.lang.String role)
Add a role to the configuration's global list

Parameters:
role -

removeRole

public void removeRole(java.lang.String role)
Remove a role from the configuration's global list

Parameters:
role -

getRoles

public java.util.List getRoles()
Get a list of roles that this engine plays globally. Services within the engine configuration may also add additional roles.

Specified by:
getRoles in interface EngineConfiguration
Returns:
a List of the roles for this engine


Copyright ? 2005 Apache Web Services Project. All Rights Reserved.