v++
Оптимизация актуальности задач.
This commit is contained in:
@@ -25,6 +25,7 @@ import TestingSystem.DVM.Tasks.TestCompilationTask;
|
||||
import TestingSystem.DVM.Tasks.TestRunTask;
|
||||
import TestingSystem.DVM.Tasks.TestTask;
|
||||
import TestingSystem.DVM.TasksPackage.TasksPackage;
|
||||
import TestingSystem.DVM.TasksPackage.TasksPackageState;
|
||||
import TestingSystem.DVM.UserConnection;
|
||||
import TestingSystem.SAPFOR.SapforConfiguration.SapforConfiguration;
|
||||
import TestingSystem.SAPFOR.SapforConfigurationCommand.SapforConfigurationCommand;
|
||||
@@ -108,7 +109,8 @@ public class TestingServer extends RepositoryServer<TestsDatabase> {
|
||||
public static void TimerOn() {
|
||||
System.out.println("timer on");
|
||||
checkTimer = new Timer(Global.properties.CheckTestingIntervalSeconds * 1000, e -> {
|
||||
Pass_2021.passes.get(PassCode_2021.SynchronizeTestsTasks).Do();
|
||||
// Pass_2021.passes.get(PassCode_2021.SynchronizeTestsTasks).Do();
|
||||
Pass_2021.passes.get(PassCode_2021.ActualizePackages).Do();
|
||||
});
|
||||
checkTimer.start();
|
||||
}
|
||||
@@ -354,11 +356,17 @@ public class TestingServer extends RepositoryServer<TestsDatabase> {
|
||||
UpdateTestTasks();
|
||||
response = new ServerExchangeUnit_2021(ServerCode.OK);
|
||||
break;
|
||||
case GetPackagesInfo:
|
||||
Print("Получить данные по пакетам");
|
||||
case ActualizeDVMPackages:
|
||||
Print("Получить данные по пакетам DVM");
|
||||
SetCurrentAccountDB(request.arg);
|
||||
response = new ServerExchangeUnit_2021(ServerCode.OK);
|
||||
GetPackagesInfo();
|
||||
ActualizeDVMPackages();
|
||||
break;
|
||||
case ActualizeSAPFORPackages:
|
||||
Print("Получить данные по пакетам SAPFOR");
|
||||
SetCurrentAccountDB(request.arg);
|
||||
response = new ServerExchangeUnit_2021(ServerCode.OK);
|
||||
ActualizeSAPFORPackages();
|
||||
break;
|
||||
default:
|
||||
throw new RepositoryRefuseException("Неподдерживаемый код: " + code);
|
||||
@@ -372,7 +380,7 @@ public class TestingServer extends RepositoryServer<TestsDatabase> {
|
||||
account_db.Delete(compilationTask);
|
||||
for (TestRunTask runTask : compilationTask.runTasks) {
|
||||
runTask.ChangeDate = new Date().getTime();
|
||||
account_db.Update(runTask);
|
||||
account_db.UpdateWithCheck(runTask);
|
||||
}
|
||||
}
|
||||
account_db.Commit();
|
||||
@@ -505,7 +513,6 @@ public class TestingServer extends RepositoryServer<TestsDatabase> {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//-------------------------------------------------------------------------------------->>>
|
||||
@Override
|
||||
protected Database getDefaultDatabase() {
|
||||
@@ -621,7 +628,7 @@ public class TestingServer extends RepositoryServer<TestsDatabase> {
|
||||
for (SapforTask task : tasks) {
|
||||
account_db.Delete(task);
|
||||
}
|
||||
} else if (object instanceof SapforConfiguration){
|
||||
} else if (object instanceof SapforConfiguration) {
|
||||
SapforConfiguration sapforConfiguration = (SapforConfiguration) object;
|
||||
Vector<SapforConfigurationCommand> commands = new Vector<>();
|
||||
for (SapforConfigurationCommand command : db.sapforConfigurationCommands.Data.values()) {
|
||||
@@ -634,7 +641,57 @@ public class TestingServer extends RepositoryServer<TestsDatabase> {
|
||||
}
|
||||
}
|
||||
//---------------------------------------------------------------------------------------------->>>
|
||||
void GetPackagesInfo() throws Exception{
|
||||
Vector<Long> keys = (Vector<Long>) request.object;
|
||||
void ActualizeDVMPackages() throws Exception {
|
||||
Vector<Pair<Long, TasksPackageState>> keys_pairs = (Vector<Pair<Long, TasksPackageState>>) request.object;
|
||||
//--
|
||||
Vector<Pair<TasksPackage, Vector<TestRunTask>>> res = new Vector<>();
|
||||
//--
|
||||
for (Pair<Long, TasksPackageState> p : keys_pairs) {
|
||||
if (account_db.packages.containsKey(p.getKey())) {
|
||||
TasksPackage tasksPackage = account_db.packages.get(p.getKey());
|
||||
if (!p.getValue().equals(tasksPackage.state)) {
|
||||
Vector<TestRunTask> tasks = new Vector<>();
|
||||
//если пакет завершен, берем задачи.
|
||||
if (tasksPackage.state.equals(TasksPackageState.Done)) {
|
||||
for (TestRunTask task : account_db.testRunTasks.Data.values()) {
|
||||
if (task.taskspackage_id == tasksPackage.id) {
|
||||
System.out.println(task.id+":"+task.state);
|
||||
tasks.add(task);
|
||||
}
|
||||
}
|
||||
}
|
||||
res.add(new Pair<>(tasksPackage, tasks));
|
||||
}
|
||||
}
|
||||
}
|
||||
response.object = res;
|
||||
//--
|
||||
}
|
||||
//--
|
||||
void ActualizeSAPFORPackages() throws Exception {
|
||||
Vector<Pair<Long, TasksPackageState>> keys_pairs = (Vector<Pair<Long, TasksPackageState>>) request.object;
|
||||
//--
|
||||
Vector<Pair<SapforTasksPackage, Vector<SapforTask>>> res = new Vector<>();
|
||||
//--
|
||||
for (Pair<Long, TasksPackageState> p : keys_pairs) {
|
||||
if (account_db.sapforTasksPackages.containsKey(p.getKey())) {
|
||||
SapforTasksPackage tasksPackage = account_db.sapforTasksPackages.get(p.getKey());
|
||||
if (!p.getValue().equals(tasksPackage.state)) {
|
||||
Vector<SapforTask> tasks = new Vector<>();
|
||||
//если пакет завершен, берем задачи.
|
||||
if (tasksPackage.state.equals(TasksPackageState.Done)) {
|
||||
for (SapforTask task : account_db.sapforTasks.Data.values()) {
|
||||
if (task.sapfortaskspackage_id == tasksPackage.id) {
|
||||
System.out.println(task.id+":"+task.state);
|
||||
tasks.add(task);
|
||||
}
|
||||
}
|
||||
}
|
||||
res.add(new Pair<>(tasksPackage, tasks));
|
||||
}
|
||||
}
|
||||
}
|
||||
response.object = res;
|
||||
//--
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user