コード例 #1
0
        public void TestRetreive()
        {
            CacheItemBase citem = (CacheItemBase)cache.Get(cacheItemUUID.ToString());

            byte[] data = (byte[])citem.Retrieve();
            Assert.That(data.Length == 1, "Cached Item should have one byte element");
            Assert.That(data[0] == 255, "Cached Item element should be 255");
        }
コード例 #2
0
        public void CacheItemMundane()
        {
            UUID Random1 = UUID.Random();
            UUID Random2 = UUID.Random();

            byte[]        data = new byte[0];
            CacheItemBase cb1  = new CacheItemBase(Random1.ToString(), DateTime.Now + TimeSpan.FromDays(1));
            CacheItemBase cb2  = new CacheItemBase(Random2.ToString(), DateTime.Now + TimeSpan.FromDays(1));
            CacheItemBase cb3  = new CacheItemBase(Random1.ToString(), DateTime.Now + TimeSpan.FromDays(1));

            cb1.Store(data);

            Assert.That(cb1.Equals(cb3), "cb1 should equal cb3, their uuids are the same");
            Assert.That(!cb2.Equals(cb1), "cb2 should not equal cb1, their uuids are NOT the same");
            Assert.That(cb1.IsLocked() == false, "CacheItemBase default is false");
            Assert.That(cb1.Retrieve() == null, "Virtual Retrieve method should return null");
        }
コード例 #3
0
ファイル: CacheQueueBase.cs プロジェクト: zyg0717/LJTH_SJSJ
 /// <summary>
 /// 虚方法,删除Cache项
 /// </summary>
 /// <param name="cacheItem">被删除的Cache项</param>
 internal protected abstract void RemoveItem(CacheItemBase cacheItem);
コード例 #4
0
ファイル: CacheTests.cs プロジェクト: BackupTheBerlios/seleon
        public void CacheItemMundane()
        {
            UUID Random1 = UUID.Random();
            UUID Random2 = UUID.Random();
            byte[] data = new byte[0];
            CacheItemBase cb1 = new CacheItemBase(Random1.ToString(), DateTime.Now + TimeSpan.FromDays(1));
            CacheItemBase cb2 = new CacheItemBase(Random2.ToString(), DateTime.Now + TimeSpan.FromDays(1));
            CacheItemBase cb3 = new CacheItemBase(Random1.ToString(), DateTime.Now + TimeSpan.FromDays(1));

            cb1.Store(data);

            Assert.That(cb1.Equals(cb3), "cb1 should equal cb3, their uuids are the same");
            Assert.That(!cb2.Equals(cb1), "cb2 should not equal cb1, their uuids are NOT the same");
            Assert.That(cb1.IsLocked() == false, "CacheItemBase default is false");
            Assert.That(cb1.Retrieve() == null, "Virtual Retrieve method should return null");


        }
コード例 #5
0
        public static uint GetItemCrc32(this Cache cache, string key)
        {
            CacheItemBase data = cache[key] as CacheItemBase;

            return((data == null) ? 0 : data.Crc32);
        }
コード例 #6
0
        public static Guid GetItemGuid(this Cache cache, string key)
        {
            CacheItemBase data = cache[key] as CacheItemBase;

            return((data == null) ? Guid.NewGuid() : data.Guid);
        }
コード例 #7
0
		/// <summary>
		/// 虚方法,删除Cache项
		/// </summary>
		/// <param name="cacheItem">被删除的Cache项</param>
		internal protected abstract void RemoveItem(CacheItemBase cacheItem);