[root]/proposal/myrmidon/src/java/org/apache/myrmidon/components/type
Author | Changes | Lines of Code | Lines per Change |
---|---|---|---|
Totals | 70 (100.0%) | 360 (100.0%) | 5.1 |
donaldp | 61 (87.1%) | 265 (73.6%) | 4.3 |
adammurdoch | 6 (8.6%) | 91 (25.3%) | 15.1 |
sbailliez | 2 (2.9%) | 2 (0.6%) | 1.0 |
darrell | 1 (1.4%) | 2 (0.6%) | 2.0 |
zappity zap
0 lines of code changed in:
* Fixed a bunch of checkstyle violations (mostly
javadoc)
* Added basic javadoc target to build.
2 lines of code changed in:
final static --> static final to follow JLS recomendations
2 lines of code changed in:
Ran IDEAs new audit features across codebase to pick up a few anomalies
4 lines of code changed in:
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.
49 lines of code changed in:
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.
RoleManager:
* A default implementation for a role can now be specified. Currently
can only do this programatically.
DefaultMasterConverter:
* Removed MasterConverter interface. It is now identified by the Converter
role.
* 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.
DefaultConfigurer:
* 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.
Misc:
* Renamed package framework.factorys -> framework.factories.
* Made tests work when fork = false.
5 lines of code changed in:
Added TypeFactory.canCreate() method.
30 lines of code changed in:
Add version tags
2 lines of code changed in:
Avoid audit violation by removing unused field
0 lines of code changed in:
Allow typelibs to define custom roles:
* Add TypeDeployer interface, which allows control over the deployment of
types from a typelib.
* Add RoleManager.addNameRoleMapping().
* TypeManager methods now take a role Class object, rather than role name.
* Replace implicit role and type deployment in DefaultRoleManager.initialize()
and DefaultDeployer.initialize() with explicit createDeployer( ClassLoader )
method.
* DefaultDeployer now keeps track of the ClassLoader created for each typelib.
* Moved all ClassLoader creation to DefaultDeployer, for the time being.
* ConverterDef and AbstractTypeDef now use Deployer, rather than
deploying manually.
* Fixed DefaultMasterConverter for the case where destination is an interface,
and there is no appropriate converter registered.
7 lines of code changed in:
- Fix order of modifiers
- Fix duplicate/unecessary imports
- Fix single if/else and loop without block
2 lines of code changed in:
Provide better error messages
Submitted By: "Adam Murdoch" <adammurdoch@yahoo.com>
3 lines of code changed in:
Fix up license banner.
2 lines of code changed in:
Restyled.
15 lines of code changed in:
donaldp@apache.org --> peter@apache.org
yea - now no one will call me Donald!!!
2 lines of code changed in:
Moved interfaces outside of main trunk.
7 lines of code changed in:
Added newline
1 lines of code changed in:
i18n-ized remaining components.
30 lines of code changed in:
Fixed a bug that made inherited TypeFactorys fail.
5 lines of code changed in:
Added method to construct child TypeManagers that inherit from their parent.
8 lines of code changed in:
(8 more)