61 lines
2.3 KiB
Java
61 lines
2.3 KiB
Java
|
|
package Visual_DVM_2021.Passes.All;
|
||
|
|
import Common.Current;
|
||
|
|
import Common.Global;
|
||
|
|
import Common.UI.UI;
|
||
|
|
import Repository.Server.ServerCode;
|
||
|
|
import Repository.Server.ServerExchangeUnit_2021;
|
||
|
|
import TestingSystem.DVM.Tasks.TestRunTask;
|
||
|
|
import TestingSystem.DVM.TasksPackage.TasksPackage;
|
||
|
|
import TestingSystem.DVM.TasksPackage.TasksPackageState;
|
||
|
|
import Visual_DVM_2021.Passes.Server.TestingSystemPass;
|
||
|
|
import javafx.util.Pair;
|
||
|
|
|
||
|
|
import java.util.Vector;
|
||
|
|
public class ActualizeDVMPackages extends TestingSystemPass<Vector<Pair<Long, TasksPackageState>>> {
|
||
|
|
@Override
|
||
|
|
protected boolean needsAnimation() {
|
||
|
|
return false;
|
||
|
|
}
|
||
|
|
@Override
|
||
|
|
protected boolean canStart(Object... args) throws Exception {
|
||
|
|
target = new Vector<>();
|
||
|
|
for (TasksPackage tasksPackage : Global.testingServer.account_db.packages.Data.values()) {
|
||
|
|
if (tasksPackage.state.isActive())
|
||
|
|
target.add(new Pair<>(tasksPackage.id, tasksPackage.state));
|
||
|
|
}
|
||
|
|
return !target.isEmpty();
|
||
|
|
}
|
||
|
|
@Override
|
||
|
|
protected void ServerAction() throws Exception {
|
||
|
|
Command(new ServerExchangeUnit_2021(ServerCode.ActualizeDVMPackages, Current.getAccount().email, target));
|
||
|
|
}
|
||
|
|
@Override
|
||
|
|
protected void performDone() throws Exception {
|
||
|
|
int i = 0;
|
||
|
|
Vector<Pair<TasksPackage, Vector<TestRunTask>>> res = (Vector<Pair<TasksPackage, Vector<TestRunTask>>>) response.object;
|
||
|
|
Global.testingServer.account_db.BeginTransaction();
|
||
|
|
for (Pair<TasksPackage, Vector<TestRunTask>> pair : res) {
|
||
|
|
TasksPackage tasksPackage = pair.getKey();
|
||
|
|
Global.testingServer.account_db.UpdateWithCheck(tasksPackage);
|
||
|
|
if (tasksPackage.state.equals(TasksPackageState.Done)) {
|
||
|
|
++i;
|
||
|
|
for (TestRunTask task : pair.getValue()) {
|
||
|
|
Global.testingServer.account_db.UpdateWithCheck(task);
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
Global.testingServer.account_db.Commit();
|
||
|
|
/*
|
||
|
|
if (i == target.size()) {
|
||
|
|
UI.testingBar.autorefreshButton.doClick();
|
||
|
|
System.out.println("All packages are not active");
|
||
|
|
}
|
||
|
|
*/
|
||
|
|
}
|
||
|
|
@Override
|
||
|
|
protected void showDone() throws Exception {
|
||
|
|
Global.testingServer.account_db.packages.RefreshUI();
|
||
|
|
Global.testingServer.account_db.testRunTasks.ShowUI();
|
||
|
|
}
|
||
|
|
}
|