예제 #1
0
        public async Task <GetTableListResponse <ApiResourceSecretDto> > HandleAsync(int pageIndex, int pageSize,
                                                                                     CancellationToken cancellationToken = default)
        {
            var response = new GetTableListResponse <ApiResourceSecretDto>();
            var secrets  = await _repository.Query()
                           .IncludeOptimized(e => e.ApiResource)
                           .Select(e => new ApiResourceSecretDto
            {
                Id          = e.Id,
                Description = e.Description,
                Value       = e.Value.Unstamp(), // Very important to Unstamp a secret,
                Type        = e.Type,
                Expiration  = e.Expiration,
                Created     = e.Created,
                ClientId    = e.ApiResource.Name
            }).ToListAsync(cancellationToken);

            response.Count = secrets.Count;

            if (pageIndex > 0)
            {
                response.Items = secrets.Skip(pageIndex * pageSize).Take(pageSize);
                return(response);
            }

            response.Items = secrets.Take(pageSize);
            return(response);
        }
예제 #2
0
        public async Task <GetTableListResponse <ApiScopeDto> > HandleAsync(int pageIndex, int pageSize,
                                                                            CancellationToken cancellationToken = default)
        {
            var response  = new GetTableListResponse <ApiScopeDto>();
            var apiScopes = await _repository.Query()
                            .Select(e => new ApiScopeDto
            {
                Id          = e.Id,
                Name        = e.Name,
                DisplayName = e.DisplayName,
                Enabled     = e.Enabled,
                Description = e.Description,
                IsReadOnly  = AppConstants.ReadOnlyEntities.AllApiScopes.Contains(e.Name)
            }).ToListAsync(cancellationToken);

            response.Count = apiScopes.Count;

            if (pageIndex > 0)
            {
                response.Items = apiScopes.Skip(pageIndex * pageSize).Take(pageSize);
                return(response);
            }

            response.Items = apiScopes.Take(pageSize);
            return(response);
        }