Details
-
Type: New Feature
-
Status: Closed
-
Priority: Major
-
Resolution: Fixed
-
Affects Version/s: 1.0-beta-2
-
Fix Version/s: 1.0-beta-2
-
Component/s: PicoContainer (Java)
-
Labels:None
-
Number of attachments :
Activity
Aslak Hellesøy
made changes -
Field | Original Value | New Value |
---|---|---|
Status | Assigned [ 2 ] | In Progress [ 3 ] |
Aslak Hellesøy
made changes -
Attachment | pico-patch.diff [ 10710 ] |
Aslak Hellesøy
made changes -
Attachment | nano-patch.diff [ 10711 ] |
Aslak Hellesøy
made changes -
Attachment | InstanceComponentAdapter.java [ 10712 ] |
Aslak Hellesøy
made changes -
Attachment | NoSatisfiableConstructorsException.java [ 10713 ] |
Aslak Hellesøy
made changes -
Attachment | DefaultComponentAdapterTestCase.java [ 10714 ] |
Aslak Hellesøy
made changes -
Attachment | MultipleConstructorTestCase.java [ 10715 ] |
Aslak Hellesøy
made changes -
Resolution | Fixed [ 1 ] | |
Status | In Progress [ 3 ] | Closed [ 6 ] |
These patches from sept/03 add support for multiple constructors. See MultipleConstructorTestCase. I tagged both the pico and nano CVSes before making the patches. The name of the tag is BEFORE_MULTIPLE_CONSTRUCTORS.
The approach is described here: http://lists.codehaus.org/pipermail/picocontainer-dev/2003-August/001009.html
While doing this, several new refactorings became apparent, notably:
o Lazy instantiation (
PICO-6). PicoContainer.initializeComponents() is gone, because instantiation now happens lazily as components are asked for.o ComponentRegistry has less knowledge of the components and delegates more functionality to ComponentAdapter.
o PicoContainer.getComponent(Object) throws PicoInitializationException (because of the laziness).
o Introduction of a new InstanceComponentAdapter, used for constant parameters and externally instantiated components.
o And various smaller things
All tests are green. Code coverage has dropped to 88.8%, but this is mostly due to dead code that hasn't yet been removed. Coverage will be back as soon as I do some more cleaning.
It would be nice to have this applied quickly.