public interface DynamicExtensionDSL extensions implementing this marker interface can be auto discovered by IPF's extension configuration framework.
This is an alternative to the standard Extension Module mechanism provided by Groovy Instead of a module descriptor in META-INF/services you simply define a Spring bean that extends this type and adheres to the structure described in http://docs.codehaus.org/display/GROOVY/Creating+an+extension+module.
This interface defines method that provide information that the module descriptor would usually deliver. Bean instance of this type are picked up by Spring when it contains a
DynamicExtensionConfigurerand dynamically registered in Groovy's metaclass/metamethod registry.
The advantage is that due to late initialization your extensions can be stateful (e.g. providing a configuration object), which is normally only possible by accessing a global registry via
ContextFacade.getBean(Class). The disadvantage is that you need to define a bunch of Spring beans (including the extension bean) in order to get the machinery working.
- Christian Ohr
- See Also: