public interface PluginRegistry
Modifier and Type | Method and Description |
---|---|
<T> ConfiguredPlugin<T> |
configurePluginByName(java.lang.String name,
PluggableProviderService<T> service,
IFramework framework,
java.lang.String project,
java.util.Map instanceConfiguration)
Create and configure a plugin instance with the given bean or provider name, resolving properties via
the framework and specified project properties as well as instance configuration.
|
<T> ConfiguredPlugin<T> |
configurePluginByName(java.lang.String name,
PluggableProviderService<T> service,
IPropertyLookup frameworkLookup,
IPropertyLookup projectLookup,
java.util.Map instanceConfiguration)
Create and configure a plugin instance with the given bean or provider name, resolving properties via
the framework and specified project properties as well as instance configuration.
|
<T> ConfiguredPlugin<T> |
configurePluginByName(java.lang.String name,
PluggableProviderService<T> service,
java.util.Map configuration)
Create and configure a plugin instance with the given bean or provider name
|
<T> ConfiguredPlugin<T> |
configurePluginByName(java.lang.String name,
PluggableProviderService<T> service,
PropertyResolver resolver,
PropertyScope defaultScope) |
<T> PluggableProviderService<T> |
createPluggableService(java.lang.Class<T> type)
Create PluggableProviderService for plugin type that doesn't require Framework
|
<T> PluggableProviderService<T> |
getFrameworkDependentPluggableService(java.lang.Class<T> type,
Framework framework)
get a PluggablePRoviderService for a core plugin type that requires Framework
|
<T> java.util.Map<java.lang.String,java.lang.Object> |
getPluginConfigurationByName(java.lang.String name,
PluggableProviderService<T> service,
PropertyResolver resolver,
PropertyScope defaultScope)
Return the mapped configuration properties for the plugin
|
PluginMetadata |
getPluginMetadata(java.lang.String service,
java.lang.String provider)
Return plugin file metadata
|
PluginResourceLoader |
getResourceLoader(java.lang.String service,
java.lang.String provider)
Return plugin resource loader
|
<T> boolean |
isFrameworkDependentPluginType(java.lang.Class<T> type)
Test if a type requires framework argument for plugin provider service
|
<T> java.util.Map<java.lang.String,DescribedPlugin<T>> |
listPluginDescriptors(java.lang.Class groovyPluginType,
PluggableProviderService<T> service)
List all plugin type definitions that are either ServiceProvider plugins of the given service name,
or are groovy plugins of the given type
|
<T> java.util.Map<java.lang.String,java.lang.Object> |
listPlugins(java.lang.Class groovyPluginType,
PluggableProviderService<T> service)
List all plugin type definitions that are either ServiceProvider plugins of the given service name,
or are groovy plugins of the given type
|
<T> T |
loadPluginByName(java.lang.String name,
PluggableProviderService<T> service)
Load a plugin instance with the given bean or provider name
|
<T> DescribedPlugin<T> |
loadPluginDescriptorByName(java.lang.String name,
PluggableProviderService<T> service)
Load a plugin instance with the given bean or provider name
|
void |
registerPlugin(java.lang.String type,
java.lang.String name,
java.lang.String beanName)
Register a plugin into map using type and name as key to load it when requested
|
<T> ConfiguredPlugin<T> |
retainConfigurePluginByName(java.lang.String name,
PluggableProviderService<T> service,
PropertyResolver resolver,
PropertyScope defaultScope)
Create and configure a plugin instance with the given bean or provider name using a property resolver and a
default property scope, retain the instance to prevent unloading it
|
<T> CloseableProvider<T> |
retainPluginByName(java.lang.String name,
PluggableProviderService<T> service) |
ValidatedPlugin |
validatePluginByName(java.lang.String name,
PluggableProviderService service,
IFramework framework,
java.lang.String project,
java.util.Map instanceConfiguration)
Validate a provider for a service using the framework, project name and instance configuration map
|
ValidatedPlugin |
validatePluginByName(java.lang.String name,
PluggableProviderService service,
java.util.Map instanceConfiguration)
Validate a provider for a service with an instance configuration
|
ValidatedPlugin |
validatePluginByName(java.lang.String name,
PluggableProviderService service,
PropertyResolver resolver,
PropertyScope defaultScope)
Validate a provider for a service using a property resolver and a
default property scope
|
ValidatedPlugin |
validatePluginByName(java.lang.String name,
PluggableProviderService service,
PropertyResolver resolver,
PropertyScope defaultScope,
PropertyScope ignoredScope)
Validate a provider for a service using a property resolver and a
default property scope, and an ignoredScope
|
<T> PluggableProviderService<T> createPluggableService(java.lang.Class<T> type)
T
- type
- <T> boolean isFrameworkDependentPluginType(java.lang.Class<T> type)
T
- typetype
- type<T> PluggableProviderService<T> getFrameworkDependentPluggableService(java.lang.Class<T> type, Framework framework)
T
- type
- framework
- <T> ConfiguredPlugin<T> configurePluginByName(java.lang.String name, PluggableProviderService<T> service, java.util.Map configuration)
name
- name of bean or providerservice
- provider serviceconfiguration
- map of configuration data<T> ConfiguredPlugin<T> configurePluginByName(java.lang.String name, PluggableProviderService<T> service, IFramework framework, java.lang.String project, java.util.Map instanceConfiguration)
name
- name of bean or providerservice
- provider serviceframework
- frameworkproject
- project name or nullinstanceConfiguration
- configuration or null<T> ConfiguredPlugin<T> configurePluginByName(java.lang.String name, PluggableProviderService<T> service, IPropertyLookup frameworkLookup, IPropertyLookup projectLookup, java.util.Map instanceConfiguration)
name
- name of bean or providerservice
- provider serviceinstanceConfiguration
- configuration or null<T> ConfiguredPlugin<T> configurePluginByName(java.lang.String name, PluggableProviderService<T> service, PropertyResolver resolver, PropertyScope defaultScope)
<T> ConfiguredPlugin<T> retainConfigurePluginByName(java.lang.String name, PluggableProviderService<T> service, PropertyResolver resolver, PropertyScope defaultScope)
name
- name of bean or providerservice
- provider serviceresolver
- a property resolverdefaultScope
- default scope to search for property values when undeclared<T> java.util.Map<java.lang.String,java.lang.Object> getPluginConfigurationByName(java.lang.String name, PluggableProviderService<T> service, PropertyResolver resolver, PropertyScope defaultScope)
name
- name of bean or providerservice
- provider serviceresolver
- a property resolverdefaultScope
- default scope to search for property values when undeclaredValidatedPlugin validatePluginByName(java.lang.String name, PluggableProviderService service, PropertyResolver resolver, PropertyScope defaultScope)
name
- name of bean or providerservice
- provider serviceresolver
- a property resolverdefaultScope
- default scope to search for property values when undeclaredValidator.Report
ValidatedPlugin validatePluginByName(java.lang.String name, PluggableProviderService service, PropertyResolver resolver, PropertyScope defaultScope, PropertyScope ignoredScope)
name
- name of bean or providerservice
- provider serviceresolver
- a property resolverdefaultScope
- default scope to search for property values when undeclaredValidator.Report
ValidatedPlugin validatePluginByName(java.lang.String name, PluggableProviderService service, IFramework framework, java.lang.String project, java.util.Map instanceConfiguration)
name
- name of bean or providerservice
- provider serviceframework
- the frameworkproject
- the project nameinstanceConfiguration
- config mapValidator.Report
ValidatedPlugin validatePluginByName(java.lang.String name, PluggableProviderService service, java.util.Map instanceConfiguration)
name
- name of bean or providerservice
- provider serviceinstanceConfiguration
- config mapValidator.Report
<T> T loadPluginByName(java.lang.String name, PluggableProviderService<T> service)
name
- name of bean or providerservice
- provider service<T> CloseableProvider<T> retainPluginByName(java.lang.String name, PluggableProviderService<T> service)
<T> DescribedPlugin<T> loadPluginDescriptorByName(java.lang.String name, PluggableProviderService<T> service)
name
- name of bean or providerservice
- provider service<T> java.util.Map<java.lang.String,java.lang.Object> listPlugins(java.lang.Class groovyPluginType, PluggableProviderService<T> service)
groovyPluginType
- <T> java.util.Map<java.lang.String,DescribedPlugin<T>> listPluginDescriptors(java.lang.Class groovyPluginType, PluggableProviderService<T> service)
groovyPluginType
- PluginResourceLoader getResourceLoader(java.lang.String service, java.lang.String provider) throws ProviderLoaderException
service
- provider
- ProviderLoaderException
PluginMetadata getPluginMetadata(java.lang.String service, java.lang.String provider) throws ProviderLoaderException
service
- provider
- ProviderLoaderException
void registerPlugin(java.lang.String type, java.lang.String name, java.lang.String beanName)
type
- name
- beanName
-