public class FileRepository extends AbstractRepository
RepositorySpi.ValidateHashResult
Constructor and Description |
---|
FileRepository() |
FileRepository(GitSystem git) |
Modifier and Type | Method and Description |
---|---|
java.lang.String |
addBlob(java.io.InputStream is)
Adds a path to the repository.
|
java.lang.String |
addBlob(java.io.InputStream is,
long length)
Adds a path to the repository.
|
java.lang.String |
addCommit(GitCommit commit)
Adds a git commit to the repository
|
java.lang.String |
addTree(GitTree tree)
Adds a git tree to the repository
|
void |
checkForUpdate(boolean isExact)
Updates the repository
|
boolean |
exists(java.lang.String hash)
Returns true if the file exists.
|
void |
expandToPath(java.lang.String contentHash,
Path path)
Expands the repository to the filesystem.
|
java.lang.String |
getRepositoryRootHash()
Returns the hash stored in the git tag
|
GitType |
getType(java.lang.String sha1)
Returns true if the file is a blob.
|
boolean |
isActive() |
java.io.InputStream |
openBlob(java.lang.String sha1)
Opens a stream to a blob
|
java.io.InputStream |
openRawGitFile(java.lang.String sha1)
Opens a stream to the raw git file.
|
boolean |
putTag(java.lang.String tagName,
java.lang.String contentHash,
java.util.Map<java.lang.String,java.lang.String> commitMetaData)
Adds a tag
|
GitCommit |
readCommit(java.lang.String sha1)
Reads a git commit from the repository
|
GitTree |
readTree(java.lang.String sha1)
Reads a git tree from the repository
|
boolean |
removeTag(java.lang.String tagName,
java.util.Map<java.lang.String,java.lang.String> commitMetaData)
Removes a tag
|
void |
setRepositoryRootHash(java.lang.String sha1)
Sets the hash stored in the git tag
|
void |
start()
Start the repository
|
void |
validateRawGitFile(java.lang.String sha1)
Writes the git file from the StreamInput
|
void |
writeBlobToStream(java.lang.String blobHash,
java.io.OutputStream os)
Writes the contents to a stream.
|
void |
writeRawGitFile(java.lang.String sha1,
java.io.InputStream is)
Writes the git file from the StreamInput
|
addArchive, addArchive, addArchive, addListener, addPath, addTagData, checkForUpdate, commitArchive, commitArchive, commitPath, getCommitHash, getRepositoryTag, getTagContentHash, getTagHash, getTagMap, getTagSequence, init, isBlob, isCommit, isTree, loadLocalRoot, removeListener, removeTag, removeTagData, setTagMap, stop, toString, update, updateLoad, updateRepositoryRoot, updateTagMap, validateHash, validateRawHash
public FileRepository()
public FileRepository(GitSystem git)
public void checkForUpdate(boolean isExact)
checkForUpdate
in interface RepositorySpi
checkForUpdate
in class AbstractRepository
public boolean putTag(java.lang.String tagName, java.lang.String contentHash, java.util.Map<java.lang.String,java.lang.String> commitMetaData)
putTag
in interface RepositorySpi
putTag
in class AbstractRepository
tagName
- the symbolic tag for the repositorycontentHash
- the sha1 hash of the tag's contentcommitMessage
- user's message for the commitcommitMetaData
- additional commit metadatapublic boolean removeTag(java.lang.String tagName, java.util.Map<java.lang.String,java.lang.String> commitMetaData)
removeTag
in interface RepositorySpi
removeTag
in class AbstractRepository
tagName
- the symbolic tag for the repositorycommitMessage
- user's message for the commitcommitMetaData
- additional metadatapublic java.lang.String getRepositoryRootHash()
getRepositoryRootHash
in interface RepositorySpi
getRepositoryRootHash
in class AbstractRepository
public void setRepositoryRootHash(java.lang.String sha1)
setRepositoryRootHash
in interface RepositorySpi
setRepositoryRootHash
in class AbstractRepository
sha1
- the hash of the new .git Commit for the
repository.public boolean exists(java.lang.String hash)
exists
in interface RepositorySpi
exists
in class AbstractRepository
public GitType getType(java.lang.String sha1)
getType
in interface RepositorySpi
getType
in class AbstractRepository
public java.lang.String addBlob(java.io.InputStream is)
is
- the blob's input streampublic java.lang.String addBlob(java.io.InputStream is, long length)
addBlob
in interface RepositorySpi
addBlob
in class AbstractRepository
is
- the blob's input streamlength
- the blob's lengthpublic java.io.InputStream openBlob(java.lang.String sha1) throws java.io.IOException
openBlob
in interface RepositorySpi
openBlob
in class AbstractRepository
java.io.IOException
public java.io.InputStream openRawGitFile(java.lang.String sha1) throws java.io.IOException
openRawGitFile
in interface RepositorySpi
openRawGitFile
in class AbstractRepository
java.io.IOException
public GitTree readTree(java.lang.String sha1) throws java.io.IOException
readTree
in interface RepositorySpi
readTree
in class AbstractRepository
java.io.IOException
public java.lang.String addTree(GitTree tree) throws java.io.IOException
addTree
in interface RepositorySpi
addTree
in class AbstractRepository
java.io.IOException
public GitCommit readCommit(java.lang.String sha1) throws java.io.IOException
readCommit
in interface RepositorySpi
readCommit
in class AbstractRepository
java.io.IOException
public java.lang.String addCommit(GitCommit commit) throws java.io.IOException
addCommit
in interface RepositorySpi
addCommit
in class AbstractRepository
java.io.IOException
public void writeRawGitFile(java.lang.String sha1, java.io.InputStream is) throws java.io.IOException
writeRawGitFile
in interface RepositorySpi
writeRawGitFile
in class AbstractRepository
sha1
- the file hashis
- the raw contents for the new filejava.io.IOException
public void validateRawGitFile(java.lang.String sha1)
validateRawGitFile
in interface RepositorySpi
validateRawGitFile
in class AbstractRepository
sha1
- the file hashis
- the raw contents for the new filepublic void writeBlobToStream(java.lang.String blobHash, java.io.OutputStream os)
writeBlobToStream
in interface RepositorySpi
writeBlobToStream
in class AbstractRepository
blobHash
- the hash of the source blobos
- the OutputStream to write topublic boolean isActive()
public void start()
AbstractRepository
start
in class AbstractRepository
public void expandToPath(java.lang.String contentHash, Path path)
expandToPath
in interface RepositorySpi
expandToPath
in class AbstractRepository