ObserverEntry entry = new ObserverEntry(observer, m_observers.size());
ObserverEntry entry = new ObserverEntry(observer);
    public void addObserver(DataObserver observer) {        if (observer == null) {            throw new IllegalArgumentException("Can't add a null observer.");        }        ObserverEntry entry = new ObserverEntry(observer, m_observers.size());        if (!m_observers.contains(entry)) {            if (m_firing != null) {                throw new IllegalStateException(                    "Can't add a new observer from within another " +                    "observer.\n" +                    "Trying to add: " + observer + "\n" +                    "Currently firing: " + m_firing + "\n" +                    "Current observers: " + m_observers                    );            }            m_observers.add(entry);        }    }