public void processLoginMessage(OMMMsg respMsg)
    {
        // *_log<< "Received login response" << endl;
        myCallback.notifyStatus("Received login response");

        if (respMsg.has(OMMMsg.HAS_ATTRIB_INFO))
        {
            OMMAttribInfo attribInfo = respMsg.getAttribInfo();
            if (attribInfo.has(OMMAttribInfo.HAS_SERVICE_NAME))
                // *_log<<"Service Name: : " <<
                // attribInfo.getServiceName()<<endl;
                System.out.println("");
            if (attribInfo.has(OMMAttribInfo.HAS_NAME))
                // *_log<<"Name : " << attribInfo.getName()<<endl;
                System.out.println("");

            // *_log<< "response type : " <<
            // msgRespTypeToString(respMsg.getRespType()) << endl;
        }
        if (respMsg.has(OMMMsg.HAS_STATE))
        {
            OMMState respState = respMsg.getState();
            StringBuffer buffer = new StringBuffer();
            buffer.append("Login state: ");
            // buffer.append(streamStateToString (respState.getStreamState()));

            buffer.append("; code: ");
            // buffer.append(statusCodeToString (respState.getCode()));
            buffer.append(" status: " + respState.getText());
            // *_log<<buffer.toString();
            myCallback.notifyStatus(buffer.toString());

            if ((respMsg.getState().getStreamState() == OMMState.Stream.OPEN)
                    && (respMsg.getState().getDataState() == OMMState.Data.OK))
            {
                System.out.println("Login successful...");
                // Now we can send the directory request
                if (!_loggedIn)
                {
                    // send service request only once.
                    _loggedIn = true;
                    sendRequest(RDMMsgTypes.DIRECTORY, null);

                }
            }
            else if (respMsg.getMsgType() == OMMMsg.MsgType.STATUS_RESP)
            {
                if (respMsg.getState().getStreamState() == OMMState.Stream.CLOSED)
                {
                    // Check for connection loss, recovery and cleanup
                    System.out.println("Login denied");
                    // cleanup();
                    _loggedIn = false;
                }
            }
        }
    }