jcabi-http
jcabi-http copied to clipboard
Caching Implementation Inconsistencies
There currently (that I'm aware of) isn't a way to externalize the cache to a Reddis/Cassandra/etc.
There are a number of caching wires that are unable to do the job:
AbstractHeaderBasedCachingWire.java: cache is a transientMapthat isn't user replaceableCachingWire.java: uses guavaMap, so probably the closest, but not easy/documented how to do itFcWire.java: cache root is a directory, andFcCacheis final and not an Interface
All of these are close, but no cigar.
What I'm specifically trying to do is create a Wire (GitHubWire.java) that supports a pluggable cache and supports ETag. AbstractHeaderBasedCachingWire.java would be perfect if I could just swap out the caching implementation...
@yegor256/z please, pay attention to this issue
@nnordrum/z this project will fix the problem faster if you donate a few dollars to it; just click here and pay via Stripe, it's very fast, convenient and appreciated; thanks a lot!
I realize jcabi/jcabi-github may be the right place the this, but here had more wires.
@nnordrum Would an extra constructor with Map parameter added in AbstractHeaderBasedCachingWire be enough?
Note, only 4 Map methods are used by this class (put,get,remove, contains), so may be it should not be a Map.
CachingWire keeps its cache it in static private variable, it could refactor in order to be used like .through(CachingWire.class, cache), though we would need an extract interface for this cache object.
@yegor256/z everybody who has role DEV is banned at #179; I won't be able to assign anyone automatically; consider assigning someone manually (as in §19), or invite more people (as in §51), or remove the job from the scope (as in §14)
@yegor256/z everybody who has role DEV is banned at #179; I won't be able to assign anyone automatically; consider assigning someone manually (as in §19), or invite more people (as in §51), or remove the job from the scope (as in §14)
@yegor256/z everybody who has role DEV is banned at #179; I won't be able to assign anyone automatically; consider assigning someone manually (as in §19), or invite more people (as in §51), or remove the job from the scope (as in §14)
@yegor256/z everybody who has role DEV is banned at #179; I won't be able to assign anyone automatically; consider assigning someone manually (as in §19), or invite more people (as in §51), or remove the job from the scope (as in §14)
@yegor256/z everybody who has role DEV is banned at #179; I won't be able to assign anyone automatically; consider assigning someone manually (as in §19), or invite more people (as in §51), or remove the job from the scope (as in §14)
@yegor256/z everybody who has role DEV is banned at #179; I won't be able to assign anyone automatically; consider assigning someone manually (as in §19), or invite more people (as in §51), or remove the job from the scope (as in §14)
@yegor256/z everybody who has role DEV is banned at #179; I won't be able to assign anyone automatically; consider assigning someone manually (as in §19), or invite more people (as in §51), or remove the job from the scope (as in §14)
@andreoss what's up with this ticket?
@yegor256/z everybody who has role DEV is banned at #179; I won't be able to assign anyone automatically; consider assigning someone manually (as in §19), or invite more people (as in §51), or remove the job from the scope (as in §14)
@yegor256/z everybody who has role DEV is banned at #179; I won't be able to assign anyone automatically; consider assigning someone manually (as in §19), or invite more people (as in §51), or remove the job from the scope (as in §14)
@yegor256 I would go with extra parameter to CachingWire, if you're okay with that
https://github.com/jcabi/jcabi-http/issues/179#issuecomment-655242046
@andreoss yes, it's fine
@yegor256/z everybody who has role DEV is banned at #179; I won't be able to assign anyone automatically; consider assigning someone manually (as in §19), or invite more people (as in §51), or remove the job from the scope (as in §14)
@yegor256/z everybody who has role DEV is banned at #179; I won't be able to assign anyone automatically; consider assigning someone manually (as in §19), or invite more people (as in §51), or remove the job from the scope (as in §14)
@yegor256/z everybody who has role DEV is banned at #179; I won't be able to assign anyone automatically; consider assigning someone manually (as in §19), or invite more people (as in §51), or remove the job from the scope (as in §14)
@nnordrum the puzzle #222 is still not solved.
@yegor256/z everybody who has role DEV is banned at #179; I won't be able to assign anyone automatically; consider assigning someone manually (as in §19), or invite more people (as in §51), or remove the job from the scope (as in §14)
@yegor256/z everybody who has role DEV is banned at #179; I won't be able to assign anyone automatically; consider assigning someone manually (as in §19), or invite more people (as in §51), or remove the job from the scope (as in §14)
@yegor256/z everybody who has role DEV is banned at #179; I won't be able to assign anyone automatically; consider assigning someone manually (as in §19), or invite more people (as in §51), or remove the job from the scope (as in §14)
@yegor256/z everybody who has role DEV is banned at #179; I won't be able to assign anyone automatically; consider assigning someone manually (as in §19), or invite more people (as in §51), or remove the job from the scope (as in §14)
@yegor256/z everybody who has role DEV is banned at #179; I won't be able to assign anyone automatically; consider assigning someone manually (as in §19), or invite more people (as in §51), or remove the job from the scope (as in §14)
@yegor256/z everybody who has role DEV is banned at #179; I won't be able to assign anyone automatically; consider assigning someone manually (as in §19), or invite more people (as in §51), or remove the job from the scope (as in §14)
@yegor256/z everybody who has role DEV is banned at #179; I won't be able to assign anyone automatically; consider assigning someone manually (as in §19), or invite more people (as in §51), or remove the job from the scope (as in §14)
@yegor256/z everybody who has role DEV is banned at #179; I won't be able to assign anyone automatically; consider assigning someone manually (as in §19), or invite more people (as in §51), or remove the job from the scope (as in §14)