All Classes and Interfaces

Class
Description
Deprecated. 
Abstract base class for encoding and decoding BaseX.
Abstract class for bundle or unbundle command.
 
Abstract base class for GroupManager implementations.
Abstract base class for HandlerEvent.
Abstract base class for PushResponse and PullResponse.
 
 
 
Abstract base class for RepositoryManager implementations.
Abstract base class for RepositoryRoleManager implementations.
 
 
Base class for ConfigurationStore.
 
Abstract base class for UserManager implementations.
 
An access token can be used to access scm-manager without providing username and password.
The access token builder is able to create AccessToken.
Creates new AccessTokenBuilder.
Generates cookies and invalidates access token cookies.
AccessTokenEnricher is able to enhance the AccessToken, before it is delivered to the client.
AccessTokenResolver are used to parse, validate and verify an AccessToken from a BearerToken.
Validates an AccessToken.
 
Execute actions with administration privileges.
Advanced client for http operations.The AdvancedHttpClient offers a fluid interface for handling most common http operations.
A http request without Content for example a GET or HEAD request.
Http request with body.
Http response.
Deprecated. 
 
Available modes for anonymous access
 
 
 
 
Permission object which is assigned to a specific user or group.
Event which is fired after a StoredAssignedPermission was added, removed or changed.
 
 
 
 
 
Handles authentication, if a one of the WebTokenGenerator returns an AuthenticationToken.
 
This type of event is fired whenever an authorization relevant data changes.
Collect AuthorizationInfo for the authenticated user.
 
 
 
 
This type of exception is only thrown by scm-manager backend implementation, such as the xml or jdbc backend.
 
Provides Base32 encoding and decoding for long values.
Provides Base62 encoding and decoding for long values.
Base class for http requests.
BaseMapper<T,D extends de.otto.edison.hal.HalRepresentation>
 
The default implementation of SCMContextProvider.
Default implementation of PropertiesAware interface.
 
Token used for authentication with bearer tokens.
 
Shows changeset information by line for a given file.
 
Single line of a file, in a BlameResult.
A pre processor for BlameLine objects.
The BlameLinePreProcessorFactory create BlameLinePreProcessor objects for a specific repository.
Changeset information by line for a given file.
A blob is binary object.
 
 
The blob store can be used store unstructured data in form of a Blob.
The BlobStoreFactory can be used to create a new or get an existing BlobStores.
Represents a branch in a repository.
 
 
 
This event is fired when a new branch was created from SCM-Manager.
Represents details of a branch that are not computed by default for a Branch.
 
 
 
 
Represents all branches of a repository.
 
 
The branches command list all repository branches.

Samples:

Return all branches of a repository:
 
 
 
 
 
 
BrowseCommandBuilder is able to browse the files of a Repository.
 
 
 
 
This class is a wrapper for ResourceBundle, it applies some missing format options missing in ResourceBundle.
Service provider implementation for the bundle command.
The bundle command dumps a repository to a byte source such as a file.
Request for the bundle command.
Response of bundle command.
ByteSource content for AdvancedHttpRequestWithBody.
The main interface for the cache.
 
The CacheManager holds references to Cache and manages their creation.
Statistics about the performance of a Cache.
 
 
Shows the content of a file in the Repository.

Sample:

Print the content of the file core/pom.xml from revision 46a23689ac91:
 
The CentralWorkQueue provides an api to submit and coordinate long-running or resource intensive tasks.
Builder interface for the enqueueing of a new task.
Handles exception thrown by an CGIExecutor
 
 
Interface for handling return codes of processes executed by the CGIExecutor.
 
 
Represents a changeset/commit of a repository.
 
The changeset paging result is used to do a paging over the Changesets of a Repository.
A pre processor for Changeset objects.
The ChangesetPreProcessorFactory create ChangesetPreProcessor objects for a specific repository.
 
 
 
 
 
 
 
 
The ChildFirstURLClassLoader alters regular ClassLoader delegation and will check the URLs used in its initialization for matching classes before delegating to its parent.
 
