cciGetNodeAttribute

此函数返回指定属性的值。

语法

CciSize cciGetNodeAttribute (int* returnCode,
                         CciNode* node,
                           CciChar*     name,
                         CciChar* value,
                           CciSize                    length);

参数

returnCode(输出)
接收来自函数(输出)的返回码。
  • CCI_INV_BUFFER_TOO_SMALL

    提供的缓冲区的大小不足以存放节点类型的值。

node(输入)
这是到节点的句柄。
name(输入)
这是一个指向 CciChar 以 NULL 结束的字符串的指针,它指定正在查询的节点属性的名称。
value(输出)
这是缓冲区的地址,该地址由调用者分配,用来存放属性的值。
length
调用者分配的缓冲区的长度(以 CciChars 为单位)。

返回值

  • 如果成功,将属性值复制到所提供的缓冲区并返回复制的 CciChar 字符数。
  • 如果缓冲区的大小不足以包含属性值,则 returnCode 设置为 CCI_BUFFER_TOO_SMALL,并且返回需要的 CciChars 数。
  • 如果 name 指定的属性名称不适合给出的节点,则 returnCode 被设置为 CCI_ATTRIBUTE_UNKOWN。

示例

void myPropagatedMessageCallback(
                        CciMessage* message,
                        CciMessage* localEnvironment,
                          CciMessage* exceptionList,          
                        CciMessage* environment,
                        CciConnection* connection){
   int          rc = CCI_SUCCESS;
   CciNode* sourceNode = cciGetSourceNode(&rc,
                                          connection);
   /*you should now check the rc for unexpected values*/
   CciChar queueNameAttribute[16];
   cciMbsToUcs(&rc,
               "queueName",
               queueNameAttribute,
               16,
               BIP_DEF_COMP_CCSID);
 /*you should now check the rc for unexpected values*/

   CciChar queueName [512];
   sourceNodeQueueNameLength = cciGetNodeType(&rc,
                                         sourceNode,
                                         queueName,
                                         512);
   /*you should now check the rc for unexpected values*/
   /*if rc is CCI_BUFFER_TOO_SMALL then you should resize and retry*/
 /*sourceNodeQueueNameLength will hold the actual or required size */
相关概念
建立用户出口
相关任务
建立用户出口
声明 | 商标 | 下载 | 书库 | 支持 | 反馈
Copyright IBM Corporation 1999, 2006 最后一次更新时间:2006/08/14
as36010_