Package com.google.gerrit.server.git
Interface GitRepositoryManager
-
- All Known Implementing Classes:
GitRepositoryManagerOnInit
,LocalDiskRepositoryManager
,MultiBaseLocalDiskRepositoryManager
public interface GitRepositoryManager
Manages Git repositories for the Gerrit server process.Implementations of this interface should be a
Singleton
and registered in Guice so they are globally available within the server environment.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description org.eclipse.jgit.lib.Repository
createRepository(Project.NameKey name)
Create (and open) a repository by name.SortedSet<Project.NameKey>
list()
org.eclipse.jgit.lib.Repository
openRepository(Project.NameKey name)
Get (or open) a repository by name.
-
-
-
Method Detail
-
openRepository
org.eclipse.jgit.lib.Repository openRepository(Project.NameKey name) throws org.eclipse.jgit.errors.RepositoryNotFoundException, IOException
Get (or open) a repository by name.- Parameters:
name
- the repository name, relative to the base directory.- Returns:
- the cached Repository instance. Caller must call
close()
when done to decrement the resource handle. - Throws:
org.eclipse.jgit.errors.RepositoryNotFoundException
- the name does not denote an existing repository.IOException
- the name cannot be read as a repository.
-
createRepository
org.eclipse.jgit.lib.Repository createRepository(Project.NameKey name) throws RepositoryCaseMismatchException, org.eclipse.jgit.errors.RepositoryNotFoundException, IOException
Create (and open) a repository by name.- Parameters:
name
- the repository name, relative to the base directory.- Returns:
- the cached Repository instance. Caller must call
close()
when done to decrement the resource handle. - Throws:
RepositoryCaseMismatchException
- the name collides with an existing repository name, but only in case of a character within the name.org.eclipse.jgit.errors.RepositoryNotFoundException
- the name is invalid.IOException
- the repository cannot be created.
-
list
SortedSet<Project.NameKey> list()
- Returns:
- set of all known projects, sorted by natural NameKey order.
-
-