@Override public Configuration getConfiguration() { final Configuration configuration = new Configuration(); final Map<String, File> configurationFiles = new HashMap<>(); Arrays.stream(getDirectories()).map(File::new).filter(File::isDirectory).forEach(c -> { final File[] array = c.listFiles(); assert (array != null); Arrays.stream(array).filter(File::isFile).filter(f -> !configurationFiles.containsKey(f.getName())) .filter(f -> FilenameUtils.getExtension(f.getName()).equalsIgnoreCase("xml")) .forEach(f -> configurationFiles.put(f.getName(), f)); }); if (configurationFiles.size() == 0) { throw new IllegalStateException("Specified directories does not contain any Hadoop configuration files"); } configurationFiles.values().stream().map(File::toURI).map(Path::new).forEach(configuration::addResource); return configuration; }
private List<DirectoryPathPanel> getDirectoriesListPanel(final JPanel parent) { _pathPanels = new ArrayList<>(); if (_server != null) { final String[] directories = _server.getDirectories(); if (directories != null) { for (final String directory : directories) { final DirectoryPathPanel directoryPanel = new DirectoryPathPanel(new File(directory), parent); _pathPanels.add(directoryPanel); } } else { _pathPanels.add(new DirectoryPathPanel(null, parent)); } } else { _pathPanels.add(new DirectoryPathPanel(null, parent)); } return _pathPanels; }
final Element directoriesElement = getDocument().createElement("directories"); hadoopClusterElement.appendChild(directoriesElement); for (final String directory : directoryBasedHadoopClusterInformation.getDirectories()) { appendElement(directoriesElement, "directory", directory);