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 Detail

      • 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