* Renamed DefaultAntServiceManager to InstantiatingServiceManager. This
implementation now sets-up the service factories and service instances
(log enable, service, parameterise, initialise).
* Rearranged the service heirarchy, so that services deployed from a
service descriptor are visible in the root context (passed to workspaces
and project builders).
* Service factories are registered using the role name, not the role class name.
* Added unit tests for InstantiatingServiceManager.
Changes to DefaultConfigurer error messages:
* All exceptions thrown by DefaultConfigurer indicate which configuration
element the error happened in.
* Updated DefaultConfigurer test cases, to check nested error messages
where appropriate.
git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@271529 13f79535-47bb-0310-9956-ffa450edef68
2. Javadoc changes to use < and > instead of < and > characters
3. Removal of debug statement from ChainReaderHelper
git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@271526 13f79535-47bb-0310-9956-ffa450edef68
Most of the functionality in Main is moved into AntBean ( all public/protected
methods are now wrappers around AntBean's functionality, for backward compat).
Same in ProjectHelper - again, for backward compat the public/protected functions
are unchanged, old code can still call the old methods and get similar behavior.
In TaskAdapter - few improvements ( still more to go ) to allow a program
to control tasks that are in a child loader. That's extremely important to
get ant embeded and controlled in a programatic way ( Project may create
tasks in a child class loader, so casting will fail - the only way
to use them is by using introspection ). I've also added the ability
to 'adapt' beans that have multiple methods, not only execute()
Please review, try, let me know when I can commit it.
git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@271514 13f79535-47bb-0310-9956-ffa450edef68
* A class may now be explicitly associated with a role, rather than being
implicit in the role name.
* Added RoleInfo to bundle up role meta-info.
* Reworked the methods of RoleManager.
* Added test-cases for DefaultRoleManager.
* Make tests compile again.
git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@271498 13f79535-47bb-0310-9956-ffa450edef68
Refactored the codebase to use Avalons ServiceManager rather than ComponentManager. The reason for this is that the ComponentManager required that contained objects implement the Component interface while the ServiceManager constructs do not have this requirement.
This makes it much easier to extract parts of Myrmidon without any dependency on Ant/Avalon
git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@271495 13f79535-47bb-0310-9956-ffa450edef68
Need to define a clean interface to export to Container object that is basically a facade and takes care of all this
git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@271478 13f79535-47bb-0310-9956-ffa450edef68
* Target start and finish events are now fired for a project's implicit target.
* Unit tests now run against a dummy myrmidon install.
* Tidy-up some error messages.
git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@271443 13f79535-47bb-0310-9956-ffa450edef68