文档视界 最新最全的文档下载
当前位置:文档视界 › 适配器开发手册

适配器开发手册

适配器开发手册
适配器开发手册

适配器开发手册

易达讯网络科技(北京)有限公司https://www.docsj.com/doc/1710665754.html,

目录

一、前言 (3)

二、说明 (4)

2.1数据流 (4)

2.2组件 (4)

三、配置文件 (6)

四、组件的开发 (8)

4.1信息源 (8)

4.2管道 (10)

4.3目的 (10)

五、部署 (12)

一、前言

eStar SmartAdaptors 是基于服务体系架构和组件结构的应用适配器系统,主要是为了解决应用系统与中间件系统之间的连接与信息传送等问题。eStar SmartAdaptors 采用组件式架构和标准的数据结构,大幅度地提高了适配器的重用性和统一性。

适配器系统设计思想采用以数据流向为主线,配置代替编程,功能组件代替整体程序的方式,使智能适配器系统紧凑,灵活和易于扩展。

此文档的目的是让读者了解适配器中信息组件的开发,及如何部署到eStar设计环境ServiceWorks中,该文档针对组件的类型做了分类阐述。

本文档面向的读者主要是开发人员。

二、总体说明

2.1数据流

数据的流向决定了适配器的功能,从总体上看数据流方向分为数据的输出流向和数据的输入流向。流向不同实现的功能也就有可能不同,例如数据输出时,要对数据进行打包和封装,数据输入时要认证与拆包,同时数据流的位置所完成的功能也有所不同。例如在传输前要根据数据的内容进行过滤,如果所有功能编写在一个程序中,将使程序变得庞大而不灵活,任何的更改都要更改整个程序。智能适配器采用单向通道结构与功能组件结构,这样的设计是为了降低适配器的复杂度,增大灵活性和可扩展性。

2.2 组件

适配器是按照数据流的某一方向串联不同的信息组件所组成的。根据功能不同,信息组件可分为四类。一类是信息源,称为信息输出源;一类是信息的目的地,称为信息输入源;一类是在信息输出源与信息输入源之间的信息通道;一类是控制与管理。

信息输出组件(信息源)负责从某一应用系统中提取或接收应用系统输出的信息。它提供的功能包括根据应用系统支持的通讯协议与应用系统建立连接,通过应用系统支持的信息协议提取或接收信息,同时它也负责建立事务进程等技术协议,输出的信息经过打包封装成标准格式。智能适配器系统支持XML标准封装格式,也可采用行业标准格式如ebXML和ResettaNet等。

信息输入组件(信息目的地)负责把接收到的信息传送到某一应用系统之中,它提供的功能包括根据应用系统支持的通讯协议与应用系统建立连接,通过应用系统支持的信息协议传送信息,同时它也负责建立事务进程等技术协议。组件收到的信息作为输入信息,按照标准格式拆包,并用应用系统所支持的格式封装,然后传送到应用系统中。

信息通道组件就像通道一样,信息从一端流入从另一端流出,在此过程中

信息可以被加工与整理。信息通道可以像套管一样一个套一个。信息通道主要是功能扩展的组件。

三、配置文件

每个自定义组件需要一个ini配置文件和一个class文件,其中ini配置文件提供对组件的描述,class文件提供运行逻辑。本章主要介绍ini配置文件的编写。

Ini配置文件主要由四部分组成:[Component],[GUI],[Mandatory Properties]及[Optional Properties]。示例如下:

l[Component]---组件的基本信息:

a)Name 组件名称。

b)Type 组件类型,三个选项:Source(信息源组件),Channel(信息通

道组件), Target(信息目的组件)

c)Java 组件对应的类,用类的全路径表示。

l[GUI]---组件在ServiceWorks中的布局信息:

a)PalettePath 组件的显示分类。

b)ComponentToolTipText 组件说明,当鼠标放到组件名称上时显示的简

单提示。

l[Mandatory Properties]---列出该组件必须配置的属性,配置时该部分的每个属性必须正确配置,否则可能导致配出的适配器无法工作,具体属

性开发时自定义。

l[Optional Properties]---列出该组件可选的属性,该部分的属性在配置时不是必须的,但是它们可以让适配器有更多选择,具体属性开发时自定义。

