THIS IS A TEST INSTANCE. ALL YOUR CHANGES WILL BE LOST!!!!
...
These issues were raised and responded to during mailing list discussions of this proposal:
- Issue raised: "I think it is most appropriate that any instance of the Roller interface should be treated
as immutable. " - Response: We use constructor injection so that Roller implementations do not have to expose setters and can remain immutable.
- Issue raised: "To truly enforce the singleton pattern we should only provide private constructors and the single instance of the class should be created statically and returned via a public static method."
- Response: Guice can call private constructors, so we full enforce the singleton model.
- Issue raised: "From my perspective Spring is more mature, well-documented and tested, has a more open contribution model, and is in wider use amongst a broader community. Plus we have at least two committers that are using it in other settings."
- Responses
- Guice documentation is excellent and Guice is "simple and easy. It took me no time at all to figure out – no books or extra docs necessary."
- "Guice now powers Google Adwords. You'd be hard pressed to find a more massively distributed, scalable, etc. Java app out there. So, I'm not particularly worried about Guice maturity and testing."
- Spring does not accept external committers and has no plans to do so, that's hardly an open contribution model.
- Issue raised: "I hope we won't be asking users to modify distributed code in order, for example, to add plugins or to swap a rendering model implementation."
- Response: We won't require that. If you want to extend Roller's back-end you simply provide your own module class that injects the classes you want.
Design
List and describe new manager methods, Struts actions, JSP pages, macros, etc.
...