Dependency Injection - Atypon-OpenSource/wayf-cloud GitHub Wiki
Overview
Configuration of the system is handled by Guice. This framework is useful for injecting a class' dependencies via annotation.
Implementation
All of the project's configurations are contained in one file, com.atypon.wayf.guice.WayfGuiceModule. Here the locations of property files are defined, implementations of interfaces are bound, and dependencies are configured.
Future Considerations
Having all of the Guice configurations in one module/file is not ideal. It does not allow for each system layer to be configured independently of another. This file should be split either across business concerns or application layers and organized into a hierarchy of pluggable modules.