类 EsbPushRequestBuilder
java.lang.Object
com.midi.his.sdk.esb.EsbPushRequestBuilder
装配推送请求的
ESBEntry 报文,结构对齐
docs/WebServer/消息外层格式定义/业务推送格式.xml 与 PS25001、PS25007 样例。
与查询报文的三处差异:AccessControl 子节点顺序为
UserName/Password/Fid/OrderNo/SysFlag;MessageHeader 多一个
ReturnFlag;没有 RequestOption,且 MsgInfo 不带 flag 属性,
每个 Msg 携带 id、lastUpdate、action 三个属性。
PS25007 样例在 MsgInfo 之后多一个固定版本号 Edition,
PS25001 样例没有,因此只在状态回写报文里输出。
发送前按定义书的"非空=Y"校验必填字段,缺失即抛异常,避免把明显不完整的记录推给消费方。
-
构造器概要
构造器 -
方法概要
修饰符和类型方法说明<T> EsbRequestbuild(HisService service, List<? extends PushRecord<? extends T>> records) 装配一次推送请求,一条记录对应一个Msg节点。requiredFieldsOf(HisService service) 该服务在定义书里标注为必填的字段集合。
-
构造器详细资料
-
EsbPushRequestBuilder
创建构建器。- 参数:
config- 运行配置
-
-
方法详细资料
-
build
装配一次推送请求,一条记录对应一个Msg节点。- 类型参数:
T- 载荷类型- 参数:
service- 目标服务,必须是推送方向records- 待推送记录,至少一条- 返回:
- 待发送报文
- 抛出:
IllegalArgumentException- 服务方向不符、记录为空,或必填字段缺失
-
requiredFieldsOf
该服务在定义书里标注为必填的字段集合。- 参数:
service- 服务- 返回:
- 不可修改的字段名集合,顺序按定义书排列;查询服务返回空集
- 抛出:
UnsupportedOperationException- 调用方试图修改返回的集合
-