cniPropagate

지정된 터미널 오브젝트로 메시지를 전달합니다. 커넥터가 터미널을 다른 노드에 연결하지 않은 경우, 메시지가 전달되지 않고 함수는 무효로 간주됩니다. 따라서 노드가 취하는 조치가 다른 경우(이 경우 cniIsTerminalAttached를 사용하여 터미널 연결 여부 점검 가능)가 아니라면, 메시지를 전달하기 전에 터미널이 연결되었는지 여부를 접검할 필요가 없습니다.

구문

int cniPropagate(
    int*                   returnCode,
    CciTerminal*  terminalObject,
    CciMessage* destinationList,
    CciMessage* exceptionList,
    CciMessage*        message);

매개변수

returnCode
함수의 리턴 코드(출력).
가능한 리턴 코드는 다음과 같습니다.
  • CCI_SUCCESS
  • CCI_EXCEPTION
  • CCI_INV_TERMINAL_OBJECT
  • CCI_INV_MESSAGE_OBJECT
terminalObject
메시지를 수신할 출력 터미널의 주소(입력). 주소는 cniCreateOutputTerminal로부터 리턴됩니다.
destinationList
메시지와 함께 송신될 목적지 목록 오브젝트의 주소(입력).

메시지 브로커가 제공하는 Publish/Subscribe 노드가 이 메시지 오브젝트를 사용합니다.

exceptionList
메시지 예외 목록 주소(입력).
message
송신할 메시지 오브젝트의 주소(입력). 송신 중인 메시지가 입력 메시지와 같을 경우, 이 주소는 cniEvaluate 구현 함수에 전달된 주소입니다.

리턴 값

함수가 정상적으로 실행되면, CCI_SUCCESS가 리턴됩니다. 정상적으로 실행되지 않으면, CCI_FAILURE가 리턴되며 returnCode 매개변수는 오류의 이유를 표시합니다.

    if (terminalObject) {
        if (cniIsTerminalAttached(&rc, terminalObject)) {
            if (rc == CCI_SUCCESS) {
        cniPropagate(&rc, terminalObject, destinationList, exceptionList, message);
주의사항 | 등록상표 | 다운로드 | 라이브러리 | 지원 | 피드백
Copyright IBM Corporation 1999, 2006 마지막 갱신 날짜: 2006/08/21
as07620_