Exemplo n.º 1
0
        public async Task <Maybe <PagedResult <Remark> > > BrowseAsync(BrowseRemarks query)
        {
            if (!_useCache)
            {
                return(await _storageClient.GetFilteredCollectionAsync <Remark, BrowseRemarks>(query, "remarks"));
            }
            var keys = await _cache.GetSortedSetAsync("remarks-latest");

            if (keys == null || !keys.Any())
            {
                return(await _storageClient.GetFilteredCollectionAsync <Remark, BrowseRemarks>(query, "remarks"));
            }
            if (!query.IsLocationProvided() || query.SkipLocation)
            {
                return(_browseRemarksFilter.Filter(await GetRemarksWithoutLocationAsync(query), query));
            }

            return(_browseRemarksFilter.Filter(await GetRemarksByLocationAsync(query), query));
        }
Exemplo n.º 2
0
 public async Task <Maybe <PagedResult <Remark> > > BrowseSimilarAsync(BrowseSimilarRemarks query)
 => _useCache?
 _browseSimilarRemarksFilter.Filter(await GetRemarksByLocationAsync(query), query) :
     await _storageClient.GetFilteredCollectionAsync <Remark, BrowseSimilarRemarks>(query, "remarks/similar");