public void processEvent(Event event)
    {

        if (event.getType() == Event.COMPLETION_EVENT)
        {
            System.out.println(_className + ": Receive a COMPLETION_EVENT, " + event.getHandle());
            return;
        }

        if (event.getType() != Event.OMM_ITEM_EVENT)
        {
            System.out.println("ERROR: " + _className + " Received a unsupported Event type.");
            _mainApp.cleanup(-1);
        }

        OMMItemEvent ie = (OMMItemEvent)event;
        OMMMsg respMsg = ie.getMsg();
        if (respMsg.getMsgModelType() != RDMMsgTypes.DICTIONARY)
        {
            System.out.println("ERROR: " + _className
                    + ".processEvent: Received a non-DICTIONARY model type.");
            _mainApp.cleanup(-1);
        }

        if (respMsg.getMsgType() == OMMMsg.MsgType.REFRESH_RESP)
        {
            if (respMsg.getAttribInfo().getFilter() == RDMDictionary.Filter.INFO)
            {
                processDictionaryInfo(respMsg, event.getHandle());
            }
            else
            {
                processFullDictionary(respMsg, event.getHandle());
            }
        }
        else
        {
            System.out.println(_className + ": Received Dictionary Response - "
                    + OMMMsg.MsgType.toString(respMsg.getMsgType()));
            GenericOMMParser.parse(respMsg);
        }

        if (respMsg.isFinal())
        {
            _dictHandles.remove(event.getHandle());
        }
    }