Browse Source

REPORT-98345 版本管理三期 修改线程池,修改代码规范,添加部分注释

feature/x
Destiny.Lin 12 months ago
parent
commit
21a58f1a0b
  1. 17
      designer-base/src/main/java/com/fr/design/file/TemplateTreePane.java
  2. 6
      designer-base/src/main/java/com/fr/design/mainframe/DesignerFrameFileDealerPane.java
  3. 53
      designer-base/src/main/java/com/fr/design/mainframe/vcs/VcsService.java

17
designer-base/src/main/java/com/fr/design/file/TemplateTreePane.java

@ -62,6 +62,7 @@ import java.util.Objects;
import java.util.Observable; import java.util.Observable;
import java.util.Observer; import java.util.Observer;
import java.util.Set; import java.util.Set;
import java.util.concurrent.ExecutionException;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import org.jetbrains.annotations.Nullable; import org.jetbrains.annotations.Nullable;
@ -399,10 +400,10 @@ public class TemplateTreePane extends JPanel implements FileOperations {
} }
private void deleteNodes(Collection<ExpandMutableTreeNode> nodes) { private void deleteNodes(Collection<ExpandMutableTreeNode> nodes) {
new SwingWorker<Void,Void>(){ new SwingWorker<Boolean,Void>(){
boolean success = true;
@Override @Override
protected Void doInBackground() throws Exception { protected Boolean doInBackground() throws Exception {
boolean success = true;
for (ExpandMutableTreeNode treeNode : nodes) { for (ExpandMutableTreeNode treeNode : nodes) {
Object node = treeNode.getUserObject(); Object node = treeNode.getUserObject();
if (node instanceof FileNode) { if (node instanceof FileNode) {
@ -417,12 +418,16 @@ public class TemplateTreePane extends JPanel implements FileOperations {
} }
} }
} }
return null; return success;
} }
@Override @Override
protected void done() { protected void done() {
if (!success) { try {
showErrorDialog(); if (!get()) {
showErrorDialog();
}
} catch (InterruptedException | ExecutionException e) {
throw new RuntimeException(e);
} }
} }
}.execute(); }.execute();

6
designer-base/src/main/java/com/fr/design/mainframe/DesignerFrameFileDealerPane.java

@ -336,7 +336,7 @@ public class DesignerFrameFileDealerPane extends JPanel implements FileToolbarSt
vcsAction.setName(Toolkit.i18nText("Fine-Design_Vcs_NotSupportRemote")); vcsAction.setName(Toolkit.i18nText("Fine-Design_Vcs_NotSupportRemote"));
} }
toolbarDef.addShortCut(vcsAction); toolbarDef.addShortCut(vcsAction);
//新版本加个回收站 //11.0.19及其之后加入回收站逻辑
if (!VcsHelper.getInstance().isLegacyMode()) { if (!VcsHelper.getInstance().isLegacyMode()) {
recycleAction = new RecycleAction(); recycleAction = new RecycleAction();
toolbarDef.addShortCut(recycleAction); toolbarDef.addShortCut(recycleAction);
@ -502,9 +502,9 @@ public class DesignerFrameFileDealerPane extends JPanel implements FileToolbarSt
String path = DesignerFrameFileDealerPane.getInstance().getSelectedOperation().getFilePath(); String path = DesignerFrameFileDealerPane.getInstance().getSelectedOperation().getFilePath();
path = StableUtils.pathJoin(ProjectConstants.REPORTLETS_NAME, path); path = StableUtils.pathJoin(ProjectConstants.REPORTLETS_NAME, path);
if (VcsHelper.getInstance().isLegacyMode()) { if (VcsHelper.getInstance().isLegacyMode()) {
boolean isCurrentEditing = isCurrentEditing(path); boolean currentEditing = isCurrentEditing(path);
// 如果模板已经打开了,关掉,避免出现2个同名tab(1个是模板,1个是版本) // 如果模板已经打开了,关掉,避免出现2个同名tab(1个是模板,1个是版本)
closeOpenedTemplate(path, isCurrentEditing); closeOpenedTemplate(path, currentEditing);
FileVersionsPanel fileVersionTablePanel = FileVersionsPanel.getInstance(); FileVersionsPanel fileVersionTablePanel = FileVersionsPanel.getInstance();
fileVersionTablePanel.showFileVersionsPane(); fileVersionTablePanel.showFileVersionsPane();
stateChange(); stateChange();

53
designer-base/src/main/java/com/fr/design/mainframe/vcs/VcsService.java

@ -21,11 +21,16 @@ import java.util.concurrent.Executors;
*/ */
public class VcsService { public class VcsService {
private static final String RESTORE = "VcsRestore"; private static final String SERVICE = "VcsService";
private static final String DELETE = "VcsDelete";
private static final String UPDATE = "VcsUpdate";
private static final VcsService INSTANCE = new VcsService(); private static final VcsService INSTANCE = new VcsService();
private static final ExecutorService executorService = Executors.newFixedThreadPool(5, new NamedThreadFactory(SERVICE));
/**
* 获取单例
*
* @return
*/
public static VcsService getInstance() { public static VcsService getInstance() {
return INSTANCE; return INSTANCE;
} }
@ -53,10 +58,8 @@ public class VcsService {
* @param vcsEntities * @param vcsEntities
*/ */
public void doRestore(List<VcsEntity> vcsEntities) { public void doRestore(List<VcsEntity> vcsEntities) {
ExecutorService executorService = null;
try { try {
executorService = Executors.newSingleThreadExecutor(new NamedThreadFactory(RESTORE)); executorService.execute(new Runnable() {
executorService.submit(new Runnable() {
@Override @Override
public void run() { public void run() {
VcsOperator operator = WorkContext.getCurrent().get(VcsOperator.class); VcsOperator operator = WorkContext.getCurrent().get(VcsOperator.class);
@ -68,10 +71,6 @@ public class VcsService {
}); });
} catch (Exception e) { } catch (Exception e) {
FineLoggerFactory.getLogger().error(e.getMessage(), e); FineLoggerFactory.getLogger().error(e.getMessage(), e);
} finally {
if (executorService != null) {
executorService.shutdown();
}
} }
} }
@ -82,10 +81,8 @@ public class VcsService {
* @param vcsEntities * @param vcsEntities
*/ */
public void doDelete(List<VcsEntity> vcsEntities, boolean all) { public void doDelete(List<VcsEntity> vcsEntities, boolean all) {
ExecutorService executorService = null;
try { try {
executorService = Executors.newSingleThreadExecutor(new NamedThreadFactory(DELETE)); executorService.execute(new Runnable() {
executorService.submit(new Runnable() {
@Override @Override
public void run() { public void run() {
VcsOperator operator = WorkContext.getCurrent().get(VcsOperator.class); VcsOperator operator = WorkContext.getCurrent().get(VcsOperator.class);
@ -101,10 +98,6 @@ public class VcsService {
}); });
} catch (Exception e) { } catch (Exception e) {
FineLoggerFactory.getLogger().error(e.getMessage(), e); FineLoggerFactory.getLogger().error(e.getMessage(), e);
} finally {
if (executorService != null) {
executorService.shutdown();
}
} }
} }
@ -114,10 +107,8 @@ public class VcsService {
* @param entity VcsEntity * @param entity VcsEntity
*/ */
public void deleteEntity(VcsEntity entity) { public void deleteEntity(VcsEntity entity) {
ExecutorService executorService = null;
try { try {
executorService = Executors.newSingleThreadExecutor(new NamedThreadFactory(DELETE)); executorService.execute(new Runnable() {
executorService.submit(new Runnable() {
@Override @Override
public void run() { public void run() {
VcsOperator vcsOperator = WorkContext.getCurrent().get(VcsOperator.class); VcsOperator vcsOperator = WorkContext.getCurrent().get(VcsOperator.class);
@ -127,10 +118,6 @@ public class VcsService {
}); });
} catch (Exception e) { } catch (Exception e) {
FineLoggerFactory.getLogger().error(e.getMessage(), e); FineLoggerFactory.getLogger().error(e.getMessage(), e);
} finally {
if (executorService != null) {
executorService.shutdown();
}
} }
} }
@ -141,10 +128,8 @@ public class VcsService {
* @param version 版本号 * @param version 版本号
*/ */
public void deleteEntity(String fileName, int version) { public void deleteEntity(String fileName, int version) {
ExecutorService executorService = null;
try { try {
executorService = Executors.newSingleThreadExecutor(new NamedThreadFactory(DELETE)); executorService.execute(new Runnable() {
executorService.submit(new Runnable() {
@Override @Override
public void run() { public void run() {
VcsOperator vcsOperator = WorkContext.getCurrent().get(VcsOperator.class); VcsOperator vcsOperator = WorkContext.getCurrent().get(VcsOperator.class);
@ -153,23 +138,17 @@ public class VcsService {
}); });
} catch (Exception e) { } catch (Exception e) {
FineLoggerFactory.getLogger().error(e.getMessage(), e); FineLoggerFactory.getLogger().error(e.getMessage(), e);
} finally {
if (executorService != null) {
executorService.shutdown();
}
} }
} }
/** /**
* 更新版本 * 更新版本
* *
* @param entity 版本 * @param entity 版本
*/ */
public void updateEntityAnnotation(VcsEntity entity) { public void updateEntityAnnotation(VcsEntity entity) {
ExecutorService executorService = null;
try { try {
executorService = Executors.newSingleThreadExecutor(new NamedThreadFactory(UPDATE)); executorService.execute(new Runnable() {
executorService.submit(new Runnable() {
@Override @Override
public void run() { public void run() {
VcsOperator vcsOperator = WorkContext.getCurrent().get(VcsOperator.class); VcsOperator vcsOperator = WorkContext.getCurrent().get(VcsOperator.class);
@ -178,10 +157,6 @@ public class VcsService {
}); });
} catch (Exception e) { } catch (Exception e) {
FineLoggerFactory.getLogger().error(e.getMessage(), e); FineLoggerFactory.getLogger().error(e.getMessage(), e);
} finally {
if (executorService != null) {
executorService.shutdown();
}
} }
} }
} }

Loading…
Cancel
Save