Directory proposal/myrmidon/src/test/org/apache/myrmidon/components/

Directory Created:
2002-02-02 12:51
Directory Deleted:
2002-04-17 10:49
Total Files:
Deleted Files:
Lines of Code:

Browse with ViewVC


builder (0 files, 0 lines)

test (0 files, 0 lines)

classloader (0 files, 0 lines)

test (0 files, 0 lines)

libs (0 files, 0 lines)

extn (0 files, 0 lines)

shared (0 files, 0 lines)

unshared (0 files, 0 lines)

configurer (0 files, 0 lines)

data (0 files, 0 lines)

test (0 files, 0 lines)

data (0 files, 0 lines)

deployer (0 files, 0 lines)

test (0 files, 0 lines)

embeddor (0 files, 0 lines)

test (0 files, 0 lines)

property (0 files, 0 lines)

test (0 files, 0 lines)

role (0 files, 0 lines)

test (0 files, 0 lines)

service (0 files, 0 lines)

test (0 files, 0 lines)

workspace (0 files, 0 lines)

Lines of Code

proposal/myrmidon/src/test/org/apache/myrmidon/components/ Lines of Code


Author Changes Lines of Code Lines per Change
Totals 25 (100.0%) 355 (100.0%) 14.2
adammurdoch 16 (64.0%) 258 (72.7%) 16.1
donaldp 9 (36.0%) 97 (27.3%) 10.7

Most Recent Commits

donaldp 2002-04-17 10:49

zappity zap

0 lines of code changed in:

adammurdoch 2002-04-09 07:21

Changed container config from Parameters to Context, to allow Objects to

be used in the config:

* All services that used to implement Parameterizable now implement Contextualizable.

* Changed 'myrmidon.home' to a File, and the paths to File[].

* DefaultEmbeddor now deploys Antlibs from all directories in 'myrmidon.lib.path',

rather than just a single dir. Can't specify alternative service

implementations (temporarily broken).

* Added 'myrmidon.antlib.path', which DefaultWorkspace uses to search for <import>-ed


* Replaced --task-lib-dir with --antlib-path, which appends directories to


* Added --ext-path, which appends directories to 'myrmidon.ext.path'.

* DefaultClassLoaderManager now uses the container config to locate the shared

classloader, rather than using the context classloader.

21 lines of code changed in:

adammurdoch 2002-04-03 10:58

ClassLoader hierarchy changes:

* Use multi-parent ClassLoaders for antlibs and extensions, so that each

extension jar is loaded by a single ClassLoader in the hierarchy. Allows

classes from extensions to be shared across dependent antlibs and extensions.

* Changed contract of ClassLoaderManager.createClassLoader( File[] ), so that

it creates a new ClassLoader each time it is called.

* Changed ExtensionManager, so that it no longer extends PackageRepository.

* Added a few test cases for DefaultClassLoaderManager.

* Moved responsibility for checking myrmidon.home and building the various paths,

from DefaultEmbeddor and DefaultExtensionManager to EmbeddedAnt. Use the

platform path separator for the paths, rather than the | char.

* Use EmbeddedAnt in AbstractProjectTest, rather than using an Embeddor directly.

* AbstractComponentTest was not parameterising or initialising the test


48 lines of code changed in:

adammurdoch 2002-03-27 07:04

* Added ClassLoaderManager.createClassLoader( File[] ), to create a

ClassLoader from a class-path.

* Moved responsibility for creation of ClassLoaders out of the tasks, and into

the ClassLoaderManager, which caches them, and resolves extension dependencies.

* Added PathUtil.createClassLoader() convenience method to create a ClassLoader

from a Path.

* Changed the PathUtil methods to use the more general FileList, rather than Path.

* Added 'classpath' attribute to the <*-available> conditions.

1 lines of code changed in:

donaldp 2002-03-23 05:03

Zap unused import

0 lines of code changed in:

donaldp 2002-03-23 04:37

Merge DefaultConverterRegistry into DefaultMasterConverter

0 lines of code changed in:

adammurdoch 2002-03-21 10:29

* Changed DefaultPropertyResolver to use the converter to convert from Object -> String.

* 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.

19 lines of code changed in:

adammurdoch 2002-03-15 02:48

TypeManager changes:

* Reverted TypeManager to reference roles by name, rather than type.

* DefaultTypeManager now uses the RoleManager to determine a role's type, to

use for doing instanceof checks.

* DefaultMasterConverter, InstantiatingServiceManager, and VfsManager no

