Files
VisualSapfor/src/Visual_DVM_2021/Passes/All/CreateGroupFromFiles.java

54 lines
2.1 KiB
Java
Raw Normal View History

package Visual_DVM_2021.Passes.All;
2024-10-07 14:22:52 +03:00
import Common.Utils.CommonUtils;
2024-10-09 22:01:19 +03:00
import _VisualDVM.Constants;
import _VisualDVM.Current;
2024-10-08 23:45:06 +03:00
import Common.Visual.Windows.Dialog.VFileChooser;
2024-10-09 22:01:19 +03:00
import _VisualDVM.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)) {
2024-10-07 14:22:52 +03:00
Log.Writeln_(CommonUtils.Brackets(dir) + "\nявляется служебной папкой визуализатора!");
return false;
}
if (!Utils.validateProjectFile(dir, Log)) {
2024-10-07 22:04:09 +03:00
Log.Writeln_("Имя папки " + CommonUtils.Brackets(dir.getName())
+ " содержит запрещённые символы "
+ CommonUtils.printAllForbiddenCharacters() + ", или кириллицу.");
return false;
}
if (passes.get(PassCode_2021.PublishGroup).Do(dir.getName().toUpperCase())) {
group = Current.getGroup();
} else return false;
//--
return super.canStart(files, group);
}
}