Commit Graph

301 Commits

Author SHA1 Message Date
Oleg Kalnichevski f643326e9e Moved HttpClientBuilder
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1420122 13f79535-47bb-0310-9956-ffa450edef68
2012-12-11 12:22:58 +00:00
Oleg Kalnichevski 034805c3af Added caching specific HttpClient builder
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1420121 13f79535-47bb-0310-9956-ffa450edef68
2012-12-11 12:20:08 +00:00
Oleg Kalnichevski b257aeec70 Added cache specific HttpContext adaptor
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1419448 13f79535-47bb-0310-9956-ffa450edef68
2012-12-10 13:40:25 +00:00
Oleg Kalnichevski fcd02a0a18 Ported CachingHttpClient to ClientExecChain API
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1418743 13f79535-47bb-0310-9956-ffa450edef68
2012-12-08 19:59:24 +00:00
Gary D. Gregory cdaca60ad0 Use the 'maven.compile.source' property instead of a hard-wired version number.
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1418304 13f79535-47bb-0310-9956-ffa450edef68
2012-12-07 13:28:03 +00:00
Oleg Kalnichevski 9aea057953 Ported internal caching classes to the new execution chain API
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1417343 13f79535-47bb-0310-9956-ffa450edef68
2012-12-05 10:34:46 +00:00
Oleg Kalnichevski 0edf06281f Made CacheConfig consistent with the new config API
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1416582 13f79535-47bb-0310-9956-ffa450edef68
2012-12-03 16:34:27 +00:00
Gary D. Gregory f81dd8f31a The root project defines module the properties used by all the other modules.
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1414748 13f79535-47bb-0310-9956-ffa450edef68
2012-11-28 15:17:17 +00:00
Oleg Kalnichevski f24317d156 HTTPCLIENT-1263: CachingHttpClient fails to release connections back to the connection manager for some type of HTTP response messages when used together with DecompressingHttpClient
Contributed by Francois-Xavier Bonnet <francois-xavier.bonnet at centraliens.net>

git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1412858 13f79535-47bb-0310-9956-ffa450edef68
2012-11-23 12:45:02 +00:00
Sebastian Bazley e9ed1f5725 Fix some obvious boxing in test classes
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1406888 13f79535-47bb-0310-9956-ffa450edef68
2012-11-08 01:34:17 +00:00
Sebastian Bazley c2e94980e1 Formatter instances need to be closed
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1406436 13f79535-47bb-0310-9956-ffa450edef68
2012-11-07 03:24:08 +00:00
Sebastian Bazley 4e3cbc31a7 Explicit Boolean rather than boxing
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1406435 13f79535-47bb-0310-9956-ffa450edef68
2012-11-07 03:23:35 +00:00
Sebastian Bazley 321319c965 Missing @Override
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1406426 13f79535-47bb-0310-9956-ffa450edef68
2012-11-07 02:47:49 +00:00
Sebastian Bazley e1395539de Unthrown exceptions
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1406425 13f79535-47bb-0310-9956-ffa450edef68
2012-11-07 02:47:24 +00:00
Sebastian Bazley 73054957f8 Unnecessary casts
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1406424 13f79535-47bb-0310-9956-ffa450edef68
2012-11-07 02:47:01 +00:00
Oleg Kalnichevski 43d4e8f469 HTTPCLIENT-1244: relaxed EasyMock based unit tests in the Caching module
Contributed by Joe Campbell <joseph.r.campbell at gmail.com>

git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1395613 13f79535-47bb-0310-9956-ffa450edef68
2012-10-08 15:26:50 +00:00
Jonathan Moore b7d1d69ef6 HTTPCLIENT-1223: Forward port from 4.2.X branch to trunk.
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1376181 13f79535-47bb-0310-9956-ffa450edef68
2012-08-22 18:31:52 +00:00
Oleg Kalnichevski 8ef44683ba Upgraded project version to 4.3-alpha1-SNAPSHOT
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1369849 13f79535-47bb-0310-9956-ffa450edef68
2012-08-06 13:59:21 +00:00
Oleg Kalnichevski b7f85c1af7 Upgraded project version to 4.2.2-SNAPSHOT
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1356623 13f79535-47bb-0310-9956-ffa450edef68
2012-07-03 08:52:49 +00:00
Oleg Kalnichevski faef016a2c HTTPCLIENT-1201: Quick start doc improvements
Contributed by miles zarathustra <albert.bradley at thomsonreuters.com>

