@Override
    public InputHandler getInputHandler(ProtocolType type, SIBUuid8 sourceMEUuid, JsMessage msg)
    {
        if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
            SibTr.entry(tc, "getInputHandler",
                        new Object[] { type, sourceMEUuid, msg });

        InputHandler msgHandler = null;

        if (type == ProtocolType.UNICASTINPUT)
        {
            msgHandler = getInputHandler();
        }
        else if (type == ProtocolType.PUBSUBINPUT)
        {
            msgHandler = getInputHandler();
        }
        else if (type == ProtocolType.ANYCASTINPUT)
        {

            // For durable, AIHs are referenced by pseudo destination ID so check for that first
            SIBUuid12 destID = msg.getGuaranteedTargetDestinationDefinitionUUID();
            SIBUuid12 gatheringTargetDestUuid = msg.getGuaranteedGatheringTargetUUID();

            msgHandler = _protoRealization.
                            getRemoteSupport().
                            getAnycastInputHandlerByPseudoDestId(destID);

            // Otherwise, use the uuid of the sourceCellule ME to find the RCD to deliver the message. We assume that this
            // uuid corresponds to that used to choose the RCD initially, and that was used by the associated
            // AIH as the uuid of the DME to which it sent the request for the message.
            if (msgHandler == null)
                msgHandler = getAnycastInputHandler(sourceMEUuid, gatheringTargetDestUuid, true);
        }
        //else
        //{
        //unsupported protocol type
        //return null
        //}

        if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
            SibTr.exit(tc, "getInputHandler", msgHandler);

        return msgHandler;
    }
@ Override public InputHandler getInputHandler ( ProtocolType type , SIBUuid8 sourceMEUuid , JsMessage msg ) { if ( TraceComponent . isAnyTracingEnabled ( ) && tc . isEntryEnabled ( ) ) SibTr . entry ( tc , "getInputHandler" , new Object [ ] { type , sourceMEUuid , msg } ) ; InputHandler msgHandler = null ; if ( type == ProtocolType . UNICASTINPUT ) { msgHandler = getInputHandler ( ) ; } else if ( type == ProtocolType . PUBSUBINPUT ) { msgHandler = getInputHandler ( ) ; } else if ( type == ProtocolType . ANYCASTINPUT ) { SIBUuid12 destID = msg . getGuaranteedTargetDestinationDefinitionUUID ( ) ; SIBUuid12 gatheringTargetDestUuid = msg . getGuaranteedGatheringTargetUUID ( ) ; msgHandler = _protoRealization . getRemoteSupport ( ) . getAnycastInputHandlerByPseudoDestId ( destID ) ; if ( msgHandler == null ) msgHandler = getAnycastInputHandler ( sourceMEUuid , gatheringTargetDestUuid , true ) ; } if ( TraceComponent . isAnyTracingEnabled ( ) && tc . isEntryEnabled ( ) ) SibTr . exit ( tc , "getInputHandler" , msgHandler ) ; return msgHandler ; }
/*
(non-Javadoc)

@see com.ibm.ws.sib.processor.impl.interfaces.DestinationHandler#getInputHandler(com.ibm.ws.sib.common.ProtocolType, com.ibm.ws.sib.trm.topology.Cellule)