org.jboss.soa.esb.listeners.deployers.mc
Class EsbWsdlDeployer

java.lang.Object
  extended by org.jboss.deployers.spi.deployer.helpers.AbstractDeployer
      extended by org.jboss.deployers.spi.deployer.helpers.AbstractRealDeployer
          extended by org.jboss.deployers.spi.deployer.helpers.AbstractSimpleRealDeployer<T>
              extended by org.jboss.deployers.vfs.spi.deployer.AbstractSimpleVFSRealDeployer<EsbMetaData>
                  extended by org.jboss.soa.esb.listeners.deployers.mc.EsbWsdlDeployer
All Implemented Interfaces:
org.jboss.deployers.spi.deployer.Deployer, org.jboss.deployers.spi.Ordered

public class EsbWsdlDeployer
extends org.jboss.deployers.vfs.spi.deployer.AbstractSimpleVFSRealDeployer<EsbMetaData>

MC deployer that generates a wsdl and then adds this wsdl to a virtual memory file system.

This deployer accepts an EsbMetaData instance and looks for the existence of any WebService (WS) information. If WS information is found a wsdl will be generated and it will be added to the deployment unit as a metadata location. The wsdl file is added as a VirtualFile to an in-memory virtual file system.

This deployer is set at the POST_CLASSLOADER deployment stage as it requries access to classloaders for generating the wsdl.

Author:
Daniel Bevenius

Nested Class Summary
 
Nested classes/interfaces inherited from interface org.jboss.deployers.spi.Ordered
org.jboss.deployers.spi.Ordered.OrderedComparator
 
Field Summary
 
Fields inherited from interface org.jboss.deployers.spi.Ordered
COMPARATOR
 
Constructor Summary
EsbWsdlDeployer()
          No-args constructor.
 
Method Summary
 void deploy(org.jboss.deployers.vfs.spi.structure.VFSDeploymentUnit unit, EsbMetaData esbMetaData)
          Generates a wsdl for all web services specified in the EsbMetaDatas model and makes it available as deployment unit metadata.
 void undeploy(org.jboss.deployers.vfs.spi.structure.VFSDeploymentUnit unit, EsbMetaData esbMetaData)
          Undeploy will inspect the deployment unit to see if the deploy method attached a VirtualFile representing an in-memory file system.
 
Methods inherited from class org.jboss.deployers.vfs.spi.deployer.AbstractSimpleVFSRealDeployer
deploy, undeploy
 
Methods inherited from class org.jboss.deployers.spi.deployer.helpers.AbstractSimpleRealDeployer
getInput, internalDeploy, internalUndeploy
 
Methods inherited from class org.jboss.deployers.spi.deployer.helpers.AbstractRealDeployer
addControllerContextName, deploy, isControllerContextNameCandidate, isUseUnitName, removeControllerContextName, setUseUnitName, undeploy
 
Methods inherited from class org.jboss.deployers.spi.deployer.helpers.AbstractDeployer
addInput, addInput, addOutput, addOutput, getInputs, getOutput, getOutputs, getRelativeOrder, getStage, isAllInputs, isComponentsOnly, isParentFirst, isTopLevelOnly, isWantComponents, setAllInputs, setComponentsOnly, setInput, setInputs, setInputs, setInputs, setOutput, setOutputs, setOutputs, setOutputs, setParentFirst, setRelativeOrder, setStage, setTopLevelOnly, setWantComponents
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

EsbWsdlDeployer

public EsbWsdlDeployer()
No-args constructor.

Method Detail

deploy

public void deploy(org.jboss.deployers.vfs.spi.structure.VFSDeploymentUnit unit,
                   EsbMetaData esbMetaData)
            throws org.jboss.deployers.spi.DeploymentException
Generates a wsdl for all web services specified in the EsbMetaDatas model and makes it available as deployment unit metadata.

Deploy will inspect the EsbMetaData and see if its model contains web services information and if so generates the wsdl for them, and will add any additional schemas in the deployment unit to an in-memory virtual file system.

Specified by:
deploy in class org.jboss.deployers.vfs.spi.deployer.AbstractSimpleVFSRealDeployer<EsbMetaData>
Parameters:
unit - The VFSDeploymentUnit for this deploment.
esbMetaData - The EsbMetaData for this deployment.
Throws:
org.jboss.deployers.spi.DeploymentException

undeploy

public void undeploy(org.jboss.deployers.vfs.spi.structure.VFSDeploymentUnit unit,
                     EsbMetaData esbMetaData)
Undeploy will inspect the deployment unit to see if the deploy method attached a VirtualFile representing an in-memory file system. If one exists it will be removed.

Overrides:
undeploy in class org.jboss.deployers.vfs.spi.deployer.AbstractSimpleVFSRealDeployer<EsbMetaData>
Parameters:
unit - The VFSDeploymentUnit for this deploment.
esbMetaData - The EsbMetaData for this deployment.