Browse Source

Revert "REPORT-91839 模板版本管理二期 修复bug"

This reverts commit b8f7eda1b0.
release/11.0
Destiny.Lin 1 year ago
parent
commit
90ff0ce4c5
  1. 54
      designer-base/src/main/java/com/fr/design/mainframe/vcs/common/VcsHelper.java
  2. 11
      designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/VcsMovePanel.java

54
designer-base/src/main/java/com/fr/design/mainframe/vcs/common/VcsHelper.java

@ -79,14 +79,7 @@ public class VcsHelper implements JTemplateActionListener {
EventDispatcher.listen(ConfigEvent.READY, new ListenerAdaptor() {
@Override
protected void on(Event event) {
try {
legacyMode = WorkContext.getCurrent().get(VcsOperator.class).isLegacyMode();
FineLoggerFactory.getLogger().info("[VcsHelper] legacyMode:{}", legacyMode);
} catch (Exception e) {
//保险起见走老逻辑
legacyMode = true;
FineLoggerFactory.getLogger().error("[VcsHelper] get legacy failed", e.getMessage());
}
legacyMode = WorkContext.getCurrent().get(VcsOperator.class).isLegacyMode();
}
});
}
@ -106,6 +99,7 @@ public class VcsHelper implements JTemplateActionListener {
JTemplate template = HistoryTemplateListCache.getInstance().getCurrentEditingTemplate();
if (DesignerEnvManager.getEnvManager().getVcsConfigManager().isVcsEnable() && JTemplate.isValid(template)) {
fireAutoSaveVcs(template);
FineLoggerFactory.getLogger().info("[VcsV2] fire Vcs auto save success!");
}
}
}, interval, interval, TimeUnit.MINUTES);
@ -269,7 +263,7 @@ public class VcsHelper implements JTemplateActionListener {
@Override
public void templateOpened(JTemplate<?, ?> jt) {
try {
if (checkAutoSaveSupport()) {
if (VcsConfigManager.getInstance().isUseAutoSave()) {
startAutoSave(VcsConfigManager.getInstance().getAutoSaveInterval());
}
} catch (Exception e) {
@ -288,16 +282,25 @@ public class VcsHelper implements JTemplateActionListener {
* @param jt 模板
*/
public void fireAutoSaveVcs(final JTemplate jt) {
String fileName = getEditingFilename();
VcsOperator operator = WorkContext.getCurrent().get(VcsOperator.class);
VcsEntity entity = operator.getFileVersionByIndex(fileName, 0);
boolean replace = needDeleteVersion(entity);
int latestFileVersion = 0;
if (entity != null) {
latestFileVersion = entity.getVersion();
}
if (JTemplate.isValid(jt)) {
doSave(jt, fileName, latestFileVersion, replace, operator);
ExecutorService fireVcs = Executors.newSingleThreadExecutor(new NamedThreadFactory("autoFireVcs"));
fireVcs.execute(new Runnable() {
@Override
public void run() {
String fileName = getEditingFilename();
VcsOperator operator = WorkContext.getCurrent().get(VcsOperator.class);
VcsEntity entity = operator.getFileVersionByIndex(fileName, 0);
boolean replace = needDeleteVersion(entity);
int latestFileVersion = 0;
if (entity != null) {
latestFileVersion = entity.getVersion();
}
if (JTemplate.isValid(jt)) {
doSave(jt, fileName, latestFileVersion, replace, operator);
}
}
});
if (!fireVcs.isShutdown()) {
fireVcs.shutdown();
}
}
@ -345,9 +348,7 @@ public class VcsHelper implements JTemplateActionListener {
@Override
public void templateClosed(JTemplate<?, ?> jt) {
try {
if (checkAutoSaveSupport()) {
stopAutoSave();
}
stopAutoSave();
} catch (Exception e) {
FineLoggerFactory.getLogger().error(e.getMessage());
}
@ -371,13 +372,4 @@ public class VcsHelper implements JTemplateActionListener {
public boolean checkMoveFunctionSupport() {
return VcsHelper.getInstance().isLegacyMode() && (WorkContext.getCurrent().isLocal() || WorkContext.getCurrent().isRoot());
}
/**
* 是否支持自动保存
*
* @return 支持返回true
*/
public boolean checkAutoSaveSupport() {
return VcsConfigManager.getInstance().isUseAutoSave() && !VcsHelper.getInstance().isLegacyMode();
}
}

11
designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/VcsMovePanel.java

@ -19,6 +19,10 @@ import com.fr.design.widget.FRWidgetFactory;
import com.fr.general.FRFont;
import com.fr.log.FineLoggerFactory;
import com.fr.stable.StringUtils;
import com.fr.transaction.Configurations;
import com.fr.transaction.WorkerAdaptor;
import com.fr.workspace.server.vcs.VcsConfig;
import com.fr.workspace.server.vcs.VcsManager;
import com.fr.workspace.server.vcs.v2.move.VcsMoveService;
import com.fr.workspace.server.vcs.v2.move.VcsMoveStrategy;
@ -387,6 +391,13 @@ public class VcsMovePanel extends BasicPane {
VcsMoveService.getInstance().stopMoving();
initSuccessPane();
VcsMovePanel.this.getParentCard().show(getParentPane(), SUCCESS);
Configurations.update(new WorkerAdaptor(VcsConfig.class) {
@Override
public void run() {
VcsConfig.getInstance().setUseV2(true);
}
});
VcsManager.getInstance().updateManager();
VcsHelper.getInstance().updateLegacyMode();
}
}

Loading…
Cancel
Save