++
перевод инфы о файлах в джсон. попутно задел под пользовательские типы файлов стиль язык
This commit is contained in:
@@ -12,6 +12,8 @@ import _VisualDVM.ProjectData.Files.FileState;
|
||||
import _VisualDVM.ProjectData.Files.FileType;
|
||||
import _VisualDVM.ProjectData.Files.ProjectFile;
|
||||
import _VisualDVM.ProjectData.LanguageName;
|
||||
import _VisualDVM.TestingSystem.Common.Test.Json.TestFileJson;
|
||||
import _VisualDVM.TestingSystem.Common.Test.Json.TestFilesJson;
|
||||
import com.sun.org.glassfish.gmbal.Description;
|
||||
import org.apache.commons.io.FileUtils;
|
||||
|
||||
@@ -27,8 +29,8 @@ public class Test extends riDBObject {
|
||||
public String args = ""; //аргументы командной строки. на всякий случай поле зарезервирую. пусть будут.
|
||||
@Description("DEFAULT -1")
|
||||
public int group_id = CommonConstants.Nan;
|
||||
@Description("DEFAULT ''")
|
||||
public String files = ""; //файлы теста
|
||||
//@Description("DEFAULT ''")
|
||||
//public String files = ""; //файлы теста
|
||||
@Description("DEFAULT ''")
|
||||
public String extended_description="";
|
||||
@Description("DEFAULT ''")
|
||||
@@ -110,9 +112,7 @@ public class Test extends riDBObject {
|
||||
throw new RepositoryRefuseException("Не удалось переписать архив проекта");
|
||||
return true;
|
||||
}
|
||||
public String getFilesForTable() {
|
||||
return files.replace("\n", ";");
|
||||
}
|
||||
//todo проджект файлы тут не нужны. сделать с учетом джсона
|
||||
public LinkedHashMap<LanguageName, Vector<ProjectFile>> getPrograms() {
|
||||
LinkedHashMap<LanguageName, Vector<ProjectFile>> res = new LinkedHashMap<>();
|
||||
//--
|
||||
@@ -120,14 +120,12 @@ public class Test extends riDBObject {
|
||||
res.put(LanguageName.c, new Vector<>());
|
||||
res.put(LanguageName.cpp, new Vector<>());
|
||||
//--
|
||||
String[] files_names = files.split("\n");
|
||||
for (String file_name : files_names) {
|
||||
ProjectFile file = new ProjectFile(new File(file_name));
|
||||
TestFilesJson json = Utils_.gson.fromJson(packedFilesJson,TestFilesJson.class);
|
||||
for (TestFileJson file : json.values) {
|
||||
//--
|
||||
if (!file.state.equals(FileState.Excluded) &&
|
||||
file.fileType.equals(FileType.program) &&
|
||||
(!file.languageName.equals(LanguageName.n)))
|
||||
res.get(file.languageName).add(file);
|
||||
if (file.type.equals(FileType.program) &&
|
||||
(!file.language.equals(LanguageName.n)))
|
||||
res.get(file.language).add(new ProjectFile(new File(file.name)));
|
||||
}
|
||||
return res;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user