Package org.tmatesoft.svn.core.wc

This package provides a high-level API for managing Working Copies in a way compatible with the native SVN command line client.


Interface Summary
ISVNAddParameters The ISVNAddParameters is an interface for a callback which is invoked when there are inconsistent EOLs found in text files which are being scheduled for addition.
ISVNAnnotateHandler The ISVNAnnotateHandler interface should be implemented to be further provided to SVNLogClient's doAnnotate() methods for processing annotation information per each text line.
ISVNChangelistHandler The ISVNChangelistHandler is an interface for handlers used in changelist retrieval methods of SVNChangelistClient.
ISVNCommitHandler The ISVNCommitHandler should be implemented to provide an ability to manage commit log messages for items to be committed in a common transaction.
ISVNCommitParameters ISVNCommitParameters is the interface for parameters which set behaviour for a commit operation that touches still versioned files or dirs that are somehow missing.
ISVNConflictHandler The ISVNConflictHandler interface defines a callback for resolving conflicts during the application of a tree delta to a working copy.
ISVNDiffGenerator The ISVNDiffGenerator should be implemented by drivers generating contents difference between files in order to be used in 'diff' operations performed by SVNDiffClient.
ISVNDiffStatusHandler The ISVNDiffStatusHandler is used to handle diff status operations supported by the SVNDiffClient.
ISVNEventHandler The ISVNEventHandler interface should be implemented in order to be further provided to an SVN*Client object as a handler of a sequence of events generated by SVN*Client's do*() methods.
ISVNExternalsHandler The ISVNExternalsHandler provides interface for user defined callbacks which are used to skip externals definitions processing in some operations.
ISVNFileFilter ISVNFileFilter is used by SVNCommitClient during an import operation to filter out undesired paths, so that those paths do not get to a repository.
ISVNInfoHandler The ISVNInfoHandler interface should be implemented in order to be further provided to some of SVNWCClient's doInfo() methods to process information about Working Copy as well as remote (located in a repository) items.
ISVNMerger ISVNMerger is the merge driver interface used by SVNKit in merging operations.
ISVNMergerFactory The ISVNMergerFactory interface should be implemented in order to be used as a factory of merger drivers intended for merging operations.
ISVNOptions The ISVNOptions interface should be implemented to manage global run-time configuration options.
ISVNPathListHandler The ISVNPathListHandler is used by SVN*Client classes as a callback in operations performed on multiple paths.
ISVNPropertyHandler The ISVNPropertyHandler interface should be implemented to be further provided to SVNWCClient's property managing methods for handling properties.
ISVNPropertyValueProvider The ISVNPropertyValueProvider interface should be implemented to be further provided to SVNWCClient.doSetProperty(, ISVNPropertyValueProvider, boolean, org.tmatesoft.svn.core.SVNDepth, ISVNPropertyHandler, java.util.Collection) method for defining properties to change.
ISVNRepositoryPool The ISVNRepositoryPool interface is used by SVN*Client objects to create a low-level SVN protocol driver that allows them to directly work with a repository.
ISVNStatusHandler The ISVNStatusHandler interface should be implemented in order to be further provided to some of SVNStatusClient's doStatus() methods to handle status information of Working Copy items.

