Interface ISVNClient

  • All Known Implementing Classes:
    SVNClient, SVNClientImpl

    public interface ISVNClient
    This interface is the commom interface for all subversion operations. It is implemented by SVNClient
    Since:
    1.7
    • Method Summary

      All Methods Instance Methods Abstract Methods Deprecated Methods 
      Modifier and Type Method Description
      void add​(java.lang.String path, Depth depth, boolean force, boolean noIgnores, boolean addParents)
      Adds a file to the repository.
      void add​(java.lang.String path, Depth depth, boolean force, boolean noIgnores, boolean noAutoProps, boolean addParents)
      Adds a file to the repository.
      void addToChangelist​(java.util.Set<java.lang.String> paths, java.lang.String changelist, Depth depth, java.util.Collection<java.lang.String> changelists)
      Add paths to a changelist
      void blame​(java.lang.String path, Revision pegRevision, Revision revisionStart, Revision revisionEnd, boolean ignoreMimeType, boolean includeMergedRevisions, BlameCallback callback)
      Retrieve the content together with the author, the revision and the date of the last change of each line
      void cancelOperation()
      cancel the active operation
      long checkout​(java.lang.String moduleName, java.lang.String destPath, Revision revision, Revision pegRevision, Depth depth, boolean ignoreExternals, boolean allowUnverObstructions)
      Executes a revision checkout.
      void cleanup​(java.lang.String path)
      Recursively cleans up a local directory, finishing any incomplete operations, removing lockfiles, etc.
      void commit​(java.util.Set<java.lang.String> path, Depth depth, boolean noUnlock, boolean keepChangelist, java.util.Collection<java.lang.String> changelists, java.util.Map<java.lang.String,​java.lang.String> revpropTable, CommitMessageCallback handler, CommitCallback callback)
      Commits changes to the repository.
      void copy​(java.util.List<CopySource> sources, java.lang.String destPath, boolean copyAsChild, boolean makeParents, boolean ignoreExternals, java.util.Map<java.lang.String,​java.lang.String> revpropTable, CommitMessageCallback handler, CommitCallback callback)
      Copy versioned paths with the history preserved.
      void diff​(java.lang.String target1, Revision revision1, java.lang.String target2, Revision revision2, java.lang.String relativeToDir, java.io.OutputStream outStream, Depth depth, java.util.Collection<java.lang.String> changelists, boolean ignoreAncestry, boolean noDiffDeleted, boolean force, boolean copiesAsAdds, boolean ignoreProps, boolean propsOnly)
      Display the differences between two paths
      void diff​(java.lang.String target1, Revision revision1, java.lang.String target2, Revision revision2, java.lang.String relativeToDir, java.io.OutputStream outStream, Depth depth, java.util.Collection<java.lang.String> changelists, boolean ignoreAncestry, boolean noDiffDeleted, boolean force, boolean copiesAsAdds, boolean ignoreProps, boolean propsOnly, DiffOptions options)
      Display the differences between two paths
      void diff​(java.lang.String target1, Revision revision1, java.lang.String target2, Revision revision2, java.lang.String relativeToDir, java.lang.String outFileName, Depth depth, java.util.Collection<java.lang.String> changelists, boolean ignoreAncestry, boolean noDiffDeleted, boolean force, boolean copiesAsAdds)  
      void diff​(java.lang.String target1, Revision revision1, java.lang.String target2, Revision revision2, java.lang.String relativeToDir, java.lang.String outFileName, Depth depth, java.util.Collection<java.lang.String> changelists, boolean ignoreAncestry, boolean noDiffDeleted, boolean force, boolean copiesAsAdds, boolean ignoreProps, boolean propsOnly, DiffOptions options)  
      void diff​(java.lang.String target, Revision pegRevision, Revision startRevision, Revision endRevision, java.lang.String relativeToDir, java.io.OutputStream outStream, Depth depth, java.util.Collection<java.lang.String> changelists, boolean ignoreAncestry, boolean noDiffDeleted, boolean force, boolean copiesAsAdds, boolean ignoreProps, boolean propsOnly)
      Display the differences between two paths.
      void diff​(java.lang.String target, Revision pegRevision, Revision startRevision, Revision endRevision, java.lang.String relativeToDir, java.io.OutputStream outStream, Depth depth, java.util.Collection<java.lang.String> changelists, boolean ignoreAncestry, boolean noDiffDeleted, boolean force, boolean copiesAsAdds, boolean ignoreProps, boolean propsOnly, DiffOptions options)
      Display the differences between two paths.
      void diff​(java.lang.String target, Revision pegRevision, Revision startRevision, Revision endRevision, java.lang.String relativeToDir, java.lang.String outFileName, Depth depth, java.util.Collection<java.lang.String> changelists, boolean ignoreAncestry, boolean noDiffDeleted, boolean force, boolean copiesAsAdds)  
      void diff​(java.lang.String target, Revision pegRevision, Revision startRevision, Revision endRevision, java.lang.String relativeToDir, java.lang.String outFileName, Depth depth, java.util.Collection<java.lang.String> changelists, boolean ignoreAncestry, boolean noDiffDeleted, boolean force, boolean copiesAsAdds, boolean ignoreProps, boolean propsOnly, DiffOptions options)  
      void diffSummarize​(java.lang.String target1, Revision revision1, java.lang.String target2, Revision revision2, Depth depth, java.util.Collection<java.lang.String> changelists, boolean ignoreAncestry, DiffSummaryCallback receiver)
      Produce a diff summary which lists the items changed between path and revision pairs.
      void diffSummarize​(java.lang.String target, Revision pegRevision, Revision startRevision, Revision endRevision, Depth depth, java.util.Collection<java.lang.String> changelists, boolean ignoreAncestry, DiffSummaryCallback receiver)
      Produce a diff summary which lists the items changed between path and revision pairs.
      void dispose()
      release the native peer (should not depend on finalize)
      long doExport​(java.lang.String srcPath, java.lang.String destPath, Revision revision, Revision pegRevision, boolean force, boolean ignoreExternals, Depth depth, java.lang.String nativeEOL)
      Exports the contents of either a subversion repository into a 'clean' directory (meaning a directory with no administrative directories).
      void doImport​(java.lang.String path, java.lang.String url, Depth depth, boolean noIgnore, boolean noAutoProps, boolean ignoreUnknownNodeTypes, java.util.Map<java.lang.String,​java.lang.String> revpropTable, ImportFilterCallback importFilterCallback, CommitMessageCallback messageHandler, CommitCallback commitCallback)
      Import a file or directory into a repository directory at head.
      void doImport​(java.lang.String path, java.lang.String url, Depth depth, boolean noIgnore, boolean ignoreUnknownNodeTypes, java.util.Map<java.lang.String,​java.lang.String> revpropTable, CommitMessageCallback handler, CommitCallback callback)
      Import a file or directory into a repository directory at head.
      long doSwitch​(java.lang.String path, java.lang.String url, Revision revision, Revision pegRevision, Depth depth, boolean depthIsSticky, boolean ignoreExternals, boolean allowUnverObstructions, boolean ignoreAncestry)
      Update local copy to mirror a new url.
      byte[] fileContent​(java.lang.String path, Revision revision, Revision pegRevision)
      Retrieve the content of a file
      java.lang.String getAdminDirectoryName()  
      void getChangelists​(java.lang.String rootPath, java.util.Collection<java.lang.String> changelists, Depth depth, ChangelistCallback callback)
      Recursively get the paths which belong to a changelist
      java.lang.String getConfigDirectory()
      Get the configuration directory
      Mergeinfo getMergeinfo​(java.lang.String path, Revision pegRevision)
      Get mergeinfo for path at pegRevision.
      void getMergeinfoLog​(Mergeinfo.LogKind kind, java.lang.String pathOrUrl, Revision pegRevision, java.lang.String mergeSourceUrl, Revision srcPegRevision, boolean discoverChangedPaths, Depth depth, java.util.Set<java.lang.String> revProps, LogMessageCallback callback)
      Retrieve either merged or eligible-to-be-merged revisions.
      void getMergeinfoLog​(Mergeinfo.LogKind kind, java.lang.String pathOrUrl, Revision pegRevision, java.lang.String mergeSourceUrl, Revision srcPegRevision, Revision srcStartRevision, Revision srcEndRevision, boolean discoverChangedPaths, Depth depth, java.util.Set<java.lang.String> revProps, LogMessageCallback callback)
      Retrieve either merged or eligible-to-be-merged revisions.
      Version getVersion()  
      VersionExtended getVersionExtended​(boolean verbose)  
      java.lang.String getVersionInfo​(java.lang.String path, java.lang.String trailUrl, boolean lastChanged)
      Produce a compact "version number" for a working copy
      void info2​(java.lang.String pathOrUrl, Revision revision, Revision pegRevision, Depth depth, java.util.Collection<java.lang.String> changelists, InfoCallback callback)
      Retrieve information about repository or working copy items.
      boolean isAdminDirectory​(java.lang.String name)  
      void list​(java.lang.String url, Revision revision, Revision pegRevision, Depth depth, int direntFields, boolean fetchLocks, ListCallback callback)
      Lists the directory entries of a url on the server.
      void lock​(java.util.Set<java.lang.String> path, java.lang.String comment, boolean force)
      Lock a working copy item
      void logMessages​(java.lang.String path, Revision pegRevision, java.util.List<RevisionRange> ranges, boolean stopOnCopy, boolean discoverPath, boolean includeMergedRevisions, java.util.Set<java.lang.String> revProps, long limit, LogMessageCallback callback)
      Retrieve the log messages for an item.
      void merge​(java.lang.String path1, Revision revision1, java.lang.String path2, Revision revision2, java.lang.String localPath, boolean force, Depth depth, boolean ignoreAncestry, boolean dryRun, boolean recordOnly)
      Merge changes from two paths into a new local path.
      void merge​(java.lang.String path1, Revision revision1, java.lang.String path2, Revision revision2, java.lang.String localPath, boolean force, Depth depth, boolean ignoreMergeinfo, boolean diffIgnoreAncestry, boolean dryRun, boolean recordOnly)
      Merge changes from two paths into a new local path.
      void merge​(java.lang.String path, Revision pegRevision, java.util.List<RevisionRange> revisions, java.lang.String localPath, boolean force, Depth depth, boolean ignoreAncestry, boolean dryRun, boolean recordOnly)
      Merge set of revisions into a new local path.
      void merge​(java.lang.String path, Revision pegRevision, java.util.List<RevisionRange> revisions, java.lang.String localPath, boolean force, Depth depth, boolean ignoreMergeinfo, boolean diffIgnoreAncestry, boolean dryRun, boolean recordOnly)
      Merge set of revisions into a new local path.
      void mergeReintegrate​(java.lang.String path, Revision pegRevision, java.lang.String localPath, boolean dryRun)
      Deprecated.
      Will be removed in a future release
      void mkdir​(java.util.Set<java.lang.String> path, boolean makeParents, java.util.Map<java.lang.String,​java.lang.String> revpropTable, CommitMessageCallback handler, CommitCallback callback)
      Creates a directory directly in a repository or creates a directory on disk and schedules it for addition.
      void move​(java.util.Set<java.lang.String> srcPaths, java.lang.String destPath, boolean force, boolean moveAsChild, boolean makeParents, boolean metadataOnly, boolean allowMixRev, java.util.Map<java.lang.String,​java.lang.String> revpropTable, CommitMessageCallback handler, CommitCallback callback)
      Move or rename versioned paths.
      void move​(java.util.Set<java.lang.String> srcPaths, java.lang.String destPath, boolean force, boolean moveAsChild, boolean makeParents, java.util.Map<java.lang.String,​java.lang.String> revpropTable, CommitMessageCallback handler, CommitCallback callback)
      Deprecated.
      Provided for backward compatibility with 1.7.
      void notification2​(ClientNotifyCallback notify)
      Sets the notification callback used to send processing information back to the calling program.
      void password​(java.lang.String password)
      Sets the password used for authentication.
      void patch​(java.lang.String patchPath, java.lang.String targetPath, boolean dryRun, int stripCount, boolean reverse, boolean ignoreWhitespace, boolean removeTempfiles, PatchCallback callback)
      Apply a unidiff patch.
      void properties​(java.lang.String path, Revision revision, Revision pegRevision, Depth depth, java.util.Collection<java.lang.String> changelists, InheritedProplistCallback callback)
      Retrieves the properties of an item, including inherited properties.
      void properties​(java.lang.String path, Revision revision, Revision pegRevision, Depth depth, java.util.Collection<java.lang.String> changelists, ProplistCallback callback)
      Retrieves the properties of an item
      byte[] propertyGet​(java.lang.String path, java.lang.String name, Revision revision, Revision pegRevision)  
      byte[] propertyGet​(java.lang.String path, java.lang.String name, Revision revision, Revision pegRevision, java.util.Collection<java.lang.String> changelists)
      Retrieve one property of one item
      void propertySetLocal​(java.util.Set<java.lang.String> paths, java.lang.String name, byte[] value, Depth depth, java.util.Collection<java.lang.String> changelists, boolean force)
      Sets one property of an item with a String value
      void propertySetRemote​(java.lang.String path, long baseRev, java.lang.String name, byte[] value, CommitMessageCallback handler, boolean force, java.util.Map<java.lang.String,​java.lang.String> revpropTable, CommitCallback callback)  
      void relocate​(java.lang.String from, java.lang.String to, java.lang.String path, boolean ignoreExternals)
      Rewrite the url's in the working copy
      void remove​(java.util.Set<java.lang.String> path, boolean force, boolean keepLocal, java.util.Map<java.lang.String,​java.lang.String> revpropTable, CommitMessageCallback handler, CommitCallback callback)
      Sets a file for deletion.
      void removeFromChangelists​(java.util.Set<java.lang.String> paths, Depth depth, java.util.Collection<java.lang.String> changelists)
      Remove paths from a changelist
      void resolve​(java.lang.String path, Depth depth, ConflictResult.Choice conflictResult)
      Resolves the conflicted state on a WC path (or tree).
      void revert​(java.lang.String path, Depth depth, java.util.Collection<java.lang.String> changelists)
      Reverts a file to a pristine state.
      java.util.Map<java.lang.String,​byte[]> revProperties​(java.lang.String path, Revision rev)
      Retrieve all revsision properties of one item
      byte[] revProperty​(java.lang.String path, java.lang.String name, Revision rev)
      Retrieve one revsision property of one item
      void setConfigDirectory​(java.lang.String configDir)
      Set directory for the configuration information, taking the usual steps to ensure that Subversion's config file templates exist in the specified location..
      void setConflictResolver​(ConflictResolverCallback listener)
      Set the conflict resolution callback.
      void setProgressCallback​(ProgressCallback listener)
      Set the progress callback.
      void setPrompt​(UserPasswordCallback prompt)
      Register callback interface to supply username and password on demand.
      void setRevProperty​(java.lang.String path, java.lang.String name, Revision rev, java.lang.String value, java.lang.String originalValue, boolean force)
      set one revsision property of one item
      void status​(java.lang.String path, Depth depth, boolean onServer, boolean getAll, boolean noIgnore, boolean ignoreExternals, java.util.Collection<java.lang.String> changelists, StatusCallback callback)
      List a directory or file of the working copy.
      void streamFileContent​(java.lang.String path, Revision revision, Revision pegRevision, java.io.OutputStream stream)
      Write the file's content to the specified output stream.
      java.util.Set<java.lang.String> suggestMergeSources​(java.lang.String path, Revision pegRevision)
      Return an ordered list of suggested merge source URLs.
      void unlock​(java.util.Set<java.lang.String> path, boolean force)
      Unlock a working copy item
      long[] update​(java.util.Set<java.lang.String> path, Revision revision, Depth depth, boolean depthIsSticky, boolean makeParents, boolean ignoreExternals, boolean allowUnverObstructions)
      Updates the directories or files from repository
      void upgrade​(java.lang.String path)
      Recursively upgrade a working copy to a new metadata storage format.
      void username​(java.lang.String username)
      Sets the username used for authentication.
    • 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.
      • getVersionExtended

        VersionExtended getVersionExtended​(boolean verbose)
        Returns:
        Extended version information about the underlying native libraries and operating system.
      • isAdminDirectory

        boolean isAdminDirectory​(java.lang.String name)
        Parameters:
        name - The name of the directory to compare.
        Returns:
        Whether name is that of a working copy administrative directory.
      • status

        void status​(java.lang.String path,
                    Depth depth,
                    boolean onServer,
                    boolean getAll,
                    boolean noIgnore,
                    boolean ignoreExternals,
                    java.util.Collection<java.lang.String> changelists,
                    StatusCallback callback)
             throws ClientException
        List a directory or file of the working copy.
        Parameters:
        path - Path to explore.
        depth - How deep to recurse into subdirectories.
        onServer - Request status information from server.
        getAll - get status for uninteresting (unchanged) files.
        noIgnore - get status for normaly ignored files and directories.
        ignoreExternals - if externals are ignored during status
        changelists - changelists to filter by
        Throws:
        ClientException
      • list

        void list​(java.lang.String url,
                  Revision revision,
                  Revision pegRevision,
                  Depth depth,
                  int direntFields,
                  boolean fetchLocks,
                  ListCallback callback)
           throws ClientException
        Lists the directory entries of a url on the server.
        Parameters:
        url - the url to list
        revision - the revision to list
        pegRevision - the revision to interpret url
        depth - the depth to recurse into subdirectories
        direntFields - the fields to retrieve
        fetchLocks - whether to fetch lock information
        callback - the callback to receive the directory entries
        Throws:
        ClientException
      • username

        void username​(java.lang.String username)
        Sets the username used for authentication.
        Parameters:
        username - The username, ignored if the empty string. Set to the empty string to clear it.
        Throws:
        java.lang.IllegalArgumentException - If username is null.
        See Also:
        password(String)
      • password

        void password​(java.lang.String password)
        Sets the password used for authentication.
        Parameters:
        password - The password, ignored if the empty string. Set to the empty string to clear it.
        Throws:
        java.lang.IllegalArgumentException - If password is null.
        See Also:
        username(String)
      • setPrompt

        void setPrompt​(UserPasswordCallback prompt)
        Register callback interface to supply username and password on demand. This callback can also be used to provide theequivalent of the --no-auth-cache and --non-interactive arguments accepted by the command-line client.
        Parameters:
        prompt - the callback interface
      • logMessages

        void logMessages​(java.lang.String path,
                         Revision pegRevision,
                         java.util.List<RevisionRange> ranges,
                         boolean stopOnCopy,
                         boolean discoverPath,
                         boolean includeMergedRevisions,
                         java.util.Set<java.lang.String> revProps,
                         long limit,
                         LogMessageCallback callback)
                  throws ClientException
        Retrieve the log messages for an item.
        Parameters:
        path - path or url to get the log message for.
        pegRevision - revision to interpret path
        ranges - an array of revision ranges to show
        stopOnCopy - do not continue on copy operations
        discoverPath - returns the paths of the changed items in the returned objects
        includeMergedRevisions - include log messages for revisions which were merged.
        revProps - the revprops to retrieve
        limit - limit the number of log messages (if 0 or less no limit)
        callback - the object to receive the log messages
        Throws:
        ClientException
      • checkout

        long checkout​(java.lang.String moduleName,
                      java.lang.String destPath,
                      Revision revision,
                      Revision pegRevision,
                      Depth depth,
                      boolean ignoreExternals,
                      boolean allowUnverObstructions)
               throws ClientException
        Executes a revision checkout.
        Parameters:
        moduleName - name of the module to checkout.
        destPath - destination directory for checkout.
        revision - the revision to checkout.
        pegRevision - the peg revision to interpret the path
        depth - how deep to checkout files recursively.
        ignoreExternals - if externals are ignored during checkout
        allowUnverObstructions - allow unversioned paths that obstruct adds
        Throws:
        ClientException
      • notification2

        void notification2​(ClientNotifyCallback notify)
        Sets the notification callback used to send processing information back to the calling program.
        Parameters:
        notify - listener that the SVN library should call on many file operations.
      • setConflictResolver

        void setConflictResolver​(ConflictResolverCallback listener)
        Set the conflict resolution callback.
        Parameters:
        listener - The conflict resolution callback.
      • setProgressCallback

        void setProgressCallback​(ProgressCallback listener)
        Set the progress callback.
        Parameters:
        listener - The progress callback.
      • remove

        void remove​(java.util.Set<java.lang.String> path,
                    boolean force,
                    boolean keepLocal,
                    java.util.Map<java.lang.String,​java.lang.String> revpropTable,
                    CommitMessageCallback handler,
                    CommitCallback callback)
             throws ClientException
        Sets a file for deletion.
        Parameters:
        path - path or url to be deleted
        force - delete even when there are local modifications.
        keepLocal - only remove the paths from the repository.
        revpropTable - A string-to-string mapping of revision properties to values which will be set if this operation results in a commit.
        handler - the commit message callback
        Throws:
        ClientException
      • revert

        void revert​(java.lang.String path,
                    Depth depth,
                    java.util.Collection<java.lang.String> changelists)
             throws ClientException
        Reverts a file to a pristine state.
        Parameters:
        path - path of the file.
        depth - the depth to recurse into subdirectories
        changelists - changelists to filter by
        Throws:
        ClientException
      • add

        void add​(java.lang.String path,
                 Depth depth,
                 boolean force,
                 boolean noIgnores,
                 boolean addParents)
          throws ClientException
        Adds a file to the repository.
        Parameters:
        path - path to be added.
        depth - the depth to recurse into subdirectories
        force - if adding a directory and recurse true and path is a directory, all not already managed files are added.
        noIgnores - if false, don't add files or directories matching ignore patterns
        addParents - add any intermediate parents to the working copy
        Throws:
        ClientException
      • add

        void add​(java.lang.String path,
                 Depth depth,
                 boolean force,
                 boolean noIgnores,
                 boolean noAutoProps,
                 boolean addParents)
          throws ClientException
        Adds a file to the repository.
        Parameters:
        path - path to be added.
        depth - the depth to recurse into subdirectories
        force - if adding a directory and recurse true and path is a directory, all not already managed files are added.
        noIgnores - if false, don't add files or directories matching ignore patterns
        noAutoProps - if true, ignore any auto-props configuration
        addParents - add any intermediate parents to the working copy
        Throws:
        ClientException
        Since:
        1.8
      • update

        long[] update​(java.util.Set<java.lang.String> path,
                      Revision revision,
                      Depth depth,
                      boolean depthIsSticky,
                      boolean makeParents,
                      boolean ignoreExternals,
                      boolean allowUnverObstructions)
               throws ClientException
        Updates the directories or files from repository
        Parameters:
        path - array of target files.
        revision - the revision number to update. Revision.HEAD will update to the latest revision.
        depth - the depth to recursively update.
        depthIsSticky - if set, and depth is not Depth.unknown, then also set the ambient depth value to depth.
        ignoreExternals - if externals are ignored during update
        allowUnverObstructions - allow unversioned paths that obstruct adds
        Throws:
        ClientException
      • commit

        void commit​(java.util.Set<java.lang.String> path,
                    Depth depth,
                    boolean noUnlock,
                    boolean keepChangelist,
                    java.util.Collection<java.lang.String> changelists,
                    java.util.Map<java.lang.String,​java.lang.String> revpropTable,
                    CommitMessageCallback handler,
                    CommitCallback callback)
             throws ClientException
        Commits changes to the repository.
        Parameters:
        path - files to commit.
        depth - how deep to recurse in subdirectories
        noUnlock - do remove any locks
        keepChangelist - keep changelist associations after the commit.
        changelists - if non-null, filter paths using changelists
        handler - the commit message callback
        revpropTable - A string-to-string mapping of revision properties to values which will be set if this operation results in a commit.
        Throws:
        ClientException
      • copy

        void copy​(java.util.List<CopySource> sources,
                  java.lang.String destPath,
                  boolean copyAsChild,
                  boolean makeParents,
                  boolean ignoreExternals,
                  java.util.Map<java.lang.String,​java.lang.String> revpropTable,
                  CommitMessageCallback handler,
                  CommitCallback callback)
           throws ClientException
        Copy versioned paths with the history preserved.
        Parameters:
        sources - A list of CopySource objects.
        destPath - Destination path or URL.
        copyAsChild - Whether to copy srcPaths as children of destPath.
        makeParents - Whether to create intermediate parents
        ignoreExternals - Whether or not to process external definitions as part of this operation.
        revpropTable - A string-to-string mapping of revision properties to values which will be set if this operation results in a commit.
        handler - the commit message callback, may be null if destPath is not a URL
        Throws:
        ClientException - If the copy operation fails.
      • move

        void move​(java.util.Set<java.lang.String> srcPaths,
                  java.lang.String destPath,
                  boolean force,
                  boolean moveAsChild,
                  boolean makeParents,
                  boolean metadataOnly,
                  boolean allowMixRev,
                  java.util.Map<java.lang.String,​java.lang.String> revpropTable,
                  CommitMessageCallback handler,
                  CommitCallback callback)
           throws ClientException
        Move or rename versioned paths.
        Parameters:
        srcPaths - Source paths or URLs.
        destPath - Destination path or URL.
        force - Whether to perform the move even if local modifications exist.
        moveAsChild - Whether to move srcPaths as children of destPath.
        makeParents - Whether to create intermediate parents.
        metadataOnly - Move just the metadata and not the working files/dirs
        allowMixRev - If true use copy and delete without move tracking when a srcPath is mixed-revision, if false return an error when a srcPath is mixed-revision.
        revpropTable - A string-to-string mapping of revision properties to values which will be set if this operation results in a commit.
        handler - the commit message callback, may be null if destPath is not a URL
        Throws:
        ClientException - If the move operation fails.
        Since:
        1.8
      • move

        void move​(java.util.Set<java.lang.String> srcPaths,
                  java.lang.String destPath,
                  boolean force,
                  boolean moveAsChild,
                  boolean makeParents,
                  java.util.Map<java.lang.String,​java.lang.String> revpropTable,
                  CommitMessageCallback handler,
                  CommitCallback callback)
           throws ClientException
        Deprecated.
        Provided for backward compatibility with 1.7. Passes metadataOnly false and allowMixRev true.
        Throws:
        ClientException
      • mkdir

        void mkdir​(java.util.Set<java.lang.String> path,
                   boolean makeParents,
                   java.util.Map<java.lang.String,​java.lang.String> revpropTable,
                   CommitMessageCallback handler,
                   CommitCallback callback)
            throws ClientException
        Creates a directory directly in a repository or creates a directory on disk and schedules it for addition.
        Parameters:
        path - directories to be created
        makeParents - Whether to create intermediate parents
        revpropTable - A string-to-string mapping of revision properties to values which will be set if this operation results in a commit.
        handler - the handler to use if paths contains URLs
        Throws:
        ClientException
      • cleanup

        void cleanup​(java.lang.String path)
              throws ClientException
        Recursively cleans up a local directory, finishing any incomplete operations, removing lockfiles, etc.
        Parameters:
        path - a local directory.
        Throws:
        ClientException
      • resolve

        void resolve​(java.lang.String path,
                     Depth depth,
                     ConflictResult.Choice conflictResult)
              throws SubversionException
        Resolves the conflicted state on a WC path (or tree).
        Parameters:
        path - The path to resolve.
        depth - How deep to recurse into child paths.
        conflictResult - Which version to choose in the event of a conflict.
        Throws:
        SubversionException - If an error occurs.
      • doExport

        long doExport​(java.lang.String srcPath,
                      java.lang.String destPath,
                      Revision revision,
                      Revision pegRevision,
                      boolean force,
                      boolean ignoreExternals,
                      Depth depth,
                      java.lang.String nativeEOL)
               throws ClientException
        Exports the contents of either a subversion repository into a 'clean' directory (meaning a directory with no administrative directories).
        Parameters:
        srcPath - the url of the repository path to be exported
        destPath - a destination path that must not already exist.
        revision - the revsion to be exported
        pegRevision - the revision to interpret srcPath
        force - set if it is ok to overwrite local files
        ignoreExternals - ignore external during export
        depth - how deep to recurse in subdirectories
        nativeEOL - which EOL characters to use during export
        Throws:
        ClientException
      • doSwitch

        long doSwitch​(java.lang.String path,
                      java.lang.String url,
                      Revision revision,
                      Revision pegRevision,
                      Depth depth,
                      boolean depthIsSticky,
                      boolean ignoreExternals,
                      boolean allowUnverObstructions,
                      boolean ignoreAncestry)
               throws ClientException
        Update local copy to mirror a new url.
        Parameters:
        path - the working copy path
        url - the new url for the working copy
        revision - the new base revision of working copy
        pegRevision - the revision at which to interpret path
        depth - how deep to traverse into subdirectories
        depthIsSticky - if set, and depth is not Depth.unknown, then also set the ambient depth value to depth.
        ignoreExternals - whether to process externals definitions
        allowUnverObstructions - allow unversioned paths that obstruct adds
        ignoreAncestry - whether to skip common ancestry sanity check between path and url
        Throws:
        ClientException
      • doImport

        void doImport​(java.lang.String path,
                      java.lang.String url,
                      Depth depth,
                      boolean noIgnore,
                      boolean noAutoProps,
                      boolean ignoreUnknownNodeTypes,
                      java.util.Map<java.lang.String,​java.lang.String> revpropTable,
                      ImportFilterCallback importFilterCallback,
                      CommitMessageCallback messageHandler,
                      CommitCallback commitCallback)
               throws ClientException
        Import a file or directory into a repository directory at head.
        Parameters:
        path - the local path
        url - the target url
        depth - depth to traverse into subdirectories
        noIgnore - whether to add files matched by ignore patterns
        noAutoProps - if true, ignore any auto-props configuration
        ignoreUnknownNodeTypes - whether to ignore files which the node type is not konwn, just as pipes
        revpropTable - A string-to-string mapping of revision properties to values which will be set if this operation results in a commit.
        messageHandler - the commit message callback
        commitCallback - the commit status callback
        Throws:
        ClientException
        Since:
        1.8
      • doImport

        void doImport​(java.lang.String path,
                      java.lang.String url,
                      Depth depth,
                      boolean noIgnore,
                      boolean ignoreUnknownNodeTypes,
                      java.util.Map<java.lang.String,​java.lang.String> revpropTable,
                      CommitMessageCallback handler,
                      CommitCallback callback)
               throws ClientException
        Import a file or directory into a repository directory at head.
        Parameters:
        path - the local path
        url - the target url
        depth - depth to traverse into subdirectories
        noIgnore - whether to add files matched by ignore patterns
        ignoreUnknownNodeTypes - whether to ignore files which the node type is not konwn, just as pipes
        revpropTable - A string-to-string mapping of revision properties to values which will be set if this operation results in a commit.
        handler - the commit message callback
        callback - the commit status callback
        Throws:
        ClientException
      • suggestMergeSources

        java.util.Set<java.lang.String> suggestMergeSources​(java.lang.String path,
                                                            Revision pegRevision)
                                                     throws SubversionException
        Return an ordered list of suggested merge source URLs.
        Parameters:
        path - The merge target path for which to suggest sources.
        pegRevision - Peg revision used to interpret path.
        Returns:
        The list of URLs, empty if there are no suggestions.
        Throws:
        ClientException - If an error occurs.
        SubversionException
      • merge

        void merge​(java.lang.String path1,
                   Revision revision1,
                   java.lang.String path2,
                   Revision revision2,
                   java.lang.String localPath,
                   boolean force,
                   Depth depth,
                   boolean ignoreMergeinfo,
                   boolean diffIgnoreAncestry,
                   boolean dryRun,
                   boolean recordOnly)
            throws ClientException
        Merge changes from two paths into a new local path.
        Parameters:
        path1 - first path or url
        revision1 - first revision
        path2 - second path or url
        revision2 - second revision
        localPath - target local path
        force - overwrite local changes
        depth - how deep to traverse into subdirectories
        ignoreMergeinfo - ignore merge history, treat sources as unrelated
        diffIgnoreAncestry - always treat source files as related
        dryRun - do not change anything
        recordOnly - record mergeinfo but do not run merge
        Throws:
        ClientException
        Since:
        1.8
      • merge

        void merge​(java.lang.String path1,
                   Revision revision1,
                   java.lang.String path2,
                   Revision revision2,
                   java.lang.String localPath,
                   boolean force,
                   Depth depth,
                   boolean ignoreAncestry,
                   boolean dryRun,
                   boolean recordOnly)
            throws ClientException
        Merge changes from two paths into a new local path.
        Parameters:
        path1 - first path or url
        revision1 - first revision
        path2 - second path or url
        revision2 - second revision
        localPath - target local path
        force - overwrite local changes
        depth - how deep to traverse into subdirectories
        ignoreAncestry - ignore if files are not related
        dryRun - do not change anything
        recordOnly - record mergeinfo but do not run merge
        Throws:
        ClientException
      • merge

        void merge​(java.lang.String path,
                   Revision pegRevision,
                   java.util.List<RevisionRange> revisions,
                   java.lang.String localPath,
                   boolean force,
                   Depth depth,
                   boolean ignoreMergeinfo,
                   boolean diffIgnoreAncestry,
                   boolean dryRun,
                   boolean recordOnly)
            throws ClientException
        Merge set of revisions into a new local path.
        Parameters:
        path - path or url
        pegRevision - revision to interpret path
        revisions - revisions to merge; may be null, indicating that the optimal range should be determined automatcially
        localPath - target local path
        force - overwrite local changes
        depth - how deep to traverse into subdirectories
        ignoreMergeinfo - ignore merge history, treat sources as unrelated
        diffIgnoreAncestry - always treat source files as related
        dryRun - do not change anything
        recordOnly - record mergeinfo but do not run merge
        Throws:
        ClientException
        Since:
        1.8
      • merge

        void merge​(java.lang.String path,
                   Revision pegRevision,
                   java.util.List<RevisionRange> revisions,
                   java.lang.String localPath,
                   boolean force,
                   Depth depth,
                   boolean ignoreAncestry,
                   boolean dryRun,
                   boolean recordOnly)
            throws ClientException
        Merge set of revisions into a new local path.
        Parameters:
        path - path or url
        pegRevision - revision to interpret path
        revisions - revisions to merge; may be null, indicating that the optimal range should be determined automatcially (new in 1.8)
        localPath - target local path
        force - overwrite local changes
        depth - how deep to traverse into subdirectories
        ignoreAncestry - ignore if files are not related
        dryRun - do not change anything
        recordOnly - record mergeinfo but do not run merge
        Throws:
        ClientException
      • mergeReintegrate

        void mergeReintegrate​(java.lang.String path,
                              Revision pegRevision,
                              java.lang.String localPath,
                              boolean dryRun)
                       throws ClientException
        Deprecated.
        Will be removed in a future release
        Perform a reintegration merge of path into localPath. localPath must be a single-revision, infinite depth, pristine, unswitched working copy -- in other words, it must reflect a single revision tree, the "target". The mergeinfo on path must reflect that all of the target has been merged into it. Then this behaves like a merge from the target's URL to the localPath. The depth of the merge is always infinity.
        Parameters:
        path - path or url
        pegRevision - revision to interpret path
        localPath - target local path
        dryRun - do not change anything
        Throws:
        ClientException
      • getMergeinfo

        Mergeinfo getMergeinfo​(java.lang.String path,
                               Revision pegRevision)
                        throws SubversionException
        Get mergeinfo for path at pegRevision.
        Parameters:
        path - WC path or URL.
        pegRevision - peg revision at which to get the merge info for path.
        Returns:
        The merge history of path.
        Throws:
        SubversionException
      • getMergeinfoLog

        void getMergeinfoLog​(Mergeinfo.LogKind kind,
                             java.lang.String pathOrUrl,
                             Revision pegRevision,
                             java.lang.String mergeSourceUrl,
                             Revision srcPegRevision,
                             Revision srcStartRevision,
                             Revision srcEndRevision,
                             boolean discoverChangedPaths,
                             Depth depth,
                             java.util.Set<java.lang.String> revProps,
                             LogMessageCallback callback)
                      throws ClientException
        Retrieve either merged or eligible-to-be-merged revisions.
        Parameters:
        kind - kind of revisions to receive
        pathOrUrl - target of merge
        pegRevision - peg rev for pathOrUrl
        mergeSourceUrl - the source of the merge
        srcPegRevision - peg rev for mergeSourceUrl
        srcStartRevieion - lower bound of the source revision range
        srcEndRevision - upper bound of the source revision range
        discoverChangedPaths - return paths of changed items
        depth - the depth to recurse to
        revProps - the revprops to retrieve
        callback - the object to receive the log messages
        Throws:
        ClientException
        Since:
        1.8
      • getMergeinfoLog

        void getMergeinfoLog​(Mergeinfo.LogKind kind,
                             java.lang.String pathOrUrl,
                             Revision pegRevision,
                             java.lang.String mergeSourceUrl,
                             Revision srcPegRevision,
                             boolean discoverChangedPaths,
                             Depth depth,
                             java.util.Set<java.lang.String> revProps,
                             LogMessageCallback callback)
                      throws ClientException
        Retrieve either merged or eligible-to-be-merged revisions.
        Parameters:
        kind - kind of revisions to receive
        pathOrUrl - target of merge
        pegRevision - peg rev for pathOrUrl
        mergeSourceUrl - the source of the merge
        srcPegRevision - peg rev for mergeSourceUrl
        discoverChangedPaths - return paths of changed items
        depth - the depth to recurse to
        revProps - the revprops to retrieve
        callback - the object to receive the log messages
        Throws:
        ClientException
      • diff

        void diff​(java.lang.String target1,
                  Revision revision1,
                  java.lang.String target2,
                  Revision revision2,
                  java.lang.String relativeToDir,
                  java.io.OutputStream outStream,
                  Depth depth,
                  java.util.Collection<java.lang.String> changelists,
                  boolean ignoreAncestry,
                  boolean noDiffDeleted,
                  boolean force,
                  boolean copiesAsAdds,
                  boolean ignoreProps,
                  boolean propsOnly,
                  DiffOptions options)
           throws ClientException
        Display the differences between two paths
        Parameters:
        target1 - first path or url
        revision1 - first revision
        target2 - second path or url
        revision2 - second revision
        relativeToDir - index path is relative to this path
        outFileName - file name where difference are written
        depth - how deep to traverse into subdirectories
        ignoreAncestry - ignore if files are not related
        noDiffDeleted - no output on deleted files
        force - diff even on binary files
        copiesAsAdds - if set, copied files will be shown in their entirety, not as diffs from their sources
        ignoreProps - don't show property diffs
        propsOnly - show property changes only
        options - additional options for controlling the output
        Throws:
        ClientException
        Since:
        1.8
      • diff

        void diff​(java.lang.String target1,
                  Revision revision1,
                  java.lang.String target2,
                  Revision revision2,
                  java.lang.String relativeToDir,
                  java.lang.String outFileName,
                  Depth depth,
                  java.util.Collection<java.lang.String> changelists,
                  boolean ignoreAncestry,
                  boolean noDiffDeleted,
                  boolean force,
                  boolean copiesAsAdds,
                  boolean ignoreProps,
                  boolean propsOnly,
                  DiffOptions options)
           throws ClientException
        Throws:
        ClientException
      • diff

        void diff​(java.lang.String target1,
                  Revision revision1,
                  java.lang.String target2,
                  Revision revision2,
                  java.lang.String relativeToDir,
                  java.io.OutputStream outStream,
                  Depth depth,
                  java.util.Collection<java.lang.String> changelists,
                  boolean ignoreAncestry,
                  boolean noDiffDeleted,
                  boolean force,
                  boolean copiesAsAdds,
                  boolean ignoreProps,
                  boolean propsOnly)
           throws ClientException
        Display the differences between two paths
        Parameters:
        target1 - first path or url
        revision1 - first revision
        target2 - second path or url
        revision2 - second revision
        relativeToDir - index path is relative to this path
        outFileName - file name where difference are written
        depth - how deep to traverse into subdirectories
        ignoreAncestry - ignore if files are not related
        noDiffDeleted - no output on deleted files
        force - diff even on binary files
        copiesAsAdds - if set, copied files will be shown in their entirety, not as diffs from their sources
        ignoreProps - don't show property diffs
        propsOnly - show property changes only
        Throws:
        ClientException
      • diff

        void diff​(java.lang.String target1,
                  Revision revision1,
                  java.lang.String target2,
                  Revision revision2,
                  java.lang.String relativeToDir,
                  java.lang.String outFileName,
                  Depth depth,
                  java.util.Collection<java.lang.String> changelists,
                  boolean ignoreAncestry,
                  boolean noDiffDeleted,
                  boolean force,
                  boolean copiesAsAdds)
           throws ClientException
        Throws:
        ClientException
      • diff

        void diff​(java.lang.String target,
                  Revision pegRevision,
                  Revision startRevision,
                  Revision endRevision,
                  java.lang.String relativeToDir,
                  java.io.OutputStream outStream,
                  Depth depth,
                  java.util.Collection<java.lang.String> changelists,
                  boolean ignoreAncestry,
                  boolean noDiffDeleted,
                  boolean force,
                  boolean copiesAsAdds,
                  boolean ignoreProps,
                  boolean propsOnly,
                  DiffOptions options)
           throws ClientException
        Display the differences between two paths.
        Parameters:
        target - path or url
        pegRevision - revision tointerpret target
        startRevision - first Revision to compare
        endRevision - second Revision to compare
        relativeToDir - index path is relative to this path
        outFileName - file name where difference are written
        depth - how deep to traverse into subdirectories
        changelists - if non-null, filter paths using changelists
        ignoreAncestry - ignore if files are not related
        noDiffDeleted - no output on deleted files
        force - diff even on binary files
        copiesAsAdds - if set, copied files will be shown in their entirety, not as diffs from their sources
        ignoreProps - don't show property diffs
        propsOnly - show property changes only
        options - additional options for controlling the output
        Throws:
        ClientException
        Since:
        1.8
      • diff

        void diff​(java.lang.String target,
                  Revision pegRevision,
                  Revision startRevision,
                  Revision endRevision,
                  java.lang.String relativeToDir,
                  java.lang.String outFileName,
                  Depth depth,
                  java.util.Collection<java.lang.String> changelists,
                  boolean ignoreAncestry,
                  boolean noDiffDeleted,
                  boolean force,
                  boolean copiesAsAdds,
                  boolean ignoreProps,
                  boolean propsOnly,
                  DiffOptions options)
           throws ClientException
        Throws:
        ClientException
      • diff

        void diff​(java.lang.String target,
                  Revision pegRevision,
                  Revision startRevision,
                  Revision endRevision,
                  java.lang.String relativeToDir,
                  java.io.OutputStream outStream,
                  Depth depth,
                  java.util.Collection<java.lang.String> changelists,
                  boolean ignoreAncestry,
                  boolean noDiffDeleted,
                  boolean force,
                  boolean copiesAsAdds,
                  boolean ignoreProps,
                  boolean propsOnly)
           throws ClientException
        Display the differences between two paths.
        Parameters:
        target - path or url
        pegRevision - revision tointerpret target
        startRevision - first Revision to compare
        endRevision - second Revision to compare
        relativeToDir - index path is relative to this path
        outFileName - file name where difference are written
        depth - how deep to traverse into subdirectories
        changelists - if non-null, filter paths using changelists
        ignoreAncestry - ignore if files are not related
        noDiffDeleted - no output on deleted files
        force - diff even on binary files
        copiesAsAdds - if set, copied files will be shown in their entirety, not as diffs from their sources
        ignoreProps - don't show property diffs
        propsOnly - show property changes only
        Throws:
        ClientException
      • diff

        void diff​(java.lang.String target,
                  Revision pegRevision,
                  Revision startRevision,
                  Revision endRevision,
                  java.lang.String relativeToDir,
                  java.lang.String outFileName,
                  Depth depth,
                  java.util.Collection<java.lang.String> changelists,
                  boolean ignoreAncestry,
                  boolean noDiffDeleted,
                  boolean force,
                  boolean copiesAsAdds)
           throws ClientException
        Throws:
        ClientException
      • diffSummarize

        void diffSummarize​(java.lang.String target1,
                           Revision revision1,
                           java.lang.String target2,
                           Revision revision2,
                           Depth depth,
                           java.util.Collection<java.lang.String> changelists,
                           boolean ignoreAncestry,
                           DiffSummaryCallback receiver)
                    throws ClientException
        Produce a diff summary which lists the items changed between path and revision pairs.
        Parameters:
        target1 - Path or URL.
        revision1 - Revision of target1.
        target2 - Path or URL.
        revision2 - Revision of target2.
        depth - how deep to recurse.
        changelists - if non-null, filter paths using changelists
        ignoreAncestry - Whether to ignore unrelated files during comparison. False positives may potentially be reported if this parameter false, since a file might have been modified between two revisions, but still have the same contents.
        receiver - As each is difference is found, this callback is invoked with a description of the difference.
        Throws:
        ClientException
      • diffSummarize

        void diffSummarize​(java.lang.String target,
                           Revision pegRevision,
                           Revision startRevision,
                           Revision endRevision,
                           Depth depth,
                           java.util.Collection<java.lang.String> changelists,
                           boolean ignoreAncestry,
                           DiffSummaryCallback receiver)
                    throws ClientException
        Produce a diff summary which lists the items changed between path and revision pairs.
        Parameters:
        target - Path or URL.
        pegRevision - Revision at which to interpret target. If Revision.Kind.unspecified or null, behave identically to diffSummarize(String, Revision, String, Revision, Depth, Collection, boolean, DiffSummaryCallback), using path for both of that method's targets.
        startRevision - Beginning of range for comparsion of target.
        endRevision - End of range for comparsion of target.
        depth - how deep to recurse.
        changelists - if non-null, filter paths using changelists
        ignoreAncestry - Whether to ignore unrelated files during comparison. False positives may potentially be reported if this parameter false, since a file might have been modified between two revisions, but still have the same contents.
        receiver - As each is difference is found, this callback is invoked with a description of the difference.
        Throws:
        ClientException
      • properties

        void properties​(java.lang.String path,
                        Revision revision,
                        Revision pegRevision,
                        Depth depth,
                        java.util.Collection<java.lang.String> changelists,
                        ProplistCallback callback)
                 throws ClientException
        Retrieves the properties of an item
        Parameters:
        path - the path of the item
        revision - the revision of the item
        pegRevision - the revision to interpret path
        depth - the depth to recurse into subdirectories
        changelists - changelists to filter by
        callback - the callback to use to return the properties
        Throws:
        ClientException
      • properties

        void properties​(java.lang.String path,
                        Revision revision,
                        Revision pegRevision,
                        Depth depth,
                        java.util.Collection<java.lang.String> changelists,
                        InheritedProplistCallback callback)
                 throws ClientException
        Retrieves the properties of an item, including inherited properties.
        Parameters:
        path - the path of the item
        revision - the revision of the item
        pegRevision - the revision to interpret path
        depth - the depth to recurse into subdirectories
        changelists - changelists to filter by
        callback - the callback to use to return the properties
        Throws:
        ClientException
        Since:
        1.8
      • propertySetLocal

        void propertySetLocal​(java.util.Set<java.lang.String> paths,
                              java.lang.String name,
                              byte[] value,
                              Depth depth,
                              java.util.Collection<java.lang.String> changelists,
                              boolean force)
                       throws ClientException
        Sets one property of an item with a String value
        Parameters:
        paths - paths of the items
        name - name of the property
        value - new value of the property. Set value to null to delete a property
        depth - the depth to recurse into subdirectories
        changelists - changelists to filter by
        force - do not check if the value is valid
        revpropTable - A string-to-string mapping of revision properties to values which will be set if this operation results in a commit.
        Throws:
        ClientException
      • revProperty

        byte[] revProperty​(java.lang.String path,
                           java.lang.String name,
                           Revision rev)
                    throws ClientException
        Retrieve one revsision property of one item
        Parameters:
        path - path of the item
        name - name of the property
        rev - revision to retrieve
        Returns:
        the Property
        Throws:
        ClientException
      • revProperties

        java.util.Map<java.lang.String,​byte[]> revProperties​(java.lang.String path,
                                                                   Revision rev)
                                                            throws ClientException
        Retrieve all revsision properties of one item
        Parameters:
        path - path of the item
        rev - revision to retrieve
        Returns:
        the Properties
        Throws:
        ClientException
      • setRevProperty

        void setRevProperty​(java.lang.String path,
                            java.lang.String name,
                            Revision rev,
                            java.lang.String value,
                            java.lang.String originalValue,
                            boolean force)
                     throws ClientException
        set one revsision property of one item
        Parameters:
        path - path of the item
        name - name of the property
        rev - revision to retrieve
        value - value of the property
        originalValue - the original value of the property.
        force - use force to set
        Throws:
        ClientException
      • propertyGet

        byte[] propertyGet​(java.lang.String path,
                           java.lang.String name,
                           Revision revision,
                           Revision pegRevision,
                           java.util.Collection<java.lang.String> changelists)
                    throws ClientException
        Retrieve one property of one item
        Parameters:
        path - path of the item
        name - name of property
        revision - revision of the item
        pegRevision - the revision to interpret path
        Returns:
        the Property
        Throws:
        ClientException
      • fileContent

        byte[] fileContent​(java.lang.String path,
                           Revision revision,
                           Revision pegRevision)
                    throws ClientException
        Retrieve the content of a file
        Parameters:
        path - the path of the file
        revision - the revision to retrieve
        pegRevision - the revision to interpret path
        Returns:
        the content as byte array
        Throws:
        ClientException
      • streamFileContent

        void streamFileContent​(java.lang.String path,
                               Revision revision,
                               Revision pegRevision,
                               java.io.OutputStream stream)
                        throws ClientException
        Write the file's content to the specified output stream. If you need an InputStream, use a PipedInputStream/PipedOutputStream combination.
        Parameters:
        path - the path of the file
        revision - the revision to retrieve
        pegRevision - the revision at which to interpret the path
        stream - the stream to write the file's content to
        Throws:
        ClientException
        See Also:
        PipedOutputStream, PipedInputStream
      • relocate

        void relocate​(java.lang.String from,
                      java.lang.String to,
                      java.lang.String path,
                      boolean ignoreExternals)
               throws ClientException
        Rewrite the url's in the working copy
        Parameters:
        from - old url
        to - new url
        path - working copy path
        ignoreExternals - if externals are ignored during relocate
        Throws:
        ClientException
      • blame

        void blame​(java.lang.String path,
                   Revision pegRevision,
                   Revision revisionStart,
                   Revision revisionEnd,
                   boolean ignoreMimeType,
                   boolean includeMergedRevisions,
                   BlameCallback callback)
            throws ClientException
        Retrieve the content together with the author, the revision and the date of the last change of each line
        Parameters:
        path - the path
        pegRevision - the revision to interpret the path
        revisionStart - the first revision to show
        revisionEnd - the last revision to show
        ignoreMimeType - whether or not to ignore the mime-type
        includeMergedRevisions - whether or not to include extra merge information
        callback - callback to receive the file content and the other information
        Throws:
        ClientException
      • setConfigDirectory

        void setConfigDirectory​(java.lang.String configDir)
                         throws ClientException
        Set directory for the configuration information, taking the usual steps to ensure that Subversion's config file templates exist in the specified location.. On Windows, setting a non-null value will override lookup of configuration in the registry.
        Parameters:
        configDir - Path of the directory, or null for the platform's default.
        Throws:
        ClientException
      • getConfigDirectory

        java.lang.String getConfigDirectory()
                                     throws ClientException
        Get the configuration directory
        Returns:
        the directory
        Throws:
        ClientException
      • addToChangelist

        void addToChangelist​(java.util.Set<java.lang.String> paths,
                             java.lang.String changelist,
                             Depth depth,
                             java.util.Collection<java.lang.String> changelists)
                      throws ClientException
        Add paths to a changelist
        Parameters:
        paths - paths to add to the changelist
        changelist - changelist name
        depth - the depth to recurse
        changelists - changelists to filter by
        Throws:
        ClientException
      • removeFromChangelists

        void removeFromChangelists​(java.util.Set<java.lang.String> paths,
                                   Depth depth,
                                   java.util.Collection<java.lang.String> changelists)
                            throws ClientException
        Remove paths from a changelist
        Parameters:
        paths - paths to remove from the changelist
        depth - the depth to recurse
        changelists - changelists to filter by
        Throws:
        ClientException
      • getChangelists

        void getChangelists​(java.lang.String rootPath,
                            java.util.Collection<java.lang.String> changelists,
                            Depth depth,
                            ChangelistCallback callback)
                     throws ClientException
        Recursively get the paths which belong to a changelist
        Parameters:
        rootPath - the wc path under which to check
        changelists - the changelists to look under
        depth - the depth to recurse
        callback - the callback to return the changelists through
        Throws:
        ClientException
      • lock

        void lock​(java.util.Set<java.lang.String> path,
                  java.lang.String comment,
                  boolean force)
           throws ClientException
        Lock a working copy item
        Parameters:
        path - path of the item
        comment -
        force - break an existing lock
        Throws:
        ClientException
      • unlock

        void unlock​(java.util.Set<java.lang.String> path,
                    boolean force)
             throws ClientException
        Unlock a working copy item
        Parameters:
        path - path of the item
        force - break an existing lock
        Throws:
        ClientException
      • info2

        void info2​(java.lang.String pathOrUrl,
                   Revision revision,
                   Revision pegRevision,
                   Depth depth,
                   java.util.Collection<java.lang.String> changelists,
                   InfoCallback callback)
            throws ClientException
        Retrieve information about repository or working copy items.
        Parameters:
        pathOrUrl - the path or the url of the item
        revision - the revision of the item to return
        pegRevision - the revision to interpret pathOrUrl
        depth - the depth to recurse
        changelists - if non-null, filter paths using changelists
        callback - a callback to receive the infos retrieved
        Throws:
        ClientException
      • getVersionInfo

        java.lang.String getVersionInfo​(java.lang.String path,
                                        java.lang.String trailUrl,
                                        boolean lastChanged)
                                 throws ClientException
        Produce a compact "version number" for a working copy
        Parameters:
        path - path of the working copy
        trailUrl - to detect switches of the whole working copy
        lastChanged - last changed rather than current revisions
        Returns:
        the compact "version number"
        Throws:
        ClientException
      • upgrade

        void upgrade​(java.lang.String path)
              throws ClientException
        Recursively upgrade a working copy to a new metadata storage format.
        Parameters:
        path - path of the working copy
        Throws:
        ClientException
      • patch

        void patch​(java.lang.String patchPath,
                   java.lang.String targetPath,
                   boolean dryRun,
                   int stripCount,
                   boolean reverse,
                   boolean ignoreWhitespace,
                   boolean removeTempfiles,
                   PatchCallback callback)
            throws ClientException
        Apply a unidiff patch.
        Parameters:
        patchPath - the path of the patch
        targetPath - the path to be patched
        dryRun - whether to actually modify the local content
        stripCount - how many leading path components should be removed
        reverse - whether to reverse the patch
        ignoreWhitespace - whether to ignore whitespace
        removeTempfiles - whether to remove temp files
        callback - a handler to receive information as files are patched
        Throws:
        ClientException