2024-10-14 12:14:01 +03:00
|
|
|
package _VisualDVM.Passes.All;
|
2024-10-07 00:58:29 +03:00
|
|
|
import _VisualDVM.Global;
|
2025-02-04 16:36:33 +03:00
|
|
|
import _VisualDVM.Passes.Server.ComponentsServerPass;
|
2024-10-09 22:21:57 +03:00
|
|
|
import _VisualDVM.Repository.Server.ServerCode;
|
2024-10-14 15:19:13 +03:00
|
|
|
import _VisualDVM.Utils;
|
2023-09-17 22:13:42 +03:00
|
|
|
|
|
|
|
|
import java.io.File;
|
2025-02-04 16:36:33 +03:00
|
|
|
public class SynchronizeBugReports extends ComponentsServerPass<Object> {
|
2023-09-17 22:13:42 +03:00
|
|
|
File new_db_file;
|
|
|
|
|
@Override
|
2025-02-04 16:22:42 +03:00
|
|
|
public String getIconPath() {
|
|
|
|
|
return "/icons/ComponentsActual.png";
|
2023-09-17 22:13:42 +03:00
|
|
|
}
|
|
|
|
|
@Override
|
|
|
|
|
protected boolean canStart(Object... args) throws Exception {
|
2025-02-04 16:22:42 +03:00
|
|
|
return Global.mainModule.getAccount().CheckRegistered(Log) && SendRequest(ServerCode.ReceiveBugReportsDatabase);
|
2023-09-17 22:13:42 +03:00
|
|
|
}
|
|
|
|
|
@Override
|
|
|
|
|
protected void showPreparation() throws Exception {
|
2025-02-04 16:22:42 +03:00
|
|
|
getServer().db.DropUI();
|
2023-09-17 22:13:42 +03:00
|
|
|
}
|
|
|
|
|
@Override
|
2025-02-04 16:22:42 +03:00
|
|
|
protected void body() throws Exception {
|
|
|
|
|
request.server_response.Unpack(new_db_file = Utils.getTempFileName("bdb"));
|
2025-02-19 22:47:56 +03:00
|
|
|
Global.componentsServer.db.recipients.Unpack(request.server_response.arg);
|
2023-09-17 22:13:42 +03:00
|
|
|
}
|
|
|
|
|
@Override
|
|
|
|
|
protected void performDone() throws Exception {
|
|
|
|
|
super.performDone();
|
2025-02-04 16:22:42 +03:00
|
|
|
getServer().db.ReplaceFileAndReconnect(new_db_file);
|
2023-09-17 22:13:42 +03:00
|
|
|
}
|
|
|
|
|
@Override
|
|
|
|
|
protected void showDone() throws Exception {
|
2025-02-04 16:22:42 +03:00
|
|
|
if (Global.mainModule.getUI().hasMainWindow())
|
|
|
|
|
getServer().db.ResetUI();
|
2023-09-17 22:13:42 +03:00
|
|
|
}
|
|
|
|
|
}
|