Class GenericHotDeploymentTool
java.lang.Object
org.apache.tools.ant.taskdefs.optional.j2ee.AbstractHotDeploymentTool
org.apache.tools.ant.taskdefs.optional.j2ee.GenericHotDeploymentTool
- All Implemented Interfaces:
HotDeploymentTool
- Direct Known Subclasses:
JonasHotDeploymentTool
public class GenericHotDeploymentTool extends AbstractHotDeploymentTool
A generic tool for J2EE server hot deployment.
The simple implementation spawns a JVM with the supplied class name, jvm args, and arguments.
- See Also:
HotDeploymentTool
,AbstractHotDeploymentTool
,ServerDeploy
-
Field Summary
Fields inherited from interface org.apache.tools.ant.taskdefs.optional.j2ee.HotDeploymentTool
ACTION_DELETE, ACTION_DEPLOY, ACTION_LIST, ACTION_UNDEPLOY, ACTION_UPDATE
-
Constructor Summary
Constructors Constructor Description GenericHotDeploymentTool()
-
Method Summary
Modifier and Type Method Description Commandline.Argument
createArg()
Add a nested argument element to hand to the deployment tool; optional.Commandline.Argument
createJvmarg()
Add a nested argument element to hand to the JVM running the deployment tool.void
deploy()
Perform the actual deployment.java.lang.String
getClassName()
Get the classname attribute.Java
getJava()
get the java attribute.protected boolean
isActionValid()
Determines if the "action" attribute defines a valid action.void
setClassName(java.lang.String className)
The name of the class to execute to perform deployment; required.void
setTask(ServerDeploy task)
Sets the parent task.void
validateAttributes()
Validates the passed in attributes.Methods inherited from class org.apache.tools.ant.taskdefs.optional.j2ee.AbstractHotDeploymentTool
createClasspath, getClasspath, getPassword, getServer, getTask, getUserName, setClasspath, setPassword, setServer, setUserName
-
Constructor Details
-
GenericHotDeploymentTool
public GenericHotDeploymentTool()
-
-
Method Details
-
createArg
Add a nested argument element to hand to the deployment tool; optional.- Returns:
- A Commandline.Argument object representing the command line argument being passed when the deployment tool is run. IE: "-user=mark", "-password=venture"...
-
createJvmarg
Add a nested argument element to hand to the JVM running the deployment tool. Creates a nested arg element.- Returns:
- A Commandline.Argument object representing the JVM command line argument being passed when the deployment tool is run. IE: "-ms64m", "-mx128m"...
-
isActionValid
protected boolean isActionValid()Determines if the "action" attribute defines a valid action.Subclasses should determine if the action passed in is supported by the vendor's deployment tool. For this generic implementation, the only valid action is "deploy"
- Specified by:
isActionValid
in classAbstractHotDeploymentTool
- Returns:
- true if the "action" attribute is valid, false if not.
-
setTask
Sets the parent task.- Specified by:
setTask
in interfaceHotDeploymentTool
- Overrides:
setTask
in classAbstractHotDeploymentTool
- Parameters:
task
- An ServerDeploy object representing the parent task.
-
deploy
Perform the actual deployment. For this generic implementation, a JVM is spawned using the supplied classpath, classname, JVM args, and command line arguments.- Throws:
BuildException
- if the attributes are invalid or incomplete.
-
validateAttributes
Validates the passed in attributes. Ensures the className and arguments attribute have been set.- Specified by:
validateAttributes
in interfaceHotDeploymentTool
- Overrides:
validateAttributes
in classAbstractHotDeploymentTool
- Throws:
BuildException
- if the attributes are invalid or incomplete.
-
setClassName
public void setClassName(java.lang.String className)The name of the class to execute to perform deployment; required. Example: "com.foobar.tools.deploy.DeployTool"- Parameters:
className
- The fully qualified class name of the class to perform deployment.
-
getJava
get the java attribute.- Returns:
- the java attribute.
-
getClassName
public java.lang.String getClassName()Get the classname attribute.- Returns:
- the classname value.
-