org.apache.axis2.engine
Class AxisConfiguration

java.lang.Object
  extended by org.apache.axis2.description.AxisDescription
      extended by org.apache.axis2.engine.AxisConfiguration
All Implemented Interfaces:
DescriptionConstants, ParameterInclude

public class AxisConfiguration
extends AxisDescription

Class AxisConfiguration


Field Summary
protected  PhasesInfo phasesinfo
           
 
Fields inherited from class org.apache.axis2.description.AxisDescription
engagedModules, parameterObservers, parent
 
Fields inherited from interface org.apache.axis2.description.DescriptionConstants
CLASSLOADER_KEY, CONTEXTPATH_KEY, EXECUTION_CHAIN_KEY, EXECUTION_FAULT_CHAIN_KEY, EXECUTION_OUT_CHAIN_KEY, IN_FAULTFLOW_KEY, INFLOW_KEY, MESSAGE_RECEIVER_KEY, MODULEREF_KEY, OPERATION_KEY, OUT_FAULTFLOW_KEY, OUTFLOW_KEY, PARAMETER_KEY, PHASES_KEY, SERVICE_CLASS_NAME, STYLE_KEY
 
Constructor Summary
AxisConfiguration()
          Constructor AxisConfiguration.
 
Method Summary
 void addDataLocator(java.lang.String dialect, AxisDataLocator dataLocator)
          For internal used only! To store instance of DataLocator when it is first loaded.
 void addDataLocatorClassNames(java.lang.String dialect, java.lang.String classname)
          Allows to define/configure Data Locator for specified dialect at Axis 2 Configuration.
 void addDefaultModuleVersion(java.lang.String moduleName, java.lang.String moduleVersion)
          Adds a default module version, which can be done either programmatically or by using axis2.xml.
 void addGlobalModuleRef(java.lang.String moduleName)
          Add an AxisModule to the list of globally deployed modules.
 void addLocalPolicyAssertion(QName name)
           
 void addMessageBuilder(java.lang.String contentType, Builder messageBuilder)
          Register a messageBuilder implementation against a content type.
 void addMessageFormatter(java.lang.String contentType, MessageFormatter messageFormatter)
          Register a messageFormatter implementation against a content type.
 void addMessageReceiver(java.lang.String mepURL, MessageReceiver messageReceiver)
           
 void addModule(AxisModule module)
          Add an available Module to this configuration
 void addModuleConfig(ModuleConfiguration moduleConfiguration)
          Adds module configuration, if there is a moduleConfig tag in service.
 void addObservers(AxisObserver axisObserver)
           
 void addService(AxisService service)
          Method addService.
 void addServiceGroup(AxisServiceGroup axisServiceGroup)
           
 void addTargetResolver(TargetResolver tr)
           
 void addToAllServicesMap(AxisService axisService)
           
 void addTransportIn(TransportInDescription transport)
          Method addTransportIn.
 void addTransportOut(TransportOutDescription transport)
          Method addTransportOut.
 void cleanup()
           
 void deployModule(java.lang.String moduleFileName)
           
 void engageGlobalModules()
          Engage all the previously added global modules.
 void engageModule(QName moduleref)
          Deprecated. Please use the String version instead
 void engageModule(java.lang.String moduleref)
          Engages the default module version corresponding to given module name , or if the module name contains version number in it then it will engage the correct module.
 void engageModule(java.lang.String moduleName, java.lang.String versionID)
          Engages a module using given name and its version ID.
 ClusterManager getClusterManager()
           
 AxisConfigurator getConfigurator()
           
 AxisDataLocator getDataLocator(java.lang.String dialect)
          Return DataLocator instance for specified dialect.
 java.lang.String getDataLocatorClassName(java.lang.String dialect)
          Return classname of DataLocator configured for specified dialect.
 AxisModule getDefaultModule(java.lang.String moduleName)
           
 java.lang.String getDefaultModuleVersion(java.lang.String moduleName)
           
 java.util.Hashtable getFaultyModules()
           
 java.util.Hashtable getFaultyServices()
           
 java.util.List getGlobalModules()
          Deprecated. please use addGlobalModule()
 java.util.ArrayList getInFaultFlowPhases()
           
 java.util.ArrayList getInFlowPhases()
           
 java.lang.Object getKey()
           
 java.util.List getLocalPolicyAssertions()
           
 Builder getMessageBuilder(java.lang.String contentType)
           
 MessageFormatter getMessageFormatter(java.lang.String contentType)
           
 MessageReceiver getMessageReceiver(java.lang.String mepURL)
           
 AxisModule getModule(java.lang.String name)
          Method getModule.
 AxisModule getModule(java.lang.String moduleName, java.lang.String moduleVersion)
          Return the module having name=moduleName & version=moduleVersion
 java.lang.ClassLoader getModuleClassLoader()
          The class loader that becomes the parent of all the modules
 ModuleConfiguration getModuleConfig(java.lang.String moduleName)
           
 java.util.HashMap getModules()
           
 java.util.List getModulesForPolicyNamesapce(java.lang.String namesapce)
           
 java.util.ArrayList getObserversList()
           
 java.util.ArrayList getOutFaultFlowPhases()
           
 java.util.ArrayList getOutFlowPhases()
           
 PhasesInfo getPhasesInfo()
           
 java.net.URL getRepository()
           
 AxisService getService(java.lang.String name)
          Method getService.
 java.lang.ClassLoader getServiceClassLoader()
           
 AxisService getServiceForActivation(java.lang.String serviceName)
          Service can start and stop, once stopped it cannot be accessed, so we need a way to get the service even if service is not active.
 AxisServiceGroup getServiceGroup(java.lang.String serviceNameAndGroupString)
           
 java.util.Iterator getServiceGroups()
           
 java.util.HashMap getServices()
           
 java.lang.ClassLoader getSystemClassLoader()
           
 TargetResolver getTargetResolverChain()
          getTargetResolverChain returns an instance of TargetResolver which iterates over the registered TargetResolvers, calling each one in turn when resolveTarget is called.
 TransportInDescription getTransportIn(java.lang.String name)
           
 TransportOutDescription getTransportOut(java.lang.String name)
           
 java.util.HashMap getTransportsIn()
           
 java.util.HashMap getTransportsOut()
           
 void insertPhase(Deployable d, int flow)
          This method can be used to insert a phase at the runtime for a given location And the relative location can be specified by beforePhase and afterPhase.
 boolean isAssertionLocal(QName name)
           
 boolean isEngaged(AxisModule axisModule)
           
 boolean isEngaged(QName qname)
          Deprecated. Use isEngaged(String)
 boolean isEngaged(java.lang.String moduleId)
          Check if a given module is engaged at this level.
 boolean isStart()
           
 void notifyObservers(int event_type, AxisModule moule)
           
 void notifyObservers(int event_type, AxisService service)
           
 void notifyObservers(int event_type, AxisServiceGroup serviceGroup)
           
 void onDisengage(AxisModule module)
          To dis-engage a module from the system.
 void onEngage(AxisModule module, AxisDescription engager)
           
 void registerLocalPolicyAssertions(AxisModule axisModule)
           
 void registerModulePolicySupport(AxisModule axisModule)
           
 void removeFaultyService(java.lang.String key)
           
 void removeLocalPolicyAssertion(QName name)
           
 void removeModule(java.lang.String module)
          Deprecated. Use removeModule(String,String)
 void removeModule(java.lang.String moduleName, java.lang.String moduleVersion)
          Remove a module with moduleName & moduleVersion
 void removeService(java.lang.String name)
          Method removeService.
 AxisServiceGroup removeServiceGroup(java.lang.String serviceGroupName)
           
 void setClusterManager(ClusterManager clusterManager)
           
 void setConfigurator(AxisConfigurator configurator)
           
 void setGlobalOutPhase(java.util.ArrayList outPhases)
           
 void setInFaultPhases(java.util.ArrayList list)
           
 void setInPhasesUptoAndIncludingPostDispatch(java.util.ArrayList inPhasesUptoAndIncludingPostDispatch)
           
 void setModuleClassLoader(java.lang.ClassLoader classLoader)
           
 void setOutFaultPhases(java.util.ArrayList list)
           
 void setPhasesInfo(PhasesInfo phasesInfo)
           
 void setRepository(java.net.URL axis2Repository)
           
 void setServiceClassLoader(java.lang.ClassLoader classLoader)
           
 void setStart(boolean start)
           
 void setSystemClassLoader(java.lang.ClassLoader classLoader)
           
 void startService(java.lang.String serviceName)
           
 void stopService(java.lang.String serviceName)
           
 void validateSystemPredefinedPhases()
          Checks whether the system pre-defined phases for all the flows, have been changed.
 
