Browse Source

添加一个在安装插件时做的其他操作接口

master
kerry 8 years ago
parent
commit
7dbe35bb7a
  1. 7
      designer_base/src/com/fr/design/extra/PluginHelper.java
  2. 19
      designer_base/src/com/fr/design/fun/PluginInstallOptionProcessor.java
  3. 20
      designer_base/src/com/fr/design/fun/impl/AbstractPluginInstallOptionProcessor.java

7
designer_base/src/com/fr/design/extra/PluginHelper.java

@ -3,6 +3,8 @@ package com.fr.design.extra;
import com.fr.base.Env;
import com.fr.base.FRContext;
import com.fr.design.DesignerEnvManager;
import com.fr.design.ExtraDesignClassManager;
import com.fr.design.fun.PluginInstallOptionProcessor;
import com.fr.general.*;
import com.fr.general.http.HttpClient;
import com.fr.plugin.Plugin;
@ -192,6 +194,11 @@ public class PluginHelper {
if (plugin == null) {
throw new com.fr.plugin.PluginVerifyException(Inter.getLocText("FR-Designer-Plugin_Illegal_Plugin_Zip_Cannot_Be_Install"));
}
PluginInstallOptionProcessor processor = ExtraDesignClassManager.getInstance().getSingle(PluginInstallOptionProcessor.MARK_STRING);
if (processor != null) {
processor.pluginInstallOption();
}
if (PluginLoader.getLoader().isInstalled(plugin)) {
throw new com.fr.plugin.PluginVerifyException(Inter.getLocText("FR-Designer-Plugin_Has_Been_Installed"));
}

19
designer_base/src/com/fr/design/fun/PluginInstallOptionProcessor.java

@ -0,0 +1,19 @@
package com.fr.design.fun;
import com.fr.stable.fun.mark.Immutable;
/**
* Created by Administrator on 2016/8/26.
*/
public interface PluginInstallOptionProcessor extends Immutable {
String MARK_STRING = "PluginInstallOptionProcessor";
int CURRENT_LEVEL = 1;
/**
* 安裝插件時的其他操作
*/
void pluginInstallOption() throws Exception;
}

20
designer_base/src/com/fr/design/fun/impl/AbstractPluginInstallOptionProcessor.java

@ -0,0 +1,20 @@
package com.fr.design.fun.impl;
import com.fr.design.fun.PluginInstallOptionProcessor;
import com.fr.stable.fun.mark.API;
/**
* Created by Administrator on 2016/8/26.
*/
@API(level = PluginInstallOptionProcessor.CURRENT_LEVEL)
public abstract class AbstractPluginInstallOptionProcessor implements PluginInstallOptionProcessor{
public int currentAPILevel() {
return CURRENT_LEVEL;
}
public int layerIndex() {
return DEFAULT_LAYER_INDEX;
}
}
Loading…
Cancel
Save