Interface IResourceChangeDescriptionFactory


  • public interface IResourceChangeDescriptionFactory
    This factory is used to build a resource delta that represents a proposed change that can then be passed to the ResourceChangeValidator.validateChange(IResourceDelta, IProgressMonitor) method in order to validate the change with any model providers stored in those resources. The deltas created by calls to the methods of this interface will be the same as those generated by the workspace if the proposed operations were performed, except an additional IResourceDelta.DELETE_CONTENT_PROPOSED flag can indicate if the change is going to delete resources not only from the workspace model but also physically, so it cannot be undone.

    This factory does not validate that the proposed operation is valid given the current state of the resources and any other proposed changes. It only records the delta that would result.

    Since:
    3.2
    See Also:
    ResourceChangeValidator, ModelProvider
    Restriction:
    This interface is not intended to be implemented by clients.
    Restriction:
    This interface is not intended to be extended by clients.
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      void change​(IFile file)
      Record a delta that represents a content change for the given file.
      void close​(IProject project)
      Record the set of deltas representing the closed of a project.
      void copy​(IResource resource, IPath destination)
      Record the set of deltas representing a copy of the given resource to the given workspace path.
      void create​(IResource resource)
      Record a delta that represents a resource being created.
      void delete​(IProject project, boolean deleteContent)
      Record the set of deltas representing a deletion of the given project.
      void delete​(IResource resource)
      Record the set of deltas representing a deletion of the given resource.
      IResourceDelta getDelta()
      Return the proposed delta that has been accumulated by this factory.
      void move​(IResource resource, IPath destination)
      Record the set of deltas representing a move of the given resource to the given workspace path.
    • Method Detail

      • change

        void change​(IFile file)
        Record a delta that represents a content change for the given file.
        Parameters:
        file - the file whose contents will be changed
      • close

        void close​(IProject project)
        Record the set of deltas representing the closed of a project.
        Parameters:
        project - the project that will be closed
      • copy

        void copy​(IResource resource,
                  IPath destination)
        Record the set of deltas representing a copy of the given resource to the given workspace path.
        Parameters:
        resource - the resource that will be copied
        destination - the full workspace path of the destination the resource is being copied to
      • create

        void create​(IResource resource)
        Record a delta that represents a resource being created.
        Parameters:
        resource - the resource that is created
      • delete

        void delete​(IResource resource)
        Record the set of deltas representing a deletion of the given resource.
        Parameters:
        resource - the resource that will be deleted
      • delete

        void delete​(IProject project,
                    boolean deleteContent)
        Record the set of deltas representing a deletion of the given project.
        Parameters:
        project - the project that will be deleted
        deleteContent - true if the project content on the disk should be deleted. The content delete is not undoable.
        Since:
        3.16
        See Also:
        IResourceDelta.DELETE_CONTENT_PROPOSED
      • getDelta

        IResourceDelta getDelta()
        Return the proposed delta that has been accumulated by this factory.
        Returns:
        the proposed delta that has been accumulated by this factory
      • move

        void move​(IResource resource,
                  IPath destination)
        Record the set of deltas representing a move of the given resource to the given workspace path. Note that this API is used to describe a resource being moved to another path in the workspace, rather than a move in the file system.
        Parameters:
        resource - the resource that will be moved
        destination - the full workspace path of the destination the resource is being moved to