Browse Source

REPORT-23486 修复bug以及更改文件夹

feature/big-screen
Bryant 5 years ago
parent
commit
651ce8a3f3
  1. 32
      designer-base/src/main/java/com/fr/design/update/actions/RecoverForDesigner.java
  2. 3
      designer-base/src/main/java/com/fr/design/update/ui/dialog/RestoreResultDialog.java

32
designer-base/src/main/java/com/fr/design/update/actions/RecoverForDesigner.java

@ -1,6 +1,7 @@
package com.fr.design.update.actions; package com.fr.design.update.actions;
import com.fr.decision.update.backup.Recover; import com.fr.decision.update.backup.Recover;
import com.fr.decision.update.backup.RecoverPathManager;
import com.fr.decision.update.data.UpdateConstants; import com.fr.decision.update.data.UpdateConstants;
import com.fr.decision.update.exception.UpdateException; import com.fr.decision.update.exception.UpdateException;
import com.fr.design.mainframe.DesignerContext; import com.fr.design.mainframe.DesignerContext;
@ -40,7 +41,7 @@ public class RecoverForDesigner implements Recover {
public boolean backup() { public boolean backup() {
//jar包备份文件的目录为"backup/"+jar包当前版本号 //jar包备份文件的目录为"backup/"+jar包当前版本号
String todayBackupDir = StableUtils.pathJoin(installHome, UpdateConstants.DESIGNER_BACKUP_DIR, (GeneralUtils.readBuildNO())); String todayBackupDir = StableUtils.pathJoin(installHome, UpdateConstants.DESIGNER_BACKUP_DIR, (GeneralUtils.readBuildNO()));
String envHome = StableUtils.pathJoin(installHome, UpdateConstants.WEBAPPS, ProjectConstants.WEBAPP_NAME, ProjectConstants.WEBINF_NAME); String envHome = RecoverPathManager.getInstance().getEnvHome();
backupFilesFromInstallEnv(envHome, todayBackupDir); backupFilesFromInstallEnv(envHome, todayBackupDir);
backupFilesFromInstallLib(installHome, todayBackupDir); backupFilesFromInstallLib(installHome, todayBackupDir);
try { try {
@ -63,10 +64,18 @@ public class RecoverForDesigner implements Recover {
private void backupFilesFromInstallEnv(String envHome, String todayBackupDir) { private void backupFilesFromInstallEnv(String envHome, String todayBackupDir) {
try { try {
CommonUtils.mkdirs(new File(StableUtils.pathJoin(todayBackupDir,UpdateConstants.BACKUPPATH))); File file = new File(StableUtils.pathJoin(todayBackupDir,UpdateConstants.BACKUPPATH));
CommonIOUtils.copyFilesInDirByPath( CommonUtils.mkdirs(file);
StableUtils.pathJoin(envHome,ProjectConstants.LIB_NAME), file = new File(StableUtils.pathJoin(envHome,ProjectConstants.LIB_NAME));
StableUtils.pathJoin(todayBackupDir,UpdateConstants.BACKUPPATH)); File[] files = file.listFiles();
File dir = new File(StableUtils.pathJoin(todayBackupDir,UpdateConstants.BACKUPPATH));
if (files != null) {
for (File file1 : files) {
if (file1.getName().startsWith(UpdateConstants.FINE) && file1.getName().endsWith(UpdateConstants.JAR_FILE_SUFFIX)) {
CommonIOUtils.copy(file1, dir);
}
}
}
} catch (IOException e) { } catch (IOException e) {
UpdateException exception = new UpdateException(e.getMessage()); UpdateException exception = new UpdateException(e.getMessage());
FineLoggerFactory.getLogger().error(exception.getMessage() + "backup for Designer recover in env failed"); FineLoggerFactory.getLogger().error(exception.getMessage() + "backup for Designer recover in env failed");
@ -76,9 +85,16 @@ public class RecoverForDesigner implements Recover {
private void backupFilesFromInstallLib(String installHome, String todayBackupDir) { private void backupFilesFromInstallLib(String installHome, String todayBackupDir) {
try { try {
CommonUtils.mkdirs(new File(StableUtils.pathJoin(todayBackupDir,UpdateConstants.DESIGNERBACKUPPATH))); CommonUtils.mkdirs(new File(StableUtils.pathJoin(todayBackupDir,UpdateConstants.DESIGNERBACKUPPATH)));
CommonIOUtils.copyFilesInDirByPath( File file = new File(StableUtils.pathJoin(installHome,ProjectConstants.LIB_NAME));
StableUtils.pathJoin(installHome,ProjectConstants.LIB_NAME), File[] files = file.listFiles();
StableUtils.pathJoin(todayBackupDir,UpdateConstants.DESIGNERBACKUPPATH)); File dir = new File(StableUtils.pathJoin(todayBackupDir,UpdateConstants.DESIGNERBACKUPPATH));
if (files != null) {
for (File file1 : files) {
if (file1.getName().startsWith(UpdateConstants.FINE) || file1.getName().contains(UpdateConstants.ASPECTJRT)) {
CommonIOUtils.copy(file, dir);
}
}
}
} catch (IOException e) { } catch (IOException e) {
UpdateException exception = new UpdateException(e.getMessage()); UpdateException exception = new UpdateException(e.getMessage());
FineLoggerFactory.getLogger().error(exception.getMessage() + "backup for Designer recover in install failed"); FineLoggerFactory.getLogger().error(exception.getMessage() + "backup for Designer recover in install failed");

3
designer-base/src/main/java/com/fr/design/update/ui/dialog/RestoreResultDialog.java

@ -10,7 +10,6 @@ import com.fr.general.ComparatorUtils;
import com.fr.stable.StableUtils; import com.fr.stable.StableUtils;
import com.fr.stable.StringUtils; import com.fr.stable.StringUtils;
import com.fr.stable.project.ProjectConstants; import com.fr.stable.project.ProjectConstants;
import com.fr.workspace.WorkContext;
import javax.swing.AbstractAction; import javax.swing.AbstractAction;
import javax.swing.BorderFactory; import javax.swing.BorderFactory;
@ -206,7 +205,7 @@ public class RestoreResultDialog extends JDialog {
} }
private void filesToDelete(String installHome, List<String> list) { private void filesToDelete(String installHome, List<String> list) {
String envHome = WorkContext.getCurrent().getPath(); String envHome = StableUtils.pathJoin(installHome, UpdateConstants.WEBAPPS, ProjectConstants.WEBAPP_NAME, ProjectConstants.WEBINF_NAME);
File installEnv = new File(StableUtils.pathJoin(envHome,ProjectConstants.LIB_NAME)); File installEnv = new File(StableUtils.pathJoin(envHome,ProjectConstants.LIB_NAME));
File[] files = installEnv.listFiles(); File[] files = installEnv.listFiles();
if (files != null) { if (files != null) {

Loading…
Cancel
Save