Package org.eclipse.ui.wizards.datatransfer

## Class PopulateRootOperation

- java.lang.Object
- - org.eclipse.ui.wizards.datatransfer.SelectFilesOperation
  - - org.eclipse.ui.wizards.datatransfer.PopulateRootOperation

All Implemented Interfaces:
  `IRunnableWithProgress`

    public class PopulateRootOperation
    extends SelectFilesOperation

The PopulateFilesOperation is an operation used to populate a FileSystemElement one level deep rather than the whole way.

### Constructor Summary

Constructors
`PopulateRootOperation​(Object rootObject, IImportStructureProvider structureProvider)` Create a new `PopulateFilesOperation`.

### Method Summary

All Methods Instance Methods Concrete Methods
`protected FileSystemElement` `createElement​(FileSystemElement parent, Object fileSystemObject)` Creates and returns a `FileSystemElement` if the specified file system object merits one.
`protected FileSystemElement` `createElement​(FileSystemElement parent, Object fileSystemObject, int depth)` Creates and returns a `FileSystemElement` if the specified file system object merits one.

### Methods inherited from class org.eclipse.ui.wizards.datatransfer.SelectFilesOperation

`getExtensionFor, getResult, hasDesiredExtension, run, setDesiredExtensions`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### PopulateRootOperation

    public PopulateRootOperation​(Object rootObject,
                                 IImportStructureProvider structureProvider)

Create a new `PopulateFilesOperation`.

Parameters:
  `rootObject` - the object to be populated
  `structureProvider` - the object that defines how we are to populate it.

### Method Detail

#### createElement

    protected FileSystemElement createElement​(FileSystemElement parent,
                                              Object fileSystemObject)
                                       throws InterruptedException

Creates and returns a `FileSystemElement` if the specified file system object merits one. The criteria for this are: - if the file system object is a container then it must have either a child container or an associated file - if the file system object is a file then it must have an extension suitable for selection

Overrides:
  `createElement` in class `SelectFilesOperation`
Throws:
  `InterruptedException`

#### createElement

    protected FileSystemElement createElement​(FileSystemElement parent,
                                              Object fileSystemObject,
                                              int depth)
                                       throws InterruptedException

Creates and returns a `FileSystemElement` if the specified file system object merits one. The criteria for this are: - if the file system object is a container then it must have either a child container or an associated file - if the file system object is a file then it must have an extension suitable for selection recurse down for depth to populate children

Throws:
  `InterruptedException`