Class ConfigurableConfigurator<T extends Configurable>
- java.lang.Object
-
- io.jenkins.plugins.casc.impl.configurators.ConfigurableConfigurator<T>
-
- All Implemented Interfaces:
Configurator<T>
public class ConfigurableConfigurator<T extends Configurable> extends Object implements Configurator<T>
- Author:
- Nicolas De Loof
-
-
Constructor Summary
Constructors Constructor Description ConfigurableConfigurator(Class<T> target)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description T
check(CNode config, ConfigurationContext context)
Run the same logic asConfigurator.configure(CNode, ConfigurationContext)
in dry-run mode.T
configure(CNode config, ConfigurationContext context)
Configures/creates a Jenkins object based on a tree.Set<Attribute<T,?>>
describe()
Determine the list of Attribute available for configuration of the managed component.CNode
describe(T instance, ConfigurationContext context)
Describe a component as a Configuration NodesCNode
to be exported as yaml.Class<T>
getTarget()
Target type this configurator can handle.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface io.jenkins.plugins.casc.Configurator
canConfigure, describeStructure, getAttributes, getConfigurators, getDisplayName, getImplementedAPI, getName, getNames
-
-
-
-
Method Detail
-
getTarget
public Class<T> getTarget()
Description copied from interface:Configurator
Target type this configurator can handle.- Specified by:
getTarget
in interfaceConfigurator<T extends Configurable>
-
describe
@NonNull public Set<Attribute<T,?>> describe()
Description copied from interface:Configurator
Determine the list of Attribute available for configuration of the managed component.- Specified by:
describe
in interfaceConfigurator<T extends Configurable>
- Returns:
- A set of
Attribute
s that describes this object
-
configure
@NonNull public T configure(CNode config, ConfigurationContext context) throws ConfiguratorException
Description copied from interface:Configurator
Configures/creates a Jenkins object based on a tree.- Specified by:
configure
in interfaceConfigurator<T extends Configurable>
- Parameters:
config
- Map/List/primitive objects (think YAML) that represents the configuration from which a Jenkins object is configured.- Returns:
- Fully configured Jenkins object that results from this configuration. if no new objects got created, but some existing objects may have been modified, return updated target object.
- Throws:
ConfiguratorException
- if something went wrong, depends on the concrete implementation
-
check
public T check(CNode config, ConfigurationContext context) throws ConfiguratorException
Description copied from interface:Configurator
Run the same logic asConfigurator.configure(CNode, ConfigurationContext)
in dry-run mode. Used to verify configuration is fine before being actually applied to a live jenkins controller.- Specified by:
check
in interfaceConfigurator<T extends Configurable>
- Throws:
ConfiguratorException
-
describe
@CheckForNull public CNode describe(T instance, ConfigurationContext context) throws Exception
Description copied from interface:Configurator
Describe a component as a Configuration NodesCNode
to be exported as yaml. Only export attributes which are not set to default value.- Specified by:
describe
in interfaceConfigurator<T extends Configurable>
- Throws:
Exception
-
-