Interface Plugin

All Superinterfaces:
CoreComponent
All Known Subinterfaces:
AnalyticsConnectorPlugin, AspectPlugin, ParamPlugin, ResourceResolverPlugin
All Known Implementing Classes:
ClassPathResourceResolverPlugin, EnvParamPlugin, JavassistAspectPlugin, LocalResourceResolverPlugin, LoggerAnalyticsConnectorPlugin, ManifestParamPlugin, PropertiesParamPlugin, SmartLoggerAnalyticsConnectorPlugin, SocketLoggerAnalyticsConnectorPlugin, SocketLoggerJsonAnalyticsConnectorPlugin, SystemPropertyParamPlugin, UnsafeURLResourceResolverPlugin, URLResourceResolverPlugin, XmlParamPlugin

public interface Plugin extends CoreComponent
A plugin is a particular component. A plugin is not referenced in the ComponentSpace. A plugin is usefull to encapsulate a specific set of operations. A plugin is often used as a strategy pattern to make an operation interchangeable without changing the component. All plugins MUST BE thread safe. Plugins are singletons. As a plugin is a component, it can own component's behaviors such as Activeable.
Author:
pchretien