public void processEvent(Event event)
    {
    	// Completion event indicates that the stream was closed by RFA
    	if (event.getType() == Event.COMPLETION_EVENT) 
    	{
    		System.out.println(_className+": Receive a COMPLETION_EVENT, "+ event.getHandle());
    		return;
    	}

        System.out.println(_className+".processEvent: Received Login Response ");

        OMMItemEvent ie = (OMMItemEvent) event;
        OMMMsg respMsg = ie.getMsg();

        // The login is unsuccessful, RFA forwards the message from the network
        if (respMsg.isFinal()) 
        {
        	System.out.println(_className+": Login Response message is final.");
        	GenericOMMParser.parse(respMsg);
        	_mainApp.loginFailure();
        	return;
        }

        // The login is successful, RFA forwards the message from the network
        if ((respMsg.getMsgType() == OMMMsg.MsgType.STATUS_RESP) &&
                (respMsg.has(OMMMsg.HAS_STATE)) &&
                (respMsg.getState().getStreamState() == OMMState.Stream.OPEN) &&
                (respMsg.getState().getDataState() == OMMState.Data.OK) )
        {
            System.out.println(_className+": Received Login STATUS OK Response");
            GenericOMMParser.parse(respMsg);
            _mainApp.processLogin();
        }
        else // This message is sent by RFA indicating that RFA is processing the login 
        {
            System.out.println (_className+": Received Login Response - "+ OMMMsg.MsgType.toString(respMsg.getMsgType()));
            GenericOMMParser.parse(respMsg);
        }
    }