Example #1
0
        public static void Replay(String fileName)
        {
            Logger.Info("Replaying Chat Log: {0}", new FileInfo(fileName).Name);
            Int64     ircCounter  = 0;
            Int64     metaCounter = 0;
            Stopwatch stopwatch;

            using (StreamReader logReader = File.OpenText(fileName)) {
                String curLine;
                stopwatch = Stopwatch.StartNew();
                while ((curLine = logReader.ReadLine()) != null)
                {
                    if (curLine.Length >= 29)
                    {
                        if (curLine.Substring(28, 1) == "|")
                        {
                            // Do we want to change this to QueueLog just in case we do something
                            // special later?
                            OutgoingQueue.QueueRaw(curLine);
                            ircCounter++;
                        }
                        else if (curLine.Substring(28, 1) == "#")
                        {
                            // Do we do anything here?
                            metaCounter++;
                        }
                    }
                }
                stopwatch.Stop();
            }
            Int64  totalLines = ircCounter + metaCounter;
            Double speed      = (Double)totalLines / stopwatch.ElapsedMilliseconds * 1000.0;

            Logger.Info("   Done! Took {0:n0} milliseconds.", stopwatch.ElapsedMilliseconds);
            Logger.Info("      IRC Lines: {0:n0}", ircCounter);
            Logger.Info("     Meta Lines: {0:n0}", metaCounter);
            Logger.Info("          Speed: {0:n0} Lines/Sec", speed);
        }