当前位置: 首页>>代码示例>>C++>>正文


C++ CInterface::r_buffer方法代码示例

本文整理汇总了C++中CInterface::r_buffer方法的典型用法代码示例。如果您正苦于以下问题:C++ CInterface::r_buffer方法的具体用法?C++ CInterface::r_buffer怎么用?C++ CInterface::r_buffer使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在CInterface的用法示例。


在下文中一共展示了CInterface::r_buffer方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: decodeParameters

void
MONITORCALL_IOMessage(
    /* In    */ CEE_tag_def objtag_
  , /* In    */ const CEE_handle_def *call_id_
  )
{
	CInterface* pnode = (CInterface*)objtag_;

	CEE_status sts = CEE_SUCCESS;
	CEE_status retcode;

	DIALOGUE_ID_def dialogueId;

	long* param[1];
	retcode = decodeParameters(1, param, pnode->r_buffer(), pnode->r_buffer_length());
	if (retcode != CEE_SUCCESS)
	{
//LCOV_EXCL_START
		strcpy( errStrBuf2, "odbcs_srvr.cpp");
		strcpy( errStrBuf3, "SRVR-MONITORCALL_IOMessage");
		strcpy( errStrBuf4, "buffer overflow");
		sprintf( errStrBuf5, "retcode <%d>", retcode);
		logError( PROGRAM_ERROR, SEVERITY_MAJOR, CAPTURE_ALL + PROCESS_STOP );
		exit(1000);
//LCOV_EXCL_STOP
	}

	dialogueId	= *(IDL_long*)param[0];

	odbc_SQLSvc_MonitorCall_ame_(
		 objtag_
	  ,  call_id_
	  ,  dialogueId
	  );
}
开发者ID:RuoYuHP,项目名称:incubator-trafodion,代码行数:35,代码来源:odbcs_srvr.cpp

示例2: sizeof

void
SQLENDTRAN_IOMessage(
    /* In    */ CEE_tag_def objtag_
  , /* In    */ const CEE_handle_def *call_id_
  )
{

	CInterface* pnode = (CInterface*)objtag_;

	CEE_status sts = CEE_SUCCESS;
	CEE_status retcode;

	IDL_char	*curptr;
	IDL_long inputPosition = 0;

	DIALOGUE_ID_def dialogueId;
	IDL_unsigned_short transactionOpt;

	curptr = pnode->r_buffer();

	dialogueId = *(IDL_long*)(curptr+inputPosition);
	inputPosition += sizeof(dialogueId);

	transactionOpt = *(IDL_unsigned_short*)(curptr+inputPosition);
	inputPosition += sizeof(transactionOpt);

	odbc_SQLSrvr_EndTransaction_ame_(
			objtag_
		  , call_id_
		  , dialogueId
		  , transactionOpt);

} // SQLENDTRAN_IOMessage()
开发者ID:RuoYuHP,项目名称:incubator-trafodion,代码行数:33,代码来源:odbcs_srvr.cpp

示例3:

void
SQLDISCONNECT_IOMessage(
    /* In    */ CEE_tag_def objtag_
  , /* In    */ const CEE_handle_def *call_id_
  )
{
	CInterface* pnode = (CInterface*)objtag_;

	CEE_status sts = CEE_SUCCESS;
	CEE_status retcode;

	char *curptr;

	DIALOGUE_ID_def dialogueId;

	curptr = pnode->r_buffer();

	// Copy 1st Parameter
	// copy dailogueId
	dialogueId = *(IDL_long *)(curptr);

	odbc_SQLSvc_TerminateDialogue_ame_(
		  objtag_
		, call_id_
		, dialogueId
	  );
}
开发者ID:RuoYuHP,项目名称:incubator-trafodion,代码行数:27,代码来源:odbcs_srvr.cpp

示例4: if

void
SQLEXECUTE_IOMessage(
    /* In    */ CEE_tag_def objtag_
  , /* In    */ const CEE_handle_def *call_id_
  , /* In    */ short operation_id
  )
{
	CInterface* pnode = (CInterface*)objtag_;

	CEE_status	sts = CEE_SUCCESS;
	CEE_status	retcode;
	IDL_char	*curptr;
	IDL_unsigned_long i;


	DIALOGUE_ID_def dialogueId = 0;
	IDL_long   sqlAsyncEnable = 0;
    IDL_long   queryTimeout = 0;
	IDL_long   inputRowCnt = 0;
	IDL_long   maxRowsetSize = 0;
	IDL_long   sqlStmtType = 0;
	Long   stmtHandle = 0;
	IDL_long   stmtHandleKey = 0;
	IDL_long   stmtType = 0;
	IDL_long   sqlStringLength = 0;
	IDL_string sqlString = NULL;
	IDL_long   sqlStringCharset = 0;
	IDL_long   cursorLength = 0;
	IDL_string cursorName = NULL;
	IDL_long   cursorCharset = 0;
	IDL_long   stmtLength = 0;
	IDL_char  *stmtLabel = NULL;
	IDL_long   stmtLabelCharset = 0;
    IDL_long   stmtExplainLabelLength = 0;
	IDL_string stmtExplainLabel = NULL;
	IDL_long   inValuesLength = 0;
	BYTE      *inValues = NULL;
	IDL_long	transactionIDLength = 0; // JDBC is the only one that will use this to join a transaction
	IDL_long_long transactionID = 0;     // JDBC is the only one that will use this to join a transaction


	IDL_long  holdableCursor = SQL_NONHOLDABLE; //default
	IDL_long inputPosition = 0;
	IDL_short ix;

	curptr = pnode->r_buffer();

	dialogueId = *(IDL_long*)(curptr+inputPosition);
	inputPosition += sizeof(dialogueId);

	// to support SAP holdable cursor, the driver overload this field with the value of holdableCursor
	// currently the sqlAsyncEnable is not used.
	//sqlAsyncEnable	= *(IDL_long*)(curptr+inputPosition);
	holdableCursor	= *(IDL_long*)(curptr+inputPosition);
	inputPosition += sizeof(sqlAsyncEnable);

	queryTimeout	= *(IDL_long*)(curptr+inputPosition);
	inputPosition += sizeof(queryTimeout);

	inputRowCnt		= *(IDL_long*)(curptr+inputPosition);
	inputPosition += sizeof(inputRowCnt);

	maxRowsetSize	= *(IDL_long*)(curptr+inputPosition);
	inputPosition += sizeof(maxRowsetSize);

	sqlStmtType		= *(IDL_long*)(curptr+inputPosition);
	inputPosition += sizeof(sqlStmtType);

	stmtHandleKey	 = *(IDL_long*)(curptr+inputPosition);
	inputPosition += sizeof(IDL_long);
	stmtHandle = 0;
	if( stmtHandleKey > 0 )
		stmtHandle = srvrGlobal->stmtHandleMap[stmtHandleKey];

	stmtType		= *(IDL_long*)(curptr+inputPosition);
	inputPosition += sizeof(stmtType);

	sqlStringLength	= *(IDL_long*)(curptr+inputPosition);
	inputPosition += sizeof(sqlStringLength);
	if (sqlStringLength > 0)
	{
		sqlString = curptr+inputPosition;
		inputPosition += sqlStringLength;
		sqlStringCharset	= *(IDL_long*)(curptr+inputPosition);
		inputPosition += sizeof(sqlStringCharset);
	}

	cursorLength	= *(IDL_long*)(curptr+inputPosition);
	inputPosition += sizeof(cursorLength);
	if (cursorLength > 0)
	{
		cursorName = curptr+inputPosition;
		inputPosition += cursorLength;
		cursorCharset = *(IDL_long*)(curptr+inputPosition);
		inputPosition += sizeof(cursorCharset);
	}

	stmtLength		= *(IDL_long*)(curptr+inputPosition);
	inputPosition += sizeof(stmtLength);
	if (stmtLength > 0)
//.........这里部分代码省略.........
开发者ID:RuoYuHP,项目名称:incubator-trafodion,代码行数:101,代码来源:odbcs_srvr.cpp


注:本文中的CInterface::r_buffer方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。