Methods inherited from class org.apache.axis2.description.AxisDescription
addChild, addChild, addParameter, addParameter, addParameterObserver, applyPolicy, applyPolicy, deserializeParameters, disengageModule, engageModule, engageModule, getAxisConfiguration, getChild, getChildren, getDocumentation, getDocumentationNode, getEngagedModules, getParameter, getParameters, getParameterValue, getParent, getPolicyInclude, getPolicySubject, isParameterLocked, isParameterTrue, removeChild, removeParameter, removeParameterObserver, setDocumentation, setDocumentation, setParent, setPolicyInclude
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

phasesinfo

protected PhasesInfo phasesinfo
Constructor Detail

AxisConfiguration

public AxisConfiguration()
Constructor AxisConfiguration.

Method Detail

addMessageReceiver

public void addMessageReceiver(java.lang.String mepURL,
                               MessageReceiver messageReceiver)

addMessageBuilder

public void addMessageBuilder(java.lang.String contentType,
                              Builder messageBuilder)
Register a messageBuilder implementation against a content type. This is used by Axis2 to support different message formats.

Parameters:
contentType - the relevant content-type (i.e. "text/xml")
messageBuilder - a Builder implementation

addMessageFormatter

public void addMessageFormatter(java.lang.String contentType,
                                MessageFormatter messageFormatter)
