Class ImportOperation

  • All Implemented Interfaces:
    IRunnableWithProgress, IThreadListener

    public class ImportOperation
    extends WorkspaceModifyOperation
    An operation which does the actual work of copying objects from the local file system into the workspace.

    This class may be instantiated; it is not intended to be subclassed.

    Restriction:
    This class is not intended to be subclassed by clients.
    • Constructor Detail

      • ImportOperation

        public ImportOperation​(IPath containerPath,
                               Object source,
                               IImportStructureProvider provider,
                               IOverwriteQuery overwriteImplementor)
        Creates a new operation that recursively imports the entire contents of the specified root file system object.

        The source parameter represents the root file system object to import. All contents of this object are imported. Valid types for this parameter are determined by the supplied IImportStructureProvider.

        The provider parameter allows this operation to deal with the source object in an abstract way. This operation calls methods on the provider and the provider in turn calls specific methods on the source object.

        The default import behavior is to recreate the complete container structure for the contents of the root file system object in their destination. If setCreateContainerStructure is set to false then the container structure created is relative to the root file system object.

        Parameters:
        containerPath - the full path of the destination container within the workspace
        source - the root file system object to import
        provider - the file system structure provider to use
        overwriteImplementor - the overwrite strategy to use
      • ImportOperation

        public ImportOperation​(IPath containerPath,
                               Object source,
                               IImportStructureProvider provider,
                               IOverwriteQuery overwriteImplementor,
                               List filesToImport)
        Creates a new operation that imports specific file system objects. In this usage context, the specified source file system object is used by the operation solely to determine the destination container structure of the file system objects being imported.

        The source parameter represents the root file system object to import. Valid types for this parameter are determined by the supplied IImportStructureProvider. The contents of the source which are to be imported are specified in the filesToImport parameter.

        The provider parameter allows this operation to deal with the source object in an abstract way. This operation calls methods on the provider and the provider in turn calls specific methods on the source object.

        The filesToImport parameter specifies what contents of the root file system object are to be imported.

        The default import behavior is to recreate the complete container structure for the file system objects in their destination. If setCreateContainerStructure is set to false, then the container structure created for each of the file system objects is relative to the supplied root file system object.

        Parameters:
        containerPath - the full path of the destination container within the workspace
        source - the root file system object to import from
        provider - the file system structure provider to use
        overwriteImplementor - the overwrite strategy to use
        filesToImport - the list of file system objects to be imported (element type: Object)
      • ImportOperation

        public ImportOperation​(IPath containerPath,
                               IImportStructureProvider provider,
                               IOverwriteQuery overwriteImplementor,
                               List filesToImport)
        Creates a new operation that imports specific file system objects.

        The provider parameter allows this operation to deal with the source object in an abstract way. This operation calls methods on the provider and the provider in turn calls specific methods on the source object.

        The filesToImport parameter specifies what file system objects are to be imported.

        The default import behavior is to recreate the complete container structure for the file system objects in their destination. If setCreateContainerStructure is set to false, then no container structure is created for each of the file system objects.

        Parameters:
        containerPath - the full path of the destination container within the workspace
        provider - the file system structure provider to use
        overwriteImplementor - the overwrite strategy to use
        filesToImport - the list of file system objects to be imported (element type: Object)
    • Method Detail

      • execute

        protected void execute​(IProgressMonitor progressMonitor)
        Description copied from class: WorkspaceModifyOperation
        Performs the steps that are to be treated as a single logical workspace change.

        Subclasses must implement this method.

        Specified by:
        execute in class WorkspaceModifyOperation
        Parameters:
        progressMonitor - the progress monitor to use to display progress and field user requests to cancel
      • getStatus

        public IStatus getStatus()
        Returns the status of the import operation. If there were any errors, the result is a status object containing individual status objects for each error. If there were no errors, the result is a status object with error code OK.
        Returns:
        the status
      • setCreateContainerStructure

        public void setCreateContainerStructure​(boolean value)
        Sets whether the containment structures that are implied from the full paths of file system objects being imported should be duplicated in the workbench.
        Parameters:
        value - true if containers should be created, and false otherwise
      • setFilesToImport

        public void setFilesToImport​(List filesToImport)
        Sets the file system objects to import.
        Parameters:
        filesToImport - the list of file system objects to be imported (element type: Object)
      • setOverwriteResources

        public void setOverwriteResources​(boolean value)
        Sets whether imported file system objects should automatically overwrite existing workbench resources when a conflict occurs.
        Parameters:
        value - true to automatically overwrite, and false otherwise
      • setVirtualFolders

        public void setVirtualFolders​(boolean virtualFolders)
        Set Whether groups and links will be created instead of files and folders
        Parameters:
        virtualFolders - the desired behaviour
        Since:
        3.6
      • setCreateLinks

        public void setCreateLinks​(boolean links)
        Set Whether links will be created instead of files and folders
        Parameters:
        links - the desired behaviour
        Since:
        3.6
      • setRelativeVariable

        public void setRelativeVariable​(String variable)
        Set a variable relative to which the links are created
        Parameters:
        variable - base for relative links
        Since:
        3.6