|
Knopflerfish OSGi 2.1.0 | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.apache.tools.ant.ProjectComponent
org.apache.tools.ant.Task
org.knopflerfish.ant.taskdefs.bundle.BundleInfoTask
Task that analyzes a set of java sources or class files, and lists all imported and defined packages. Also tries to find any class implementing org.osgi.framework.BundleActivator.
Java class files are analyzed using the BCEL lib available from
http://jakarta.apache.org/bcel.
Note: Scanning only applies
to the listed files - a complete closure of all referenced classes is
not done.
Java source code is analyzed using very simple line-based scanning of
files.
Note: Source code analysis does not attempt to find any
BundleActivator
Jar file analysis is not yet implemented
| Attribute | Description | Required | ||||||||
| imports | Name of property that will receive a comma-separated list
of all used packages.
If set to empty string, no property will be set. Note: Some default packages are always added. These defaults can be set using the defaultimports parameter. |
No. Default value is "" |
||||||||
| exports | Name of property that will receive a comma-separated
list of all defined packages.
If set to empty string, no property will be set. |
No. Default value is "" |
||||||||
| activator |
Name of property that will receive name of class which implements
org.osgi.framework.BundleActivator
If set to empty string, no property will be set. If set to non-empty, and multiple activators are found, or an activator not equal to any previous content in the named property is found - a warning will be logged. |
No. Default value is "" |
||||||||
| stdimports | Comma-separated list of all prefixes to standard packages that should be ignored in exports list. |
No. Default value is "java." |
||||||||
| defaultimports |
Comma-separated list of all default imported packages.
Note: Do not set defaultimports to the empty string, since that might cause an later illegal bundle manifest file if no imported packages are found. |
No. Default value is "org.osgi.framework" |
||||||||
| extraimports | Comma-separated list of package names that must be present in the import list even though they are not explicitly referenced from the bundles code. E.g., packages from which all classes are loaded using reflection. |
No. Default value is "" |
||||||||
| checkFoundationEE |
Flag for testing for the Foundation Execution Environment
If set to "true", the task will check if all used classes is in the set of the OSGi Foundation Execution Environment. |
No. Default value is "false" |
||||||||
| serviceComponent |
The value of the Service-Component manifest header.
If set to non-empty, leave the value of the activator property untouched and do not complain if there are no class that implements BundleActivator in the bundle. |
No. Default value is "" |
||||||||
| checkMinimumEE |
Flag for testing for the Minum Execution Environment
If set to "true", the task will check if all used classes is in the set of the Minimum Execution Environment. |
No. Default value is "false" |
||||||||
| checkSMFEE |
Flag for testing for the SMF Execution Environment
If set to "true", the task will check if all used classes is in the set of the SMF profile Execution Environment. |
No. Default value is "false" |
||||||||
| implicitImports |
Flag for adding all exported packages to the import list.
If set to "true", the task will add all packages mentioned in
the property named by |
No. Default value is "true" |
||||||||
| Field Summary |
| Fields inherited from class org.apache.tools.ant.Task |
target, taskName, taskType, wrapper |
| Fields inherited from class org.apache.tools.ant.ProjectComponent |
description, location, project |
| Constructor Summary | |
BundleInfoTask()
|
|
| Method Summary | |
protected void |
addActivatorString(java.lang.String s)
|
void |
addFileset(org.apache.tools.ant.types.FileSet set)
|
protected void |
addImportedString(java.lang.String className)
Add a class' package name to the list of imported packages. |
protected void |
addImportedType(Type t)
Add a type's package name to the list of imported packages. |
protected void |
addProvidedPackageString(java.lang.String name)
|
protected void |
analyze(java.io.File file)
Analyze a file by checking its suffix and delegate to analyzeClass, analyzeJava etc |
protected void |
analyzeClass(java.io.File file)
|
protected void |
analyzeJar(java.io.File file)
|
protected void |
analyzeJava(java.io.File file)
Analyze java source file by reading line by line and looking for keywords such as "import", "package". |
void |
execute()
|
protected boolean |
isStdImport(java.lang.String name)
Check if package is included in prefix list of standard packages. |
void |
setActivator(java.lang.String propName)
Set property receiving any BundleActivator class. |
void |
setCheckFoundationEE(java.lang.String s)
|
void |
setCheckMinimumEE(java.lang.String s)
|
void |
setCheckSMFEE(java.lang.String s)
|
void |
setDefaultImports(java.lang.String packageList)
Set default import set. |
void |
setExports(java.lang.String propName)
Set property receiving list of exported packages. |
void |
setExtraImports(java.lang.String packageList)
Set the extra imports set. |
void |
setImplicitImports(java.lang.String s)
|
void |
setImports(java.lang.String s)
Set property receiving list of imported packages. |
void |
setMain(java.lang.String propName)
Set property receiving any Main class. |
void |
setPrintClasses(java.lang.String s)
|
void |
setServiceComponent(java.lang.String serviceComponent)
Set name value of the Service-Component manifest header. |
void |
setStdImports(java.lang.String packageList)
Set set of packages always imported. |
protected static java.lang.String |
toString(java.util.Set set,
java.lang.String separator)
Convert Set elements to a string. |
| Methods inherited from class org.apache.tools.ant.Task |
bindToOwner, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, getTaskType, getWrapper, handleErrorFlush, handleErrorOutput, handleFlush, handleInput, handleOutput, init, isInvalid, log, log, log, log, maybeConfigure, perform, reconfigure, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName, setTaskType |
| Methods inherited from class org.apache.tools.ant.ProjectComponent |
clone, getDescription, getLocation, getProject, setDescription, setLocation, setProject |
| Methods inherited from class java.lang.Object |
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
public BundleInfoTask()
| Method Detail |
public void setImports(java.lang.String s)
public void setPrintClasses(java.lang.String s)
public void setCheckFoundationEE(java.lang.String s)
public void setCheckMinimumEE(java.lang.String s)
public void setCheckSMFEE(java.lang.String s)
public void setImplicitImports(java.lang.String s)
public void setDefaultImports(java.lang.String packageList)
packageList - Comma-separated list of package names.public void setExtraImports(java.lang.String packageList)
packageList - Comma-separated list of package names.public void setExports(java.lang.String propName)
public void setActivator(java.lang.String propName)
public void setServiceComponent(java.lang.String serviceComponent)
public void setMain(java.lang.String propName)
Not yet implemented.
public void setStdImports(java.lang.String packageList)
packageList - Comma-separated list of package names.public void addFileset(org.apache.tools.ant.types.FileSet set)
public void execute()
throws org.apache.tools.ant.BuildException
org.apache.tools.ant.BuildException
protected void analyze(java.io.File file)
throws org.apache.tools.ant.BuildException
org.apache.tools.ant.BuildExceptionprotected void addProvidedPackageString(java.lang.String name)
protected void addActivatorString(java.lang.String s)
protected void addImportedType(Type t)
t - Type of an object.protected void addImportedString(java.lang.String className)
className - Class name of an object. The class name is stripped
from the part after the last '.' and added to set
of imported packages, if its not one of the standard
packages. Primitive class names are ignore.protected boolean isStdImport(java.lang.String name)
protected void analyzeJar(java.io.File file)
throws org.apache.tools.ant.BuildException
org.apache.tools.ant.BuildException
protected void analyzeClass(java.io.File file)
throws org.apache.tools.ant.BuildException
org.apache.tools.ant.BuildException
protected void analyzeJava(java.io.File file)
throws org.apache.tools.ant.BuildException
Note: This code does not attempt to find any class implementing BundleActivator
org.apache.tools.ant.BuildException
protected static java.lang.String toString(java.util.Set set,
java.lang.String separator)
separator - String to use as sperator between elements.
|
Knopflerfish OSGi 2.1.0 | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||