PluginCommandBuilderFactory When implemented by an SCM, allows the ScmService to provide an ScmCommandBuilder that can be used to build custom commands for advanced functionality. 
PluginCommandFactory Provides backing functionality for the ScmCommandFactory. 
PluginExtendedCommandFactory Provides backing functionality for the ScmExtendedCommandFactory. 
PluginMergeStrategies Describes an SPI for allowing SCMs to expose user-selectable merge strategies. 
PluginMergeStrategy Describes a single merge strategy, which controls how commits from one line of development are applied to another. 
Scm Describes a pluggable extension point for implementing custom SCMs. 
ScmProtocol An extension point for declaring an Scm's support for a protocol and for generating protocol-specific clone URLs for Repository repositories of that kind
ScmRequest A read or write request targeting a Stash repository. 
ScmRequestCheck Used to enforce a specific precondition for a repository hosting operation, such as a push or pull. 
ScmRequestCheckService Used to validate read and write operations on repositories managed by Stash. 
ScmStatus Describes the current status of an Scm plugin. 
ScmUrlFormatter Formats an appropriate URL for a given repository


AbstractCommandBuilder<B extends CommandBuilder<B>> Provides a basic implementation of most CommandBuilder functionality, to simplify creating builders. 
AbstractRepositoryScmRequest Extends AbstractScmRequest and adds properties to facilitate implementing SCM requests which interact with a repository, to read or write
AbstractScm Convenience implementation of Scm that returns null for all of the optional contract members. 
AbstractScmCommandBuilder<B extends ScmCommandBuilder<B>> Extends AbstractCommandBuilder and provides a basic implementation of ScmCommandBuilder. 
AbstractScmRequest A simple base class to facilitate implementing SCM requests
AbstractScmRequestHandlerModuleDescriptor<T> A base class for constructing module descriptors for ScmRequest handlers. 
BaseCommand<T> Wrapper around Atlassian's process utils. 
ForkCommandParameters Describes the fork being created. 
ScmModuleDescriptor ModuleDescriptor which interprets &lt;scm/&gt; tags in atlassian-plugin.xml
ScmProtocolModuleDescriptor Provides an ScmProtocol implementation used in connection with one or more Scms
ScmRequestCheckModuleDescriptor Provides an ScmRequestCheck implementation used by the ScmRequestCheckService
ScmUrlFormatterModuleDescriptor Parses the nested url-formatter element, when present, to produce an ScmUrlFormatter
ScmUrlRequest Describes a repository and base URL to use when formatting a URL
SimpleCommand<T> Implementation of the Command interface that provides empty implementations for all methods except call()


AuthenticationState Indicates the result of a user's authentication attempt when messaging the client using ScmRequest#sendAuthenticationError.