if (isFiring(cls)) { m_firing.put(cls, event); } else { throw new IllegalStateException(); }
if (!isFiring(event)) { m_waiting.put(cls, event); }
        public void scheduleEvent(Class cls, DataEvent event) {            if (isFiring(cls)) {                m_firing.put(cls, event);            } else {                throw new IllegalStateException();            }        }