Ejemplo n.º 1
0
        public async Task <long> GetTotalSizeAsync(DomainId appId)
        {
            var key = GetKey(appId);

            var counters = await usageTracker.GetAsync(key, SummaryDate, SummaryDate, null);

            return(counters.GetInt64(CounterTotalSize));
        }
Ejemplo n.º 2
0
        public async Task Should_cache_days_usage()
        {
            var counters = new Counters();

            var dateFrom = date;
            var dateTo   = dateFrom.AddDays(10);

            A.CallTo(() => inner.GetAsync(key, dateFrom, dateTo, category))
            .Returns(counters);

            var result1 = await sut.GetAsync(key, dateFrom, dateTo, category);

            var result2 = await sut.GetAsync(key, dateFrom, dateTo, category);

            Assert.Same(counters, result1);
            Assert.Same(counters, result2);

            A.CallTo(() => inner.GetAsync(key, dateFrom, dateTo, category))
            .MustHaveHappenedOnceExactly();
        }
Ejemplo n.º 3
0
        public Task <Counters> GetAsync(string key, DateTime fromDate, DateTime toDate, string?category)
        {
            Guard.NotNull(key, nameof(key));

            var cacheKey = string.Join("$", "Usage", nameof(GetAsync), key, fromDate, toDate, category);

            return(Cache.GetOrCreateAsync(cacheKey, entry =>
            {
                entry.AbsoluteExpirationRelativeToNow = CacheDuration;

                return inner.GetAsync(key, fromDate, toDate, category);
            }));
        }
Ejemplo n.º 4
0
        public Task <Counters> GetAsync(string key, DateTime fromDate, DateTime toDate, string?category)
        {
            Guard.NotNull(key, nameof(key));

            var cacheKey = $"{typeof(CachingUsageTracker)}_Usage_{key}_{fromDate}_{toDate}_{category}";

            return(cache.GetOrCreateAsync(cacheKey, entry =>
            {
                entry.AbsoluteExpirationRelativeToNow = CacheDuration;

                return inner.GetAsync(key, fromDate, toDate, category);
            }));
        }
Ejemplo n.º 5
0
 public async Task Should_get_total_size_from_summary_date()
 {
     A.CallTo(() => usageTracker.GetAsync($"{appId.Id}_Assets", default, default, null, default))