コード例 #1
0
        public void Store(long blockId, ChangingEntity entity, TimeSpan expiresAfter)
        {
            /* If there is already someting valid in the cache we want to keep it. Instead of overwriting it with stuff like Nobody. */
            if (entity != null && entity.Owner == 0L && entity.Controller == 0L && !entity.IsPlanet)
            {
                var existingEntity = Get(blockId);

                if (existingEntity != null && (existingEntity.Owner != 0L || existingEntity.Controller != 0L || existingEntity.IsPlanet))
                {
                    return;
                }
            }

            _cache[blockId] = new CacheItem(entity, expiresAfter);
        }
コード例 #2
0
 public CacheItem(ChangingEntity entity, TimeSpan expiresAfter)
 {
     Value        = entity;
     ExpiresAfter = expiresAfter;
 }