public void run()
        {
            if (m_bUpdatesReadyOnAllClients == false)
            {
                m_bUpdatesReadyOnAllClients = true;
                for (int i = 1; i <= m_sessionCount; i++)
                {
                    m_bUpdatesReadyOnAllClients = ((ConsumerClient)m_consumerClientList.get(i - 1)).m_itemClient
                            .allItemsReceived(i - 1) & m_bUpdatesReadyOnAllClients;
                }
            }

            ++m_statsCounter;

            if (m_bUpdatesReadyOnAllClients == false)
                System.out.println();

            for (int i = 1; i <= m_sessionCount; i++)
            {
                if (m_bUpdatesReadyOnAllClients == false)
                {
                    // dump LoginStatus OR GeneralStats OR Updates on a single
                    // line
                    ((ConsumerClient)m_consumerClientList.get(i - 1)).m_itemClient
                            .printStats(m_statsCounter, m_dumpString);
                }
                else
                {
                    // - dump Updates OR GeneralStats
                    //
                    // - updates are consolidated for all consumers & printed on
                    // a single line;
                    // this needs the foll. info -
                    // "is this the 1st session","is this the last session"
                    m_dumpString = ((ConsumerClient)m_consumerClientList.get(i - 1)).m_itemClient
                            .printStats(m_statsCounter, m_dumpString, i == 1, i == m_sessionCount);
                    if (m_dumpString.length() == 0)
                        continue;
                }
            }

            if (m_bUpdatesReadyOnAllClients == false)
                System.out.println();
        }