Interface ISVNRepos

  • All Known Implementing Classes:
    SVNRepos

    public interface ISVNRepos
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Interface Description
      static interface  ISVNRepos.MessageReceiver
      interface to receive the messages
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static java.lang.String BDB
      Filesystem in a Berkeley DB
      static java.lang.String FSFS
      Filesystem in the filesystem
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      void cancelOperation()
      cancel the active operation
      void 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 repository
      void 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 repository
      void 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 repository
      void 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 logfiles
      void 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 repository
      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)
      load the data of a dump into a repository
      java.util.Set<Lock> lslocks​(java.io.File path, Depth depth)
      list all locks in the repository
      void lstxns​(java.io.File path, ISVNRepos.MessageReceiver receiver)
      list all open transactions in a repository
      void pack​(java.io.File path, ReposNotifyCallback callback)
      pack the repository
      long recover​(java.io.File path, ReposNotifyCallback callback)
      recover the filesystem backend of a repository
      void rmlocks​(java.io.File path, java.lang.String[] locks)
      remove multiple locks from the repository
      void rmtxns​(java.io.File path, java.lang.String[] transactions)
      remove open transaction in a repository
      void 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 property propName to propValue.
      void upgrade​(java.io.File path, ReposNotifyCallback callback)
      upgrade the repository format
      void verify​(java.io.File path, Revision start, Revision end, ReposNotifyCallback callback)
      Verify the repository at path between revisions start and end.
    • Method Detail

      • dispose

        void dispose()
        release the native peer (should not depend on finalize)
      • getVersion

        Version getVersion()
        Returns:
        Version information about the underlying native libraries.
      • create

        void create​(java.io.File path,
                    boolean disableFsyncCommit,
                    boolean keepLog,
                    java.io.File configPath,
                    java.lang.String fstype)
             throws ClientException
        create a subversion repository.
        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

        void deltify​(java.io.File path,
                     Revision start,
                     Revision end)
              throws ClientException
        deltify the revisions in the repository
        Parameters:
        path - the path to the repository
        start - start revision
        end - end revision
        Throws:
        ClientException - throw in case of problem
      • dump

        void dump​(java.io.File path,
                  java.io.OutputStream dataOut,
                  Revision start,
                  Revision end,
                  boolean incremental,
                  boolean useDeltas,
                  ReposNotifyCallback callback)
           throws ClientException
        dump the data in a repository
        Parameters:
        path - the path to the repository
        dataOut - the data will be outputed here
        start - the first revision to be dumped
        end - the last revision to be dumped
        incremental - the dump will be incremantal
        useDeltas - the dump will contain deltas between nodes
        callback - the callback to recieve notifications
        Throws:
        ClientException - throw in case of problem
      • hotcopy

        void hotcopy​(java.io.File path,
                     java.io.File targetPath,
                     boolean cleanLogs,
                     boolean incremental)
              throws ClientException
        make a hot copy of the repository
        Parameters:
        path - the path to the source repository
        targetPath - the path to the target repository
        cleanLogs - clean the unused log files in the source repository
        Throws:
        ClientException - throw in case of problem
      • listDBLogs

        void listDBLogs​(java.io.File path,
                        ISVNRepos.MessageReceiver receiver)
                 throws ClientException
        list all logfiles (BDB) in use or not)
        Parameters:
        path - the path to the repository
        receiver - interface to receive the logfile names
        Throws:
        ClientException - throw in case of problem
      • listUnusedDBLogs

        void listUnusedDBLogs​(java.io.File path,
                              ISVNRepos.MessageReceiver receiver)
                       throws ClientException
        list unused logfiles
        Parameters:
        path - the path to the repository
        receiver - interface to receive the logfile names
        Throws:
        ClientException - throw in case of problem
      • load

        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
        load the data of a dump into a repository
        Parameters:
        path - the path to the repository
        dataInput - the data input source
        start - the first revision to load
        end - the last revision to load
        ignoreUUID - ignore any UUID found in the input stream
        forceUUID - set the repository UUID to any found in the stream
        usePreCommitHook - use the pre-commit hook when processing commits
        usePostCommitHook - use the post-commit hook when processing commits
        relativePath - the directory in the repository, where the data in put optional.
        callback - the target for processing messages
        Throws:
        ClientException - throw in case of problem
        Since:
        1.8
      • load

        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
        load the data of a dump into a repository
        Parameters:
        path - the path to the repository
        dataInput - the data input source
        ignoreUUID - ignore any UUID found in the input stream
        forceUUID - set the repository UUID to any found in the stream
        usePreCommitHook - use the pre-commit hook when processing commits
        usePostCommitHook - use the post-commit hook when processing commits
        relativePath - 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

        void lstxns​(java.io.File path,
                    ISVNRepos.MessageReceiver receiver)
             throws ClientException
        list all open transactions in a repository
        Parameters:
        path - the path to the repository
        receiver - receives one transaction name per call
        Throws:
        ClientException - throw in case of problem
      • recover

        long recover​(java.io.File path,
                     ReposNotifyCallback callback)
              throws ClientException
        recover the filesystem backend of a repository
        Parameters:
        path - the path to the repository
        Returns:
        youngest revision
        Throws:
        ClientException - throw in case of problem
      • freeze

        void freeze​(ReposFreezeAction action,
                    java.io.File... paths)
             throws ClientException
        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.
        Parameters:
        action - describes the action to perform
        paths - the set of repository paths
        Throws:
        ClientException
        Since:
        1.8
      • rmtxns

        void rmtxns​(java.io.File path,
                    java.lang.String[] transactions)
             throws ClientException
        remove open transaction in a repository
        Parameters:
        path - the path to the repository
        transactions - the transactions to be removed
        Throws:
        ClientException - throw in case of problem
      • setRevProp

        void setRevProp​(java.io.File path,
                        Revision rev,
                        java.lang.String propName,
                        java.lang.String propValue,
                        boolean usePreRevPropChangeHook,
                        boolean usePostRevPropChangeHook)
                 throws SubversionException
        Change the value of the revision property propName to propValue. By default, does not run pre-/post-revprop-change hook scripts.
        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

        void verify​(java.io.File path,
                    Revision start,
                    Revision end,
                    ReposNotifyCallback callback)
             throws ClientException
        Verify the repository at path between revisions start and end.
        Parameters:
        path - the path to the repository
        start - the first revision
        end - the last revision
        callback - the callback to recieve notifications
        Throws:
        ClientException - If an error occurred.
      • lslocks

        java.util.Set<Lock> lslocks​(java.io.File path,
                                    Depth depth)
                             throws ClientException
        list all locks in the repository
        Parameters:
        path - the path to the repository
        depth - the depth to recurse
        Throws:
        ClientException - throw in case of problem
      • rmlocks

        void rmlocks​(java.io.File path,
                     java.lang.String[] locks)
              throws ClientException
        remove multiple locks from the repository
        Parameters:
        path - the path to the repository
        locks - the name of the locked items
        Throws:
        ClientException - throw in case of problem
      • upgrade

        void upgrade​(java.io.File path,
                     ReposNotifyCallback callback)
              throws ClientException
        upgrade the repository format
        Parameters:
        path - the path to the repository
        callback - for notification
        Throws:
        ClientException - throw in case of problem