Encrypts and decrypts string values.
 
 
Util methods for ClassLoaders.
Event which causes clearing of repository cache.
Context for the CLI client which is used by the CLI commands
 
I18n messages which are send back to client.
Parent class for command line exceptions.
Defines a custom resource bundle for the CLI command We need to use this workaround instead the picocli way because we cannot ensure that the resource bundles can be found by the classloader.
 
CollectionToDtoMapper<E,D extends de.otto.edison.hal.HalRepresentation>
 
 
Enumeration of available commands.
 
 
 
This exception is thrown if the RepositoryService does not support the requested command.
 
This the command validator which should be used to validate CLI commands with Bean validation.
 
 
 
 
Base for all kinds of configurations.
ConfigurationAdapterBase<DAO,DTO extends de.otto.edison.hal.HalRepresentation>
This can be used as a base class for configuration resources.
A ConfigurationEntryStore can be used to store multiple entries of structured configuration data.
The ConfigurationEntryStoreFactory can be used to create new or get existing ConfigurationEntryStores.
Exception for problems with the SCM-Manager configuration.
ConfigurationStore for configuration objects.
 
The ConfigurationStoreFactory can be used to create new or get existing ConfigurationStore objects.
Transforms ByteSource content to an object and vice versa.
A ContentTransformerException is thrown if an error occurs during content transformation by an ContentTransformer.
The ContentTransformerNotFoundException is thrown, if no ContentTransformer could be found for the given type.
Detected type of content.
Content-Types.
ContentTypeResolver is able to detect the ContentType of files based on their path and (optinally) a few starting bytes.
ContentTypeResolverExtension extends the default ContentTypeResolver with custom resolve actions.
 
 
 
 
 
Base interface of all objects which have a creation time.
 
 
The DAORealmHelper provides a simple way to authenticate against the UserDAO.
Factory to create DAORealmHelper instances.
A DataStore can be used to store any structured data.
The DataStoreFactory can be used to create new or get existing DataStores.
Factory for decorated objects.
 
