Package org.ametys.runtime.plugin.component
package org.ametys.runtime.plugin.component
-
ClassDescriptionAvalon based implementation of an ExtensionPoint.Abstract implementation of LogEnabled for Ametys components.AbstractSelectorExtensionPoint<T extends Component>Bridge between the plugin stuff and Cocoon ComponentSelectors.
The aim is to provide a way to declare InputModules, DataSources, SourceFactories, ...Avalon based implementation of an ExtensionPoint.
Subclasses only need to calladdComponent()
for each new extension.Avalon based implementation of anPrioritizable
ExtensionPoint.AbstractThreadSafeComponentPrioritizableSupporterExtensionPoint<T extends Prioritizable & Supporter<X>,X> Avalon based implementation of anSupporter
ExtensionPoint.Just like aServiceable
, a DeferredServiceable is a component that need to connect to other components.An extension implementing this interface will have access to itsExtensionPoint
.Component manager used to initialize extensions to extension points subclassingAbstractThreadSafeComponentExtensionPoint
.AnnotatedExtensionPoint
will delay initialization of their extensions.Components that need to log messages.Components acception this marker interface indicate that they want to have a reference to their parent.Used by components needing to know their declaring plugin.Implementation of an Avalon ComponentManager handling the PluginAware and ParentAware interfaces.
See theThreadSafeComponentManager
for more details.Interface to prioritize components.Supporter<T>Interface to know if a component can support something.Special ServiceManager able to handle extensions.
It does not actually implements the Avalon ServiceManager interface, to be able to use the Java 5 generic parameter.
This class is also intended to be used "locally" : its lookup(role) method does NOT propagate to the parent manager if the component does not exist.
To use the real ServiceManager, use the PluginsServiceManager subclass instead.
It handles the "PluginAware" interface, implemented by extensions.
It handles the following Avalon interfaces : LogEnabled Contextualizable Serviceable Configurable Parameterizable Initializable Startable Disposable All handled components are considered ThreadSafe, ie only one instance is created at initialization time and returned at each lookup()