Register a messageFormatter implementation against a content type. This is used by Axis2 to support serialization of messages to different message formats. (Eg: JSON)

Parameters:
contentType - the relevant content-type (i.e. "text/xml")
messageFormatter - a MessageFormatter implementation

addModule

public void addModule(AxisModule module)
               throws AxisFault
Add an available Module to this configuration

Parameters:
module - an AxisModule
Throws:
AxisFault - in case of error

deployModule

public void deployModule(java.lang.String moduleFileName)
                  throws DeploymentException
Throws:
DeploymentException

removeModule

public void removeModule(java.lang.String module)
Deprecated. Use removeModule(String,String)

To remove a given module from the system

Parameters:
module - name of module to remove

removeModule

public void removeModule(java.lang.String moduleName,
                         java.lang.String moduleVersion)
Remove a module with moduleName & moduleVersion

Parameters:
moduleName -
moduleVersion -

addModuleConfig

public void addModuleConfig(ModuleConfiguration moduleConfiguration)
Adds module configuration, if there is a moduleConfig tag in service.

Parameters:
moduleConfiguration - a ModuleConfiguration to remember

addObservers

public void addObservers(AxisObserver axisObserver)

addService

public void addService(AxisService service)
                throws AxisFault
Method addService.

Parameters:
service -
Throws:
AxisFault

addServiceGroup

public void addServiceGroup(AxisServiceGroup axisServiceGroup)
                     throws AxisFault
Throws:
AxisFault

addToAllServicesMap

public void addToAllServicesMap(AxisService axisService)
                         throws AxisFault
Throws:
AxisFault

removeServiceGroup

public AxisServiceGroup removeServiceGroup(java.lang.String serviceGroupName)
                                    throws AxisFault
