Oleg Kalnichevski
e2eb355878
HTTPCLIENT-763: AbstractClientConnAdapter#abortConnection() does not release the connection if called from the main execution thread while there is no blocking I/O operation.
...
AbstractClientConnAdapter#abortConnection() is usually expected to be called from a helper thread in order to unblock the main execution thread blocked in an I/O operation. It may be unsafe to call AbstractClientConnAdapter#releaseConnection() from the helper thread, so we have to rely on an IOException thrown by the closed socket on the main thread to trigger the release of the connection back to the connection manager. However, if this method is called from the main execution thread it should be safe to release the connection immediately. Besides, this also helps ensure the connection gets released back to the manager if AbstractClientConnAdapter#abortConnection() is called from the main execution thread while there is no blocking I/O operation.
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@650223 13f79535-47bb-0310-9956-ffa450edef68
2008-04-21 19:08:17 +00:00
Oleg Kalnichevski
ef548b4620
Renamed Aborter to WaitingThreadAborter
...
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@649220 13f79535-47bb-0310-9956-ffa450edef68
2008-04-17 18:40:24 +00:00
Oleg Kalnichevski
d3205ff522
Change WaitingThread class to unblock the lock instead of interrupting the waiting thread
...
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@649217 13f79535-47bb-0310-9956-ffa450edef68
2008-04-17 18:32:32 +00:00
Oleg Kalnichevski
ad9e79c4d9
HTTPCLIENT-652: Added optional state attribute to managed client connections; this enables connection managers to correctly handle stateful connections
...
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@649204 13f79535-47bb-0310-9956-ffa450edef68
2008-04-17 17:50:13 +00:00
Oleg Kalnichevski
2b91201275
Refactoring of the TSCCM code:
...
* Removed code maintaining a weak reference to the parent connection manager in the AbstractConnPool. The weak reference to the connection manager is currently used to shut down the pool when the connection manager gets GC-ed. The same net result can be achieved by calling #shutdown from #finalize() of the connection manager class.
* Shut down connection managers in #finalize().
* There is no point passing ClientConnectionOperator around. It can be assigned to the connection pool once at the construction time.
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@649035 13f79535-47bb-0310-9956-ffa450edef68
2008-04-17 10:00:45 +00:00
Oleg Kalnichevski
5a08148d25
Refactored configuration of the thread-safe connection manager and its components. Parameters now apply at the construction time only
...
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@648877 13f79535-47bb-0310-9956-ffa450edef68
2008-04-16 22:05:35 +00:00
Oleg Kalnichevski
bfbc2e0007
Fixed the use of the Lock interface in AbstractConnPool and ConnPoolByRoute
...
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@648848 13f79535-47bb-0310-9956-ffa450edef68
2008-04-16 21:05:54 +00:00
Oleg Kalnichevski
608a6e67f3
HTTPCLIENT-748: Made AuthSchemeRegistry, SchemeRegistry, CookieSpecRegistry friendlier for DI frameworks
...
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@648356 13f79535-47bb-0310-9956-ffa450edef68
2008-04-15 17:57:53 +00:00
Oleg Kalnichevski
ffa55f8eec
Replaced ConnPerRouteBean class with ConnPerRoute interface
...
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@647811 13f79535-47bb-0310-9956-ffa450edef68
2008-04-14 14:20:30 +00:00
Oleg Kalnichevski
bc6b2d7061
HTTPCLIENT-673: Revised max connections per route configuration
...
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@647810 13f79535-47bb-0310-9956-ffa450edef68
2008-04-14 14:17:01 +00:00
Oleg Kalnichevski
824b785a99
HTTPCLIENT-652:
...
* Reverting most of my previous changes. Passing a state object to the connection manager when trying to obtain a connection is completely pointless, as usually connection state information becomes available only after the connection has been established, for instance, after having been challenged by an authenticating server. Therefore, it is necessary to be able to set a state object on an active connection
* added method to set state object on ManagedClientConnection
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@646918 13f79535-47bb-0310-9956-ffa450edef68
2008-04-10 18:30:12 +00:00
Oleg Kalnichevski
8ff6eedd9e
HTTPCLIENT-652: Added optional state attribute to managed client connections
...
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@646549 13f79535-47bb-0310-9956-ffa450edef68
2008-04-09 21:29:33 +00:00
Oleg Kalnichevski
42d9c4e324
Simplified OperatedClientConnection interface. Moved secure flag to #openCompleted
...
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@646087 13f79535-47bb-0310-9956-ffa450edef68
2008-04-08 21:36:46 +00:00
Oleg Kalnichevski
987b1cab33
Simplified OperatedClientConnection interface
...
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@646081 13f79535-47bb-0310-9956-ffa450edef68
2008-04-08 21:28:48 +00:00
Oleg Kalnichevski
168a699a8f
HTTPCLIENT-752: version.properties for HttpMime
...
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@645851 13f79535-47bb-0310-9956-ffa450edef68
2008-04-08 11:14:29 +00:00
Oleg Kalnichevski
47eff4157e
HTTPCLIENT-753: Class Scheme and related classes moved to a separate package
...
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@645850 13f79535-47bb-0310-9956-ffa450edef68
2008-04-08 11:08:52 +00:00
Oleg Kalnichevski
21705fdb9c
Made RoutedRequest a simple class
...
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@645846 13f79535-47bb-0310-9956-ffa450edef68
2008-04-08 10:53:39 +00:00
Oleg Kalnichevski
f2ef6c15a6
HTTPCLIENT-757: Improved request wrapping in the DefaultClientRequestDirector. This also fixed the problem with the default proxy set at the client level having no effect.
...
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@645843 13f79535-47bb-0310-9956-ffa450edef68
2008-04-08 10:46:04 +00:00
Oleg Kalnichevski
fa366c559c
Moved UrlEncodedFormEntity to o.a.h.client.entity package
...
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@645074 13f79535-47bb-0310-9956-ffa450edef68
2008-04-05 10:59:59 +00:00
Oleg Kalnichevski
e8923010c7
HTTPCLIENT-746: Refactored URLUtils into URLEncodedUtils and URIUtils
...
Contributed by Stojce Dimski <sdmiski at yahoo.it>
Reviewed by Oleg Kalnichevski
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@645072 13f79535-47bb-0310-9956-ffa450edef68
2008-04-05 10:54:12 +00:00
Oleg Kalnichevski
e1ac27569a
HTTPCLIENT-746: Refactored URLUtils into URLEncodedUtils and URIUtils
...
Contributed by Stojce Dimski <sdmiski at yahoo.it>
Reviewed by Oleg Kalnichevski
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@645071 13f79535-47bb-0310-9956-ffa450edef68
2008-04-05 10:53:05 +00:00
Oleg Kalnichevski
4b3b19a8bd
HTTPCLIENT-741: More concurrency fixes in HttpConn classes
...
Contributed by Tim Julien <tjulien at limewire.com>
Reviewed by Oleg Kalnichevski
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@643531 13f79535-47bb-0310-9956-ffa450edef68
2008-04-01 19:38:50 +00:00
Oleg Kalnichevski
5956d0ed5f
Removed unused method from the ClientRequestDirector interface
...
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@640959 13f79535-47bb-0310-9956-ffa450edef68
2008-03-25 19:49:35 +00:00
Oleg Kalnichevski
97bb41b687
GTTPCLIENT-760: Improved handling of request abort in fringe situations such as request abort immediately after a connection has been allocated but before the release trigger has been set
...
Contributed by Sam Berlin <sberlin at gmail.com>
Reviewed by Oleg Kalnichevski
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@639600 13f79535-47bb-0310-9956-ffa450edef68
2008-03-21 11:28:15 +00:00
Oleg Kalnichevski
c51f3a980f
HTTPCLIENT-734: API refinements
...
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@639506 13f79535-47bb-0310-9956-ffa450edef68
2008-03-21 00:40:54 +00:00
Oleg Kalnichevski
a72e883d9c
HTTPCLIENT-734: Request abort will unblock the thread waiting for a connection
...
Contributed by Sam Berlin <sberlin at gmail.com>
Reviewed by Oleg Kalnichevski
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@638979 13f79535-47bb-0310-9956-ffa450edef68
2008-03-19 19:36:02 +00:00
Oleg Kalnichevski
1e153a504c
HTTPCLIENT-759: Ensure release of connections back to the connection manager on exceptions.
...
Contributed by Sam Berlin <sberlin at gmail.com>
Reviewed by Oleg Kalnichevski
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@638517 13f79535-47bb-0310-9956-ffa450edef68
2008-03-18 19:22:57 +00:00
Oleg Kalnichevski
c84d594f75
HTTPCLIENT-758: Fixed the use of generics in AbstractHttpClient #removeRequestInterceptorByClass and #removeResponseInterceptorByClass
...
Contributed by Johannes Koch <johannes.koch at fit.fraunhofer.de>
Reviewed by Oleg Kalnichevski
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@635675 13f79535-47bb-0310-9956-ffa450edef68
2008-03-10 20:00:15 +00:00
Oleg Kalnichevski
f25c8c1f77
HTTPCLIENT-746: Alternative URL coding methods
...
Contributed by Stojce Dimski <sdmiski at yahoo.it>
Reviewed by Oleg Kalnichevski
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@635111 13f79535-47bb-0310-9956-ffa450edef68
2008-03-08 23:21:03 +00:00
Oleg Kalnichevski
8f53912519
HTTPCLIENT-749: HttpParams beans
...
Contributed by Stojce Dimski <sdmiski at yahoo.it>
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@632313 13f79535-47bb-0310-9956-ffa450edef68
2008-02-29 13:19:50 +00:00
Oleg Kalnichevski
2588e16238
HTTPCLIENT-755: Workaround for known bugs in java.net.URI.resolve() (Bug ID: 4708535)
...
Contributed by Johannes Koch <johannes.koch at fit.fraunhofer.de>
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@632273 13f79535-47bb-0310-9956-ffa450edef68
2008-02-29 09:43:28 +00:00
Oleg Kalnichevski
a24d0b2de1
HTTPCLIENT-754: BasicClientCookie.toString() contains 'name' instead of 'value' when writing out cookie value
...
Contributed by Thomas Friol <thomas at anyware-tech.com>
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@631985 13f79535-47bb-0310-9956-ffa450edef68
2008-02-28 14:31:43 +00:00
Oleg Kalnichevski
64abe1e5a2
Added javadocs
...
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@631721 13f79535-47bb-0310-9956-ffa450edef68
2008-02-27 20:51:28 +00:00
Oleg Kalnichevski
b055442d4b
This patch effectively reverts HTTPCLIENT-643 changes. Multihome fail-over mechanism simply cannot be properly implemented at the socket factory level. A failure in the connect method can leave the socket in a inconsistent state on some platforms (Mac OS), making it impossible to connect the same socket to a different address
...
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@631713 13f79535-47bb-0310-9956-ffa450edef68
2008-02-27 20:40:35 +00:00
Roland Weber
a42e4de19e
more volatiles, not sure whether these are needed
...
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@630417 13f79535-47bb-0310-9956-ffa450edef68
2008-02-23 09:04:32 +00:00
Roland Weber
898a8edc53
missing volatile declarations
...
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@630414 13f79535-47bb-0310-9956-ffa450edef68
2008-02-23 08:59:18 +00:00
Oleg Kalnichevski
30e15edc67
[maven-release-plugin] prepare for next development iteration
...
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@629589 13f79535-47bb-0310-9956-ffa450edef68
2008-02-20 19:42:42 +00:00
Oleg Kalnichevski
49021f33b8
[maven-release-plugin] prepare release 4.0-alpha3
...
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@629587 13f79535-47bb-0310-9956-ffa450edef68
2008-02-20 19:42:26 +00:00
Oleg Kalnichevski
44cb5c03e0
Do not attempt to update the auth state if not valid
...
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@627483 13f79535-47bb-0310-9956-ffa450edef68
2008-02-13 15:39:37 +00:00
Oleg Kalnichevski
d720162806
#isStale to return true if the connection has been aborted
...
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@627464 13f79535-47bb-0310-9956-ffa450edef68
2008-02-13 15:20:53 +00:00
Oleg Kalnichevski
b6f3d188bb
Web site updates for the 4.0-alpha3 release
...
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@627080 13f79535-47bb-0310-9956-ffa450edef68
2008-02-12 20:25:32 +00:00
Erik Abele
9c602edefc
Module site improvements for HttpClient:
...
- add license header to stay in sync with other site.xml's
- change Home link to HttpComponents
- add Overview menu for easier navigation
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@620548 13f79535-47bb-0310-9956-ffa450edef68
2008-02-11 17:46:42 +00:00
Oleg Kalnichevski
72ec65e6cb
Updated dependency declarations in poms
...
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@620519 13f79535-47bb-0310-9956-ffa450edef68
2008-02-11 16:33:39 +00:00
Roland Weber
a955029035
HttpRoutePlanner uses RouteInfo
...
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@620255 13f79535-47bb-0310-9956-ffa450edef68
2008-02-10 10:23:55 +00:00
Roland Weber
2c2dd57f72
HTTPCLIENT-742: common interface for HttpRoute and RouteTracker
...
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@620254 13f79535-47bb-0310-9956-ffa450edef68
2008-02-10 10:18:48 +00:00
Roland Weber
7c53de5b93
HTTPCLIENT-726: test for spurious wakeups
...
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@619610 13f79535-47bb-0310-9956-ffa450edef68
2008-02-07 20:01:04 +00:00
Roland Weber
2d0496fdd1
fixed and extended JavaDocs
...
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@619550 13f79535-47bb-0310-9956-ffa450edef68
2008-02-07 18:37:21 +00:00
Roland Weber
51396fcf43
beautified NO_HOST, slightly
...
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@619535 13f79535-47bb-0310-9956-ffa450edef68
2008-02-07 18:11:17 +00:00
Oleg Kalnichevski
aa020a5c0d
HTTPCLIENT-643: Automatic connect fail-over for multi-home remote servers
...
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@619163 13f79535-47bb-0310-9956-ffa450edef68
2008-02-06 21:41:06 +00:00
Oleg Kalnichevski
5349fe9f8b
HTTPCLIENT-733: Added HTTP DELETE method
...
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@618343 13f79535-47bb-0310-9956-ffa450edef68
2008-02-04 17:44:59 +00:00