Exemplo n.º 1
0
        private IList <ValidationResult> ExtendValidationSearchCriterias(RessourceServerSearchDto c)
        {
            var resource = this.GetErrorStringLocalizer();
            IList <ValidationResult> result = new List <ValidationResult>();

            if (c.Limit - c.Skip > 50)
            {
                result.Add(new ValidationResult(String.Format(resource["SearchRessourceServerAskTooMuch"], c)));
            }

            return(result);
        }
Exemplo n.º 2
0
        public int SearchCount(RessourceServerSearchDto criterias)
        {
            Validate(criterias, ExtendValidationSearchCriterias);

            var count = 0;

            using (var c = RepositoriesFactory.CreateContext())
            {
                var rsRepo = RepositoriesFactory.GetRessourceServerRepository(c);
                count = rsRepo.GetAllByCriteriasCount(criterias.Name, criterias.Login, true);
            }

            return(count);
        }
Exemplo n.º 3
0
        public IEnumerable <RessourceServerDto> Search(RessourceServerSearchDto criterias)
        {
            Logger.LogInformation("Search ressource servers");

            Validate(criterias, ExtendValidationSearchCriterias);

            IList <RessourceServer> rs = null;


            using (var context = RepositoriesFactory.CreateContext())
            {
                var rsRepo = RepositoriesFactory.GetRessourceServerRepository(context);

                rs = rsRepo.GetAllByCriterias(criterias.Name, criterias.Login, true, criterias.Skip, criterias.Limit).ToList();
            }

            return(rs != null?rs.ToDto() : new List <RessourceServerDto>());
        }
Exemplo n.º 4
0
        public IActionResult GetAll(string name, string login, uint skip, uint limit)
        {
            var criterias = new RessourceServerSearchDto()
            {
                Name  = name,
                Login = login,
                Skip  = skip,
                Limit = limit
            };

            var count = _service.SearchCount(criterias);

            Request.HttpContext.Response.Headers.Add("X-Total-Count", count.ToString());
            if (Request.Method.Equals("head", StringComparison.OrdinalIgnoreCase))
            {
                return(Ok());
            }
            else
            {
                var clients    = _service.Search(criterias);
                var currentUrl = UriHelper.GetDisplayUrl(Request);
                return(Ok(clients.ToSearchResult <RessourceServerDto>(currentUrl, count, criterias)));
            }
        }