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)); }
public async Task <Maybe <PagedResult <Remark> > > BrowseSimilarAsync(BrowseSimilarRemarks query) => _useCache? _browseSimilarRemarksFilter.Filter(await GetRemarksByLocationAsync(query), query) : await _storageClient.GetFilteredCollectionAsync <Remark, BrowseSimilarRemarks>(query, "remarks/similar");