Class Overview
ModuleDescriptor which interprets <scm/> tags in atlassian-plugin.xml.
 
 <scm id="scm" class="com.example.scm.CustomScm" weight="100"/>
 
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"/>
 
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.