Files
VisualSapfor/src/_VisualDVM/Passes/All/SynchronizeBugReports.java

39 lines
1.3 KiB
Java

package _VisualDVM.Passes.All;
import _VisualDVM.ComponentsServer.UserAccount.AccountRole;
import _VisualDVM.Global;
import _VisualDVM.Passes.Server.ComponentsServerPass;
import _VisualDVM.Repository.Server.ServerCode;
import _VisualDVM.Utils;
import java.io.File;
public class SynchronizeBugReports extends ComponentsServerPass<Object> {
File new_db_file;
@Override
public String getIconPath() {
return "/icons/ComponentsActual.png";
}
@Override
protected boolean canStart(Object... args) throws Exception {
return !Global.mainModule.getAccount().role.equals(AccountRole.Undefined) && SendRequest(ServerCode.ReceiveBugReportsDatabase);
}
@Override
protected void showPreparation() throws Exception {
getServer().db.DropUI();
}
@Override
protected void body() throws Exception {
request.server_response.Unpack(new_db_file = Utils.getTempFileName("bdb"));
Global.componentsServer.db.recipients.Unpack(request.server_response.arg);
}
@Override
protected void performDone() throws Exception {
super.performDone();
getServer().db.ReplaceFileAndReconnect(new_db_file);
}
@Override
protected void showDone() throws Exception {
if (Global.mainModule.getUI().hasMainWindow())
getServer().db.ResetUI();
}
}