示例#1
0
 public TzdbRepository(
     IApplicationLifetime lifetime,
     ILoggerFactory loggerFactory,
     IStorageRepository storage)
 {
     this.storage = storage;
     cache        = new TimerCache <CacheEntry>("time zone releases", lifetime, CacheRefreshTime, FetchReleases, loggerFactory, CacheEntry.Empty);
     cache.Start();
 }
示例#2
0
 public ReleaseRepository(
     IApplicationLifetime lifetime,
     ILoggerFactory loggerFactory,
     IStorageRepository storage)
 {
     this.storage = storage;
     cache        = new TimerCache <CacheValue>("releases", lifetime, CacheRefreshTime, FetchReleases, loggerFactory, FetchReleases());
     cache.Start();
 }
示例#3
0
        public BenchmarkRepository(
            IApplicationLifetime lifetime,
            ILoggerFactory loggerFactory,
            IStorageRepository storage,
            int limit)
        {
            var logger = loggerFactory.CreateLogger <BenchmarkRepository>();

            cache = new TimerCache <CacheValue>(
                cacheName: "benchmarks",
                lifetime,
                CacheRefreshTime, () => CacheValue.Refresh(cache?.Value ?? CacheValue.Empty, storage, logger, limit), loggerFactory,
                CacheValue.Empty);
            cache.Start();
        }