【备注】:对于Mandatory Properties和Optional Properties中的每个属性,后面可以在同一行中,用“#??”对该属性做出说明,运行Serviceworks 时,用鼠标放在属性名称上可以看到该说明。

四、组件的开发

不同类型的组件开发规则不同,以下根据信息组件的类型分别详述组件的开发步骤。

4.1信息源

信息源组件从数据源读取数据,从运行方式的角度,信息源分为三种:l LISTEN_SOURCE从数据源抽取数据,取完之后停止运行;

l POLL_SOURCE周期性运行,按照设定的时间间隔,每隔一段时间进行一次数据抽取;

l CALLBACK_SOURCE被动式调用,组件运行时启动监听程序,每当监听到请求时即被调用。

在开发信息源组件的过程中,会根据不同的运行方式实现不同的方法。信息源组件的开发步骤如下:

1)继承com.estar.xing.adaptor.AbstractSimpleSource

2)实现init方法,从适配器配置文件中读取该组件配置,进行组件初

始化

3)实现sourceStartUp方法,定义每个运行周期中,组件启动时的逻辑

4)实现sourceStop方法,定义每个运行周期中,组件停止时的逻辑

5)实现sourceCleanUp方法,定义组件退出前需要做的清理工作

6)根据组件类型不同,还需要实现不同的方法:

i.如果组件类型为LISTEN_SOURCE,要实现sourceListen()方

法,定义运行逻辑

ii.如果组件类型为POLL_SOURCE,要实现sourcePoll()方法,定义运行逻辑

iii.如果组件类型为CALLBACK_SOURCE,则主要工作在sourceStartUp方法中

4.2管道

信息管道组件对交换的中间结果进行必要的处理,开发步骤如下:

1)继承com.estar.xing.adaptor.AbstractSimpleChannel

2)实现init方法,从适配器配置文件中读取该组件配置,进行组件初

始化

3)实现transformDataObjects方法,对传入的DataObject数组进行处

理,并返回处理后的结果

4.3目的

目的组件将流程处理的结果写入到数据目的地,开发步骤如下:

1)实现com.estar.xing.adaptor.AbstractSimpleTarget

2)实现init方法,从适配器配置文件中读取该组件配置,进行组件

初始化

3)实现processMessage方法,实现数据写入的逻辑

五、部署

上一章我们主要介绍了不同类型的组件开发,下面我们将介绍组件的部署,即部署到eStar设计环境ServiceWorks中,步骤如下:

1.添加ini配置文件:将编写的ini配置文件放到eStar安装目录

/serviceworks/components文件夹下.

例: 3.1节中开发的信息源组件testSource,将TestSource.ini配置

文件放到c:\estarCom\ESS\serviceworks\comonents文件夹下,如下

图所示:

2.添加组件到列表:在上一步目录中的Components.ini文件中,按分类

将自定义组件添加到组件列表中.

例: 打开Components.ini配置文件,添加3.1节中开发的信息源组件

testSource,如下图所示:

3.添加i18n资源:在eStar安装目录

/serviceworks/resources/language中,针对不同的语言选项,设置组件和属性显示的语言。default、en、en_US均为英文界面的配置,zh_CN为中文界面配置。如果选择中文的界面显示,则需要在zh_CN目录中添加组件描述。该目录下Source、Channel、Target的语言资源存放在不同的文件中,请根据自定义组件的类型添加到相应的文件。

a)对每个组件要定义CN(Component Locale Name)和CR(Component

Locale Remark)两个属性,其中CR会替代.ini文件中GUI模块下

的ComponentTooltipText。

b)对组件中每一个属性,需要定义PK(Property Locale Key)和

PR(Property Locale Remark)两个属性,其中PR会替代.ini文件

中每个属性后面的说明部分。

4.使用开放的API:用estar_adaptor_open_$version.jar替换

estar_adaptor_$version.jar

5.添加.class文件:将编写好的类文件添加到CLASSPATH中,即可配置

和运行自定义组件了。需要注意的是ServiceWorks的运行并不依赖于系统CLASSPATH,如果希望在ServiceWorks中运行自定义组件,需要

在ServiceWorks的“服务”菜单下,修改“运行环境参数”。

相关文档