Browse Source

Merge pull request #1743 in BA/design from ~JU/design:feature/10.0 to feature/10.0

* commit '0f883e9d2920c83f890f7ff8c79d75c015a4b5b1':
  CORE-49 新模块化中在监听中去启动子模块的写法有问题 1、删除在xml中支持自定义配置的代码 2、优化EventDispatcher 3、定义Prepare接口来让模块进行数据交换 接下来: 1、按照extension包的package-info中描述的:在解析好模块树后,解析模块启动顺序(也就是模块的上下层依赖关系,成为左右关系),让模块与模块之间不光有上下层的引用,也包含左右的关系 2、利用左右关系,在ModuleStableRepoAccessor中添加方法,加强模块间数据交换时的语义(现在看数据交换的代码时会感觉不清晰,不知道谁和谁交换)
master
superman 7 years ago
parent
commit
bbe3becc94
  1. 2
      designer/src/com/fr/start/module/DesignerEnvProvider.java
  2. 2
      designer/src/com/fr/start/module/DesignerModuleActivator.java
  3. 4
      designer/src/com/fr/start/module/DesignerStartup.java

2
designer/src/com/fr/start/module/DesignerEnvProvider.java

@ -15,7 +15,7 @@ public class DesignerEnvProvider extends Activator {
@Override @Override
public void start() { public void start() {
String[] args = getModule().findSingleton(StartupArgs.class).get(); String[] args = getModule().upFindSingleton(StartupArgs.class).get();
if (args != null) { if (args != null) {
for (String arg : args) { for (String arg : args) {
if (ComparatorUtils.equals(arg, "demo")) { if (ComparatorUtils.equals(arg, "demo")) {

2
designer/src/com/fr/start/module/DesignerModuleActivator.java

@ -15,7 +15,7 @@ public class DesignerModuleActivator extends Activator {
@Override @Override
public void start() { public void start() {
ModuleContext.registerModuleListener(getModule().findSingleton(ModuleListener.class)); ModuleContext.registerModuleListener(getModule().upFindSingleton(ModuleListener.class));
ModuleContext.startModule(DesignerModule.class.getName()); ModuleContext.startModule(DesignerModule.class.getName());
ModuleContext.clearModuleListener(); ModuleContext.clearModuleListener();
} }

4
designer/src/com/fr/start/module/DesignerStartup.java

@ -36,7 +36,7 @@ public class DesignerStartup extends Activator {
startSub(BasicActivator.class); startSub(BasicActivator.class);
//启动画面 //启动画面
SplashWindow splashWindow = createSplashWindow(); SplashWindow splashWindow = createSplashWindow();
String[] args = getModule().findSingleton(StartupArgs.class).get(); String[] args = getModule().upFindSingleton(StartupArgs.class).get();
Designer designer = new Designer(args); Designer designer = new Designer(args);
//启动env //启动env
startSub(DesignerEnvProvider.class); startSub(DesignerEnvProvider.class);
@ -69,7 +69,7 @@ public class DesignerStartup extends Activator {
} }
// 如果端口被占用了 说明程序已经运行了一次,也就是说,已经建立一个监听服务器,现在只要给服务器发送命令就好了 // 如果端口被占用了 说明程序已经运行了一次,也就是说,已经建立一个监听服务器,现在只要给服务器发送命令就好了
if (DesignUtils.isStarted()) { if (DesignUtils.isStarted()) {
DesignUtils.clientSend(getModule().findSingleton(StartupArgs.class).get()); DesignUtils.clientSend(getModule().upFindSingleton(StartupArgs.class).get());
return true; return true;
} }
return false; return false;

Loading…
Cancel
Save