execution (after which it can be split into AUT):
* ExecuteJava now handles both in-jvm and forked java app execution. Logging
and error reporting are pretty rough.
* Moved most of the guts of <java> into ExecuteJava.
* Copied most of CommandlineJava into ExecuteJava. Haven't changed
CommandlineJava (much) yet.
* Removed the ability to use system properties when executing in-jvm.
* Another attempt at fixing the ant1 descriptor to enable <java> and <path>.
git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@271899 13f79535-47bb-0310-9956-ffa450edef68
* Handle the case where a class has both a setFoo() and addFoo() method.
* Ignore addContent( String ) if there is a non-String addContent() method.
* Ignore add( String ) if there is a non-String add() method.
* Added test cases for these.
git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@271898 13f79535-47bb-0310-9956-ffa450edef68
little narrower, to make it easier to extract an interface, and get multiple
path implementations happening.
* Replaced usages of Path.append() with Path.addPath(), and removed append().
* Replaced usages of Path.addExisting() with Path.addPath(), and removed
addExisting().
* Replaced Path.size() with Path.isEmpty().
* Added the setX() methods back.
* Replaced usages of Path.toString() with new PathUtil.formatPath() method, and
removed Path.toString(). Probably missed a few usages.
* Replaced FileUtil.translatePath( Path ) with PathUtil.formatPath(), and
removed translatePath().
* Enabled the String -> Path converter again.
git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@271893 13f79535-47bb-0310-9956-ffa450edef68
* By default, execute() checks the return code of the process against 0.
This can be changed using setReturnCode() and setIgnoreReturnCode().
* Default working directory is now the project's base directory.
* Tidied up tasks to reflect the new defaults.
AbstractTask:
* Made getBaseDirectory() and getService() protected.
Logging:
* Extracted AbstractLogger out of BasicLogger, and changed RoutingLogger to
extend AbstractLogger, rather than BasicLogger.
* RoutingLogger now uses a wrapped Logger to determine which message types
are enabled, so that it respects the logging level set on the command-line.
Kinda hacky, but better than writing out all the debug messages.
* Changed LoggingExecOutputHandler to use warn log level, rather than info.
Again, a hacky fix to get logging of external command output happening when
not running in verbose mode.
git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@271890 13f79535-47bb-0310-9956-ffa450edef68
* Moved the general-purpose logging and validation code from Exec task to
Execute.
* Removed Execute's constructor, replaced with a TaskContext passed to
Execute.execute().
* If no ExecOutputHandler is provided, Execute routes the process' stdout
and stderr via TaskContext's log methods.
* Removed a bunch of debug messages from tasks, as Execute now takes care of this.
* Replaced a bunch of return code == 0 checks, with calls to
Execute.setReturnCode( 0 ).
git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@271888 13f79535-47bb-0310-9956-ffa450edef68
* TransformingProjectBuilder
- Performs an XSL transform on all ".xml" build files.
- Identity transform is used for projects with "version" attribute.
- Added xalan.jar to lib - replaced jaxp.jar with xml-apis.jar
* Compatibility Layer
- Described more fully in src/ant1compat/README.txt
- Uses pre-compiled Ant1 jar files for Ant1 code-base.
Insulates from changes in the main tree, and simplifies build.
- "ant." prefix used for all ant1 tasks
git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@271884 13f79535-47bb-0310-9956-ffa450edef68
ie Test code for package foo is located in package foo.test
* Migrated all the test data into the same hierarchy so that there is only one place where you have to look for test data.
This required that resource retrieval be hackled a little because no longer in same package as tested code/
git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@271870 13f79535-47bb-0310-9956-ffa450edef68
* Added LineFilter role, which represents a filter that handles lines of text.
* Added TokenSet role, which represents a set of token -> value mappings.
* Renamed FilterSetCollection -> LineFilterSet. This is now a compound
LineFilter that takes a set of nested LineFilters. This is pretty much
just a placeholder until the new filter streams are ported across from ant 1.
* Renamed Filter -> SingletonTokenSet. This is a TokenSet that contains a
single mapping. Moved to antlib.core.
* Added PropertyTokenSet, a TokenSet that uses the project properties as
its mappings. Added to antlib.core.
* Split FilterSet into TokenLineFilter, which is a LineFilter that replaces
tokens with their value, and FileTokenSet, which is a TokenSet loaded from
a properties file.
git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@271869 13f79535-47bb-0310-9956-ffa450edef68
Add a DependencyAnalyzer interface
Currently supports BCEL based analyzers
Refactor ejbjar not to require BCEL to run.
More to come ...
git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@271856 13f79535-47bb-0310-9956-ffa450edef68