Class AbstractComponentExtensionPoint<T>
- java.lang.Object
-
- org.apache.avalon.framework.logger.AbstractLogEnabled
-
- org.ametys.runtime.plugin.component.AbstractComponentExtensionPoint<T>
-
- Type Parameters:
T- the type of the managed extensions
- All Implemented Interfaces:
ExtensionPoint<T>,Disposable,Initializable,Component,Contextualizable,LogEnabled,Serviceable,ThreadSafe
- Direct Known Subclasses:
EnhancementHandlersExtensionPoint,HTMLEditionHandlerExtensionPoint,SitemapDecoratorsExtensionPoint,SitemapIconsExtensionPoint
public abstract class AbstractComponentExtensionPoint<T> extends AbstractLogEnabled implements ExtensionPoint<T>, Component, ThreadSafe, Serviceable, Contextualizable, Initializable, Disposable
Avalon based implementation of an ExtensionPoint.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected classAbstractComponentExtensionPoint.ExtensionConfigurationThis class is a storage for an extension informations
-
Field Summary
Fields Modifier and Type Field Description protected Context_contextAvalon contextprotected Map<String,AbstractComponentExtensionPoint.ExtensionConfiguration>_extensionsExtensions id and configuration associatedprotected ServiceManager_managerAvalon service manager
-
Constructor Summary
Constructors Constructor Description AbstractComponentExtensionPoint()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddExtension(String id, String pluginName, String featureName, Configuration configuration)Add an extension to this point.voidcontextualize(Context context)voiddispose()TgetExtension(String id)Returns the named extensionSet<String>getExtensionsIds()Returns a Set containing the ids of all known extensionsbooleanhasExtension(String id)Returns true if the named extension existsvoidinitialize()voidinitializeExtensions()Finalize the initialization of the extensions.
This method is called after alladdExtension()calls.
This is the last step before the actual startup of the application.voidservice(ServiceManager manager)-
Methods inherited from class org.apache.avalon.framework.logger.AbstractLogEnabled
enableLogging, getLogger, setupLogger, setupLogger, setupLogger
-
-
-
-
Field Detail
-
_manager
protected ServiceManager _manager
Avalon service manager
-
_extensions
protected Map<String,AbstractComponentExtensionPoint.ExtensionConfiguration> _extensions
Extensions id and configuration associated
-
-
Constructor Detail
-
AbstractComponentExtensionPoint
public AbstractComponentExtensionPoint()
-
-
Method Detail
-
contextualize
public void contextualize(Context context) throws ContextException
- Specified by:
contextualizein interfaceContextualizable- Throws:
ContextException
-
service
public void service(ServiceManager manager) throws ServiceException
- Specified by:
servicein interfaceServiceable- Throws:
ServiceException
-
initialize
public void initialize() throws Exception
- Specified by:
initializein interfaceInitializable- Throws:
Exception
-
dispose
public void dispose()
- Specified by:
disposein interfaceDisposable
-
addExtension
public void addExtension(String id, String pluginName, String featureName, Configuration configuration) throws ConfigurationException
Description copied from interface:ExtensionPointAdd an extension to this point. Each implementation knows the meaning of the given configuration.- Specified by:
addExtensionin interfaceExtensionPoint<T>- Parameters:
id- the unique identifier of the extension.pluginName- Unique identifier for the plugin hosting the extensionfeatureName- Unique feature identifier (unique for a given pluginName)configuration- the information about the extension to be added- Throws:
ConfigurationException- when a configuration problem occurs
-
getExtension
public T getExtension(String id)
Description copied from interface:ExtensionPointReturns the named extension- Specified by:
getExtensionin interfaceExtensionPoint<T>- Parameters:
id- the unique id of the extension- Returns:
- the named extension
-
getExtensionsIds
public Set<String> getExtensionsIds()
Description copied from interface:ExtensionPointReturns a Set containing the ids of all known extensions- Specified by:
getExtensionsIdsin interfaceExtensionPoint<T>- Returns:
- a Set containing the ids of all known extensions
-
hasExtension
public boolean hasExtension(String id)
Description copied from interface:ExtensionPointReturns true if the named extension exists- Specified by:
hasExtensionin interfaceExtensionPoint<T>- Parameters:
id- the unique id of the extension- Returns:
- true if the named extension exists
-
initializeExtensions
public void initializeExtensions() throws Exception
Description copied from interface:ExtensionPointFinalize the initialization of the extensions.
This method is called after alladdExtension()calls.
This is the last step before the actual startup of the application.- Specified by:
initializeExtensionsin interfaceExtensionPoint<T>- Throws:
Exception- if something wrong occurs
-
-