org.apache.axis2.deployment
Class DeploymentEngine

java.lang.Object
  extended byorg.apache.axis2.deployment.DeploymentEngine
All Implemented Interfaces:
DeploymentConstants

public class DeploymentEngine
extends Object
implements DeploymentConstants


Field Summary
 String axis2repository
           
 
Fields inherited from interface org.apache.axis2.deployment.DeploymentConstants
ATTRIBUTE_DEFAULT_VERSION, ATTRIBUTE_LOCKED, ATTRIBUTE_NAME, ATTRIBUTE_SCOPE, AXIS2_CONFIGURATION_RESOURCE, AXIS2_CONFIGURATION_XML, AXIS2_REPO, BOOLEAN_FALSE, BOOLEAN_TRUE, DIRECTORY_AXIS2_HOME, DIRECTORY_CONF, DIRECTORY_MODULES, DIRECTORY_SERVICES, META_INF, MODULE_PATH, MODULE_XML, POLICY_NS_URI, PROPERTY_TEMP_DIR, RESOURCE_MODULES, SCHEMA, SCHEMA_NAME_SPACE, SEPARATOR_COLON, SEPARATOR_DOT, SERVICE_PATH, SERVICES_XML, SUFFIX_JAR, SUFFIX_MAR, SUFFIX_WSDL, TAG_AFTER, TAG_BEFORE, TAG_CLASS_NAME, TAG_DEFAULT_MODULE_VERSION, TAG_DESCRIPTION, TAG_DISPATCH_ORDER, TAG_DISPATCHER, TAG_EXCLUDE_OPERATIONS, TAG_EXTRACT_SERVICE_ARCHIVE, TAG_FLOW_IN, TAG_FLOW_IN_FAULT, TAG_FLOW_OUT, TAG_FLOW_OUT_FAULT, TAG_HANDLER, TAG_HOT_DEPLOYMENT, TAG_HOT_UPDATE, TAG_LABEL, TAG_LISTENER, TAG_MEP, TAG_MESSAGE, TAG_MESSAGE_RECEIVER, TAG_MESSAGE_RECEIVERS, TAG_MODULE, TAG_MODULE_CONFIG, TAG_NAMESPACES, TAG_OPERATION, TAG_ORDER, TAG_PARAMETER, TAG_PHASE, TAG_PHASE_FIRST, TAG_PHASE_LAST, TAG_PHASE_ORDER, TAG_POLICY, TAG_POLICY_REF, TAG_REFERENCE, TAG_SERVICE, TAG_SERVICE_GROUP, TAG_SUPPORTED_POLICY_NAMESPACES, TAG_TRANSPORT, TAG_TRANSPORT_RECEIVER, TAG_TRANSPORT_SENDER, TAG_TRANSPORTS, TAG_TYPE, TARGET_NAME_SPACE, TYPE_MODULE, TYPE_SERVICE
 
Constructor Summary
DeploymentEngine()
          Default constructor is needed to deploy module and service programatically.
DeploymentEngine(String repositoryName, String xmlFile)
           
 
Method Summary
 void addModule(QName moduleName)
          Adds module references to the list while parsing the axis2.xml file.
 void addWSToDeploy(ArchiveFileData file)
           
 void addWSToUndeploy(WSInfo file)
           
 AxisModule buildModule(File modulearchive, AxisConfiguration config)
          Builds ModuleDescription for a given module archive file.
 AxisService buildService(AxisService axisService, InputStream serviceInputStream, ClassLoader classLoader, AxisConfiguration axisConfig)
          Fills an axisservice object using services.xml.
 void doDeploy()
           
 AxisConfiguration getAxisConfig()
          Gets AxisConfiguration.
 ArchiveFileData getCurrentFileItem()
           
 AxisModule getModule(QName moduleName)
           
 PhasesInfo getPhasesinfo()
           
 boolean isHotUpdate()
           
 AxisConfiguration load()
           
 AxisConfiguration load(InputStream in)
          To get AxisConfiguration for a given inputStream this method can be used.
 void setPhasesinfo(PhasesInfo phasesinfo)
           
 void unDeploy()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

axis2repository

public String axis2repository
Constructor Detail

DeploymentEngine

public DeploymentEngine()
Default constructor is needed to deploy module and service programatically.


DeploymentEngine

public DeploymentEngine(String repositoryName,
                        String xmlFile)
                 throws DeploymentException
Method Detail

addModule

public void addModule(QName moduleName)
Adds module references to the list while parsing the axis2.xml file. time none of module availble (they load after parsing the document)

Parameters:
moduleName - QName

addWSToDeploy

public void addWSToDeploy(ArchiveFileData file)
Parameters:
file -

addWSToUndeploy

public void addWSToUndeploy(WSInfo file)
Parameters:
file -

buildModule

public AxisModule buildModule(File modulearchive,
                              AxisConfiguration config)
                       throws DeploymentException
Builds ModuleDescription for a given module archive file. This does not called the init method since there is no refernce to configuration context so who ever create module usieng this has to called module.init if it is required

Parameters:
modulearchive - : Actual module archive file
config - : AxisConfiguration : for get classs loders etc..
Returns:
Throws:
DeploymentException

buildService

public AxisService buildService(AxisService axisService,
                                InputStream serviceInputStream,
                                ClassLoader classLoader,
                                AxisConfiguration axisConfig)
                         throws DeploymentException
Fills an axisservice object using services.xml. First creates an axisservice object using WSDL and then fills it using the given services.xml. Loads all the required class and builds the chains, finally adds the servicecontext to EngineContext and axisservice into EngineConfiguration.

Parameters:
axisService -
serviceInputStream -
classLoader -
Returns:
Returns AxisService.
Throws:
DeploymentException

doDeploy

public void doDeploy()

load

public AxisConfiguration load()
                       throws DeploymentException
Throws:
DeploymentException

load

public AxisConfiguration load(InputStream in)
                       throws DeploymentException
To get AxisConfiguration for a given inputStream this method can be used. The inputstream should be a valid axis2.xml , else you will be getting DeploymentExceptions.

First creat a AxisConfiguration using given inputSream , and then it will try to find the repository location parameter from AxisConfiguration, so if user has add a parameter with the name "repository" , then the value specified by that parameter will be the repositiry and system will try to load modules and services from that repository location if it a valid location. hot deployment and hot update will work as usual in this case.

You will be getting AxisConfiguration corresponding to given inputstream if it is valid , if something goes wrong you will be getting DeploymentExeption

Parameters:
in -
Returns:
Throws:
DeploymentException

unDeploy

public void unDeploy()

getAxisConfig

public AxisConfiguration getAxisConfig()
Gets AxisConfiguration.

Returns:
AxisConfiguration AxisConfiguration

getCurrentFileItem

public ArchiveFileData getCurrentFileItem()

getModule

public AxisModule getModule(QName moduleName)
                     throws AxisFault
Throws:
AxisFault

getPhasesinfo

public PhasesInfo getPhasesinfo()

isHotUpdate

public boolean isHotUpdate()

setPhasesinfo

public void setPhasesinfo(PhasesInfo phasesinfo)