예제 #1
0
        public async Task <WardenStatsDto> GetStatsAsync(GetWardenStats query)
        {
            var warden = await _database.Organizations()
                         .GetWardenByNameAsync(query.OrganizationId, query.WardenName);

            if (warden == null)
            {
                return(new WardenStatsDto());
            }

            var iterations = await _database.WardenIterations()
                             .GetForWardenAsync(query.OrganizationId, query.WardenName);

            var stats = GetWardenStats(iterations.ToList());

            stats.OrganizationId = query.OrganizationId;
            stats.WardenName     = warden.Name;
            stats.Enabled        = warden.Enabled;

            Logger.Trace($"Statistics for for Warden: '{warden.Name}' with id: '{warden.Id}' " +
                         $"in organization: '{query.OrganizationId}' were created.");

            return(stats);
        }
예제 #2
0
        public async Task<WardenStatsDto> GetStatsAsync(GetWardenStats query)
        {
            var warden = await _database.Organizations()
                .GetWardenByNameAsync(query.OrganizationId, query.WardenName);
            if (warden == null)
                return new WardenStatsDto();

            var iterations = await _database.WardenIterations()
                .GetForWardenAsync(query.OrganizationId, query.WardenName);
            var stats = GetWardenStats(iterations.ToList());
            stats.OrganizationId = query.OrganizationId;
            stats.WardenName = warden.Name;
            stats.Enabled = warden.Enabled;

            Logger.Trace($"Statistics for for Warden: '{warden.Name}' with id: '{warden.Id}' " +
                         $"in organization: '{query.OrganizationId}' were created.");

            return stats;
        }
예제 #3
0
        public async Task <WardenStatsDto> GetStats(Guid organizationId, string wardenName, [FromUri] GetWardenStats query)
        {
            var isAuthorized = await _organizationService.IsUserInOrganizationAsync(organizationId, UserId);

            if (!isAuthorized)
            {
                Response.StatusCode = 401;

                return(null);
            }

            var stats = await _wardenService.GetStatsAsync(query);

            return(stats);
        }