|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface ISVNReporter
The update Reporter.
An interface which allows a working copy to describe a subset (or possibly all) of its working-copy to a remote session, for the purposes of an update, switch, status, or diff operation.
Paths for report calls are relative to the target (not the anchor)
of the operation. Report calls must be made in depth-first order:
parents before children, all children of a parent before any
siblings of the parent. The first report call must be a setPath
with an empty path
argument and a valid revision. (If
the target of the operation is locally deleted or missing, use the
anchor's revision.) If the target of the operation is deleted or
switched relative to the anchor, follow up the initial setPath call
with a linkPath or deletePath call with an empty path
argument to indicate that. In no other case may there be two
report descriptions for the same path. If the target of the
operation is a locally added file or directory (which previously
did not exist), it may be reported as having revision 0 or as
having the parent directory's revision.
Method Summary | |
---|---|
void |
abortReport()
If an error occurs during a report, this routine should cause the filesystem transaction to be aborted and cleaned up. |
void |
deletePath(String path)
Describe a working copy path as missing. |
void |
dispose()
Release the native peer (should not depend on finalize), and abort the report if it has not been completed yet. |
long |
finishReport()
The report driver calls this when the state report is finished. |
void |
linkPath(String url,
String path,
long revision,
Depth depth,
boolean startEmpty,
String lockToken)
Like setPath() ,
but differs in that path in the working copy
(relative to the root of the report driver) isn't a reflection
of path in the repository (relative to the URL
specified when opening the remote session), but is instead a
reflection of a different repository url at
revision , and has depth depth . |
void |
setPath(String path,
long revision,
Depth depth,
boolean startEmpty,
String lockToken)
Describe a working copy path as being at a
particular revision and having the given
depth . |
Method Detail |
---|
void dispose()
void setPath(String path, long revision, Depth depth, boolean startEmpty, String lockToken) throws ClientException
path
as being at a
particular revision
and having the given
depth
.
revision
may be
Revision.SVN_INVALID_REVNUM
if (for example) path
represents a locally-added
path with no revision number, or depth
is
Depth.exclude
.
path
may not be underneath a path on which
setPath() was previously called with
Depth.exclude
in this report.
If startEmpty
is set and path
is a
directory, the implementor should assume the directory has no
entries or properties.
This will override any previous setPath() calls made
on parent paths. path
is relative to the URL of
the remote session that created this reporter instance.
If lockToken
is not null
, it is the
lock token for path
in the working copy.
ClientException
void deletePath(String path) throws ClientException
path
as missing.
path
may not be underneath a path on which
setPath() was previously called with
Depth.exclude
in this report.
ClientException
void linkPath(String url, String path, long revision, Depth depth, boolean startEmpty, String lockToken) throws ClientException
setPath()
,
but differs in that path
in the working copy
(relative to the root of the report driver) isn't a reflection
of path
in the repository (relative to the URL
specified when opening the remote session), but is instead a
reflection of a different repository url
at
revision
, and has depth depth
.
path
may not be underneath a path on which
setPath() was previously called with
Depth.exclude
in this report.
If startEmpty
is set and path
is a
directory, the implementor should assume the directory has no
entries or properties.
If lockToken
is not null
, it is the
lock token for path
in the working copy.
ClientException
long finishReport() throws ClientException
abortReport()
,
should be called after calling this function.
ISVNRemote.status(java.lang.String, long, org.apache.subversion.javahl.types.Depth, org.apache.subversion.javahl.callback.RemoteStatus)
, this is the
revision against which the status call was performed;
in the case of ISVNRemote#update
, it is the
revision updated to.
ClientException
void abortReport() throws ClientException
ClientException
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |