hc-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Nicolas Richeton (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HTTPCLIENT-1384) Expose CacheInvalidator in CachingHttpClientBuilder
Date Fri, 30 Aug 2013 16:41:08 GMT

    [ https://issues.apache.org/jira/browse/HTTPCLIENT-1384?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13754876#comment-13754876
] 

Nicolas Richeton commented on HTTPCLIENT-1384:
----------------------------------------------

I'm still working on this : trying to include the previous unit test in the patch and make
it pass. I found another method in BasicHttpCache#flushCacheEntriesFor(final HttpHost host,
final HttpRequest request) which flushes the cache directly, without delegating this action
to the cache invalidation. 

I'll attach a second version of patch. (Will also try to improve the javadoc as well). 

                
> Expose CacheInvalidator in CachingHttpClientBuilder
> ---------------------------------------------------
>
>                 Key: HTTPCLIENT-1384
>                 URL: https://issues.apache.org/jira/browse/HTTPCLIENT-1384
>             Project: HttpComponents HttpClient
>          Issue Type: Wish
>          Components: HttpCache
>    Affects Versions: 4.2.5, 4.3 Beta2
>            Reporter: Nicolas Richeton
>             Fix For: 4.3 Final
>
>         Attachments: patch.txt
>
>
> There is currently no way to customize the CacheInvalidator. Could it be possible to
allow setting a  CacheInvalidator in CachingHttpClientBuilder (eg. CachingHttpClientBuilder#setCacheInvalidator())
> Our use case : 
> - HttpClientCache is used in a Caching Reverse Proxy (shared cache, exposed to public
connections)
> - We have to ensure the cache cannot be flush by a random user.  
> - The default CacheInvalidator flushes all variants of an URI when receiving anything
other than GET, HEAD (compliant with RFC)
> - It is currently possible for a user to flush the whole cache by sending POST requests
of all uri (this may be harmful even only on a home page). 
> While it is not RFC-compliant, we need at least the ability to prevent invalidation in
CacheInvalidator#flushInvalidatedCacheEntriesFor and/or control invalidation with custom method
 (PURGE) and other criteria (like remote ip)
> The same applies to HttpClientCache 4.2.5: CachingHttpClient which does not allow provide
a custom CacheInvalidator
> Would this sound ok for you ? 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@hc.apache.org
For additional commands, e-mail: dev-help@hc.apache.org


Mime
View raw message