...
| Spring | PicoContainer | Guice |
---|---|---|---|
Supports start/stop lifecycle hooks for components | Yes (interface or xml-configured) | Yes (interface or annotation) | |
Supports autowiring | Yes | Yes | Yes |
Supports in-code wiring and configuration | Yes (JavaConfig) | Yes | Yes |
Supports external wiring (outside of code) | Yes (xml) | No | Not directly (but it's possible) |
Supports external config (outside of code) | Yes (xml and/or properties) | No | Yes (Names.bindProperties) |
OSGi-Friendly | Yes (Spring-DM) | Unknown | Yes (Guice-Peaberry) |
JSR-330 Support | |||
Jar Footprint (non-OSGi) | 750kb | 300kb | 650kb |
Analysis of Existing Modules
Interface | Implementation(s) | Depends-on |
---|---|---|
| ||
| ||
BackendSecurity |
|
|
ConnectionPoolManager |
|
|
DOManager |
|
|
DOTranslator |
|
|
DOValidator |
|
|
ExternalContentManager |
|
|
FieldSearch |
|
|
ILowlevelStorage |
|
|
Management |
|
|
Messaging |
|
|
OAIProvider |
|
|
PIDGenerator |
|
|
ResourceIndex |
|
|
ThreadMonitor |
|
|