51 lines
2.0 KiB
Java
51 lines
2.0 KiB
Java
|
|
package Visual_DVM_2021.Passes.All;
|
|||
|
|
import Common.Constants;
|
|||
|
|
import Common.Current;
|
|||
|
|
import Common.Utils.Files.VFileChooser;
|
|||
|
|
import Common.Utils.Utils;
|
|||
|
|
import GlobalData.Settings.SettingName;
|
|||
|
|
import TestingSystem.Common.Group.Group;
|
|||
|
|
import Visual_DVM_2021.Passes.PassCode_2021;
|
|||
|
|
import Visual_DVM_2021.Passes.Pass_2021;
|
|||
|
|
|
|||
|
|
import java.io.File;
|
|||
|
|
import java.util.Vector;
|
|||
|
|
public class CreateGroupFromFiles extends PublishTests{
|
|||
|
|
Group group;
|
|||
|
|
VFileChooser fileChooser = new VFileChooser("Выберите файлы для создания тестов");
|
|||
|
|
|
|||
|
|
@Override
|
|||
|
|
protected PassCode_2021 getCreateTestCode() {
|
|||
|
|
return PassCode_2021.CreateTestFromFile;
|
|||
|
|
}
|
|||
|
|
@Override
|
|||
|
|
protected String getNoFilesMessage() {
|
|||
|
|
return "ни одного файла";
|
|||
|
|
}
|
|||
|
|
@Override
|
|||
|
|
protected boolean canStart(Object... args) throws Exception {
|
|||
|
|
Utils.RestoreSelectedDirectory(fileChooser);
|
|||
|
|
Vector<File> files = fileChooser.ShowMultiDialog();
|
|||
|
|
if (files.isEmpty()){
|
|||
|
|
Log.Writeln_("Не выбрано ни одного файла.");
|
|||
|
|
return false;
|
|||
|
|
}
|
|||
|
|
File dir = fileChooser.getCurrentDirectory();
|
|||
|
|
Pass_2021.passes.get(PassCode_2021.UpdateSetting).Do(SettingName.ProjectsSearchDirectory, dir);
|
|||
|
|
//---------------
|
|||
|
|
if (dir.getName().equals(Constants.data)) {
|
|||
|
|
Log.Writeln_(Utils.Brackets(dir) + "\nявляется служебной папкой визуализатора!");
|
|||
|
|
return false;
|
|||
|
|
}
|
|||
|
|
if (!Utils.validateProjectFile(dir, Log)) {
|
|||
|
|
Log.Writeln_("Имя папки " + Utils.Brackets(dir.getName()) + " содержит запрещённые символы " + Constants.all_forbidden_characters_string + ", или кириллицу.");
|
|||
|
|
return false;
|
|||
|
|
}
|
|||
|
|
if (passes.get(PassCode_2021.PublishGroup).Do(dir.getName().toUpperCase())) {
|
|||
|
|
group = Current.getGroup();
|
|||
|
|
} else return false;
|
|||
|
|
//--
|
|||
|
|
return super.canStart(files, group);
|
|||
|
|
}
|
|||
|
|
}
|