org.eclipse.team.core.diff
Interface IDiffTree
-
All Known Subinterfaces:
-
IResourceDiffTree
-
All Known Implementing Classes:
-
DiffTree,
ResourceDiffTree
-
public interface IDiffTree
A diff tree provides access to a tree of
IDiff instances. For
efficiency reasons, the tree only provides diffs for paths that represent a
change. Paths that do not contain a diff represent but are returned from the
tree will contain child paths in the set.
-
Since:
- 3.2
-
See Also:
-
DiffTree
-
Restriction:
- This interface is not intended to be implemented by clients.
Clients should use
DiffTree instead.
|
Field Summary
|
static int
|
P_BUSY_HINT
Property constant used to indicate that a particular path may be involved in an operation. |
static int
|
P_HAS_DESCENDANT_CONFLICTS
Property constant used to indicate that a particular path has descendants that are conflicts. |
P_BUSY_HINT
static final int P_BUSY_HINT
- Property constant used to indicate that a particular path may be involved in an operation.
-
See Also:
-
Constant Field Values
P_HAS_DESCENDANT_CONFLICTS
static final int P_HAS_DESCENDANT_CONFLICTS
- Property constant used to indicate that a particular path has descendants that are conflicts.
-
See Also:
-
Constant Field Values
addDiffChangeListener
void addDiffChangeListener(
IDiffChangeListener listener)
- Add a listener to the tree. The listener will be informed of any changes
in the tree. Registering a listener that is already registered will have
no effects.
-
-
Parameters:
-
listener - the listener to be added
removeDiffChangeListener
void removeDiffChangeListener(
IDiffChangeListener listener)
- Remove the listener from the tree. Removing a listener that is not
registered has no effect.
-
-
Parameters:
-
listener - the listener to be removed
accept
void accept(
IPath path,
IDiffVisitor visitor,
int depth)
- Accepts the given visitor. The only kinds of deltas visited are
ADDED, REMOVED, and CHANGED.
The visitor's visit method is called with the given delta
if applicable. If the visitor returns true, any of the
delta's children in this tree are also visited.
-
-
Parameters:
-
path - the path to start the visit in the tree -
visitor - the visitor -
depth - the depth to visit -
See Also:
-
IDiffVisitor.visit(IDiff)
getDiff
IDiff getDiff(
IPath path)
- Returns the delta identified by the given path,
or
null if there is no delta at that path. The supplied path
may be absolute or relative; in either case, it is interpreted as
relative to the workspace. Trailing separators are ignored.
This method only returns a delta if there is a change at the given
path. To know if there are deltas in descendent paths, clients
should class
getChildren(IPath).
-
-
Parameters:
-
path - the path of the desired delta
-
Returns:
- the delta, or
null if no such
delta exists
getChildren
IPath[] getChildren(
IPath parent)
- Returns the child paths of the given path that either point to
a sync delta or have a descendant path that points to a sync delta.
Returns an empty array if there are no sync deltas that are descendents
of the given path.
-
-
Returns:
- the child paths of the given path that either point to
a sync delta or have a descendant path that points to a sync delta
size
int size()
- Return the number of diffs contained in the tree.
-
-
Returns:
- the number of diffs contained in the tree
isEmpty
boolean isEmpty()
- Return whether the set is empty.
-
-
Returns:
- whether the set is empty
countFor
long countFor(int state,
int mask)
- Return the number of out-of-sync elements in the given set whose synchronization
state matches the given mask. A state of 0 assumes a count of all changes.
A mask of 0 assumes a direct match of the given state.
For example, this will return the number of outgoing changes in the set:
long outgoing = countFor(IThreeWayDiff.OUTGOING, IThreeWayDiff.DIRECTION_MASK);
-
-
Parameters:
-
state - the sync state -
mask - the sync state mask
-
Returns:
- the number of matching resources in the set.
setBusy
void setBusy(
IDiff[] diffs,
IProgressMonitor monitor)
- Set the given diff nodes and all their parents to busy
-
-
Parameters:
-
diffs - the busy diffs -
monitor - a progress monitor or null if progress indication
is not required
getProperty
boolean getProperty(
IPath path,
int property)
- Return the value of the property for the given path.
-
-
Parameters:
-
path - the path -
property - the property
-
Returns:
- the value of the property
clearBusy
void clearBusy(
IProgressMonitor monitor)
- Clear all busy properties in this tree.
-
-
Parameters:
-
monitor - a progress monitor or null if progress indication
is not required
hasMatchingDiffs
boolean hasMatchingDiffs(
IPath path,
FastDiffFilter filter)
- Return whether the this diff tree contains any diffs that match the given filter
at of below the given path.
-
-
Parameters:
-
path - the path -
filter - the diff node filter
-
Returns:
- whether the given diff tree contains any deltas that match the given filter
Guidelines for using Eclipse APIs.
Copyright (c) Eclipse contributors and others 2000, 2008. All rights reserved.