public TestApiServer(
     StatsConfiguration statsConfiguration,
     ITestOutputHelper testOutputHelper)
 {
     _statsConfiguration = statsConfiguration;
     _testOutputHelper   = testOutputHelper;
 }
示例#2
0
        public static async Task <IEnumerable <string> > GetMostKills(long?serverId, StatsConfiguration config, IDatabaseContextFactory contextFactory, ITranslationLookup translationLookup)
        {
            using (var ctx = contextFactory.CreateContext(enableTracking: false))
            {
                var dayInPast = DateTime.UtcNow.AddDays(-config.MostKillsMaxInactivityDays);

                var iqStats = (from stats in ctx.Set <EFClientStatistics>()
                               join client in ctx.Clients
                               on stats.ClientId equals client.ClientId
                               join alias in ctx.Aliases
                               on client.CurrentAliasId equals alias.AliasId
                               where stats.ServerId == serverId
                               where client.Level != EFClient.Permission.Banned
                               where client.LastConnection >= dayInPast
                               orderby stats.Kills descending
                               select new
                {
                    alias.Name,
                    stats.Kills
                })
                              .Take(config.MostKillsClientLimit);

                var iqList = await iqStats.ToListAsync();

                return(iqList.Select((stats, index) => translationLookup["PLUGINS_STATS_COMMANDS_MOSTKILLS_FORMAT"].FormatExt(index + 1, stats.Name, stats.Kills))
                       .Prepend(Utilities.CurrentLocalization.LocalizationIndex["PLUGINS_STATS_COMMANDS_MOSTKILLS_HEADER"]));
            }
        }
        public static IAppBuilder UseHttpMetrics(this IAppBuilder app, StatsConfiguration options)
        {
            if (app == null)
            {
                throw new ArgumentNullException(nameof(app));
            }
            if (options == null)
            {
                throw new ArgumentNullException(nameof(options));
            }

            app.Use <HttpMetricsMiddleware>(options);

            return(app);
        }
 public HttpMetricsMiddleware(OwinMiddleware next,
                              StatsConfiguration options) : base(next)
 {
     _statsPublisher = new StatsPublisher(Options.Create(options));
 }
示例#5
0
 public StartUp(StatsConfiguration statsConfiguration,
                ITestOutputHelper testOutputHelper)
 {
     _statsConfiguration = statsConfiguration;
     _testOutputHelper   = testOutputHelper;
 }
示例#6
0
 public WeaponNameParser(ILogger <WeaponNameParser> logger, IConfigurationHandler <StatsConfiguration> config)
 {
     _logger = logger;
     _config = config.Configuration();
 }