Example #1
0
 public string FormatUserStats(int possition,
     RaceStatsUsers stats,
     string line)
 {
     string formatUserStats = MinimumLength(line) || stats == null || race == null
                                  ? line
                                  : String.Format(new MyFormat(), line
                                                  , possition // {0}
                                                  , race.CurrentRaceData == null ? "" : race.CurrentRaceData.DirectoryName ?? "" // {1}
                                                  , stats.UserName // {2}
                                                  , stats.GroupName // {3}
                                                  , race.CurrentRaceData == null ? "" : race.CurrentRaceData.UploadVirtualPath ?? "" // {4}
                                                  , race.TotalFilesExpected // {5}
                                                  , stats.Speed // {6}
                                                  , stats.FilesUplaoded // {7}
                                                  , stats.BytesUplaoded.FormatSize() // {8}
                                                  , Constants.CodeIrcColor // {9}
                                                  , Constants.CodeIrcBold // {10}
                                                  , Constants.CodeIrcUnderline // {11}
                                                  , Constants.CodeNewLine); // {12}
     Log.Debug("FormatUserStats: " + formatUserStats);
     return formatUserStats;
 }
Example #2
0
 public void LogRace(RaceStatsUsers usersRaceStats)
 {
     if (Config.LogToIoFtpdRace)
     {
         Log.IoFtpd(FormatUserStats(1, usersRaceStats, Config.LogLineIoFtpdRace));
     }
     if (Config.LogToInternalRace)
     {
         Log.Internal(FormatUserStats(1, usersRaceStats, Config.LogLineInternalRace));
     }
 }
Example #3
0
 public List<RaceStatsUsers> GetUserStats()
 {
     List<RaceStatsUsers> stats = new List<RaceStatsUsers>();
     var query = from s in raceStats
                 group s by s.UserName;
     foreach (var result in query)
     {
         UInt64 totalBytesUplaoded = 0ul;
         int speed = 0;
         string groupName = "";
         int totalFileUploaded = 0;
         foreach (RaceStats raceStat in result)
         {
             if (!raceStat.FileUploaded)
             {
                 continue;
             }
             totalBytesUplaoded += raceStat.FileSize;
             speed += raceStat.FileSpeed;
             groupName = raceStat.GroupName;
             totalFileUploaded++;
         }
         if (totalFileUploaded > 0)
         {
             RaceStatsUsers raceStatsUsers = new RaceStatsUsers
                                             {
                                                 UserName = result.Key,
                                                 GroupName = groupName,
                                                 BytesUplaoded = totalBytesUplaoded,
                                                 Speed = speed / totalFileUploaded,
                                                 FilesUplaoded = totalFileUploaded,
                                             };
             stats.Add(raceStatsUsers);
         }
     }
     //stats.Sort ((stats1, stats2) => Comparer<UInt64>.Default.Compare (stats1.BytesUplaoded, stats2.BytesUplaoded));
     //UserStatsSortOrder<RaceStatsUsers> order = new UserStatsSortOrder<RaceStatsUsers>();
     stats.Sort();
     stats.Reverse();
     return stats;
 }