更新开始

cciRegisterUserExit

这是实用程序函数,在调用 bipInitializeUserExits 期间,用户代码可以调用该函数。如果用户希望在每次特定事件发生时都注册要调用的函数,则用户代码会调用此函数。

语法

typedef struct cci_UEVft {
int reserved;
char StrucId[4];
int Version;
cciInputMessageCallback iFpInputMessageCallback;
cciTransactionEventCallback iFpTransactionEventCallback;
cciPropagatedMessageCallback iFpPropagatedMessageCallback;
cciNodeCompletionCallback iFpNodeCompletionCallback;
} CCI_UE_VFT;
void cciRegisterUserExit (
int* returnCode,
CciChar* name,
CciDataContext* userContext,
CCI_UE_VFT* functionTable);

参数

returnCode(输出)
需要函数的返回码。可能的值是:
  • CCI_DUP_USER_EXIT_NAME

    指定的名称与先前在当前执行组中注册的用户出口名称相匹配。

  • CCI_INV_USER_EXIT_NAME

    指定的名称无效。这种情况可能是由于指定了 NULL 指针、空字符串或包含非字母数字字符的字符串所导致。

Name(输入)
这必须包含指针,它指向为用户出口指定名称的 CciChars 的以 Null 结束的字符串。在所有可以安装在同一代理上的用户出口中,该名称都必须是唯一的。例如,此名称用于识别以下内容中的用户出口:
  • 用户跟踪消息
  • 异常或 syslog 消息
  • 管理命令(例如 mqsichangeflowuserexit
名称有以下限制:
  • 它只能由字母数字字符组成。
  • 不能超过 255 个字符。
  • 在所有可以安装在同一代理上的用户出口中,该名称都必须是唯一的。
userContext(输入)
这允许调用者提供上下文指针,调用该指针时该指针会传递给回调函数。该参数可以为 NULL。
functionTable(输入)
这是指向结构的指针,该结构中的字段必须包含指向匹配正确签名的函数的指针或包含 NULL。这些字段中的 NULL 值表示不得为该事件调用用户出口。

返回值

无。如果发生错误,则 returnCode 参数表明错误原因。

示例

extern "C"{
void bipInitializeUserExits(){
int rc = CCI_SUCCESS;
CCI_UE_VFT myVft = {CCI_UE_VFT_DEFAULT};
myVft.iFpInputMessageCallback = myInputMessageCallback;
myVft.iFpTransactionEventCallback = myTransactionEventCallback;
myVft.iFpPropagatedMessageCallback = myPropagatedMessageCallback;
myVft.iFpNodeCompletionCallback = myNodeCompletionCallback;
cciRegisterUserExit(&rc,
MyConstants::myUserExitName,
0,
&myVft);
/*you should now check the rc for unexpected values*/
return;
}
}/*end of extern "C" */
相关概念
建立用户出口
相关任务
建立用户出口
声明 | 商标 | 下载 | | 支持 | 反馈
Copyright IBM Corporation 1999, 2006 最后更新:2006/05/19
as35920_


更新结束