更新开始

cciPropagatedMessageCallback

这是一个可以注册成回调的函数,每当从一个节点传播到另一个节点时都会调用它。如果用户出口处于活动状态,则会为在注册回调的执行组中传播的每个消息调用该函数。在传递到 cciRegisterUserExit 的 CCI_UE_VFT 结构的 iFpPropagatedMessageCallback 字段中提供指向函数的指针,可以注册回调。

语法

typedef void (*cciPropagatedMessageCallback)(
CciDataContext* userContext,
CciMessage* message,
CciMessage* localEnvironment,
  CciMessage* exceptionList,          
CciMessage* environment,
CciConnection * connection);

参数

userContext(输入)
这是传递到 cciRegisterUserExit 函数的值。
message
这是被传播的消息对象的句柄。用户出口代码不得更新该树。
localEnvironment
这是被传播的本地环境对象的句柄。
exceptionList
这是被传播的异常列表对象的句柄。
environment
这是当前消息流的环境对象的句柄。
connection
这是两个节点间连接对象的句柄。比如它可以用来调用 cciGetSourceNodecciGetTargetNodecciGetSourceTerminalNamecciGetTargetTerminalName。该句柄仅在调用该用户出口函数期间有效。

返回值

无。

示例

void myPropagatedMessageCallback(
CciMessage* message,
CciMessage* localEnvironment,
  CciMessage* exceptionList,          
CciMessage* environment,
CciConnection* connection){
  int          rc = CCI_SUCCESS;
CciNode* targetNode = cciGetTargetNode(amp rc,
connection);
CciChar targetNodeName [initialStringBufferLength];
targetNodeNameLength = cciGetNodeName(amp rc,
targetNode,
targetNodeName,
initialStringBufferLength);
/*you should now check the rc for unexpected values*/
/*if rc is CCI_BUFFER_TOO_SMALL then you should resize and retry*/
}
相关概念
建立用户出口
相关任务
建立用户出口
声明 | 商标 | 下载 | | 支持 | 反馈
Copyright IBM Corporation 1999, 2006 最后更新:2006/05/19
as35930_


更新结束