git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1353605 13f79535-47bb-0310-9956-ffa450edef68
2012-06-25 15:43:28 +00:00
Jonathan Moore c429b34ca9 HTTPCLIENT-1202: Allow for caching responses without bodies.
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1347764 13f79535-47bb-0310-9956-ffa450edef68
2012-06-07 19:43:22 +00:00
Jonathan Moore 2748f2748a HTTPCLIENT-1202: ResponseCachingPolicy had a bug that was making it too
draconian in refusing to cache certain responses.


git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1347627 13f79535-47bb-0310-9956-ffa450edef68
2012-06-07 14:14:42 +00:00
Jonathan Moore 218823fa4e HTTPCLIENT-1198: HttpHost is not set in HttpContext in CachingHttpClient.
This patch (with tests) primarily just needs to figure out how to set
appropriate context variables in the event of a pure cache hit--in the
event of a cache miss or a cache validation, we actually make an origin
request, and the "backend" client sets these context variables.

git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1345297 13f79535-47bb-0310-9956-ffa450edef68
2012-06-01 18:09:49 +00:00
Jonathan Moore 59314afc7d Added XML Schema reference for site.xml files.
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1344849 13f79535-47bb-0310-9956-ffa450edef68
2012-05-31 18:24:23 +00:00
Oleg Kalnichevski 570aa9fa37 Upgraded project version to 4.2.1-SNAPSHOT
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1340700 13f79535-47bb-0310-9956-ffa450edef68
2012-05-20 12:51:21 +00:00
Oleg Kalnichevski 1b063abfa9 HTTPCLIENT-1187: If a revalidation response is deemed too old CachingHttpClient fails to consume its content resulting in a connection leak
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1335726 13f79535-47bb-0310-9956-ffa450edef68
2012-05-08 19:54:27 +00:00
Oleg Kalnichevski a8d2e5e5fa Added release version to deprecation annotations; removed references to deprecated methods / classes
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1335088 13f79535-47bb-0310-9956-ffa450edef68
2012-05-07 16:06:11 +00:00
Oleg Kalnichevski 747593abb7 Upgraded project version to 4.2-beta2-SNAPSHOT
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1242454 13f79535-47bb-0310-9956-ffa450edef68
2012-02-09 18:40:08 +00:00
Oleg Kalnichevski e7ab117ea5 Added missing ASL header
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1240777 13f79535-47bb-0310-9956-ffa450edef68
2012-02-05 18:17:02 +00:00
Oleg Kalnichevski 648e5ab9be Added missing ASL header
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1240723 13f79535-47bb-0310-9956-ffa450edef68
2012-02-05 13:18:38 +00:00
Oleg Kalnichevski 10f6da691e Moved Memcached specific interfaces from the public API space to the impl package (will also make maintenace of OSGi metadata easier)
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1239803 13f79535-47bb-0310-9956-ffa450edef68
2012-02-02 20:17:10 +00:00
Oleg Kalnichevski 8265a355e7 Fixed javadoc warnings
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1239801 13f79535-47bb-0310-9956-ffa450edef68
2012-02-02 20:15:11 +00:00
Oleg Kalnichevski e2da283f21 HTTPCLIENT-1147: backed out API breaking changes
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1239536 13f79535-47bb-0310-9956-ffa450edef68
2012-02-02 11:12:11 +00:00
Jonathan Moore cac1432472 HTTPCLIENT-1154: MemcachedHttpCacheStorage should allow client
to specify custom prefix string for keys. This is implemented by
providing a decorator KeyHashingScheme that adds the prefix.


git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1232588 13f79535-47bb-0310-9956-ffa450edef68
2012-01-17 21:35:08 +00:00
Jonathan Moore d47c30baae HTTPCLIENT-1153: Added a hashing scheme to map the higher-level
logical storage keys the CachingHttpClient wants to store cache
entries under onto a keyspace suitable for use with memcached
(which has a max key length smaller than the logical keys we use).
A default hashing scheme based on SHA-256 is also provided.
Finally, since hashing now introduces the possibility of collisions,
we have to store the logical storage key along with the cache entry
itself so that it can be compared on retrieval. Implemented a new
serialization scheme to accommodate this (with associated interfaces
so this could be overridden if desired). Unfortunately, this meant
that one of the existing constructors that accepted an old-style
custom serializer had to be deprecated (default implementations of
the new serializers are used instead).


git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1232489 13f79535-47bb-0310-9956-ffa450edef68
2012-01-17 17:12:14 +00:00
Oleg Kalnichevski 76762ca4ed Fixed Java 1.5 compatibility issue
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1230515 13f79535-47bb-0310-9956-ffa450edef68
2012-01-12 13:19:02 +00:00
Jonathan Moore 58036bc594 HTTPCLIENT-1157: MemcachedHttpCacheStorage should throw IOExceptions instead of RuntimeExceptions.
Contributed by James Miller <jamesmiller01 at gmail dot com>.


git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1230174 13f79535-47bb-0310-9956-ffa450edef68
2012-01-11 18:12:50 +00:00
Jonathan Moore e78b50d6de HTTPCLIENT-1152: Also apply type check before byte[] cast on memcached retrieval.
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1229203 13f79535-47bb-0310-9956-ffa450edef68
2012-01-09 15:27:04 +00:00
Jonathan Moore 9f0bc2474f HTTPCLIENT-1152: Log a WARN-level message if memcached gives us back something other
than a byte[].


git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1229172 13f79535-47bb-0310-9956-ffa450edef68
2012-01-09 14:33:08 +00:00
Jonathan Moore a6fe2177be HTTPCLIENT-1152: MemcachedHttpCacheStorage should verify class of returned
object before casting. Contributed by Rajika Kumarasiri <rajika at wso2 dot com>.


git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1229169 13f79535-47bb-0310-9956-ffa450edef68
2012-01-09 14:28:38 +00:00
Oleg Kalnichevski 8f767628cf HTTPCLIENT-1155: CachingHttpClient fails to ensure that the response content gets fully consumed when using a ResponseHandler, which can potentially lead to connection leaks
Contributed by James Miller <jamesmiller01 at gmail dot com>

git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1222845 13f79535-47bb-0310-9956-ffa450edef68
2011-12-23 20:59:54 +00:00
Oleg Kalnichevski cb6254fea6 Rewrote test case for HTTPCLIENT-1147: removed dependency on an external resource; removed hard-coded cache directory location
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1222843 13f79535-47bb-0310-9956-ffa450edef68
2011-12-23 20:57:11 +00:00
Oleg Kalnichevski a6db7c5185 HTTPCLIENT-1147: When HttpClient-Cache cannot open cache file, should act like miss
Contributed by Joe Campbell <joseph.r.campbell at gmail.com>

git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1209503 13f79535-47bb-0310-9956-ffa450edef68
2011-12-02 14:15:11 +00:00
Oleg Kalnichevski 5b89c1097f HTTPCLIENT-1144: Caching client has a class for common headers that was not being used consistently in the code
Contributed by Joe Campbell <joseph.r.campbell at gmail.com>

git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1209502 13f79535-47bb-0310-9956-ffa450edef68
2011-12-02 14:13:52 +00:00
Jonathan Moore fceb87e3bc HTTPCLIENT-1143: Added ASL header to ConsumableInputStream test class.
Credited James Miller in Release Notes.


git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1198941 13f79535-47bb-0310-9956-ffa450edef68
2011-11-07 21:13:45 +00:00
Jonathan Moore c8aafc5c1a HTTPCLIENT-1143: CachingHttpClient leaks connections with stale-if-error.
Bugfix from James Miller <jamesmiller01 at gmail dot com>.



git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1198939 13f79535-47bb-0310-9956-ffa450edef68
2011-11-07 21:09:41 +00:00
Jonathan Moore d19daa3dcd HTTPCLIENT-1137: The values for the Via header are created by httpclient-cache
for each cached and backend request. Committing patch by alinachegalati at yahoo dot com.

git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1197713 13f79535-47bb-0310-9956-ffa450edef68
2011-11-04 19:07:52 +00:00
Oleg Kalnichevski 7541429cf2 Upgraded project version to 4.2-alpha2-SNAPSHOT
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1196788 13f79535-47bb-0310-9956-ffa450edef68
2011-11-02 20:19:52 +00:00
Oleg Kalnichevski b1bad18c8c Added inceptionYear to httpclient-cache and fluent-hc poms
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1195711 13f79535-47bb-0310-9956-ffa450edef68
2011-10-31 22:50:56 +00:00
Oleg Kalnichevski 61ab54d99d HTTPCLIENT-1135: RandomAccessFile mode w is not valid
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1180373 13f79535-47bb-0310-9956-ffa450edef68
2011-10-08 13:12:12 +00:00
Oleg Kalnichevski 72a41afd5e HTTPCLIENT-1116: ResponseCachingPolicy uses integers for sizes
Contributed by Greg Bowyer <gbowyer at fastmail.co.uk >


git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1172302 13f79535-47bb-0310-9956-ffa450edef68
2011-09-18 16:32:53 +00:00
Oleg Kalnichevski e5ea32b76d TABS -> SPACES
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1172301 13f79535-47bb-0310-9956-ffa450edef68
2011-09-18 16:20:20 +00:00
Sebastian Bazley 01b39c4883 Add version variables for report plugins
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1167667 13f79535-47bb-0310-9956-ffa450edef68
2011-09-11 03:28:11 +00:00
Jonathan Moore 2d017dcc0e HTTPCLIENT-1100: Missing Content-Length header makes cached entry invalid.
Applying patch provided by Bart Robeyns <bart dot robeyns at gmail dot com>


git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1133907 13f79535-47bb-0310-9956-ffa450edef68
2011-06-09 15:01:42 +00:00
Jonathan Moore 8dbbed80cc Reverting changeset r1133877 (duplicate addition of spymemcached repository).
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1133902 13f79535-47bb-0310-9956-ffa450edef68
2011-06-09 14:52:41 +00:00
Jonathan Moore ae7c42fc95 + Noticed that the memcached dependency needed for the caching module
is not provided by Maven Central, so we couldn't build the project
  if the memcached jar wasn't already in the local repository. I added
  a <repository> for the pom for httpclient-cache, since that's the
  only module that needs it, but if we'd prefer to put that in the
  parent pom I can certainly move it there too (not sure what the
  prevailing opinion is on this).
 

git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1133877 13f79535-47bb-0310-9956-ffa450edef68
2011-06-09 14:01:41 +00:00
Oleg Kalnichevski f3e7802196 Updated dependency declarations; upgraded HttpCore to 4.1.1; upgraded Memcached to version 2.6
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1124274 13f79535-47bb-0310-9956-ffa450edef68
2011-05-18 14:08:24 +00:00
Jonathan Moore e0105ac181 Reduced severity of several logging statements in the caching module so
as to reduce verbosity when the recommended DEBUG-level wire logging
settings are on.


git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1087358 13f79535-47bb-0310-9956-ffa450edef68
2011-03-31 16:16:35 +00:00
Jonathan Moore 2ae703aa85 HTTPCLIENT-1073: In the event a 100 (Continue) response makes its way up
to the caching module, but the original request did not expect one, it's
acceptable for the caching module to throw an exception but it had better
consume the body of the 100 (Continue) response before doing so to ensure
proper release of resources. Encountering this would require the underlying
(non-caching) HttpClient to not handle the expect-continue handshake properly
*AND* for the origin server to send a 100-Continue response out of turn
*WITH* a response body. Highly unlikely, but at least this codepath is
covered properly now.


git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1084655 13f79535-47bb-0310-9956-ffa450edef68
2011-03-23 18:00:12 +00:00
Jonathan Moore 2d1711bb83 HTTPCLIENT-1073: receiving a 206 (Partial Content) response to a
request that did not request partial content is problematic from
a cache perspective, so throwing a ClientProtocolException is ok.
However, we should properly consume the body of the 206 response
before throwing the exception to ensure that resources are properly
released.


git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1084649 13f79535-47bb-0310-9956-ffa450edef68
2011-03-23 17:25:53 +00:00
Jonathan Moore 962ddfa55a HTTPCLIENT-1073: caching module should not reject origin
401 (Unauthorized) response just because it is missing
a WWW-Authenticate challenge header; the caching module
doesn't care about this and should mind its own business.


git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1084611 13f79535-47bb-0310-9956-ffa450edef68
2011-03-23 15:02:28 +00:00
Jonathan Moore 32221a1a48 HTTPCLIENT-1073: caching module should not reject an origin 405
(Method Not Allowed) response just because it is missing an Allow
header, even though this is required by RFC2616; this has no
effect on the caching module itself.


git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1084610 13f79535-47bb-0310-9956-ffa450edef68
2011-03-23 14:59:25 +00:00
Jonathan Moore e9864b06ff HTTPCLIENT-1073: if caching module strips off a body for an origin response
that should not contain one, it should consume the body off the connection
as well to ensure resources are released.


git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1084607 13f79535-47bb-0310-9956-ffa450edef68
2011-03-23 14:48:24 +00:00
Jonathan Moore 08bbd7bc75 HTTPCLIENT-1073: caching module need not be a stickler about receiving
a 407 (Proxy Authentication Required) response without a Proxy-Authenticate
header and should pass it through to local client.


git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1084590 13f79535-47bb-0310-9956-ffa450edef68
2011-03-23 13:54:11 +00:00
Jonathan Moore 8f73a72a1f Fix duplicate Warning 110 (stale response) header generated by
stale-while-revalidate.

git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1080575 13f79535-47bb-0310-9956-ffa450edef68
2011-03-11 14:18:28 +00:00
Jonathan Moore 55742a46e1 Minor enhancement to stale-while-revalidate (RFC5861) handling; now we can also
serve stale 304s (Not Modified) while asynchronously revalidating. Prior to this,
we were always returning a stale 200 response regardless of whether the incoming
request was conditional or not. The old behavior was not incorrect, but this is
better.


git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1080422 13f79535-47bb-0310-9956-ffa450edef68
2011-03-11 01:45:13 +00:00
Jonathan Moore 23bc2c7f78 + Fix minor typos in private function names.
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1080419 13f79535-47bb-0310-9956-ffa450edef68
2011-03-11 01:32:46 +00:00
Oleg Kalnichevski 0bd45f2b39 Changed project version to 4.2-alpha1-SNAPSHOT
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1079543 13f79535-47bb-0310-9956-ffa450edef68
2011-03-08 21:06:55 +00:00
Sebastian Bazley a54611e8d6 @import is relative to the current css file
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1070647 13f79535-47bb-0310-9956-ffa450edef68
2011-02-14 20:31:08 +00:00
Sebastian Bazley 0991eb0f07 Remove menu items which are now in the common parent section
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1070169 13f79535-47bb-0310-9956-ffa450edef68
2011-02-13 01:20:10 +00:00
Sebastian Bazley 639891773c Use relative URLs so works anywhere
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1070168 13f79535-47bb-0310-9956-ffa450edef68
2011-02-13 01:19:35 +00:00
Sebastian Bazley 04d14e5e95 Absolute references are converted incorrectly.
Better fix: if banners are inherited from parent POM, then references are calculated OK

