Package io.vertigo.core.node.config
Class ModuleConfigBuilder
- java.lang.Object
-
- io.vertigo.core.node.config.ModuleConfigBuilder
-
- All Implemented Interfaces:
Builder<ModuleConfig>
public final class ModuleConfigBuilder extends Object implements Builder<ModuleConfig>
The moduleConfigBuilder defines the configuration of a module. A module has a name. A module is composed of - components & plugins - aspects - definitions (defined by resources or providers)- Author:
- npiedeloup, pchretien
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ModuleConfigBuilder
addAmplifier(Class<? extends Amplifier> apiClass, Param... params)
Adds aa amplifier defined by an interface.ModuleConfigBuilder
addAspect(Class<? extends Aspect> implClass)
Adds an aspect.ModuleConfigBuilder
addComponent(ComponentConfig componentConfig)
Adds a component defined by its config.ModuleConfigBuilder
addComponent(Class<? extends Component> implClass, Param... params)
Adds a component defined by an implementation.ModuleConfigBuilder
addComponent(Class<? extends Component> apiClass, Class<? extends Component> implClass, Param... params)
Adds a component defined by an api and an implementation.ModuleConfigBuilder
addConnector(Class<? extends Connector> connectorImplClass, Param... params)
Adds a connector defined by its implementation.ModuleConfigBuilder
addDefinitionProvider(DefinitionProviderConfig definitionProviderConfig)
Adds a provider of definitions.ModuleConfigBuilder
addDefinitionProvider(Class<? extends DefinitionProvider> definitionProviderClass, Param... params)
Adds a simple provider of definitions.ModuleConfigBuilder
addPlugin(Class<? extends Plugin> pluginImplClass, Param... params)
Adds a plugin defined by its implementation.ModuleConfigBuilder
addPlugin(Class<? extends Plugin> pluginApiClass, Class<? extends Plugin> pluginImplClass, List<Param> params)
ModuleConfigBuilder
addPlugin(Class<? extends Plugin> pluginImplClass, List<Param> params)
ModuleConfigBuilder
addProxyMethod(Class<? extends ProxyMethod> proxyMethodClass)
Adds a proxy method.ModuleConfig
build()
-
-
-
Method Detail
-
addAspect
public ModuleConfigBuilder addAspect(Class<? extends Aspect> implClass)
Adds an aspect.- Parameters:
implClass
- Class of the aspect- Returns:
- this builder
-
addProxyMethod
public ModuleConfigBuilder addProxyMethod(Class<? extends ProxyMethod> proxyMethodClass)
Adds a proxy method.- Parameters:
proxyMethodClass
- the proxy method class- Returns:
- this builder
-
addDefinitionProvider
public ModuleConfigBuilder addDefinitionProvider(DefinitionProviderConfig definitionProviderConfig)
Adds a provider of definitions.- Parameters:
definitionProviderConfig
- the definitionProviderConfig- Returns:
- this builder
-
addDefinitionProvider
public ModuleConfigBuilder addDefinitionProvider(Class<? extends DefinitionProvider> definitionProviderClass, Param... params)
Adds a simple provider of definitions.- Parameters:
definitionProviderClass
- the class of the providerparams
- the list of params- Returns:
- this builder
-
addAmplifier
public ModuleConfigBuilder addAmplifier(Class<? extends Amplifier> apiClass, Param... params)
Adds aa amplifier defined by an interface.- Parameters:
apiClass
- api of the amplifieparams
- the list of params- Returns:
- this builder
-
addComponent
public ModuleConfigBuilder addComponent(Class<? extends Component> implClass, Param... params)
Adds a component defined by an implementation.- Parameters:
implClass
- impl of the componentparams
- the list of params- Returns:
- this builder
-
addComponent
public ModuleConfigBuilder addComponent(Class<? extends Component> apiClass, Class<? extends Component> implClass, Param... params)
Adds a component defined by an api and an implementation.- Parameters:
apiClass
- api of the componentimplClass
- impl of the componentparams
- the list of params- Returns:
- this builder
-
addComponent
public ModuleConfigBuilder addComponent(ComponentConfig componentConfig)
Adds a component defined by its config.- Parameters:
componentConfig
- the config of the component- Returns:
- this builder
-
addPlugin
public ModuleConfigBuilder addPlugin(Class<? extends Plugin> pluginImplClass, Param... params)
Adds a plugin defined by its implementation.- Parameters:
pluginImplClass
- impl of the pluginparams
- the list of params- Returns:
- this builder
-
addPlugin
public ModuleConfigBuilder addPlugin(Class<? extends Plugin> pluginImplClass, List<Param> params)
-
addPlugin
public ModuleConfigBuilder addPlugin(Class<? extends Plugin> pluginApiClass, Class<? extends Plugin> pluginImplClass, List<Param> params)
-
addConnector
public ModuleConfigBuilder addConnector(Class<? extends Connector> connectorImplClass, Param... params)
Adds a connector defined by its implementation.- Parameters:
connectorImplClass
- impl of the connectorparams
- the list of params- Returns:
- this builder
-
build
public ModuleConfig build()
- Specified by:
build
in interfaceBuilder<ModuleConfig>
- Returns:
- the built object
-
-