Class HeteroDescribableConfigurator<T extends Describable<T>>
java.lang.Object
io.jenkins.plugins.casc.impl.configurators.HeteroDescribableConfigurator<T>
- All Implemented Interfaces:
Configurator<T>
- Direct Known Subclasses:
LabelAtomPropertyConfigurator
@Restricted(org.kohsuke.accmod.restrictions.NoExternalUse.class)
public class HeteroDescribableConfigurator<T extends Describable<T>>
extends Object
implements Configurator<T>
Configurator that works with Describable subtype as a target.
The configuration object will be specify the 'short name' which we use to resolve to a specific
subtype of target. For example, if target is SecurityRealm and the short name
is 'local', we resolve to HudsonPrivateSecurityRealm (because it has Symbol annotation that
specifies that name.
The corresponding Configurator will be then invoked to configure the chosen subtype.
- Author:
- Nicolas De Loof
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncheck(CNode config, ConfigurationContext context) Run the same logic asConfigurator.configure(CNode, ConfigurationContext)in dry-run mode.configure(CNode config, ConfigurationContext context) Configures/creates a Jenkins object based on a tree.describe()Determine the list of Attribute available for configuration of the managed component.describe(T instance, ConfigurationContext context) Describe a component as a Configuration NodesCNodeto be exported as yaml.getConfigurators(ConfigurationContext context) Target type this configurator can handle.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface io.jenkins.plugins.casc.Configurator
canConfigure, describeStructure, getAttributes, getDisplayName, getImplementedAPI, getName, getNames
-
Constructor Details
-
HeteroDescribableConfigurator
-
-
Method Details
-
getTarget
Description copied from interface:ConfiguratorTarget type this configurator can handle.- Specified by:
getTargetin interfaceConfigurator<T extends Describable<T>>
-
getConfigurators
- Specified by:
getConfiguratorsin interfaceConfigurator<T extends Describable<T>>- Returns:
- list of
Configurators to be considered so one can fully configure this component. Typically, configurator for an abstract extension point will return Configurators for available implementations.
-
configure
Description copied from interface:ConfiguratorConfigures/creates a Jenkins object based on a tree.- Specified by:
configurein interfaceConfigurator<T extends Describable<T>>- Parameters:
config- Map/List/primitive objects (think YAML) that represents the configuration from which a Jenkins object is configured.context- Fully configured Jenkins object used as the starting point for this configuration.- 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.
-
check
Description copied from interface:ConfiguratorRun 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:
checkin interfaceConfigurator<T extends Describable<T>>- Parameters:
config- Map/List/primitive objects (think YAML) that represents the configuration from which a Jenkins object is configured.context- Fully configured Jenkins object used as the starting point for this configuration.
-
describe
Description copied from interface:ConfiguratorDetermine the list of Attribute available for configuration of the managed component.- Specified by:
describein interfaceConfigurator<T extends Describable<T>>- Returns:
- A set of
Attributes that describes this object
-
describe
Description copied from interface:ConfiguratorDescribe a component as a Configuration NodesCNodeto be exported as yaml. Only export attributes which are not set to default value.- Specified by:
describein interfaceConfigurator<T extends Describable<T>>
-
getImplementors
-