git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1070077 13f79535-47bb-0310-9956-ffa450edef68
2011-02-12 13:17:47 +00:00
Sebastian Bazley d5444aad70 Absolute references are converted incorrectly for the HC sub-sub sites
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1070011 13f79535-47bb-0310-9956-ffa450edef68
2011-02-12 02:14:00 +00:00
Sebastian Bazley 35face477b Ensure the correct clover version is used for reports
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1069061 13f79535-47bb-0310-9956-ffa450edef68
2011-02-09 19:50:53 +00:00
Sebastian Bazley cae0917efd Javadoc is very noisy - quieten it
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1067841 13f79535-47bb-0310-9956-ffa450edef68
2011-02-07 02:00:12 +00:00
Oleg Kalnichevski 630ee5faad Upgraded project version to 4.1.1-SNAPSHOT
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1061714 13f79535-47bb-0310-9956-ffa450edef68
2011-01-21 10:03:26 +00:00
Jonathan Moore 8e914ae112 Add missing Apache License header.
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1059097 13f79535-47bb-0310-9956-ffa450edef68
2011-01-14 18:25:06 +00:00
Oleg Kalnichevski 7fc0e265ef Changed project version to 4.1-SNAPSHOT
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1058974 13f79535-47bb-0310-9956-ffa450edef68
2011-01-14 12:03:47 +00:00
Oleg Kalnichevski 3a0f3c34c4 Updated for HttpClient 4.1 release
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1058964 13f79535-47bb-0310-9956-ffa450edef68
2011-01-14 11:50:12 +00:00
Jonathan Moore 17aa988f41 Fix for protocol recommendation:
"304 Not Modified ... If the conditional GET used a strong cache
validator (see section 13.3.3), the response SHOULD NOT include
other entity-headers."

http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.3.5


git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1058762 13f79535-47bb-0310-9956-ffa450edef68
2011-01-13 22:07:50 +00:00
Jonathan Moore bdf4174033 Capture acceptance tests for only-if-cached (implementation
already passes these).

"To do this, the client may include the only-if-cached directive
in a request. If it receives this directive, a cache SHOULD
either respond using a cached entry that is consistent with the
other constraints of the request, or respond with a 504 (Gateway
Timeout) status."

http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9.4


git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1058661 13f79535-47bb-0310-9956-ffa450edef68
2011-01-13 17:00:30 +00:00
Jonathan Moore b4d6dee028 Support the following protocol recommendation:
"If a request includes the no-cache directive, it SHOULD NOT
include min-fresh, max-stale, or max-age."

http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9.4

We address this by looking for no-cache and then filtering the
above directives out if present.


git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1058280 13f79535-47bb-0310-9956-ffa450edef68
2011-01-12 19:14:37 +00:00
Jonathan Moore 7b6ffc39b3 Implementation fix and acceptance tests for protocol recommendation:
"Many HTTP/1.0 cache implementations will treat an Expires value that
is less than or equal to the response Date value as being equivalent
to the Cache-Control response directive "no-cache". If an HTTP/1.1
cache receives such a response, and the response does not include a
Cache-Control header field, it SHOULD consider the response to be non-
cacheable in order to retain compatibility with HTTP/1.0 servers."

http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9.3

Also had to update a few other test cases that incidentally ran afoul
of this recommendation.


git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1058247 13f79535-47bb-0310-9956-ffa450edef68
2011-01-12 17:35:29 +00:00
Jonathan Moore 7b141fd52d Document acceptance test (implementation already passes):
"If a new cacheable...response is received from a resource while any
existing responses for the same resource are cached, the cache SHOULD
use the new response to reply to the current request."

http://www.w3.org/Protocols/rfc2616/rfc2616-sec13.html#sec13.12


git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1058232 13f79535-47bb-0310-9956-ffa450edef68
2011-01-12 16:57:14 +00:00
Jonathan Moore 759fe0a755 Added unit tests to document protocol recommendation:
"A cache that passes through requests for methods it does not understand
SHOULD invalidate any entities referred to by the Request-URI."

http://www.w3.org/Protocols/rfc2616/rfc2616-sec13.html#sec13.10

(Current implementation already does this, but always good to have that
captured in an automated acceptance test).



