internal object Get(string key) { var redisCacheKey = new RedisCacheKey(key); var stateJson = _redisDatabase.StringGet(redisCacheKey.StateKey); if (string.IsNullOrEmpty(stateJson)) return null; var valueJson = _redisDatabase.StringGet(redisCacheKey.Key); var state = JsonConvert.DeserializeObject<RedisCacheEntryState>(stateJson); var value = GetObjectFromString(valueJson, state.TypeName); if (state.IsSliding) { state.UpdateUsage(); stateJson = JsonConvert.SerializeObject(state, _jsonSerializerSettings); var ttl = GetTtl(state); _redisDatabase.StringSet(redisCacheKey.StateKey, stateJson, ttl); _redisDatabase.KeyExpire(redisCacheKey.Key, ttl); } return value; }
internal object Get(string key) { var redisCacheKey = new RedisCacheKey(key); var stateJson = _redisDatabase.StringGet(redisCacheKey.StateKey); if (string.IsNullOrEmpty(stateJson)) { return(null); } var valueJson = _redisDatabase.StringGet(redisCacheKey.Key); var state = JsonConvert.DeserializeObject <RedisCacheEntryState>(stateJson); var value = GetObjectFromString(valueJson, state.TypeName); if (state.IsSliding) { state.UpdateUsage(); stateJson = JsonConvert.SerializeObject(state, _jsonSerializerSettings); var ttl = GetTtl(state); _redisDatabase.StringSet(redisCacheKey.StateKey, stateJson, ttl); _redisDatabase.KeyExpire(redisCacheKey.Key, ttl); } return(value); }
internal object Remove(string key) { var redisCacheKey = new RedisCacheKey(key); var valueJson = _redisDatabase.StringGet(redisCacheKey.Key); if (string.IsNullOrEmpty(valueJson)) return null; var value = JsonConvert.DeserializeObject(valueJson); _redisDatabase.KeyDelete(redisCacheKey.Key); _redisDatabase.KeyDelete(redisCacheKey.StateKey); return value; }
internal object Remove(string key) { var redisCacheKey = new RedisCacheKey(key); var valueJson = _redisDatabase.StringGet(redisCacheKey.Key); if (string.IsNullOrEmpty(valueJson)) { return(null); } var value = JsonConvert.DeserializeObject(valueJson); _redisDatabase.KeyDelete(redisCacheKey.Key); _redisDatabase.KeyDelete(redisCacheKey.StateKey); return(value); }