Отображение результатов задач.

This commit is contained in:
2023-12-17 21:38:54 +03:00
parent 6011a2851c
commit 86c6c4700e
7 changed files with 73 additions and 25 deletions

View File

@@ -10,6 +10,8 @@ import TestingSystem.Common.Test.TestType;
import TestingSystem.DVM.Configuration.Configuration;
import com.google.gson.annotations.Expose;
import java.io.File;
import java.nio.file.Paths;
import java.util.Vector;
public class DVMRunTask extends DVMTask {
@Expose
@@ -112,20 +114,22 @@ public class DVMRunTask extends DVMTask {
public boolean isVisible() {
return Global.testingServer.db.dvmRunTasks.applyFilters(this);
}
public File getCompilationTaskWorkspace() {
return Paths.get(
Global.PackagesDirectory.getAbsolutePath(),
String.valueOf(dvm_package_id),
"results",
String.valueOf(dvmcompilationtask_id)
).toFile();
}
public String getCompilationOutput() {
return "?";
return getResultFile(new File(getCompilationTaskWorkspace(),Constants.out_file));
}
public String getCompilationErrors() {
return "?";
}
public String getOutput() {
return "?";
}
public String getErrors() {
return "?";
return getResultFile(new File(getCompilationTaskWorkspace(),Constants.err_file));
}
public String getStatistic() {
return "?";
return getResultFile(new File(getLocalWorkspace(), Constants.statistic + ".txt"));
}
}
//--

View File

@@ -2,6 +2,7 @@ package TestingSystem.DVM.DVMTasks;
import Common.Constants;
import Common.Database.DBObject;
import Common.Database.iDBObject;
import Common.Global;
import GlobalData.Tasks.TaskState;
import ProjectData.LanguageName;
import TestingSystem.Common.Group.Group;
@@ -9,11 +10,14 @@ import TestingSystem.Common.Test.Test;
import TestingSystem.Common.Test.TestType;
import TestingSystem.DVM.Configuration.Configuration;
import com.google.gson.annotations.Expose;
import com.sun.org.glassfish.gmbal.Description;
import org.apache.commons.io.FileUtils;
import java.util.Date;
import java.io.File;
import java.nio.file.Paths;
import java.util.Vector;
public class DVMTask extends iDBObject {
@Expose
public int dvm_package_id = Constants.Nan;
@Expose
public int group_id = Constants.Nan;
@Expose
@@ -60,7 +64,7 @@ public class DVMTask extends iDBObject {
public DVMTask() {
}
public DVMTask(Configuration configuration,
Group group, Test test, String flags_in) {
Group group, Test test, String flags_in) {
group_id = group.id;
test_id = test.id;
group_description = group.description;
@@ -69,7 +73,34 @@ public class DVMTask extends iDBObject {
language = group.language;
flags = flags_in;
}
public File getLocalWorkspace() {
return
Paths.get(Global.PackagesDirectory.getAbsolutePath(),
String.valueOf(dvm_package_id),
"results",
String.valueOf(id)).toFile();
}
public Vector<String> pack(Object arg) {
return null;
}
public String getResultFile(File resultFile) {
String res = "";
if (dvm_package_id == Constants.Nan) res = "задача ещё не выполнялась";
else {
if (resultFile.exists()) {
try {
res = FileUtils.readFileToString(resultFile);
} catch (Exception ex) {
ex.printStackTrace();
}
} else res = "не существует";
}
return res;
}
public String getOutput() {
return getResultFile(new File(getLocalWorkspace(), Constants.out_file));
}
public String getErrors() {
return getResultFile(new File(getLocalWorkspace(), Constants.err_file));
}
}