-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Reinstate RedisCacheConfiguration.getTtl() #2629
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
return ttlFunction instanceof FixedDurationTtlFunction it ? it.duration() | ||
: ttlFunction.getTimeToLive(null, null); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The key
parameter of TtlFunction#getTimeToLive
does not seem to be nullable. Also why cast to FixedDurationTtlFunction
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why cast to FixedDurationTtlFunction
?
Because it is still possible to configure a "fixed" Duration
TTL cache entry expiration policy using the overloaded entryTtl(:Duration)
(source) builder method in RedisCacheConfiguration
.
NOTE:
entryTtl(:Duration)
(fixed) is an alternative toentryTtl(:TtlFunction)
(dynamic; here), hence the overload. Internally, a "fixed"Duration
is still represented with aTtlFunction
.
From this line, it will then create a (non-dynamically computed) FixedDurationTtlFunction
instance (here).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
FixedDurationTtlFunction#getTimeToLive
would return the duration nevertheless, so really I do not see the need for a cast here.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Outside of a potential JVM runtime optimization here, it is true, there probably is no a need for the instance of check and implicit cast to a FixedDurationTtlFunction
and direct call to the duration()
method.
Feel free to change it in the polishing commit if you like. Otherwise, let me know, and I can take care of it.
See #2628