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

100 lines
3.3 KiB
Java
Raw Normal View History

package Visual_DVM_2021.Passes.All;
2023-09-17 22:13:42 +03:00
import Common.Current;
import Common.Global;
import Common.UI.UI;
import Common.UI.Windows.Dialog.Dialog;
2023-09-17 22:13:42 +03:00
import Common.Utils.Utils;
import GlobalData.FileObject.FileObject;
import GlobalData.FileObject.FileObjectsDataSet;
import GlobalData.FileObject.FileObjectsFields;
import Visual_DVM_2021.Passes.PassCode_2021;
import Visual_DVM_2021.Passes.Pass_2021;
import Visual_DVM_2021.Passes.UI.CopyProjectFields;
2023-09-17 22:13:42 +03:00
import javax.swing.*;
2023-09-17 22:13:42 +03:00
import java.io.File;
import java.nio.file.Paths;
import java.util.*;
2023-09-17 22:13:42 +03:00
public class DeleteDownloadedBugReports extends Pass_2021<Vector<File>> {
@Override
protected boolean needsAnimation() {
return true;
}
@Override
public boolean needsConfirmations() {
return true;
}
@Override
protected boolean canStart(Object... args) throws Exception {
target = null;
if (passes.get(PassCode_2021.GetOldBugReports).Do()){
target = (Vector<File>) passes.get(PassCode_2021.GetOldBugReports).target;
FileObjectsDataSet set = new FileObjectsDataSet();
for (File file: target){
set.put(file.getName(),new FileObject(file));
}
//-
Dialog<Object, FileObjectsFields> dialog = new Dialog<Object, FileObjectsFields>(FileObjectsFields.class) {
@Override
public int getDefaultHeight() {
return 230;
}
@Override
public void Init(Object... params) {
set.mountUI((JPanel) content);
set.ShowUI();
}
@Override
public void validateFields() {
}
};
if (dialog.ShowDialog("Найдено "+target.size()+" загруженных баг-репортов, не использовавшихся 2 месяца и более. Удалить их?")) {
return true;
}
}
/*
else return false;
File workspace = Global.visualiser.getWorkspace();
2023-09-17 22:13:42 +03:00
File[] files = workspace.listFiles(pathname -> pathname.isDirectory() && pathname.getName().toLowerCase().startsWith("bugreport_"));
if (files != null) {
target = new Vector<>(Arrays.asList(files));
//---
Calendar c = new GregorianCalendar();
c.setTimeInMillis(System.currentTimeMillis());
c.add(Calendar.MONTH, -2);
Date date = c.getTime();
System.out.println(date);
//---
return false;
//---
// return UI.Warning("Будет удалено " + target.size() + " скачанных отчётов об ошибках." +
// (Current.HasProject() ? "(Текущий проект будет закрыт)" : "")
// );
2023-09-17 22:13:42 +03:00
}
*/
2023-09-17 22:13:42 +03:00
return false;
}
@Override
protected void performPreparation() throws Exception {
/*
2023-09-17 22:13:42 +03:00
if (Current.HasProject())
passes.get(PassCode_2021.CloseCurrentProject).Do();
*/
2023-09-17 22:13:42 +03:00
}
@Override
protected void body() throws Exception {
/*
2023-09-17 22:13:42 +03:00
for (File file : target) {
ShowMessage1(file.getAbsolutePath());
Utils.forceDeleteWithCheck(file);
}
*/
UI.Info("+");
2023-09-17 22:13:42 +03:00
}
}