org.apache.tools.ant.taskdefs.optional.ejb
Class EjbJar

java.lang.Object
  |
  +--org.apache.tools.ant.Task
        |
        +--org.apache.tools.ant.taskdefs.MatchingTask
              |
              +--org.apache.tools.ant.taskdefs.optional.ejb.EjbJar

public class EjbJar
extends MatchingTask

Provides automated ejb jar file creation for ant. Extends the MatchingTask class provided in the default ant distribution to provide a directory scanning EJB jarfile generator.

The task works by taking the deployment descriptors one at a time and parsing them to locate the names of the classes which should be placed in the jar. The classnames are translated to java.io.Files by replacing periods with File.separatorChar and resolving the generated filename as a relative path under the srcDir attribute. All necessary files are then assembled into a jarfile. One jarfile is constructed for each deployment descriptor found.

Functionality is currently provided for standard EJB1.1 jars and Weblogic 5.1 jars. The weblogic deployment descriptors, used in constructing the Weblogic jar, are located based on a simple naming convention. The name of the standard deployment descriptor is taken upto the first instance of a String, specified by the attribute baseNameTerminator, and then the regular Weblogic descriptor name is appended. For example if baseNameTerminator is set to '-', its default value, and a standard descriptor is called Foo-ejb-jar.xml then the files Foo-weblogic-ejb-jar.xml and Foo-weblogic-cmp-rdbms-jar.xml will be looked for, and if found, included in the jarfile.

Attributes and setter methods are provided to support optional generation of Weblogic5.1 jars, optional deletion of generic jar files, setting alternate values for baseNameTerminator, and setting the strings to append to the names of the generated jarfiles.

Author:
Tim Fennell

Fields inherited from class org.apache.tools.ant.taskdefs.MatchingTask
fileset, useDefaultExcludes
 
Fields inherited from class org.apache.tools.ant.Task
description, location, project, target, taskName, taskType, wrapper
 
Constructor Summary
EjbJar()
           
 
Method Summary
 WeblogicDeploymentTool createWeblogic()
           
 WeblogicTOPLinkDeploymentTool createWeblogictoplink()
           
 void execute()
          Invoked by Ant after the task is prepared, when it is ready to execute this task.
 void setBasejarname(java.lang.String inValue)
          Setter used to store the value of descriptorDir prior to execute() being called.
 void setBasenameterminator(java.lang.String inValue)
          Setter used to store the value of baseNameTerminator
 void setDescriptordir(java.io.File inDir)
          Setter used to store the value of descriptorDir prior to execute() being called.
 void setDestdir(java.io.File inDir)
          Setter used to store the value of destination directory prior to execute() being called.
 void setFlatdestdir(boolean inValue)
          Setter used to store the value of flatDestDir.
 void setGenerateweblogic(java.lang.String inValue)
          Setter used to store the value of generateweblogic.
 void setGenericjarsuffix(java.lang.String inString)
          Setter used to store the suffix for the generated jar file.
 void setSrcdir(java.io.File inDir)
          Setter used to store the value of srcDir prior to execute() being called.
 
Methods inherited from class org.apache.tools.ant.taskdefs.MatchingTask
createExclude, createInclude, createPatternSet, getDirectoryScanner, setDefaultexcludes, setExcludes, setExcludesfile, setIncludes, setIncludesfile, XsetIgnore, XsetItems
 
Methods inherited from class org.apache.tools.ant.Task
getDescription, getLocation, getOwningTarget, getProject, getRuntimeConfigurableWrapper, getTaskName, init, log, log, maybeConfigure, setDescription, setLocation, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

EjbJar

public EjbJar()
Method Detail

createWeblogic

public WeblogicDeploymentTool createWeblogic()

createWeblogictoplink

public WeblogicTOPLinkDeploymentTool createWeblogictoplink()

setSrcdir

public void setSrcdir(java.io.File inDir)
Setter used to store the value of srcDir prior to execute() being called.
Parameters:
inDir - the source directory.

setDescriptordir

public void setDescriptordir(java.io.File inDir)
Setter used to store the value of descriptorDir prior to execute() being called.
Parameters:
inDir - the directory containing the deployment descriptors.

setBasejarname

public void setBasejarname(java.lang.String inValue)
Setter used to store the value of descriptorDir prior to execute() being called.
Parameters:
inDir - the directory containing the deployment descriptors.

setDestdir

public void setDestdir(java.io.File inDir)
Setter used to store the value of destination directory prior to execute() being called.
Parameters:
inFile - the destination directory.

setFlatdestdir

public void setFlatdestdir(boolean inValue)
Setter used to store the value of flatDestDir.
Parameters:
inValue - a string, either 'true' or 'false'.

setGenericjarsuffix

public void setGenericjarsuffix(java.lang.String inString)
Setter used to store the suffix for the generated jar file.
Parameters:
inString - the string to use as the suffix.

setBasenameterminator

public void setBasenameterminator(java.lang.String inValue)
Setter used to store the value of baseNameTerminator
Parameters:
inValue - a string which marks the end of the basename.

setGenerateweblogic

public void setGenerateweblogic(java.lang.String inValue)
Setter used to store the value of generateweblogic.
Parameters:
inValue - a string, either 'true' or 'false'.

execute

public void execute()
             throws BuildException
Invoked by Ant after the task is prepared, when it is ready to execute this task. Parses the XML deployment descriptor to acquire the list of files, then constructs the destination jar file (first deleting it if it already exists) from the list of classfiles encountered and the descriptor itself. File will be of the expected format with classes under full package hierarchies and the descriptor in META-INF/ejb-jar.xml
Overrides:
execute in class Task
Throws:
BuildException - thrown whenever a problem is encountered that cannot be recovered from, to signal to ant that a major problem occurred within this task.


Copyright © 2000 Apache Software Foundation. All Rights Reserved.