in jetcache-support/jetcache-redis-lettuce/src/main/java/com/alicp/jetcache/redis/lettuce/RedisLettuceCache.java [243:268]
protected CacheResult do_REMOVE(K key) {
try {
RedisFuture<Long> future = keyAsyncCommands.del(buildKey(key));
CacheResult result = new CacheResult(future.handle((rt, ex) -> {
if (ex != null) {
JetCacheExecutor.defaultExecutor().execute(() -> logError("REMOVE", key, ex));
return new ResultData(ex);
} else {
if (rt == null) {
return new ResultData(CacheResultCode.FAIL, null, null);
} else if (rt == 1) {
return new ResultData(CacheResultCode.SUCCESS, null, null);
} else if (rt == 0) {
return new ResultData(CacheResultCode.NOT_EXISTS, null, null);
} else {
return new ResultData(CacheResultCode.FAIL, null, null);
}
}
}));
setTimeout(result);
return result;
} catch (Exception ex) {
logError("REMOVE", key, ex);
return new CacheResult(ex);
}
}