public RoomsManager()
 {
     this.roomsUserLists = new Dictionary<IRoom, CachedList<IRoomUser>>();
       foreach (var room in RequestContext.Model<Entities>().Rooms)
       {
     var users = new CachedList<IRoomUser>();
     room.Users = users;
     this.roomsUserLists.Add(room, users);
       }
 }
Example #2
0
        public void TestRDListSwitchToCaching()
        {
            var list = new CachedList<RedDotObjectHandle>(Objects, Caching.Disabled);
            list.Count();

            list.IsCachingEnabled = true;
            list.Count();
            list.Count();
            Assert.AreEqual(1, _callCount);
        }
Example #3
0
 public void TestRDListInvalidateCache()
 {
     var list = new CachedList<RedDotObjectHandle>(Objects, Caching.Enabled);
     list.Count();
     list.Count();
     list.InvalidateCache();
     list.Count();
     list.Count();
     Assert.AreEqual(2, _callCount);
 }
        static GenderCodingNames()
        {
            AllGenderCodingNames = new CachedList<GenderCodingName>(() => { return GetAllGenderCodingNames(); });

            USNames = new CachedList<GenderCodingName>(() => { return GetUSNames(); });

            ForeignNames = new CachedList<GenderCodingName>(() => { return GetForeignNames(); });

            WildCardNames = new CachedList<GenderCodingName>(() => { return GetWildCardNames(); });
        }
Example #5
0
        public void TestCachingContext()
        {
            var list = new CachedList<object>(() => new List<object>(), Caching.Enabled);

            using (new CachingContext<object>(list, Caching.Disabled))
            {
                Assert.IsFalse(list.IsCachingEnabled);
            }
            Assert.IsTrue(list.IsCachingEnabled);

            using (new CachingContext<object>(list, Caching.Enabled))
            {
                Assert.IsTrue(list.IsCachingEnabled);
            }
            Assert.IsTrue(list.IsCachingEnabled);
        }
Example #6
0
        protected virtual void DeleteTrackList (CachedList<DatabaseTrackInfo> list)
        {
            is_deleting = true;
            DeleteTrackJob.Total += (int) list.Count;
            List<DatabaseTrackInfo> skip_deletion = null;

            // Remove from file system
            foreach (DatabaseTrackInfo track in list) {
                if (track == null) {
                    DeleteTrackJob.Completed++;
                    continue;
                }

                try {
                    DeleteTrackJob.Status = String.Format ("{0} - {1}", track.ArtistName, track.TrackTitle);
                    if (!DeleteTrack (track)) {
                        if (skip_deletion == null) {
                            skip_deletion = new List<DatabaseTrackInfo> ();
                        }
                        skip_deletion.Add (track);
                    }
                } catch (Exception e) {
                    Log.Exception (e);
                    ErrorSource.AddMessage (e.Message, track.Uri.ToString ());
                }

                DeleteTrackJob.Completed++;
                if (DeleteTrackJob.Completed % 10 == 0 && !DeleteTrackJob.IsFinished) {
                    OnTracksDeleted ();
                }
            }

            is_deleting = false;

            if (DeleteTrackJob.Total == DeleteTrackJob.Completed) {
                delete_track_job.Finish ();
                delete_track_job = null;
            }

            if (skip_deletion != null) {
                list.Remove (skip_deletion);
                skip_deletion.Clear ();
                skip_deletion = null;
            }

            // Remove from database
            if (list.Count > 0) {
                ServiceManager.DbConnection.Execute (remove_list_command, DateTime.Now, list.CacheId, list.CacheId);
            }

            ThreadAssist.ProxyToMain (delegate {
                OnTracksDeleted ();
                OnUserNotifyUpdated ();
                OnUpdated ();
            });
        }
 public BattleManager()
 {
     battles = new CachedList<BattleDirector>(TimeSpan.FromMinutes(10));
 }
Example #8
0
        public void TestRDListWithCaching()
        {
            var list = new CachedList<RedDotObjectHandle>(Objects, Caching.Enabled);

            Assert.AreEqual(true, list.IsCachingEnabled);
            Assert.AreEqual(3, list.Count());
            Assert.AreEqual(1, _callCount);
            list.Count();
            Assert.AreEqual(1, _callCount);
            var newItem = new RedDotObjectHandle(Guid.Empty, "c");
            _objects.Add(newItem);
            list.Refresh();

            Assert.AreEqual(4, list.Count());
            Assert.AreEqual(2, _callCount);
        }
Example #9
0
 public void TestRDListWithoutCaching()
 {
     var list = new CachedList<RedDotObjectHandle>(Objects, Caching.Disabled);
     Assert.AreEqual(false, list.IsCachingEnabled);
     Assert.AreEqual(3, list.Count());
     list.Count();
     Assert.AreEqual(2, _callCount);
 }