基础概念

脚本是用于简化集成流可视化的维护复杂度,更加符合开发人员的使用习惯而提供的功能。开发人员可以在集成流节点的属性上使用脚本方式进行动态配置。支持使用Groovy、Java语法编写脚本,降低Java体系开发人员的使用门槛。

语法规则

支持JDK 1.8、Groovy 3.0的语法规则。

脚本结构

在集成流设计器中,很多节点属性可支持通过“脚本”方式设置,单击编辑代码后会出现脚本编辑器,如下图所示。脚本编辑器中支持联想、自动补充、语法检查等功能。

image.png

集成平台对脚本结构进行了约定,因此开发者需要了解脚本结构。

  1. 设计器会自动生成脚本空脚本结构,如上图所示,黑色的代码编辑区域即为默认生成的内容。

  2. 在脚本编辑框的头部,明确约定了此脚本需要返回的数据类型,例如上图中的“返回Entity类型的数据”。每个节点属性能够支持的数据类型是不同的,因此您在编写脚本时需要返回对应的数据类型。在脚本编辑器中并未对返回类型进行校验,运行时引擎会校验脚本返回类型。

  3. 代码编辑区域,第一行是自动生成的package信息,请勿修改。

    说明

    您在不同节点之间复制脚本时,请注意勿复制package部分。

  4. handle方法(例如本例中的第9行)为引擎调用脚本的入口方法。输入参数为StepMessage类型,即本节点的输入消息。

数据类型

脚本支持的数据类型如下:

  • Java基础数据类型。常用类型包括:String、Integer、Boolean、BigDecimal、HashMap、ArrayList等。

  • 核心类型。集成流引擎自身定义了一些核心数据类型,主要包括:

    类名

    简介

    相关文档

    StepMessage

    集成流节点之间传递的消息格式。

    StepMessage

    Entity

    承载数据的实体,是对二进制数据的封装。

    Entity

    HTTP类

    对HTTP Request、Response的封装,使用HTTP协议类型的连接器,会使用和输出该大类的数据。

    HTTP相关

  • 用户自定义类型。在脚本中您可以根据需要创建类并在本脚本内使用,但handle入口方法的返回值类型不支持传递您自定义类。

工具类

集成流引擎内置了常见字符串处理、数据处理、加解密方面的工具类,帮助开发者更加便捷的编写脚本,主要工具类包括如下:

类名

简介

Base64Util

提供Base64编码、解码功能

CryptoUtil

AES加解密

HmacUtil

HMAC相关

HashUtil

MD5、SHA等hash算法

StringUtil

字符串处理

RegExUtil

正则相关

JsonUtil

Json格式处理

XMLUtil

XML格式处理

URLUtil

URL处理

EscapeUtil

URL编码

TimeUtil

时间相关

DatetimeUtil

时间相关

DateFormatUtil

时间相关

CollectionUtil

处理集合相关工具类

RandomUtil

随机数相关

SocketUtil

网络字节序和主机字节序计算

TemplateUtil

模板相关