Class ResourceDiffTree

    • Constructor Detail

      • ResourceDiffTree

        public ResourceDiffTree()
    • Method Detail

      • getResourceFor

        public static IResource getResourceFor​(IDiff node)
        Get the resource for the diff node that was obtained from an IResourceDiffTree.
        Parameters:
        node - the diff node.
        Returns:
        the resource for the diff node
      • getDiff

        public IDiff getDiff​(IResource resource)
        Description copied from interface: IResourceDiffTree
        Return the diff for the given resource. This method is a convenience method that uses the path of the resource to access the diff.
        Specified by:
        getDiff in interface IResourceDiffTree
        Parameters:
        resource - a resource
        Returns:
        the diff associated with the resource or null if the resource does not have any changes.
      • getResource

        public IResource getResource​(IDiff diff)
        Description copied from interface: IResourceDiffTree
        Return the resource associated with the given diff. This method will only return meaningful results for diffs which were obtained from this tree.
        Specified by:
        getResource in interface IResourceDiffTree
        Parameters:
        diff - a diff
        Returns:
        the resource associated with the given diff
      • accept

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

        public IDiff[] getDiffs​(ResourceTraversal[] traversals)
        Description copied from interface: IResourceDiffTree
        Return all the diffs in the tree that are contained in the given traversals.
        Specified by:
        getDiffs in interface IResourceDiffTree
        Parameters:
        traversals - the traversals
        Returns:
        all the diffs in the tree that are contained in the given traversals
      • getDiffs

        public IDiff[] getDiffs​(IResource resource,
                                int depth)
        Description copied from interface: IResourceDiffTree
        Return all the diffs in the tree that are found for the given resource when traversed to the given depth.
        Specified by:
        getDiffs in interface IResourceDiffTree
        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

        public IResource[] members​(IResource resource)
        Description copied from interface: IResourceDiffTree
        Return the members of the given resource that either have diffs in this tree of contain descendants that have diffs in this tree.
        Specified by:
        members in interface IResourceDiffTree
        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
      • add

        public void add​(IDiff delta)
        Description copied from class: DiffTree
        Add the given IDiff to the tree. A change event will be generated unless the call to this method is nested in between calls to beginInput() and endInput(IProgressMonitor) in which case the event for this addition and any other sync set change will be fired in a batched event when endInput is invoked.

        Invoking this method outside of the above mentioned block will result in the endInput(IProgressMonitor) being invoked with a null progress monitor. If responsiveness is required, the client should always nest sync set modifications within beginInput/endInput.

        Overrides:
        add in class DiffTree
        Parameters:
        delta - the delta to be added to this set.
      • remove

        public void remove​(IResource resource)
        Remove the diff associated with the given resource from the tree.
        Parameters:
        resource - the resource
      • hasMatchingDiffs

        public boolean hasMatchingDiffs​(ResourceTraversal[] traversals,
                                        FastDiffFilter filter)
        Description copied from interface: IResourceDiffTree
        Return whether the this diff tree contains any diffs that match the given filter within the given traversals.
        Specified by:
        hasMatchingDiffs in interface IResourceDiffTree
        Parameters:
        traversals - the traversals
        filter - the diff node filter
        Returns:
        whether the given diff tree contains any deltas that match the given filter