Throws:
AxisFault

addTransportIn

public void addTransportIn(TransportInDescription transport)
                    throws AxisFault
Method addTransportIn.

Parameters:
transport -
Throws:
AxisFault

addTransportOut

public void addTransportOut(TransportOutDescription transport)
                     throws AxisFault
Method addTransportOut.

Parameters:
transport -
Throws:
AxisFault

engageModule

public void engageModule(QName moduleref)
                  throws AxisFault
Deprecated. Please use the String version instead

Engages the default module version corresponding to the given module name, or if the module name contains version number in it then it will engage the correct module. Both the below cases are valid : - 1. engageModule("addressing"); 2. engageModule("addressing-1.23");

Parameters:
moduleref - QName of module to engage
Throws:
AxisFault

engageModule

public void engageModule(java.lang.String moduleref)
                  throws AxisFault
Engages the default module version corresponding to given module name , or if the module name contains version number in it then it will engage the correct module. Both of the below two cases are valid 1. engageModule("addressing"); 2. engageModule("addressing-1.23");

Parameters:
moduleref - name of module to engage
Throws:
AxisFault

engageModule

public void engageModule(java.lang.String moduleName,
                         java.lang.String versionID)
                  throws AxisFault
Engages a module using given name and its version ID.

Parameters:
moduleName -
versionID -
Throws:
AxisFault

onEngage

public void onEngage(AxisModule module,
                     AxisDescription engager)
              throws AxisFault
Overrides:
onEngage in class AxisDescription
Throws:
AxisFault

onDisengage

public void onDisengage(AxisModule module)
                 throws AxisFault
To dis-engage a module from the system. This will remove all the handlers belonging to this module from all the handler chains.

Overrides:
onDisengage in class AxisDescription
Parameters:
module - module to disengage
Throws:
AxisFault

notifyObservers

public void notifyObservers(int event_type,
                            AxisService service)

notifyObservers

public void notifyObservers(int event_type,
                            AxisModule moule)

notifyObservers

public void notifyObservers(int event_type,
                            AxisServiceGroup serviceGroup)

removeService

public void removeService(java.lang.String name)
                   throws AxisFault
Method removeService.

Parameters:
name -
Throws:
AxisFault

addGlobalModuleRef

public void addGlobalModuleRef(java.lang.String moduleName)
Add an AxisModule to the list of globally deployed modules.

TODO: should this check for duplicate names?

Parameters:
moduleName - name of AxisModule to add to list.

engageGlobalModules

public void engageGlobalModules()
                         throws AxisFault
Engage all the previously added global modules.

Throws:
AxisFault - if an individual engageModule() fails

getFaultyModules

public java.util.Hashtable getFaultyModules()

getFaultyServices

public java.util.Hashtable getFaultyServices()

removeFaultyService

public void removeFaultyService(java.lang.String key)

getOutFlowPhases

public java.util.ArrayList getOutFlowPhases()

getInFaultFlowPhases

public java.util.ArrayList getInFaultFlowPhases()
Returns:
Returns ArrayList.

getInFlowPhases

public java.util.ArrayList getInFlowPhases()

getMessageReceiver

public MessageReceiver getMessageReceiver(java.lang.String mepURL)

getMessageBuilder

public Builder getMessageBuilder(java.lang.String contentType)
Parameters:
contentType -
Returns:
the configured message builder implementation class name against the given content type.

getMessageFormatter

public MessageFormatter getMessageFormatter(java.lang.String contentType)
Parameters:
contentType -
Returns:
the configured message formatter implementation class name against the given content type.

getModule

public AxisModule getModule(java.lang.String name)
Method getModule. First it will check whether the given module is there in the hashMap, if so returns that and the name, which can be either with version string or without version string.

If its not found and the name does not contain the version string in it then checks whether the default version of the module is available in the sytem for the given name, then returns that.

Parameters:
name -
Returns:
Returns ModuleDescription.

getModule