git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1058224 13f79535-47bb-0310-9956-ffa450edef68
2011-01-12 16:38:28 +00:00
Jonathan Moore bac69b368f Removed deprecated HttpCacheEntry#getVariantURIs and associated
constructors and fields. Also removed code in surrounding classes
that was providing backwards compatibility for the deprecated
Set-based variant data structure. Made a note in the ChangeLog
about the change to the public API between 4.1-beta and 4.1.


git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1058153 13f79535-47bb-0310-9956-ffa450edef68
2011-01-12 14:21:32 +00:00
Jonathan Moore 3c0bc58a30 On the off chance someone wrote a custom serializer for use with the
4.1-beta version of HttpCacheEntry, we want to make sure things still
work properly. The current implementation of HttpCacheEntry already
throws an UnsupportedOperationException if you try to get at the variant
map but the old set-based data structure is there; now we handle this
exception, log a warning, and then use the old structure. This is a bit
less efficient but still demonstrably works (I added a unit test to the
Ehcache suite, where you can submit a custom serializer, that shows that
the implementation still conforms to all the MUST/MUST NOTs).


git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1057745 13f79535-47bb-0310-9956-ffa450edef68
2011-01-11 17:28:20 +00:00
Jonathan Moore e95a80b7a2 Responses from HTTP/1.0 origins to requests containing query parameters
SHOULD NOT be taken from a cache.

http://www.w3.org/Protocols/rfc2616/rfc2616-sec13.html#sec13.9


git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1057715 13f79535-47bb-0310-9956-ffa450edef68
2011-01-11 16:31:06 +00:00
Jonathan Moore 6e1d7a0ad3 Javadoc for Ehcache and memcached cache storage backends. I think we're in
good shape for Javadocs on the caching module now.


git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1057287 13f79535-47bb-0310-9956-ffa450edef68
2011-01-10 17:09:56 +00:00
Jonathan Moore 4b29dae09d Javadocs for CachingHttpClient itself.
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1057265 13f79535-47bb-0310-9956-ffa450edef68
2011-01-10 16:33:51 +00:00
Jonathan Moore 6b723dd61e Added more Javadocs, including, most significantly so far, detailed
docs for CacheConfig talking about all the available configuration
options for the caching module.


git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1057242 13f79535-47bb-0310-9956-ffa450edef68
2011-01-10 15:35:37 +00:00
Sebastian Bazley 7ee591f0f4 Merge jar manifest entries into httpclient parent pom
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1056561 13f79535-47bb-0310-9956-ffa450edef68
2011-01-07 23:43:27 +00:00
Jonathan Moore ca41afb97e Provided lots of missing Javadoc.
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1056530 13f79535-47bb-0310-9956-ffa450edef68
2011-01-07 22:01:54 +00:00
Jonathan Moore f9c0e8cac9 Added Javadoc package.html for org.apache.http.client.cache.
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1056504 13f79535-47bb-0310-9956-ffa450edef68
2011-01-07 21:01:16 +00:00
Sebastian Bazley 4fd34899f0 Unnecessary casts
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1055732 13f79535-47bb-0310-9956-ffa450edef68
2011-01-06 03:24:49 +00:00
Sebastian Bazley 868e46fd5b Unthrown Exceptions and @Overrides
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1055731 13f79535-47bb-0310-9956-ffa450edef68
2011-01-06 03:23:34 +00:00
Sebastian Bazley 4b2dccf239 Exception not thrown
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1055730 13f79535-47bb-0310-9956-ffa450edef68
2011-01-06 03:13:13 +00:00
Sebastian Bazley 32e1cc24bb Exception not thrown
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1055729 13f79535-47bb-0310-9956-ffa450edef68
2011-01-06 03:11:38 +00:00
Sebastian Bazley 75dd0ae7dd DOcument thread-safety
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1055728 13f79535-47bb-0310-9956-ffa450edef68
2011-01-06 03:10:21 +00:00
Sebastian Bazley 7550a6edf6 Make private immutable fields final
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@1055727 13f79535-47bb-0310-9956-ffa450edef68
2011-01-06 03:06:51 +00:00