Replays the changes from a range of revisions between
startRevision
and
endRevision
.
When receiving information for one revision, {@link ISVNReplayHandler#handleStartRevision(long,SVNProperties)} is called; this method will provide an editor through which the revision will be replayed. When replaying the revision is finished, {@link ISVNReplayHandler#handleEndRevision(long,SVNProperties,ISVNEditor)} will be called so the editor can be closed.
Changes will be limited to those that occur under this object's {@link #getLocation()}, and the server will assume that the client has no knowledge of revisions prior to
lowRevision
. These two limiting factors define the portion of the tree that the server will assume the client already has knowledge of, and thus any copies of data from outside that part of the tree will be sent in their entirety, not as simple copies or deltas against a previous version.
If
sendDeltas
is
true, the actual text and property changes in the revision will be sent, otherwise dummy text deltas and
null property changes will be sent instead.
If the server does not support revision range replication, then invokes {@link #replay(long,long,boolean,ISVNEditor)} on each revision between
startRevision
and
endRevision
inclusively.
@param startRevision revision range start
@param endRevision revision range end
@param lowRevision low water mark revision
@param sendDeltas whether to ask the server send text and properties
@param handler caller's handler
@throws SVNException in the following cases:
exception with {@link SVNErrorCode#RA_NOT_IMPLEMENTED} error code - if the server does not support revision range replication
@since 1.2.0, New in Subversion 1.5.0