Class ParametersDefinitionProperty.DescriptorImpl
- Enclosing class:
- ParametersDefinitionProperty
-
Nested Class Summary
Nested classes/interfaces inherited from class hudson.model.Descriptor
Descriptor.FormException, Descriptor.PropertyType, Descriptor.Self
-
Field Summary
Fields inherited from class hudson.model.Descriptor
clazz
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionHuman readable name of this kind of configurable object.boolean
isApplicable
(Class<? extends Job> jobType) Returns true if thisJobProperty
type is applicable to the given job type.newInstance
(org.kohsuke.stapler.StaplerRequest2 req, net.sf.json.JSONObject formData) Creates a configured instance from the submitted form.Methods inherited from class jenkins.model.OptionalJobProperty.OptionalJobPropertyDescriptor
newInstance
Methods inherited from class hudson.model.JobPropertyDescriptor
all, getPropertyDescriptors
Methods inherited from class hudson.model.Descriptor
addHelpFileRedirect, bindJSON, bindJSON, calcAutoCompleteSettings, calcFillSettings, configure, configure, configure, doHelp, doHelp, find, find, findByDescribableClassName, findById, getCategory, getCheckMethod, getCheckUrl, getConfigFile, getConfigPage, getCurrentDescriptorByNameUrl, getDescriptorFullUrl, getDescriptorUrl, getGlobalConfigPage, getGlobalPropertyType, getHelpFile, getHelpFile, getHelpFile, getId, getJsonSafeClassName, getKlass, getPlugin, getPossibleViewNames, getPropertyType, getPropertyType, getPropertyTypeOrDie, getRequiredGlobalConfigPagePermission, getStaticHelpUrl, getStaticHelpUrl, getT, getViewPage, isInstance, isSubTypeOf, load, newInstance, newInstancesFromHeteroList, newInstancesFromHeteroList, newInstancesFromHeteroList, newInstancesFromHeteroList, save, self, toArray, toList, toMap
-
Constructor Details
-
DescriptorImpl
public DescriptorImpl()
-
-
Method Details
-
newInstance
public ParametersDefinitionProperty newInstance(org.kohsuke.stapler.StaplerRequest2 req, net.sf.json.JSONObject formData) throws Descriptor.FormException Description copied from class:Descriptor
Creates a configured instance from the submitted form.Hudson only invokes this method when the user wants an instance of
T
. So there's no need to check that in the implementation.The default implementation of this method uses
Descriptor.bindJSON(org.kohsuke.stapler.StaplerRequest2, java.lang.Class<T>, net.sf.json.JSONObject)
which performs the databinding on the constructor ofDescriptor.clazz
.For some types of
Describable
, such asListViewColumn
, this method can be invoked with null request object for historical reason. Such design is considered broken, but due to the compatibility reasons we cannot fix it. Because of this, the default implementation gracefully handles null request, but the contract of the method still is "request is always non-null." Extension points that need to define the "default instance" semantics should define a descriptor subtype and add the no-arg newInstance method.- Overrides:
newInstance
in classOptionalJobProperty.OptionalJobPropertyDescriptor
- Parameters:
req
- Always non-null (see note above.) This object includes represents the entire submission.formData
- The JSON object that captures the configuration data for thisDescriptor
. See the developer documentation. Always non-null.- Returns:
- null to avoid setting an instance of
JobProperty
to the target project (or just useOptionalJobProperty
) - Throws:
Descriptor.FormException
- Signals a problem in the submitted form.
-
isApplicable
Description copied from class:JobPropertyDescriptor
Returns true if thisJobProperty
type is applicable to the given job type.The default implementation of this method checks if the given job type is assignable to
J
ofJobProperty
<J>
, but subtypes can extend this to change this behavior.- Overrides:
isApplicable
in classJobPropertyDescriptor
- Returns:
- true to indicate applicable, in which case the property will be displayed in the configuration screen of this job.
-
getDisplayName
Description copied from class:Descriptor
Human readable name of this kind of configurable object. Should be overridden for most descriptors, if the display name is visible somehow. As a fallback it usesClass.getSimpleName()
onDescriptor.clazz
, so for exampleMyThing
fromsome.pkg.MyThing.DescriptorImpl
. Historically some implementations returned null as a way of hiding the descriptor from the UI, but this is generally managed by an explicit method such asisEnabled
orisApplicable
.- Overrides:
getDisplayName
in classDescriptor<JobProperty<?>>
-