Interface IResourceDiffTree

All Superinterfaces:
IDiffTree
All Known Implementing Classes:
ResourceDiffTree

public interface IResourceDiffTree extends IDiffTree
A resource diff tree provides access to a tree of IDiff instances that either contain IResourceDiff nodes or IThreeWayDiff nodes that contain IResourceDiff nodes as the local and remote changes. For efficiency reasons, the tree only provides diffs for resources that have changes. Resources that do not contain a change but are returned from the tree will contain children in the set.
Since:
3.2
Restriction:
This interface is not intended to be implemented by clients. Clients can use ResourceDiffTree instead.
  • Method Details

    • getDiff

      IDiff getDiff(IResource resource)
      Return the diff for the given resource. This method is a convenience method that uses the path of the resource to access the diff.
      Parameters:
      resource - a resource
      Returns:
      the diff associated with the resource or null if the resource does not have any changes.
    • getResource

      IResource getResource(IDiff diff)
      Return the resource associated with the given diff. This method will only return meaningful results for diffs which were obtained from this tree.
      Parameters:
      diff - a diff
      Returns:
      the resource associated with the given diff
    • accept

      void accept(ResourceTraversal[] traversals, IDiffVisitor visitor)
      Visit all diffs in this tree that are covered by the given traversals.
      Parameters:
      traversals - the set of traversals whose diffs are to be visited
      visitor - a diff visitor
    • getDiffs

      IDiff[] getDiffs(ResourceTraversal[] traversals)
      Return all the diffs in the tree that are contained in the given traversals.
      Parameters:
      traversals - the traversals
      Returns:
      all the diffs in the tree that are contained in the given traversals
    • getDiffs

      IDiff[] getDiffs(IResource resource, int depth)
      Return all the diffs in the tree that are found for the given resource when traversed to the given depth.
      Parameters:
      resource - the resource
      depth - the depth
      Returns:
      all the diffs in the tree that are found for the given resource when traversed to the given depth
    • members

      IResource[] members(IResource resource)
      Return the members of the given resource that either have diffs in this tree of contain descendants that have diffs in this tree.
      Parameters:
      resource - a resource
      Returns:
      the members of the given resource that either have diffs in this tree of contain descendants that have diffs in this tree
    • getAffectedResources

      IResource[] getAffectedResources()
      Return all resources that contain diffs in this diff tree.
      Returns:
      all resources that contain diffs in this diff tree
    • hasMatchingDiffs

      boolean hasMatchingDiffs(ResourceTraversal[] traversals, FastDiffFilter filter)
      Return whether the this diff tree contains any diffs that match the given filter within the given traversals.
      Parameters:
      traversals - the traversals
      filter - the diff node filter
      Returns:
      whether the given diff tree contains any deltas that match the given filter