longer look up a TypeFactory in their service() method.

* Added ROLE field to several interfaces.

23 lines of code changed in:

adammurdoch 2002-03-13 07:35

Project Model:

* Removed "if" and "unless" conditions from targets.

* Moved parsing of "project->target" dependencies out of DefaultWorkspace,

into DefaultProjectBuilder.

* DefaultWorkspace now detects cycles in the target dependency graph.

* DefaultWorkspace now executes the implicit target for referenced projects.

* Changes to DefaultProjectBuilder error reporting.

* Added a few more test cases for DefaultProjectBuilder.

Unit Tests:

* Moved AbstractComponentTest.getLogger() up to AbstractMyrmidonTest.

* Removed AbstractComponentTest.setup(). Components are now created on demand.

* Use BasicLogger in unit tests.

64 lines of code changed in:

donaldp 2002-03-12 10:20

Move PropertyResolver and friends into own package hierarchy

2 lines of code changed in:

adammurdoch 2002-03-11 06:02

Move ClassLoaderManager and DefaultClassLoaderManager into their own packages.

2 lines of code changed in:

adammurdoch 2002-03-09 02:04

* Added PropertyResolver service interface, together with 2 implementations.

(One implementation mimics Ant1 behaviour). These are added in the

"workspace" packages, since that's where PropertyUtil was. Not sure if this

is the right place.

* DefaultTaskContext now implements Context interface, used by

PropertyResolver. This avoids having the PropertyResolver dependent on

TaskContext, avoiding a potential circularity problem. (since TaskContext has

a "resolve" method of it's own).

* Removed PropertyUtil.

* Tests for PropertyResolver implementations.

Submitted by Darrell DeBoer []

6 lines of code changed in:

donaldp 2002-03-06 10:09

Made it possible for subclasses to get at logger

6 lines of code changed in:

adammurdoch 2002-02-25 10:42

Replaced usage of Avalon Context with Myrmidon specific Context:

* Moved read-only property and resolve methods from TaskContext to new Context

interface. TaskContext now extends the new Context interface.

* Changed the Configurer methods to use the new Context. Both implementations

use the supplied Context to do property resolution.

* Renamed TaskContext.getPropertys() -> getProperties().

* Moved PropertyUtil from configurer to workspace package, as that is now

the only place it is used.

* Changed PropertyUtil to work with the new Context.


* A default implementation for a role can now be specified. Currently

can only do this programatically.


* Removed MasterConverter interface. It is now identified by the Converter


* Now caches the converter instances.

* Changed the converter search algorithm to traverse the *source* class

hierarchy, including all interfaces. Chooses the most specialised

conversion, and fails if there is more than one such choice.


* Attempts to convert references, if the type does not match the expected type.

* Changed handling of nested elements, for named adders/setters:

* If the method type can be mapped to a role, and that role has a default

implementation, then use that default implementation.

* Otherwise, if the method type is an interface, fail.

* Otherwise, create an instance using no-args constructor.

* Changed handling of nested elements, for typed adders/setters:

* If the method type can be mapped to a role, and the element name is

a type of that role, then use that role to create the instance.

* Otherwise, use the type factory for the generic data-type role.

* Attempt to convert the instance if it is not of the expected type.

* Added a bunch of test cases for new functionality.

* Renamed all the ConfigTest classes to have descriptive names.


* Renamed package framework.factorys -> framework.factories.

* Made tests work when fork = false.

25 lines of code changed in:

adammurdoch 2002-02-24 07:43

Removed AntServiceManager:

* 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.

0 lines of code changed in:

adammurdoch 2002-02-21 12:52

Changes to RoleManager:

* 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.

6 lines of code changed in:

donaldp 2002-02-21 11:06

Rename myrmidons ServiceManager stuff to AntServiceManager

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

26 lines of code changed in:

donaldp 2002-02-21 10:16

Moved Converter architecture into aut hierarchy as it is completely decoupled from rest of ant

1 lines of code changed in:

adammurdoch 2002-02-20 07:20

* Added test cases for DefaultEmbeddor.

* 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.

10 lines of code changed in:

adammurdoch 2002-02-14 02:12

* DefaultTaskContext now uses a ServiceManager to locate services, rather than

a ComponentManager. Currently all components are also exposed as services.

* Some tidy up to DefaultExecutionFrame and DefaultWorkspace.

6 lines of code changed in:

(4 more)

Generated by StatSVN 0.3.2-SNAPSHOT