Package hudson.scm
Class SCMDescriptor<T extends SCM>
- Type Parameters:
T
- The 'self' type that represents the type ofSCM
that this descriptor describes.
- Direct Known Subclasses:
NullSCM.DescriptorImpl
Descriptor
for SCM
.- Author:
- Kohsuke Kawaguchi
-
Nested Class Summary
Nested classes/interfaces inherited from class hudson.model.Descriptor
Descriptor.FormException, Descriptor.PropertyType, Descriptor.Self
-
Field Summary
Modifier and TypeFieldDescriptionfinal Class<? extends RepositoryBrowser>
If this SCM has correspondingRepositoryBrowser
, that type.Fields inherited from class hudson.model.Descriptor
clazz
-
Constructor Summary
ModifierConstructorDescriptionprotected
SCMDescriptor
(Class<? extends RepositoryBrowser> repositoryBrowser) Infers the type of the correspondingSCM
from the outer class.protected
SCMDescriptor
(Class<T> clazz, Class<? extends RepositoryBrowser> repositoryBrowser) -
Method Summary
Modifier and TypeMethodDescriptionReturns the list ofRepositoryBrowser
Descriptor
that can be used with this SCM.int
Deprecated.No longer used by default.void
Deprecated.No longer used by default.boolean
isApplicable
(AbstractProject project) Deprecated.boolean
isApplicable
(Job project) AllowsSCMDescriptor
s to choose which projects it wants to be configurable against.boolean
isBrowserReusable
(T x, T y) Deprecated.No longer used by default.void
load()
Loads the data from the disk into this object.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, getDisplayName, getGlobalConfigPage, getGlobalPropertyType, getHelpFile, getHelpFile, getHelpFile, getId, getJsonSafeClassName, getKlass, getPlugin, getPossibleViewNames, getPropertyType, getPropertyType, getPropertyTypeOrDie, getRequiredGlobalConfigPagePermission, getStaticHelpUrl, getStaticHelpUrl, getT, getViewPage, isInstance, isSubTypeOf, newInstance, newInstance, newInstance, newInstancesFromHeteroList, newInstancesFromHeteroList, newInstancesFromHeteroList, newInstancesFromHeteroList, save, self, toArray, toList, toMap
-
Field Details
-
repositoryBrowser
If this SCM has correspondingRepositoryBrowser
, that type. Otherwise this SCM will not have any repository browser.
-
-
Constructor Details
-
SCMDescriptor
-
SCMDescriptor
Infers the type of the correspondingSCM
from the outer class. This version works when you follow the common convention, where a descriptor is written as the static nested class of the describable class.- Since:
- 1.278
-
-
Method Details
-
getGeneration
@Deprecated @Restricted(org.kohsuke.accmod.restrictions.NoExternalUse.class) @RestrictedSince("2.209") public int getGeneration()Deprecated.No longer used by default.Incremented every time a newSCM
instance is created from this descriptor. This is used to invalidate cache ofSCM.getEffectiveBrowser()
. Due to the lack of synchronization and serialization, this field doesn't really count the # of instances created to date, but it's good enough for the cache invalidation. -
incrementGeneration
@Deprecated @Restricted(org.kohsuke.accmod.restrictions.NoExternalUse.class) @RestrictedSince("2.209") public void incrementGeneration()Deprecated.No longer used by default.Increments the generation valuegetGeneration()
by one atomically. -
load
public void load()Description copied from class:Descriptor
Loads the data from the disk into this object.The constructor of the derived class must call this method. (If we do that in the base class, the derived class won't get a chance to set default values.)
- Specified by:
load
in interfaceLoadable
- Overrides:
load
in classDescriptor<SCM>
-
isBrowserReusable
Deprecated.No longer used by default.SCM.getKey()
could be used to implement similar features if needed.Optional method used by the automatic SCM browser inference.Implementing this method allows Hudson to reuse
RepositoryBrowser
configured for one project to be used for other "compatible" projects.SCM.guessBrowser()
is more robust since it does not require another project.- Returns:
- true if the two given SCM configurations are similar enough
that they can reuse
RepositoryBrowser
between them.
-
isApplicable
AllowsSCMDescriptor
s to choose which projects it wants to be configurable against.When this method returns false, this
SCM
will not appear in the configuration screen for the given project. The default is true forAbstractProject
but false forJob
.- Since:
- 1.568
-
isApplicable
Deprecated. -
getBrowserDescriptors
Returns the list ofRepositoryBrowser
Descriptor
that can be used with this SCM.- Returns:
- can be empty but never null.
-