public AxisModule getModule(java.lang.String moduleName,
                            java.lang.String moduleVersion)
Return the module having name=moduleName & version=moduleVersion

Parameters:
moduleName - The module name
moduleVersion - The version of the module
Returns:
The AxisModule having name=moduleName & version=moduleVersion

getModuleClassLoader

public java.lang.ClassLoader getModuleClassLoader()
The class loader that becomes the parent of all the modules

Returns:

getModuleConfig

public ModuleConfiguration getModuleConfig(java.lang.String moduleName)

getModules

public java.util.HashMap getModules()
Returns:
Returns HashMap.

getGlobalModules

public java.util.List getGlobalModules()
Deprecated. please use addGlobalModule()

Get a list of the global modules

Returns:
the global module list. BE CAREFUL, this list is mutable.

getOutFaultFlowPhases

public java.util.ArrayList getOutFaultFlowPhases()
Returns:
Returns ArrayList.

getPhasesInfo

public PhasesInfo getPhasesInfo()

getRepository

public java.net.URL getRepository()

getService

public AxisService getService(java.lang.String name)
                       throws AxisFault
Method getService.

Parameters:
name -
Returns:
Returns AxisService.
Throws:
AxisFault

getServiceForActivation

public AxisService getServiceForActivation(java.lang.String serviceName)
Service can start and stop, once stopped it cannot be accessed, so we need a way to get the service even if service is not active.

Returns:
AxisService

getServiceClassLoader

public java.lang.ClassLoader getServiceClassLoader()

getServiceGroup

public AxisServiceGroup getServiceGroup(java.lang.String serviceNameAndGroupString)

getServiceGroups

public java.util.Iterator getServiceGroups()

getServices

public java.util.HashMap getServices()

getSystemClassLoader

public java.lang.ClassLoader getSystemClassLoader()

getTransportIn

public TransportInDescription getTransportIn(java.lang.String name)

getTransportOut

public TransportOutDescription getTransportOut(java.lang.String name)

getTransportsIn

public java.util.HashMap getTransportsIn()

getTransportsOut

public java.util.HashMap getTransportsOut()

isEngaged

public boolean isEngaged(QName qname)
Deprecated. Use isEngaged(String)

This method needs to remain for a few Axis2 releases to support legacy apps still using it.

Parameters:
qname -

isEngaged

public boolean isEngaged(java.lang.String moduleId)
Description copied from class: AxisDescription
Check if a given module is engaged at this level.

Overrides:
isEngaged in class AxisDescription
Parameters:
moduleId - module to investigate.
Returns:
true if engaged, false if not. TODO: Handle versions? isEngaged("addressing") should be true even for versioned modulename...

isEngaged

public boolean isEngaged(AxisModule axisModule)
Overrides:
isEngaged in class AxisDescription

setGlobalOutPhase

public void setGlobalOutPhase(java.util.ArrayList outPhases)

setInFaultPhases

public void setInFaultPhases(java.util.ArrayList list)
Parameters:
list -

setInPhasesUptoAndIncludingPostDispatch

public void setInPhasesUptoAndIncludingPostDispatch(java.util.ArrayList inPhasesUptoAndIncludingPostDispatch)

setModuleClassLoader

public void setModuleClassLoader(java.lang.ClassLoader classLoader)

setOutFaultPhases

public void setOutFaultPhases(java.util.ArrayList list)
Parameters:
list -

setPhasesInfo

public void setPhasesInfo(PhasesInfo phasesInfo)

setRepository

public void setRepository(java.net.URL axis2Repository)

setServiceClassLoader

public void setServiceClassLoader(java.lang.ClassLoader classLoader)

setSystemClassLoader

public void setSystemClassLoader(java.lang.ClassLoader classLoader)

addDefaultModuleVersion

public void addDefaultModuleVersion(java.lang.String moduleName,
                                    java.lang.String moduleVersion)
Adds a default module version, which can be done either programmatically or by using axis2.xml. The default module version is important if user asks to engage a module without given version ID, in which case, the default version is engaged.

