Beispiel #1
0
        public IEnumerable <Community> List()
        {
            logger.LogDebug("Listando comunidades");
            var query = new CommunitiesQuery(node.Blockchain);

            return(query.Execute());
        }
Beispiel #2
0
        public async Task <CommunitiesQueryResponse> Handle(CommunitiesQuery req)
        {
            var communities = mapper.Map <IEnumerable <Shared.Contracts.Metadata.Community> >(await metadataRepository.GetCommunities());

            if (!string.IsNullOrEmpty(req.CountryCode))
            {
                communities = communities.Where(c => c.CountryCode == req.CountryCode);
            }
            if (!string.IsNullOrEmpty(req.StateProvinceCode))
            {
                communities = communities.Where(c => c.StateProvinceCode == req.StateProvinceCode);
            }

            if (req.Types != null && req.Types.Any())
            {
                var types = req.Types.Select(t => t.ToString()).ToArray();
                communities = communities.Where(c => types.Any(t => t == c.Type.ToString()));
            }

            return(new CommunitiesQueryResponse {
                Items = communities
            });
        }
        public async Task <CommunitiesQueryResponse> Handle(CommunitiesQuery req)
        {
            var communities = await cache.GetOrAdd("metadata:communities", () => metadataRepository.GetCommunities(), DateTimeOffset.Now.Add(cacheEntryLifetime));

            if (!string.IsNullOrEmpty(req.CountryCode))
            {
                communities = communities.Where(c => c.CountryCode == req.CountryCode);
            }
            if (!string.IsNullOrEmpty(req.StateProvinceCode))
            {
                communities = communities.Where(c => c.StateProvinceCode == req.StateProvinceCode);
            }

            if (req.Types != null && req.Types.Any())
            {
                var types = req.Types.Select(t => t.ToString()).ToArray();
                communities = communities.Where(c => types.Any(t => t == c.Type.ToString()));
            }

            return(new CommunitiesQueryResponse {
                Items = mapper.Map <IEnumerable <Community> >(communities)
            });
        }