Package org.apache.subversion.javahl
Class SVNRepos
- java.lang.Object
-
- org.apache.subversion.javahl.SVNRepos
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.apache.subversion.javahl.ISVNRepos
ISVNRepos.MessageReceiver
-
-
Constructor Summary
Constructors Constructor Description SVNRepos()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
cancelOperation()
cancel the active operationvoid
create(java.io.File path, boolean disableFsyncCommit, boolean keepLog, java.io.File configPath, java.lang.String fstype)
create a subversion repository.void
deltify(java.io.File path, Revision start, Revision end)
deltify the revisions in the repositoryvoid
dispose()
release the native peer (should not depend on finalize)void
dump(java.io.File path, java.io.OutputStream dataOut, Revision start, Revision end, boolean incremental, boolean useDeltas, ReposNotifyCallback callback)
dump the data in a repositoryvoid
freeze(ReposFreezeAction action, java.io.File... paths)
Take an exclusive lock on each of the listed repositories to prevent commits; then, while holding all the locks, call the action.invoke().Version
getVersion()
void
hotcopy(java.io.File path, java.io.File targetPath, boolean cleanLogs)
void
hotcopy(java.io.File path, java.io.File targetPath, boolean cleanLogs, boolean incremental)
make a hot copy of the repositoryvoid
listDBLogs(java.io.File path, ISVNRepos.MessageReceiver receiver)
list all logfiles (BDB) in use or not)void
listUnusedDBLogs(java.io.File path, ISVNRepos.MessageReceiver receiver)
list unused logfilesvoid
load(java.io.File path, java.io.InputStream dataInput, boolean ignoreUUID, boolean forceUUID, boolean usePreCommitHook, boolean usePostCommitHook, java.lang.String relativePath, ReposNotifyCallback callback)
load the data of a dump into a repositoryvoid
load(java.io.File path, java.io.InputStream dataInput, Revision start, Revision end, boolean ignoreUUID, boolean forceUUID, boolean usePreCommitHook, boolean usePostCommitHook, java.lang.String relativePath, ReposNotifyCallback callback)
load the data of a dump into a repositoryjava.util.Set<Lock>
lslocks(java.io.File path, Depth depth)
list all locks in the repositoryvoid
lstxns(java.io.File path, ISVNRepos.MessageReceiver receiver)
list all open transactions in a repositoryvoid
pack(java.io.File path, ReposNotifyCallback callback)
pack the repositorylong
recover(java.io.File path, ReposNotifyCallback callback)
recover the filesystem backend of a repositoryvoid
rmlocks(java.io.File path, java.lang.String[] locks)
remove multiple locks from the repositoryvoid
rmtxns(java.io.File path, java.lang.String[] transactions)
remove open transaction in a repositoryvoid
setRevProp(java.io.File path, Revision rev, java.lang.String propName, java.lang.String propValue, boolean usePreRevPropChangeHook, boolean usePostRevPropChangeHook)
Change the value of the revision propertypropName
topropValue
.void
upgrade(java.io.File path, ReposNotifyCallback callback)
upgrade the repository formatvoid
verify(java.io.File path, Revision start, Revision end, ReposNotifyCallback callback)
Verify the repository atpath
between revisionsstart
andend
.
-
-
-
Method Detail
-
dispose
public void dispose()
Description copied from interface:ISVNRepos
release the native peer (should not depend on finalize)
-
getVersion
public Version getVersion()
- Specified by:
getVersion
in interfaceISVNRepos
- Returns:
- Version information about the underlying native libraries.
-
create
public void create(java.io.File path, boolean disableFsyncCommit, boolean keepLog, java.io.File configPath, java.lang.String fstype) throws ClientException
Description copied from interface:ISVNRepos
create a subversion repository.- Specified by:
create
in interfaceISVNRepos
- Parameters:
path
- the path where the repository will been created.disableFsyncCommit
- disable to fsync at the commit (BDB).keepLog
- keep the log files (BDB).configPath
- optional path for user configuration files.fstype
- the type of the filesystem (BDB or FSFS)- Throws:
ClientException
- throw in case of problem
-
deltify
public void deltify(java.io.File path, Revision start, Revision end) throws ClientException
Description copied from interface:ISVNRepos
deltify the revisions in the repository- Specified by:
deltify
in interfaceISVNRepos
- Parameters:
path
- the path to the repositorystart
- start revisionend
- end revision- Throws:
ClientException
- throw in case of problem
-
dump
public void dump(java.io.File path, java.io.OutputStream dataOut, Revision start, Revision end, boolean incremental, boolean useDeltas, ReposNotifyCallback callback) throws ClientException
Description copied from interface:ISVNRepos
dump the data in a repository- Specified by:
dump
in interfaceISVNRepos
- Parameters:
path
- the path to the repositorydataOut
- the data will be outputed herestart
- the first revision to be dumpedend
- the last revision to be dumpedincremental
- the dump will be incremantaluseDeltas
- the dump will contain deltas between nodescallback
- the callback to recieve notifications- Throws:
ClientException
- throw in case of problem
-
hotcopy
public void hotcopy(java.io.File path, java.io.File targetPath, boolean cleanLogs) throws ClientException
- Specified by:
hotcopy
in interfaceISVNRepos
- Throws:
ClientException
-
listDBLogs
public void listDBLogs(java.io.File path, ISVNRepos.MessageReceiver receiver) throws ClientException
Description copied from interface:ISVNRepos
list all logfiles (BDB) in use or not)- Specified by:
listDBLogs
in interfaceISVNRepos
- Parameters:
path
- the path to the repositoryreceiver
- interface to receive the logfile names- Throws:
ClientException
- throw in case of problem
-
listUnusedDBLogs
public void listUnusedDBLogs(java.io.File path, ISVNRepos.MessageReceiver receiver) throws ClientException
Description copied from interface:ISVNRepos
list unused logfiles- Specified by:
listUnusedDBLogs
in interfaceISVNRepos
- Parameters:
path
- the path to the repositoryreceiver
- interface to receive the logfile names- Throws:
ClientException
- throw in case of problem
-
load
public void load(java.io.File path, java.io.InputStream dataInput, boolean ignoreUUID, boolean forceUUID, boolean usePreCommitHook, boolean usePostCommitHook, java.lang.String relativePath, ReposNotifyCallback callback) throws ClientException
Description copied from interface:ISVNRepos
load the data of a dump into a repository- Specified by:
load
in interfaceISVNRepos
- Parameters:
path
- the path to the repositorydataInput
- the data input sourceignoreUUID
- ignore any UUID found in the input streamforceUUID
- set the repository UUID to any found in the streamusePreCommitHook
- use the pre-commit hook when processing commitsusePostCommitHook
- use the post-commit hook when processing commitsrelativePath
- the directory in the repository, where the data in put optional.callback
- the target for processing messages- Throws:
ClientException
- throw in case of problem
-
lstxns
public void lstxns(java.io.File path, ISVNRepos.MessageReceiver receiver) throws ClientException
Description copied from interface:ISVNRepos
list all open transactions in a repository- Specified by:
lstxns
in interfaceISVNRepos
- Parameters:
path
- the path to the repositoryreceiver
- receives one transaction name per call- Throws:
ClientException
- throw in case of problem
-
recover
public long recover(java.io.File path, ReposNotifyCallback callback) throws ClientException
Description copied from interface:ISVNRepos
recover the filesystem backend of a repository- Specified by:
recover
in interfaceISVNRepos
- Parameters:
path
- the path to the repository- Returns:
- youngest revision
- Throws:
ClientException
- throw in case of problem
-
rmtxns
public void rmtxns(java.io.File path, java.lang.String[] transactions) throws ClientException
Description copied from interface:ISVNRepos
remove open transaction in a repository- Specified by:
rmtxns
in interfaceISVNRepos
- Parameters:
path
- the path to the repositorytransactions
- the transactions to be removed- Throws:
ClientException
- throw in case of problem
-
setRevProp
public void setRevProp(java.io.File path, Revision rev, java.lang.String propName, java.lang.String propValue, boolean usePreRevPropChangeHook, boolean usePostRevPropChangeHook) throws SubversionException
Description copied from interface:ISVNRepos
Change the value of the revision propertypropName
topropValue
. By default, does not run pre-/post-revprop-change hook scripts.- Specified by:
setRevProp
in interfaceISVNRepos
- Parameters:
path
- The path to the repository.rev
- The revision for which to change a property value.propName
- The name of the property to change.propValue
- The new value to set for the property.usePreRevPropChangeHook
- Whether to run the pre-revprop-change hook script.usePostRevPropChangeHook
- Whether to run the post-revprop-change hook script.- Throws:
SubversionException
- If a problem occurs.
-
verify
public void verify(java.io.File path, Revision start, Revision end, ReposNotifyCallback callback) throws ClientException
Description copied from interface:ISVNRepos
Verify the repository atpath
between revisionsstart
andend
.- Specified by:
verify
in interfaceISVNRepos
- Parameters:
path
- the path to the repositorystart
- the first revisionend
- the last revisioncallback
- the callback to recieve notifications- Throws:
ClientException
- If an error occurred.
-
lslocks
public java.util.Set<Lock> lslocks(java.io.File path, Depth depth) throws ClientException
Description copied from interface:ISVNRepos
list all locks in the repository- Specified by:
lslocks
in interfaceISVNRepos
- Parameters:
path
- the path to the repositorydepth
- the depth to recurse- Throws:
ClientException
- throw in case of problem
-
rmlocks
public void rmlocks(java.io.File path, java.lang.String[] locks) throws ClientException
Description copied from interface:ISVNRepos
remove multiple locks from the repository- Specified by:
rmlocks
in interfaceISVNRepos
- Parameters:
path
- the path to the repositorylocks
- the name of the locked items- Throws:
ClientException
- throw in case of problem
-
upgrade
public void upgrade(java.io.File path, ReposNotifyCallback callback) throws ClientException
Description copied from interface:ISVNRepos
upgrade the repository format- Specified by:
upgrade
in interfaceISVNRepos
- Parameters:
path
- the path to the repositorycallback
- for notification- Throws:
ClientException
- throw in case of problem
-
pack
public void pack(java.io.File path, ReposNotifyCallback callback) throws ClientException
Description copied from interface:ISVNRepos
pack the repository- Specified by:
pack
in interfaceISVNRepos
- Parameters:
path
- the path to the repositorycallback
- for notification- Throws:
ClientException
- throw in case of problem
-
cancelOperation
public void cancelOperation() throws ClientException
Description copied from interface:ISVNRepos
cancel the active operation- Specified by:
cancelOperation
in interfaceISVNRepos
- Throws:
ClientException
-
hotcopy
public void hotcopy(java.io.File path, java.io.File targetPath, boolean cleanLogs, boolean incremental) throws ClientException
Description copied from interface:ISVNRepos
make a hot copy of the repository- Specified by:
hotcopy
in interfaceISVNRepos
- Parameters:
path
- the path to the source repositorytargetPath
- the path to the target repositorycleanLogs
- clean the unused log files in the source repository- Throws:
ClientException
- throw in case of problem
-
load
public void load(java.io.File path, java.io.InputStream dataInput, Revision start, Revision end, boolean ignoreUUID, boolean forceUUID, boolean usePreCommitHook, boolean usePostCommitHook, java.lang.String relativePath, ReposNotifyCallback callback) throws ClientException
Description copied from interface:ISVNRepos
load the data of a dump into a repository- Specified by:
load
in interfaceISVNRepos
- Parameters:
path
- the path to the repositorydataInput
- the data input sourcestart
- the first revision to loadend
- the last revision to loadignoreUUID
- ignore any UUID found in the input streamforceUUID
- set the repository UUID to any found in the streamusePreCommitHook
- use the pre-commit hook when processing commitsusePostCommitHook
- use the post-commit hook when processing commitsrelativePath
- the directory in the repository, where the data in put optional.callback
- the target for processing messages- Throws:
ClientException
- throw in case of problem
-
freeze
public void freeze(ReposFreezeAction action, java.io.File... paths) throws ClientException
Description copied from interface:ISVNRepos
Take an exclusive lock on each of the listed repositories to prevent commits; then, while holding all the locks, call the action.invoke(). The repositories may or may not be readable by Subversion while frozen, depending on implementation details of the repository's filesystem backend. Repositories are locked in the listed order.- Specified by:
freeze
in interfaceISVNRepos
- Parameters:
action
- describes the action to performpaths
- the set of repository paths- Throws:
ClientException
-
-