Parameters:
moduleName -
moduleVersion -

getDefaultModuleVersion

public java.lang.String getDefaultModuleVersion(java.lang.String moduleName)

getDefaultModule

public AxisModule getDefaultModule(java.lang.String moduleName)

getClusterManager

public ClusterManager getClusterManager()

setClusterManager

public void setClusterManager(ClusterManager clusterManager)

getKey

public java.lang.Object getKey()
Specified by:
getKey in class AxisDescription

stopService

public void stopService(java.lang.String serviceName)
                 throws AxisFault
Throws:
AxisFault

startService

public void startService(java.lang.String serviceName)
                  throws AxisFault
Throws:
AxisFault

getModulesForPolicyNamesapce

public java.util.List getModulesForPolicyNamesapce(java.lang.String namesapce)

registerModulePolicySupport

public void registerModulePolicySupport(AxisModule axisModule)

registerLocalPolicyAssertions

public void registerLocalPolicyAssertions(AxisModule axisModule)

getObserversList

public java.util.ArrayList getObserversList()

isStart

public boolean isStart()

setStart

public void setStart(boolean start)

getTargetResolverChain

public TargetResolver getTargetResolverChain()
getTargetResolverChain returns an instance of TargetResolver which iterates over the registered TargetResolvers, calling each one in turn when resolveTarget is called.


addTargetResolver

public void addTargetResolver(TargetResolver tr)

addLocalPolicyAssertion

public void addLocalPolicyAssertion(QName name)

getLocalPolicyAssertions

public java.util.List getLocalPolicyAssertions()

removeLocalPolicyAssertion

public void removeLocalPolicyAssertion(QName name)

isAssertionLocal

public boolean isAssertionLocal(QName name)

addDataLocatorClassNames

public void addDataLocatorClassNames(java.lang.String dialect,
                                     java.lang.String classname)
Allows to define/configure Data Locator for specified dialect at Axis 2 Configuration.

Parameters:
dialect- - an absolute URI represents the format and version of data
classname - - class name of the Data Locator configured to support retrieval for the specified dialect.

addDataLocator

public void addDataLocator(java.lang.String dialect,
                           AxisDataLocator dataLocator)
For internal used only! To store instance of DataLocator when it is first loaded. This allows to reuse of the DataLocator after it is initially loaded.

Parameters:
dialect- - an absolute URI represents the format and version of data
dataLocator - - specified an DataLocator instance to support retrieval of the specified dialect.

getDataLocator

public AxisDataLocator getDataLocator(java.lang.String dialect)
Return DataLocator instance for specified dialect.


getDataLocatorClassName

public java.lang.String getDataLocatorClassName(java.lang.String dialect)
Return classname of DataLocator configured for specified dialect.


validateSystemPredefinedPhases

public void validateSystemPredefinedPhases()
                                    throws DeploymentException
Checks whether the system pre-defined phases for all the flows, have been changed. If they have been changed, throws a DeploymentException.

Throws:
DeploymentException

getConfigurator

public AxisConfigurator getConfigurator()

setConfigurator

public void setConfigurator(AxisConfigurator configurator)

cleanup

public void cleanup()

insertPhase

public void insertPhase(Deployable d,
                        int flow)
                 throws AxisFault
This method can be used to insert a phase at the runtime for a given location And the relative location can be specified by beforePhase and afterPhase. Parameters Either or both of them can be null , if both the parameters are null then the phase will be added some where in the global phase. If one of them are null then the phase will be added - If the beforePhase is null then the phase will be added after the afterPhase - If the after phase is null then the phase will be added before the beforePhase Type of the flow will be specified by the parameter flow. 1 - Inflow 2 - out flow 3 - fault in flow 4 - fault out flow

Parameters:
d - the Deployable representing the Phase to deploy
flow - the type of the flow
Throws:
AxisFault - : If something went wrong


Copyright © 2007 Apache Web Services Project. All Rights Reserved.