Class Summary
DefaultSVNCommitHandler This is a default implementation for ISVNCommitHandler.
DefaultSVNCommitParameters DefaultSVNCommitParameters is the default commit parameters implementation.
DefaultSVNDiffGenerator DefaultSVNDiffGenerator is a default implementation of ISVNDiffGenerator.
DefaultSVNRepositoryPool The DefaultSVNRepositoryPool class is a default implementation of the ISVNRepositoryPool interface.
ISVNAddParameters.Action This class is simply used to define an action add operation should undertake in case of a inconsistent EOLs.
ISVNCommitParameters.Action This class is simply used to define an action a commit operation should undertake in case of a missing file/directory.
SVNBasicClient The SVNBasicClient is the base class of all SVN*Client classes that provides a common interface and realization.
SVNChangelistClient The SVNChangelistClient provides API for managing changelists.
SVNClientManager The SVNClientManager class is used to manage SVN*Client objects as well as for providing them to a user what makes the user's work easier and his code - pretty clear and flexible.
SVNCommitClient The SVNCommitClient class provides methods to perform operations that relate to committing changes to an SVN repository.
SVNCommitItem The SVNCommitItem represents a versioned item that is to be committed to a repository.
SVNCommitPacket The SVNCommitPacket is a storage for SVNCommitItem objects which represent information on versioned items intended for being committed to a repository.
SVNConflictAction The SVNConflictAction represents the type of action being attempted on an object which leads to a conflict.
SVNConflictChoice The SVNConflictChoice is an enumeration of constants representing the way in which the conflict callback chooses a course of action.
SVNConflictDescription The SVNConflictDescription represents an object that describes a conflict that has occurred in the working copy.
SVNConflictReason The SVNConflictReason class represents an enumeration of constants describing the reason of a conflict state in a working copy produced by a merge operation.
SVNConflictResult The SVNConflictResult represents the decision of the user's conflict handler regarding a conflict situation.
SVNCopyClient The SVNCopyClient provides methods to perform any kinds of copying and moving that SVN supports - operating on both Working Copies (WC) and URLs.
SVNCopySource The SVNCopySource class is used to provide copy source information in copy operations.
SVNDiffClient The SVNDiffClient class provides methods allowing to get differences between versioned items ('diff' operation) as well as ones intended for merging file contents.
SVNDiffOptions The SVNDiffOptions class is used to contain some rules for controlling the result of comparing two files.
SVNDiffStatus The SVNDiffStatus class is used to provide short information on path changes during diff status operations.
SVNEvent The SVNEvent class is used to provide detailed information on an operation progress to the ISVNEventHandler (if any) registered for an SVN*Client object.
SVNEventAction The SVNEventAction class is used to describe an action which generated an SVNEvent object.
SVNEventAdapter SVNEventAdapter is an adapter class for ISVNEventHandler.
SVNInfo The SVNInfo class is a wrapper for versioned item's (located either in a Working Copy or a repository) information details.
SVNLogClient The SVNLogClient class is intended for such purposes as getting revisions history, browsing repository entries and annotating file contents.
SVNMergeFileSet The SVNMergeFileSet class holds information about the file that is to be merged.
SVNMergeResult The SVNMergeResult represents a result of a text or properties merge operation.
SVNMoveClient The SVNMoveClient provides an extra client-side functionality over standard (i.e. compatible with the SVN command line client) move operations.
SVNOperation SVNOperation represents the user operation that exposed a conflict.
SVNPropertyConflictDescription SVNPropertyConflictDescription brings a property conflict description.
SVNPropertyData SVNPropertyData is a wrapper for both versioned and unversioned properties.
SVNRevision SVNRevision is a revision wrapper used for an abstract representation of revision information.
SVNRevisionRange The SVNRevisionRange class represents a revision range between a start revision and an end revision.
SVNStatus The SVNStatus class is used to provide detailed status information for a Working Copy item as a result of a status operation invoked by a doStatus() method of SVNStatusClient.
SVNStatusClient The SVNStatusClient class provides methods for obtaining information on the status of Working Copy items.
SVNStatusType SVNStatusType provides information about versioned items' status type.
SVNTextConflictDescription SVNTextConflictDescription brings information about conflict on a file.
SVNTreeConflictDescription SVNTreeConflictDescription brings information on a tree conflict.
SVNUpdateClient This class provides methods which allow to check out, update, switch and relocate a Working Copy as well as export an unversioned directory or file from a repository.
SVNWCClient The SVNWCClient class combines a number of version control operations mainly intended for local work with Working Copy items.
SVNWCUtil The SVNWCUtil is a utility class providing some common methods used by Working Copy API classes for such purposes as creating default run-time configuration and authentication drivers and some others.

Package org.tmatesoft.svn.core.wc Description

This package provides a high-level API for managing Working Copies in a way compatible with the native SVN command line client. That means if you use org.tmatesoft.svn.core.wc to operate on Working Copy files, directories and their properties you won't loose a compatibility with the SVN client - as if the copy items were managed by the SVN itself. In addition the package classes and interfaces provide a developer a high flexibility in usage: all SVN client's commands are mapped to methods of SVN*Client classes which are responsible for all version control functionality (dealing either with Working Copies or URLs). This functionality is logicaly allotted to separate classes, so that, for example, all update related operations (update, switch, etc.) are handled by the same class. And * for each of these classes is the name of that functional behaviour the class is intended for - such as SVNUpdateClient or SVNCommitClient. To have even more flexibility there's a kind of a manager class - SVNClientManager - which aggregates all of these 'client' classes making developer's work easier and more comfortable. At last the high-level API is even a bit more than just an implementation of the SVN client's operations:

While the package represents a low-level API and therefore 'knows' nothing of the SVN native 'Working Copy' format and structure, org.tmatesoft.svn.core.wc is contrarily a kind of a Java implementation of the SVN client's commands which can be used in a standalone Java application that needs to work with Working Copies. However if a developer has no need or even don't want to have Working Copies but something else (for instance, in case of an own client side version control system specific to developer's needs) the developer should refer to rather than to org.tmatesoft.svn.core.wc.