Skip to content
Snippets Groups Projects
Commit d31772c4 authored by Unknown's avatar Unknown
Browse files

refactoring

parent db112f94
No related branches found
No related tags found
No related merge requests found
......@@ -45,7 +45,7 @@ public class CheckStatusOfHaaS implements Command {
@Override
public void run() {
try {
jobManager = new JobManager(getWorkingDirectoryPath(), context);
jobManager = new JobManager(getWorkingDirectoryPath());
if (uiService.isHeadless()) {
downloadAll();
} else {
......
......@@ -9,8 +9,6 @@ import java.util.Iterator;
import java.util.LinkedList;
import java.util.stream.Collectors;
import org.scijava.Context;
import cz.it4i.fiji.haas_java_client.HaaSClient;
import cz.it4i.fiji.haas_java_client.JobState;
import javafx.beans.value.ObservableValueBase;
......@@ -24,15 +22,12 @@ public class JobManager {
private HaaSClient haasClient;
private Context context;
public JobManager(Path workDirectory, Context ctx) throws IOException {
this.context = ctx;
public JobManager(Path workDirectory) throws IOException {
this.workDirectory = workDirectory;
context.inject(this);
Files.list(this.workDirectory).filter(p -> Files.isDirectory(p) && Job.isJobPath(p)).forEach(p -> {
try {
jobs.add(inject(new Job(p, this::getHaasClient)));
jobs.add(new Job(p, this::getHaasClient));
} catch (IOException e) {
e.printStackTrace();
}
......@@ -40,12 +35,6 @@ public class JobManager {
}
private Job inject(Job job) {
context.inject(job);
return job;
}
public void startJob(Path path, Collection<Path> files, Progress progress) throws IOException {
jobs.add(new Job(path, files, this::getHaasClient, progress));
}
......@@ -72,6 +61,7 @@ public class JobManager {
return haasClient;
}
public static class JobInfo extends ObservableValueBase<JobInfo> {
private Job job;
......@@ -103,13 +93,12 @@ public class JobManager {
public String getEndTime() {
return getStringFromTimeSafely(job.getEndTime());
}
public void downloadData(Progress progress) {
job.download(progress);
fireValueChangedEvent();
}
public void updateInfo() throws IOException {
job.updateState();
}
......@@ -120,7 +109,7 @@ public class JobManager {
}
private String getStringFromTimeSafely(Calendar time) {
return time!= null ? time.getTime().toString() : "N/A";
return time != null ? time.getTime().toString() : "N/A";
}
}
......
package cz.it4i.fiji.haas;
import javax.swing.JDialog;
import javax.swing.WindowConstants;
import cz.it4i.fiji.haas.ui.ProgressDialog;
public class ModalDialogs {
public static ProgressDialog doModal(ProgressDialog dialog) {
public static <T extends JDialog>T doModal(T dialog) {
dialog.setModal(true);
dialog.setDefaultCloseOperation(WindowConstants.DO_NOTHING_ON_CLOSE);
new Thread(()->dialog.setVisible(true)).start();
return dialog;
}
public static CheckStatusOfHaaSWindow doModal(CheckStatusOfHaaSWindow window) {
window.setModal(true);
window.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
new Thread(() -> window.setVisible(true)).start();
return window;
}
}
......@@ -49,7 +49,7 @@ public class RunWithHaaS implements Command {
@Override
public void run() {
try {
jobManager = new JobManager(getWorkingDirectoryPath(), context);
jobManager = new JobManager(getWorkingDirectoryPath());
jobManager.startJob(getWorkingDirectoryPath(), getContent(dataDirectory),
ModalDialogs.doModal(new ProgressDialog(getFrame())));
} catch (IOException e) {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment