변경 시작

cciInputMessageCallback

콜백으로 등록될 수 있고 입력 노드가 메시지를 읽을 때마다 메시지가 메시지 플로우 아래로 전달되기 전에 호출되는 함수입니다. 사용자 엑시트 상태가 활성인 경우 콜백이 등록된 실행 그룹 내에서 읽은 모든 입력 메시지에 대해 호출됩니다. cciRegisterUserExit에 전달된 CCI_UE_VFT struct의 iFpInputMessageCallback 필드로 함수에 대한 포인터를 제공하여 콜백을 등록합니다.

구문

typedef void (*cciInputMessageCallback) (
CciDataContext* userContext,
  CciMessage*        message,
CciMessage* localEnvironment,
  CciMessage* exceptionList,          
CciMessage* environment,
CciMessageOrigin messageOrigin,
CciNode* inputNode);

매개변수

userContext(입력)
cciRegisterUserExit 함수에 전달된 값입니다.
message
메시지 오브젝트에 대한 핸들입니다. 사용자 엑시트 코드는 이 트리를 갱신하지 않아야 합니다.
localEnvironment
로컬 환경 오브젝트에 대한 핸들입니다.
exceptionList
예외 목록 오브젝트에 대한 핸들입니다.
environment
현재 메시지 플로우의 환경 오브젝트에 대한 핸들입니다.
messageOrigin
입력 노드 유형에 따라 메시지는 비트스트림(CCI_MESSAGE_ORIGIN_BITSTREAM) 또는 트리(CCI_MESSAGE_ORIGIN_TREE)에서 생성될 수 있습니다. 따라서 사용자 엑시트는 구문 분석기에 의한 처리를 유발하지 않고 비트스트림이나 트리에 액세스할 수 있습니다. 예를 들어, MQInputNode의 경우 비트스트림에 안전하게 액세스할 수 있지만 JMS 입력 노드의 경우 트리에 안전하게 액세스할 수 있습니다. 비트스트림은 cniBufferPointer, cniBufferSize 또는 cniBufferByte를 호출하여 액세스할 수 있습니다. 트리는 cniRootElement를 호출하거나 일반 구문 요소 탐색 함수(예: cniFirstChild)를 사용하여 액세스할 수 있습니다.
주: 이 매개변수는 구문 분석기에 의한 처리를 유발하지 않고 안전하게 액세스할 수 있도록 사용자 엑시트에게 조언하지만 사용자 엑시트 코드는 이 조언을 무시하고 결국 구문 분석 타이밍을 변경할 수 있습니다.
inputNode
이 입력 메시지를 읽는 입력 노드에 대한 핸들입니다. cciGetNodeName, cciGetNodeTypecniGetBrokerInfo와 같은 함수를 호출할 때 사용할 수 있습니다.

리턴 값

없음

void myInputMessageCallback(
CciDataContext* userContext,
  CciMessage*        message,
CciMessage* localEnvironment,
  CciMessage* exceptionList,          
CciMessage* environment,
CciMessageOrigin messageOrigin,
CciNode* inputNode){
…
…
}
관련 태스크
사용자 엑시트 개발
주의사항 | 등록상표 | 다운로드 | 라이브러리 | 지원 | 피드백
Copyright IBM Corporation 1999, 2006 마지막 갱신 날짜: 5월 12, 2006
as35950_


변경 끝