Utility for making deep copies (vs.
Event is fired whenever the default branch of a repository was modified.
Default implementation of the CipherHandler, which uses AES for encryption and decryption.
 
Default implementation of RepositoryExportingCheck.
 
Shows differences between revisions for a specified file or the entire revision.
Note: One of the parameter path or revision have to be set.

Sample:

Print the differences from revision 33b93c443867:
 
 
 
 
Specifies the output format of a diff command.
 
 
 
 
 
 
 
 
 
 
 
 
 
Eager singleton scope for injection.
 
Email is able to resolve email addresses of users.
 
This exception is thrown on a create method if an entry with the given id already exists.
 
 
 
 
 
Default implementation of RepositoryArchivedCheck.
 
 
 
 
The ExportableStore is used to export the stored data inside the store.
The Exporter is used to export a single store entry to an OutputStream.
An exporter could be used to collect and process spans.
 
 
 
Process and resolve extensions.
 
The external user converter can be used to modify users which are provided by external systems before creation in SCM-Manager.
ByteArrayInputStream implementation that does not synchronize methods.
ByteArrayOutputStream implementation that doesn't synchronize methods and doesn't copy the data on toByteArray().
Features which are supported by a Repository.
 
 
Sets the content of the file to the request.
Detailes of a file lock.
Interface for lock implementations.
Can lock and unlock files and check lock states.
Exception thrown whenever a locked file should be modified or locked/unlocked by a user that does not hold the lock.
The FileObject represents a file or a directory in a repository.
Compare FileObject's by its name.
A pre processor for FileObject objects.
The FileObjectPreProcessorFactory create FileObjectPreProcessor objects for a specific repository.
 
 
Useful constants for filter implementations.
The form builder is able to add form parameters to a request.
 
 
 
 
Generic data access object.
Util for pattern matching with glob (http://en.wikipedia.org/wiki/Glob_%28programming%29) syntax.
Allows signing and verification using gpg.
Organizes users into a group for easier permissions management.
 
 
Data access object for groups.
 
The GroupEvent is fired if a group object changes.
The central class for managing Groups.
Decorator for GroupManager.
Factory for group manager decorators.
Event which is fired whenever a group is modified.
 
 
Configuration for the GZipResponseFilter.
 
Response stream for gzip encoding.
Response wrapper for gzip encoding.
The HalAppender can be used within an HalEnricher to append hateoas links to a json response.
Builder for link arrays.
 
A HalEnricher can be used to append hal specific attributes, such as links, to the json response.
Context object for the HalEnricher.
Builder for HalEnricherContext.
The HalEnricherRegistry is responsible for binding HalEnricher instances to their source types.
Base interface for all handler objects.
The base class of all handlers.
Base class for handler events.
Keep index in sync with HandlerEvent.
Handler event type.
Repository health check.
This event is triggered whenever a health check was run and either found issues or issues reported earlier are fixed (that is, health has changed).
Single failure of a HealthCheck.
 
Result of HealthCheck.
Represents an object which matched the search query.
Base class of hit field types.
A field which consists of fragments that contain a match of the search query.
A field holding a complete value.
The HookBranchProvider returns information about branch changes during the current hook.
The HookChangesetBuilder is able to return all Changesets which are added during the current push/commit.
 
Request object to retrieve Changesets during a hook.
Response object to retrieve Changesets during a hook.
The context for all repository hooks.
Injectable factory for HookContext objects.
Repository type specific provider for HookContext.
 
 
Base exception for all exceptions which can occur during the hook initialization.
Enumeration of available hook features.
This exception is thrown if the underlying provider of the HookContext does not support the requested HookFeature.
 
Send messages back to scm client during hook execution.
The HookDiffProvider returns modifications of branches that have been changed during the current hook.
The HookTagProvider returns information about tags during the current hook.
Options for establishing a http connection.
 
Http methods.
 
 
The HttpURLConnectionFactory simplifies the correct configuration of HttpURLConnection.
 
 
Util method for the http protocol.
 
 
The I18nMessages class instantiates a class and initializes all String fields with values from a resource bundle.
Id<T>
Describes the id of an indexed object.
 
 
This exception is thrown if the repository import fails.
Deprecated. 
Import receive repository hook events are fired after a repository was imported.
Deprecated. 
Builder for ImportResult.
 
The incoming command shows new Changesets found in a different repository location.
 
This exception is thrown if the repository import fails.
This class is a pretty print wrapper for XMLStreamWriter.
The Index object can be used to register a HalEnricher for the index resource.
Can be used to index objects for full text searches.
Builder api to delete all objects which match parts of their id.
Deleter provides an api to delete object from index.
Details of an index.
Indexer for a specific type.
Abstract class which builds the foundation for tasks which re-index all items.
A marker keeping track of when and with which model version an object type was last indexed.
Can be used to mark when a type of object was last indexed and with which version.
Index log store for a specific index.
A task which updates an index.
Configuration in the ini format.
Read configuration in ini format from files and streams.
Write configurations in ini format to file and streams.
A section of INIConfiguration.
Base interface for all initable objects.
 
Deprecated, for removal: This API element is subject to removal in a future version.
Limited use for Plugin Development, see as internal
Deprecated, for removal: This API element is subject to removal in a future version.
Limited use for Plugin Development, see as internal
 
A Location Resolver for File based Repository Storage.
 
 
 
 
 
 
 
Implementing this extension point you can post process json response objects.
 
Process data for the JsonEnricher extension point giving context for post processing json results.
This json merger can be used to apply various new fields to an existing object without overwriting the whole data or simply merge some json nodes into one.
 
 
 
Base interface of all objects which have a last modified date.
A sorted set which is limited to a specified maximum size.
This class is used to create links for JAX-RS resources.
 
Request used to lock a file.
Result of a lock command.
 
 
LogCommandBuilder is able to show the history of a file in a Repository or the entire history of a Repository.
 
 
An OutputStream that flushes out to a Logger.
 
Event is fired whenever a user explicitly logs out.
 
 
The lookup command executes a lookup for additional repository information.
 
Base interface for all manager classes.
Basic decorator for manager classes.
 
The Me object can be used to register a HalEnricher for the me resource.
 
Use this MergeCommandBuilder to merge two branches of a repository (MergeCommandBuilder.executeMerge()) or to check if the branches could be merged without conflicts (MergeCommandBuilder.dryRun()).
 
 
This class keeps the result of a merge of branches.
 
 
 
This class keeps the result of a merge dry run.
 
 
 
 
 
 
Util methods to collect metrics from known apis.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Base interface for all model objects.
 
 
Extension to the ModificationHandlerEvent.
 
Command to get the modifications applied to files in a revision.
Get the modifications applied to files in a revision.
 
A pre processor for Modifications objects.
This factory create a ModificationsPreProcessor
 
 
Implementations should use the ModifyWorkerHelper for this.
Use this ModifyCommandBuilder to make file changes to the head of a branch.
 
 
 
 
 
 
 
This "interface" is not really intended to be used as an interface but rather as a base class to reduce code redundancy in Worker instances.
Extension point to pass SCM-Manager metrics to a monitoring system.
Base class for BlobStore and DataStore.
 
 
 
 
 
The NamespaceEvent is fired if a Namespace object changes.
Manages namespaces.
Event which is fired whenever a namespace is modified.
Strategy to create a namespace for the new repository.
Data for the namespace, whose data that should be migrated.
Implementations of this interface can be used to iterate all namespaces in update steps.
Simple callback with the name of an existing namespace with the possibility to throw exceptions.
This is the main interface for "namespace specific" data migration/update.
 
 
Exception is thrown if a best guess query is executed and the search type does not contain a field which is marked for default query.
This is the default implementation for the WorkingCopyPool.
Exception thrown when a task is enqueued to the CentralWorkQueue which cannot persisted.
 
Notifications can be used to send a message to specific user.
Service for sending notifications.
 
 
 
Show changesets not found in a remote repository.
 
 
This represents the result of a page request.
 
Interface for objects using a password.
 
 
Descriptor for available permission objects.
Abstract http filter to check repository permissions.
Interface for permission objects.
Provider for available verbs and roles for repository permissions, such as "read", "modify", "pull", "push", etc.
The Person (author) of a changeset.
 
 
Represents the platform on which the SCM manager running.
Type of the SCM-Manager host platform.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
The plugin manager is responsible for plugin related tasks, such as install, uninstall or updating.
 
 
Util methods to handle plugins.
 
 
 
Post receive repository hook events are fired after a repository has changed.
A pre processor is able to modify a object before it is delivered to the user interface.
A pre processor factory creates a specific PreProcessor for the given repository.
 
Pre receive repository hook events are fired before a change is written through the repository.
Priority constants and util methods to sort classes by Priority annotation.
Ordering which orders instances by priority.
Ordering which orders classes by priority.
Can be used to create signatures of data.
 
 
 
 
Base interface of all objects which have properties.
 
 
 
 
Util class for proxy settings.
Proxy server configuration.
 
 
 
The public key can be used to verify signatures.
This event is fired when a public key was created in SCM-Manager.
This event is fired when a public key was removed from SCM-Manager.
Public key parser.
 
The pull command pull changes from a other repository.
Request object for PullCommand.
The PullResponse is the result of the methods PullCommandBuilder.pull(sonia.scm.repository.Repository) and PullCommandBuilder.pull(String) and contains information for the executed pull command.
 
 
The push command push changes to another repository.
Request object for PushCommand.
 
The PushResponse is the result of the PushCommandBuilder.push(sonia.scm.repository.Repository) method and contains information over the executed push command.
Build and execute queries against an index.
Result of a counting query.
Is thrown if a query with invalid syntax was executed.
Result of a query.
 
Byte array content for AdvancedHttpRequestWithBody.
Read only check could be used to mark a repository as read only.
Read only exception is thrown if someone tries to execute a write command on a read only repository.
This is a reduced form of a model object.
 
 
 
 
 
 
 
 
Source code repository.
Implementations of this class can be used to check whether a repository is archived.
 
 
 
 
Basic Repository configuration class.
Use this RepositoryContentInitializer to create new files with custom content which will be included in the initial commit of the new repository
Use this to apply content to new files which should be committed on repository initialization
Use this RepositoryContentInitializer.InitializerContext to create new files on repository initialization which will be included in the first commit
 
 
Coordinates to identify a repository.
Data access object for repositories.
 
The RepositoryEvent is fired if a Repository object changes.
Implementations of this class can be used to check whether a repository is currently being exported.
 
Handler class for a specific Repository type.
 
Repository hook event represents an change event of a repository.
Type of repository hook.
Event which is fired whenever repository import is successful or failed.
 
 
 
 
 
 
The central class for managing Repository objects.
Decorator for RepositoryManager.
Factory for repository manager decorators.
Event which is fired whenever a repository is modified.
Validates the name of a repository.
Options to control the namespace prefix validation.
 
ExtensionPoint to modify the path matching behaviour for a certain type of repositories.
 
Permissions controls the access to Repository.
This intercepts permission checks for repositories and blocks write permissions for archived repositories.
This abstracts the permissions of Repository and Namespace objects.
 
 
Checks, whether a repository has to be considered read only.
Listener before a repository request is executed.
 
Custom role with specific permissions related to Repository.
 
The RepositoryRoleEvent is fired if a repository role object changes.
The central class for managing RepositoryRole objects.
Event which is fired whenever a repository role is modified.
From the RepositoryService it is possible to access all commands for a single Repository.
The RepositoryServiceFactory is the entrypoint of the repository api.
This exception is throw if no RepositoryService is available for the given Repository.
 
 
Maps a repository to a hal representation.
The type (mercurial, subversion, git) of a Repository.
Validates the type of repository.
Used to filter collections of repositories by its type.
Data for the repository, whose data that should be migrated.
Implementations of this interface can be used to iterate all repositories in update steps.
Simple callback with the id of an existing repository with the possibility to throw exceptions.
This is the main interface for "repository specific" data migration/update.
 
 
 
Restarter is able to restart scm-manager.
This event indicates a forced restart of scm-manager.
Exception is thrown if a restart is not supported or a restart strategy is misconfigured.
 
RootURL is able to return the root url of the SCM-Manager instance, regardless of the scope (web request, async hook, ssh command, etc.).
Scheduler is able to run tasks on the future in a background thread.
 
This can be used to determine, whether a web request should be handled as a scm client request.
 
The main configuration object for SCM-Manager.
The ScmConfigurationChangedEvent is fired whenever the ScmConfiguration changes.
 
Use this exception to handle invalid input values that cannot be handled using JEE bean validation.
Builder to conditionally create constraint violations.
A single constraint violation.
The SCMContext searches an implementation of SCMContextProvider and holds a singleton instance of this implementation.
The main class for retrieving the home and the version of the SCM-Manager.
Dispatches events to listeners, and provides ways for listeners to register themselves.
 
ObjectInputStream implementation which uses the context class loader to resolve classes.
 
 
An ScmProtocol represents a concrete protocol provided by the SCM-Manager instance to interact with a repository depending on its type.
Provider for scm native protocols.
 
 
 
 
 
Scope of a token.
Target for monitoring systems which scrape metrics from an http endpoint.
 
A field of a SearchableType.
A type which can be searched with the SearchEngine.
The SearchEngine is the main entry point for indexing and searching.
Api for modifying multiple indices at once.
Search and index api.
Generic exception which could be thrown by any part of the search engine.
 
 
The SecuritySystem manages global permissions.
A serializable version of IndexTask.
 
Type of servlet container.
Detects the ServletContainer.
Client side session id.
Signature is the output of a signature verification.
 
 
This class is a simple implementation of the WorkingCopyPool to demonstrate, how caching can work in an LRU style.
 
 
 
This class is responsible to govern the creation, the reuse and the destruction of working copies.
 
 
Smp plugin archive.
 
A span represents a single unit of work e.g.
The SpanContext represents a finished span which could be processed by an Exporter.
 
Marks an JAX-RS Endpoint as SseResponse.
The constants in this class represent the current state of the running SCM_Manager instance.
Permission object which is stored and assigned to a specific user or group.
 
 
The StoreEntryImporter is used to import a store entry from an InputStream.
Create a StoreEntryImporter for the store type and store name.
 
The store exception can be used by a store implementation.
The StoreExporter is used to collect all ExportableStores for a given repository.
The StoreImporter is used to create a StoreEntryImporterFactory for a Repository.
The fields of the StoreParameters are used from the BlobStoreFactory to create a store.
Builder for StoreParameters.
 
 
 
 
 
 
Permission that can be represented by a string.
String content for AdvancedHttpRequestWithBody.
 
 
Tasks submitted to this executor will be run synchronously up to a given time, after which they will be queued and processed asynchronously.
 
Use this provider to get SyncAsyncExecutor instances to execute a number of normally short-lived tasks, that should be run asynchronously (or even be skipped) whenever they take too long in summary.
Helper class for syncing realms.
 
This table can be used to display table-like command output
Represents a tag in a repository.
 
 
 
 
Plugins can implement this interface to prevent the deletion of certain tags.
 
Represents all tags of a repository.
 
The tags command list all repository tags.

Samples:

Return all tags of a repository:
Tasks are executed in the future and can be running more than once.
Serializable task which can be enqueued to the CentralWorkQueue.
The template represents a single template file and is able to render this template.
The TemplateEngine searches for Templates and prepares the template for the rendering process.
The TemplateEngineFactory is the entrypoint of the template api.
This exception is thrown, if an error during the template parse phase occurs.
This is the default template renderer which should be used to write templated content to the channels of the CLI connection.
This exception is thrown, if an error during the template rendering phase occurs.
Exception is thrown if TemplateRenderer could not render the template.
Util class for the template framework of scm-manager.
Represents the type of a TemplateType.
This exception is thrown if the session token is expired
Create tokens for security reasons.
Thrown by the AccessTokenResolver when an AccessTokenValidator fails to validate an access token.
The tracer api allows the tracing of long running tasks, such as calling external systems.
Id of the current transaction.
Util class to transform multiple objects.
Type of notification.
Base class for all objects which supports different types.
Base interface for all objects of specific type.
The fields of the TypedStoreParameters are used from the ConfigurationStoreFactory, ConfigurationEntryStoreFactory and DataStoreFactory to create a type safe store.
TypeManager<T extends ModelObject,H extends Handler<T>>
Base interface for all type manager classes.
Load resources from ServletContext and from the installed plugins.
 
Service provider implementation for the unbundle command.
The unbundle command can restore an empty repository from a bundle.
Request object for the unbundle command.
Response of unbundle command.
Request to unlock a file.
Result of an unlock command.
 
This is the main interface for "global" data migration/update.
Use this in UpdateSteps only to read repository objects directly from locations given by RepositoryLocationResolver.
Base class for update steps, telling the target version and the affected data type.
Handle upgrades from one SCM-Manager version to another.
 
 
The software agent that is acting on behalf of a user.
Builder class for UserAgent.
Parser for User-Agent header.
Provider to parse User-Agent header and returns an UserAgent object.
 
Data access object for users.
 
The UserEvent is fired if a user object changes.
The central class for managing User objects.
Decorator for UserManager.
Factory for user manager decorators.
Event which is fired whenever a user is modified.
 
 
 
 
 
 
Use this to access old properties from an instance of SCM-Manager v1.
 
 
Base interface for all validateable objects.
 
Version object for comparing and parsing versions.
The VersionParseException is thrown if a version could not be parsed.
 
A viewable holds the path to a template and the context object which is used to render the template.
Vendor media types used by SCMM.
 
Descriptor for web elements such as filter or servlets.
WebElementExtension can be a servlet or filter which is ready to bind.
The WebResourceLoader is able to load web resources.
Creates an AuthenticationToken from a HttpServletRequest.
 
 
 
 
 
 
Base class for RepositoryHookEvent wrappers.
Converts a string to a string array and vice versa.
 
 
 
 
JAXB adapter for Instant objects.
 
 
 
 
 
 
 
 
Util methods to handle xml files.
Shared constants for Xsrf related classes.