private IWizardPage fSelectTypePage;
private IWizardPage fOptions;
- private final List<String> fTraceTypesToScan = new ArrayList<String>();
- private final Set<String> fParentFilesToScan = new HashSet<String>();
+ private final List<String> fTraceTypesToScan = new ArrayList<>();
+ private final Set<String> fParentFilesToScan = new HashSet<>();
private ImportTraceContentProvider fScannedTraces = new ImportTraceContentProvider(fTraceTypesToScan, fParentFilesToScan);
- private final Map<TraceValidationHelper, Boolean> fResults = new HashMap<TraceValidationHelper, Boolean>();
+ private final Map<TraceValidationHelper, Boolean> fResults = new HashMap<>();
private boolean fOverwrite = true;
private boolean fLinked = true;
private BlockingQueue<TraceValidationHelper> fTracesToScan;
- private final Set<FileAndName> fTraces = new TreeSet<FileAndName>();
+ private final Set<FileAndName> fTraces = new TreeSet<>();
- private Map<String, Set<String>> fParentFiles = new HashMap<String, Set<String>>();
+ private Map<String, Set<String>> fParentFiles = new HashMap<>();
// Target import directory ('Traces' folder)
private IFolder fTargetFolder;
}
}
else {
- List<File> subList = new ArrayList<File>();
+ List<File> subList = new ArrayList<>();
IPath path = fTargetFolder.getFullPath();
File parentFile = traceToImport.getFile();
final boolean isFile = parentFile.isFile();
if (fOverwrite || !resource.exists()) {
subList.add(parentFile);
parentFile = parentFile.getParentFile();
- final FileInputStream source = new FileInputStream(traceToImport.getFile());
- if (resource.exists()) {
- resource.delete(IResource.FORCE, new NullProgressMonitor());
+ try (final FileInputStream source = new FileInputStream(traceToImport.getFile());) {
+ if (resource.exists()) {
+ resource.delete(IResource.FORCE, new NullProgressMonitor());
+ }
+ resource.create(source, true, new NullProgressMonitor());
}
- resource.create(source, true, new NullProgressMonitor());
- source.close();
setTraceType(traceToImport);
success = true;
}
public void setTraceTypesToScan(List<String> tracesToScan) {
// intersection to know if there's a diff.
// if there's a diff, we need to re-enque everything
- List<String> added = new ArrayList<String>();
+ List<String> added = new ArrayList<>();
for (String traceLoc : tracesToScan) {
if (!fTraceTypesToScan.contains(traceLoc)) {
added.add(traceLoc);
private void updateTracesToScan(final List<String> added) {
// Treeset is used instead of a hashset since the traces should be read
// in the order they were added.
- final Set<String> filesToScan = new TreeSet<String>();
+ final Set<String> filesToScan = new TreeSet<>();
for (String name : fParentFiles.keySet()) {
filesToScan.addAll(fParentFiles.get(name));
}
* I am a job. Make me work
*/
private synchronized IStatus updateFiles(IProgressMonitor monitor, String traceToScanAbsPath) {
- final Set<String> filesToScan = new TreeSet<String>();
+ final Set<String> filesToScan = new TreeSet<>();
int workToDo = 1;
for (String name : fParentFiles.keySet()) {