Interface ISourceManipulation

    • Method Detail

      • copy

        void copy​(IJavaElement container,
                  IJavaElement sibling,
                  String rename,
                  boolean replace,
                  IProgressMonitor monitor)
           throws JavaModelException
        Copies this element to the given container.
        Parameters:
        container - the container
        sibling - the sibling element before which the copy should be inserted, or null if the copy should be inserted as the last child of the container
        rename - the new name for the element, or null if the copy retains the name of this element
        replace - true if any existing child in the container with the target name should be replaced, and false to throw an exception in the event of a name collision
        monitor - a progress monitor
        Throws:
        JavaModelException - if this element could not be copied. Reasons include:
        • This Java element, container element, or sibling does not exist (ELEMENT_DOES_NOT_EXIST)
        • A CoreException occurred while updating an underlying resource
        • The container is of an incompatible type (INVALID_DESTINATION)
        • The sibling is not a child of the given container (INVALID_SIBLING)
        • The new name is invalid (INVALID_NAME)
        • A child in the container already exists with the same name (NAME_COLLISION) and replace has been specified as false
        • The container or this element is read-only (READ_ONLY)
        IllegalArgumentException - if container is null
        See Also:
        IJavaModelStatusConstants.INVALID_DESTINATION
      • delete

        void delete​(boolean force,
                    IProgressMonitor monitor)
             throws JavaModelException
        Deletes this element, forcing if specified and necessary.
        Parameters:
        force - a flag controlling whether underlying resources that are not in sync with the local file system will be tolerated (same as the force flag in IResource operations).
        monitor - a progress monitor
        Throws:
        JavaModelException - if this element could not be deleted. Reasons include:
        • This Java element does not exist (ELEMENT_DOES_NOT_EXIST)
        • A CoreException occurred while updating an underlying resource (CORE_EXCEPTION)
        • This element is read-only (READ_ONLY)
      • move

        void move​(IJavaElement container,
                  IJavaElement sibling,
                  String rename,
                  boolean replace,
                  IProgressMonitor monitor)
           throws JavaModelException
        Moves this element to the given container.
        Parameters:
        container - the container
        sibling - the sibling element before which the element should be inserted, or null if the element should be inserted as the last child of the container
        rename - the new name for the element, or null if the element retains its name
        replace - true if any existing child in the container with the target name should be replaced, and false to throw an exception in the event of a name collision
        monitor - a progress monitor
        Throws:
        JavaModelException - if this element could not be moved. Reasons include:
        • This Java element, container element, or sibling does not exist (ELEMENT_DOES_NOT_EXIST)
        • A CoreException occurred while updating an underlying resource
        • The container is of an incompatible type (INVALID_DESTINATION)
        • The sibling is not a child of the given container (INVALID_SIBLING)
        • The new name is invalid (INVALID_NAME)
        • A child in the container already exists with the same name (NAME_COLLISION) and replace has been specified as false
        • The container or this element is read-only (READ_ONLY)
        IllegalArgumentException - if container is null
        See Also:
        IJavaModelStatusConstants.INVALID_DESTINATION
      • rename

        void rename​(String name,
                    boolean replace,
                    IProgressMonitor monitor)
             throws JavaModelException
        Renames this element to the given name.
        Parameters:
        name - the new name for the element
        replace - true if any existing element with the target name should be replaced, and false to throw an exception in the event of a name collision
        monitor - a progress monitor
        Throws:
        JavaModelException - if this element could not be renamed. Reasons include:
        • This Java element does not exist (ELEMENT_DOES_NOT_EXIST)
        • A CoreException occurred while updating an underlying resource
        • The new name is invalid (INVALID_NAME)
        • A child in the container already exists with the same name (NAME_COLLISION) and replace has been specified as false
        • This element is read-only (READ_ONLY)