Class Overview
ModuleDescriptor which interprets <scm/> tags in atlassian-plugin.xml.
<scm id="scm" class="com.example.scm.CustomScm" weight="100"/>
Because this module descriptor uses the ModuleFactory to create the Scm instance, the "class" for the
Scm may also reference a bean:
<component id="customScm" class="com.example.scm.CustomScm"/>
<scm id="scm" class="bean:customScm"/>
Using the "bean:" approach allows plugins to declare their custom Scm implementations as public components,
allowing other plugins to component-import them and use them.
This module descriptor caches the Scm instance it creates, and returns the same instance on subsequent calls
until the module is disabled or uninstalled. As a result, as documented on the Scm interface, implementations
are required to be thread-safe, because the same instance will be used by multiple threads.
SCMs are weighted, which is used to control the order they are returned in when retrieving
ScmService#getAvailable() available SCMs. The higher the weight, the later in the set they will
appear. Additionally, if multiple SCMs are registered with the same ID, the one with the lowest
weight will be used.
Summary
|
[Expand]
Inherited Fields |
From class
com.atlassian.plugin.descriptors.AbstractModuleDescriptor
|
protected
String |
key |
|
|
protected
Class<T> |
moduleClass |
|
|
protected
String |
moduleClassName |
|
|
protected
final
ModuleFactory |
moduleFactory |
|
|
protected
String |
name |
|
|
protected
Plugin |
plugin |
|
|
protected
Resources |
resources |
|
|
protected
boolean |
singleton |
|
|
From interface
com.atlassian.bitbucket.util.Weighted
|
|
[Expand]
Inherited Methods |
From class
com.atlassian.bitbucket.scm.BaseWeightedModuleDescriptor
|
From class
com.atlassian.plugin.descriptors.AbstractModuleDescriptor
|
final
void
|
assertModuleClassImplements(Class<T> arg0)
|
|
final
void
|
checkPermissions()
|
|
void
|
destroy()
|
|
@Deprecated
void
|
destroy(Plugin arg0)
|
|
void
|
disabled()
|
|
void
|
enabled()
|
|
boolean
|
equals(Object arg0)
|
|
String
|
getCompleteKey()
|
|
String
|
getDescription()
|
|
String
|
getDescriptionKey()
|
|
String
|
getI18nNameKey()
|
|
String
|
getKey()
|
|
Float
|
getMinJavaVersion()
|
|
abstract
T
|
getModule()
|
|
Class<T>
|
getModuleClass()
|
|
String
|
getModuleClassName()
|
|
String
|
getName()
|
|
Map<String, String>
|
getParams()
|
|
Plugin
|
getPlugin()
|
|
String
|
getPluginKey()
|
|
Set<String>
|
getRequiredPermissions()
|
|
ResourceDescriptor
|
getResourceDescriptor(String arg0, String arg1)
|
|
List<ResourceDescriptor>
|
getResourceDescriptors()
|
|
List<ResourceDescriptor>
|
getResourceDescriptors(String arg0)
|
|
ResourceLocation
|
getResourceLocation(String arg0, String arg1)
|
|
Optional<String>
|
getScopeKey()
|
|
int
|
hashCode()
|
|
void
|
init(Plugin arg0, Element arg1)
|
|
boolean
|
isBroken()
|
|
boolean
|
isEnabled()
|
|
boolean
|
isEnabledByDefault()
|
|
@Deprecated
boolean
|
isSingleton()
|
|
@Deprecated
boolean
|
isSingletonByDefault()
|
|
boolean
|
isSystemModule()
|
|
void
|
loadClass(Plugin arg0, String arg1)
|
|
@Deprecated
void
|
loadClass(Plugin arg0, Element arg1)
|
|
void
|
provideValidationRules(ValidationPattern arg0)
|
|
boolean
|
satisfiesMinJavaVersion()
|
|
void
|
setBroken()
|
|
void
|
setPlugin(Plugin arg0)
|
|
String
|
toString()
|
|
From class
java.lang.Object
|
Object
|
clone()
|
|
boolean
|
equals(Object arg0)
|
|
void
|
finalize()
|
|
final
Class<?>
|
getClass()
|
|
int
|
hashCode()
|
|
final
void
|
notify()
|
|
final
void
|
notifyAll()
|
|
String
|
toString()
|
|
final
void
|
wait(long arg0, int arg1)
|
|
final
void
|
wait(long arg0)
|
|
final
void
|
wait()
|
|
From interface
com.atlassian.bitbucket.util.Weighted
|
From interface
com.atlassian.plugin.ModuleDescriptor
|
void
|
destroy()
|
|
void
|
destroy(Plugin arg0)
|
|
boolean
|
equals(Object arg0)
|
|
String
|
getCompleteKey()
|
|
String
|
getDescription()
|
|
String
|
getDescriptionKey()
|
|
String
|
getI18nNameKey()
|
|
String
|
getKey()
|
|
Float
|
getMinJavaVersion()
|
|
T
|
getModule()
|
|
Class<T>
|
getModuleClass()
|
|
String
|
getName()
|
|
Map<String, String>
|
getParams()
|
|
Plugin
|
getPlugin()
|
|
String
|
getPluginKey()
|
|
int
|
hashCode()
|
|
void
|
init(Plugin arg0, Element arg1)
|
|
boolean
|
isBroken()
|
|
boolean
|
isEnabled()
|
|
boolean
|
isEnabledByDefault()
|
|
boolean
|
isSystemModule()
|
|
boolean
|
satisfiesMinJavaVersion()
|
|
void
|
setBroken()
|
|
From interface
com.atlassian.plugin.Resourced
|
ResourceDescriptor
|
getResourceDescriptor(String arg0, String arg1)
|
|
List<ResourceDescriptor>
|
getResourceDescriptors()
|
|
@Deprecated
List<ResourceDescriptor>
|
getResourceDescriptors(String arg0)
|
|
ResourceLocation
|
getResourceLocation(String arg0, String arg1)
|
|
From interface
com.atlassian.plugin.ScopeAware
|
Optional<String>
|
getScopeKey()
|
|
From interface
com.atlassian.plugin.StateAware
|
void
|
disabled()
|
|
void
|
enabled()
|
|
From interface
java.lang.Comparable
|
Constants
public
static
final
String
XML_ELEMENT_NAME
Public Constructors
public
ScmModuleDescriptor
(ModuleFactory moduleFactory)
Public Methods
public
Scm
getModule
()
Retrieves the Scm instance for this descriptor.
The first time this method is called after an SCM plugin is installed or enabled, the Scm will be
retrieved from the ModuleFactory and cached. Subsequent calls will retrieve the same instance.