Search in sources :

Example 1 with LocalTree

use of org.pentaho.di.plugins.fileopensave.providers.local.model.LocalTree in project pentaho-kettle by pentaho.

the class LocalFileProvider method getTree.

/**
 * @return
 */
@Override
public Tree getTree() {
    LocalTree localTree = new LocalTree(NAME);
    List<LocalFile> rootFiles = new ArrayList<>();
    ArrayList<Path> paths = new ArrayList<>();
    if (Const.isRunningOnWebspoonMode()) {
        Path kettleUserDataDirectoryPath = Paths.get(Const.getUserDataDirectory());
        paths.add(kettleUserDataDirectoryPath);
    } else {
        FileSystems.getDefault().getRootDirectories().forEach(paths::add);
    }
    paths.forEach(path -> {
        LocalDirectory localDirectory = new LocalDirectory();
        localDirectory.setPath(path.toString());
        localDirectory.setName(path.toString());
        localDirectory.setRoot(NAME);
        localDirectory.setHasChildren(true);
        rootFiles.add(localDirectory);
    });
    localTree.setFiles(rootFiles);
    return localTree;
}
Also used : Path(java.nio.file.Path) LocalFile(org.pentaho.di.plugins.fileopensave.providers.local.model.LocalFile) LocalDirectory(org.pentaho.di.plugins.fileopensave.providers.local.model.LocalDirectory) LocalTree(org.pentaho.di.plugins.fileopensave.providers.local.model.LocalTree) ArrayList(java.util.ArrayList)

Aggregations

Path (java.nio.file.Path)1 ArrayList (java.util.ArrayList)1 LocalDirectory (org.pentaho.di.plugins.fileopensave.providers.local.model.LocalDirectory)1 LocalFile (org.pentaho.di.plugins.fileopensave.providers.local.model.LocalFile)1 LocalTree (org.pentaho.di.plugins.fileopensave.providers.local.model.LocalTree)1