AWS 插件扩展开发参考指南

代码示例

源码见扩展插件概念验证应用

MyLenExpression

com.actionsoft.apps.poc.plugin.at.MyLenExpression

package com.actionsoft.apps.poc.plugin.at;

import com.actionsoft.bpms.commons.at.AbstExpression;
import com.actionsoft.bpms.commons.at.ExpressionContext;

/**
 * 返回字符串长度
 */
public class MyLenExpression extends AbstExpression {

    public MyLenExpression(final ExpressionContext atContext, String expressionValue) {
        super(atContext, expressionValue);
    }

    public String execute(String expression) {
        // 取第1个参数
        String str = getParameter(expression, 1);
        return String.valueOf(str.length());
    }
}

将@myLen注册至PluginListener监听器

com.actionsoft.apps.poc.plugin.Plugins

package com.actionsoft.apps.poc.plugin;

import java.util.ArrayList;
import java.util.List;

import com.actionsoft.apps.listener.PluginListener;
import com.actionsoft.apps.poc.plugin.at.MyLenExpression;
import com.actionsoft.apps.resource.AppContext;
import com.actionsoft.apps.resource.plugin.profile.AWSPluginProfile;
import com.actionsoft.apps.resource.plugin.profile.AtFormulaPluginProfile;

/**
 * 注册插件
 */
public class Plugins implements PluginListener {
    public Plugins() {
    }

    public List<AWSPluginProfile> register(AppContext context) {
        // 存放本应用的全部插件扩展点描述
        List<AWSPluginProfile> list = new ArrayList<AWSPluginProfile>();
        // 注册AT公式
        list.add(new AtFormulaPluginProfile("字符串", "@myLen(*str)", MyLenExpression.class.getName(), "我的字符串长度", "返回字符串长度"));
        return list;
    }
}

注意:在AWS CONSOLE的应用管理 > 应用开发 > 配置应用或AWS Developer中配置该App的扩展插件选项为com.actionsoft.apps.poc.plugin.Plugins

验证

进入AWS CONSOLE > 应用管理并打开你的应用,在资源中如出现@myLen,说明注册成功。

进入AWS CONSOLE命令行控制台,输入@myLen(AWSPaaS),测试AWSPaaS的长度为7

@myLen(AWSPaaS)
Result=7


Seven
 010-62962343-690
 liujx@actionsoft.com.cn
感谢您对该文档的关注!如果您对当前页面内容有疑问或好的建议,请与我联系。如果您需要解答相关技术问题请登录AWS客户成功社区