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(); }
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)); }
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)); }
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(); }