Denis Balazuc wrote:
The hard part in this is to actually de-wire the RollerConfig property values used in the various manager implementations with something that comes from the Spring configured..configuration. The rest should be quite a breeze as the interfaces around layers are well defined.
Allen Gilliland wrote:
that part sounds scary to me, I don't know why you would need to worry about replacing the way the RollerConfig class works.
It is because dependency injection inverts model where a component gets its configuration values by calling RollerConfig.getProperty(). Instead the components expect to have their configuration properties set via constructors or via setters.
This isn't so much a consequence of Spring or Guice as how deeply we adopt the dependency injection model.
My feeling is that doing this properly really will involve some fundamental rearchitecture. The reason I'd not just go off and do this on a branch is that I'm likely to be working at cross-purposes with Dave on the fundamental choices there, which are not necessarily specific to Guice or Spring.
I'll be happy if we adopt a clean component model and dependency injection; happier if it is Spring-based.
--a
