* Recontextualize Ant1 project for every Task.contextualize()
* Use Converter so that non-string properties are not ignored
* Javadoc
git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@271950 13f79535-47bb-0310-9956-ffa450edef68
can accept any nested FileList implementation, including <path>.
* Added <list-path> diagnostic task.
* Added test cases for <path>.
git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@271948 13f79535-47bb-0310-9956-ffa450edef68
* Added general purpose Object -> String converter that simply uses Object.toString().
* Reorganised AbstractComponentTestCase, to give sub-classes the opportunity to replace
the default implementation of a component, with a particular implementation.
git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@271942 13f79535-47bb-0310-9956-ffa450edef68
and i18n-ed the error and log messages.
* Moved Java -> antlib.java.JavaTask.
* Moved Path and friends -> framework.file package.
git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@271927 13f79535-47bb-0310-9956-ffa450edef68
* Removed Path.isEmpty().
* Changed Path.list() -> listFiles( TaskContext ).
* Extracted FileList interface from Path. This interface has a single
listFile( TaskContext ) method.
* Split PathElement into two FileList implementations, ParsedPathElement and
ArrayFileList. Removed the special handling of nested PathElement
and Path objects from Path.listFiles().
* Added FileList -> String converter.
* Temporarily disabled Argument.setPath() and EnvironmentVariable.setPath().
git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@271926 13f79535-47bb-0310-9956-ffa450edef68
* Completed property hooks, so that the underlying Ant1 project
is not used for setting, getting or resolving properties.
* Made PropertyResolver.resolveProperties()take a TaskContext,
instead of Avalon Context. (We can always split out a generic
interface later, if need be.) Ant1 compatibility layer user
ClassicPropertyResolver, which needs a better name.
* Added modified BuildException, which incudes a Myrmidon-friendly
getCause() method, to allow Ant1 exceptions to be properly cascaded.
* DefaultTaskContext:
- Allow "+" in property names.
- Implemented DefaultTaskContext.getProperties()
- No longer implements avalon Context (not needed)
git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@271924 13f79535-47bb-0310-9956-ffa450edef68
* Added ExecuteJava.setIgnoreReturnCode() and executeForked() methods.
* Converted the remaining tasks from CommandlineJava to ExecuteJava.
* Removed CommandlineJava.
* Added convenience methods to Commandline and EnvironmentData.
* Made SysProperties into a static util class. It now longer extends
EnvironmentData, and can now handle Map (and Properties) as well as
EnvironmentData.
git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@271918 13f79535-47bb-0310-9956-ffa450edef68
* Use modified version of Path.java, to provide all
available classes in Path.systemClasspath.
(Uses LoaderUtils.java taken from Mutant proposal,
for obtaining complete classpath from a ClassLoader.)
* Removed <ant> and <antcall> from ant1compat.atl
descriptor, since they don't work.
* Modified build so that xdoclet.jar and
jdepend.jar aren't included in dist/lib.
git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@271907 13f79535-47bb-0310-9956-ffa450edef68
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