Esempio n. 1
0
 protected void Init()
 {
     _fanArtSync            = new KeyedAsyncReaderWriterLock <Guid>();
     _fanArtCounts          = new AsyncStaticTimeoutCache <string, FanArtCount>(FANART_COUNT_TIMEOUT);
     _maxFanArtCounts       = new Dictionary <string, int>();
     _settingsChangeWatcher = new SettingsChangeWatcher <FanArtSettings>();
     _settingsChangeWatcher.SettingsChanged += SettingsChanged;
     LoadSettings();
 }
Esempio n. 2
0
        public void TestTimeoutCacheUpdateNew()
        {
            //Arrange
            AsyncStaticTimeoutCache <int, object> cache = new AsyncStaticTimeoutCache <int, object>(TimeSpan.FromMinutes(1));
            object newValue = new object();

            //Act
            object cacheValue = cache.UpdateValue(1, _ => Task.FromResult(newValue)).Result;

            //Assert
            Assert.IsTrue(ReferenceEquals(newValue, cacheValue));
        }
Esempio n. 3
0
        public void TestTimeoutCacheGetOrAddExisting()
        {
            //Arrange
            AsyncStaticTimeoutCache <int, object> cache = new AsyncStaticTimeoutCache <int, object>(TimeSpan.FromMinutes(1));
            object existingValue = new object();
            object newValue      = new object();

            cache.GetValue(1, _ => Task.FromResult(existingValue));

            //Act
            object cacheValue = cache.GetValue(1, _ => Task.FromResult(newValue)).Result;

            //Assert
            Assert.IsTrue(ReferenceEquals(existingValue, cacheValue));
        }
Esempio n. 4
0
        protected void Init()
        {
            if (!Directory.Exists(FANART_CACHE_PATH))
            {
                Directory.CreateDirectory(FANART_CACHE_PATH);
            }

            _fanArtSync      = new KeyedAsyncReaderWriterLock <Guid>();
            _fanArtCounts    = new AsyncStaticTimeoutCache <string, FanArtCount>(FANART_COUNT_TIMEOUT);
            _maxFanArtCounts = new Dictionary <string, int>();

            _settingsChangeWatcher = new SettingsChangeWatcher <FanArtSettings>();
            _settingsChangeWatcher.SettingsChanged += SettingsChanged;
            LoadSettings();
        }