httpcomponents-core.git
7 days agoMerge branch 'HTTPCLIENT-1960' master
Oleg Kalnichevski [Mon, 14 Jan 2019 10:04:14 +0000 (11:04 +0100)] 
Merge branch 'HTTPCLIENT-1960'

7 days agoHTTPCLIENT-1960: URIBuilder incorrect handling of multiple leading slashes in path...
Oleg Kalnichevski [Mon, 14 Jan 2019 09:45:06 +0000 (10:45 +0100)] 
HTTPCLIENT-1960: URIBuilder incorrect handling of multiple leading slashes in path component

11 days agoMerge branch 'HTTPCLIENT-1959'
Oleg Kalnichevski [Thu, 10 Jan 2019 09:38:59 +0000 (10:38 +0100)] 
Merge branch 'HTTPCLIENT-1959'

12 days agoHTTPCLIENT-1959: corrected argument validation in HttpHost constructors;
Oleg Kalnichevski [Wed, 9 Jan 2019 15:26:23 +0000 (16:26 +0100)] 
HTTPCLIENT-1959: corrected argument validation in HttpHost constructors;
removed deprecated methods

6 weeks agoorg.apache.hc.core5.reactor.IOSession: Deprecate lock() in favor of
Gary Gregory [Mon, 10 Dec 2018 00:17:16 +0000 (17:17 -0700)] 
org.apache.hc.core5.reactor.IOSession: Deprecate lock() in favor of
getLock(). Add missing @Override.

6 weeks agoHTTPCORE-563: client support for SOCKS version 5
David Maplesden [Tue, 27 Nov 2018 03:13:05 +0000 (16:13 +1300)] 
HTTPCORE-563: client support for SOCKS version 5

6 weeks agoDelay i/o operations on non-blocking SSL sessions until fully initialized
Oleg Kalnichevski [Fri, 7 Dec 2018 13:09:03 +0000 (14:09 +0100)] 
Delay i/o operations on non-blocking SSL sessions until fully initialized

6 weeks agoAdd `handshakeTimeout` support throughout
Ryan Schmitt [Mon, 3 Dec 2018 21:44:20 +0000 (13:44 -0800)] 
Add `handshakeTimeout` support throughout

6 weeks agoUpdated the set of project report generated by Maven
Oleg Kalnichevski [Tue, 4 Dec 2018 10:36:58 +0000 (11:36 +0100)] 
Updated the set of project report generated by Maven

6 weeks agoSSLIOSession: Add `connectTimeout` constructor param
Ryan Schmitt [Fri, 30 Nov 2018 23:44:20 +0000 (15:44 -0800)] 
SSLIOSession: Add `connectTimeout` constructor param

This change adds low-level support for TLS handshake timeouts in the
class that actually performs the handshake. The contractual
`socketTimeout`, if set, will only be applied to the underlying
IOSession after the handshake is complete.

6 weeks agoUpgraded HttpCore version to 5.0-beta7-SNAPSHOT
Oleg Kalnichevski [Tue, 4 Dec 2018 09:42:11 +0000 (10:42 +0100)] 
Upgraded HttpCore version to 5.0-beta7-SNAPSHOT

7 weeks agoHttpCore 5.0-beta6 release 5.0-beta6 5.0-beta6-RC1
Oleg Kalnichevski [Sat, 1 Dec 2018 16:37:23 +0000 (17:37 +0100)] 
HttpCore 5.0-beta6 release

7 weeks agoUpdated release notes for HttpCore 5.0-beta6 release
Oleg Kalnichevski [Sat, 1 Dec 2018 16:14:35 +0000 (17:14 +0100)] 
Updated release notes for HttpCore 5.0-beta6 release

7 weeks agoRemoved OSGi module
Oleg Kalnichevski [Sat, 1 Dec 2018 13:31:11 +0000 (14:31 +0100)] 
Removed OSGi module

7 weeks agoRemoved methods deprecated in the previous BETA release
Oleg Kalnichevski [Sat, 1 Dec 2018 13:12:58 +0000 (14:12 +0100)] 
Removed methods deprecated in the previous BETA release

7 weeks agoMoved start TLS logic from IOSession request callback to individual IOEventHandler...
Oleg Kalnichevski [Sat, 1 Dec 2018 12:57:29 +0000 (13:57 +0100)] 
Moved start TLS logic from IOSession request callback to individual IOEventHandler factories

7 weeks agoRemoved obsolete references to HTTPCORE-361 ticket
Oleg Kalnichevski [Sat, 1 Dec 2018 11:08:53 +0000 (12:08 +0100)] 
Removed obsolete references to HTTPCORE-361 ticket

8 weeks agoRefactor logging in the example to print a timestamp (1 second
Gary Gregory [Sat, 24 Nov 2018 19:04:33 +0000 (12:04 -0700)] 
Refactor logging in the example to print a timestamp (1 second
granularity.)

8 weeks agoRefactor logging in the example to print a timestamp (1 second
Gary Gregory [Sat, 24 Nov 2018 15:52:31 +0000 (08:52 -0700)] 
Refactor logging in the example to print a timestamp (1 second
granularity.)

8 weeks agoSimpleDateFormat is not thread safe; use HttpDateGenerator instead.
Oleg Kalnichevski [Fri, 23 Nov 2018 10:13:49 +0000 (11:13 +0100)] 
SimpleDateFormat is not thread safe; use HttpDateGenerator instead.

8 weeks agoLocal var is not needed.
Gary Gregory [Fri, 23 Nov 2018 03:49:38 +0000 (20:49 -0700)] 
Local var is not needed.

8 weeks agoJavadoc and comments.
Gary Gregory [Fri, 23 Nov 2018 03:36:31 +0000 (20:36 -0700)] 
Javadoc and comments.

8 weeks agoRemove dead comment.
Gary Gregory [Fri, 23 Nov 2018 03:19:54 +0000 (20:19 -0700)] 
Remove dead comment.

8 weeks agoNo need to compute Strings for requestDirection and responseDirection
Gary Gregory [Fri, 23 Nov 2018 03:16:27 +0000 (20:16 -0700)] 
No need to compute Strings for requestDirection and responseDirection
for every single use. Call LoggingSupport.getId() once per method.

8 weeks agoMoved method to determine JRE level to ReflectionUtils
Oleg Kalnichevski [Wed, 21 Nov 2018 18:01:31 +0000 (19:01 +0100)] 
Moved method to determine JRE level to ReflectionUtils

8 weeks agoMoved reflection util methods and marked them internal (no functional changes)
Oleg Kalnichevski [Wed, 21 Nov 2018 17:55:20 +0000 (18:55 +0100)] 
Moved reflection util methods and marked them internal (no functional changes)

8 weeks agoUpdated examples
Oleg Kalnichevski [Wed, 21 Nov 2018 17:46:42 +0000 (18:46 +0100)] 
Updated examples

8 weeks agoAdded optional dependency on conscrypt-openjdk-uber 1.4.1; support for advanced TLS...
Oleg Kalnichevski [Wed, 21 Nov 2018 17:40:59 +0000 (18:40 +0100)] 
Added optional dependency on conscrypt-openjdk-uber 1.4.1; support for advanced TLS functions (such as ALPN extension) on Java 1.7 and Java 1.8 through Conscrypt TLS library

2 months agoConvert int constants into an enum.
Gary Gregory [Thu, 22 Nov 2018 01:15:47 +0000 (18:15 -0700)] 
Convert int constants into an enum.

2 months agoRefactor use of HttpDateGenerator into a singleton.
Gary Gregory [Thu, 22 Nov 2018 01:08:43 +0000 (18:08 -0700)] 
Refactor use of HttpDateGenerator into a singleton.

2 months agoConvert int constants into an enum.
Gary Gregory [Thu, 22 Nov 2018 00:41:32 +0000 (17:41 -0700)] 
Convert int constants into an enum.

2 months agoConvert int constants into an enum.
Gary Gregory [Thu, 22 Nov 2018 00:34:37 +0000 (17:34 -0700)] 
Convert int constants into an enum.

2 months agoComment empty block.
Gary Gregory [Thu, 22 Nov 2018 00:29:24 +0000 (17:29 -0700)] 
Comment empty block.

2 months agoJavadoc.
Gary Gregory [Wed, 21 Nov 2018 23:21:04 +0000 (16:21 -0700)] 
Javadoc.

2 months agoUse try-with-resources. Comment empty block. Add @SuppressWarnings.
Gary Gregory [Wed, 21 Nov 2018 20:15:19 +0000 (13:15 -0700)] 
Use try-with-resources. Comment empty block. Add @SuppressWarnings.
Refactor boiler-plate close code.

2 months agoAdd missing Javadoc tag.
Gary Gregory [Wed, 21 Nov 2018 18:11:11 +0000 (11:11 -0700)] 
Add missing Javadoc tag.

2 months agoKeep the entries in
Gary Gregory [Wed, 21 Nov 2018 18:06:06 +0000 (11:06 -0700)] 
Keep the entries in
org.apache.hc.core5.http.protocol.UriPatternMatcher#map in insertion
order.

2 months agoAdd toString()s.
Gary Gregory [Wed, 21 Nov 2018 17:55:18 +0000 (10:55 -0700)] 
Add toString()s.

2 months agoRe-use Closer.closeQuietly().
Gary Gregory [Wed, 21 Nov 2018 16:29:34 +0000 (09:29 -0700)] 
Re-use Closer.closeQuietly().

2 months agoFix Javadoc nit.
Gary Gregory [Wed, 21 Nov 2018 16:22:54 +0000 (09:22 -0700)] 
Fix Javadoc nit.

2 months agoBetter Javadoc.
Gary Gregory [Wed, 21 Nov 2018 16:11:36 +0000 (09:11 -0700)] 
Better Javadoc.

2 months agoFix Javadoc typo.
Gary Gregory [Wed, 21 Nov 2018 16:07:04 +0000 (09:07 -0700)] 
Fix Javadoc typo.

2 months agoRefactor expression 'TimeValue.ofDays(Long.MAX_VALUE)' into a constant.
Gary Gregory [Wed, 21 Nov 2018 15:50:49 +0000 (08:50 -0700)] 
Refactor expression 'TimeValue.ofDays(Long.MAX_VALUE)' into a constant.

2 months agoRename dumpState() methods to appendState().
Gary Gregory [Tue, 20 Nov 2018 20:02:15 +0000 (13:02 -0700)] 
Rename dumpState() methods to appendState().

2 months agoFix: Use println() instead of print() to announce start up.
Gary Gregory [Tue, 20 Nov 2018 19:51:42 +0000 (12:51 -0700)] 
Fix: Use println() instead of print() to announce start up.

2 months agoJavadoc.
Gary Gregory [Tue, 20 Nov 2018 13:03:15 +0000 (06:03 -0700)] 
Javadoc.

2 months agoAdded more state info to #toString output of HTTP/1.1 and HTTP/2 async protocol handlers
Oleg Kalnichevski [Tue, 20 Nov 2018 10:30:28 +0000 (11:30 +0100)] 
Added more state info to #toString output of HTTP/1.1 and HTTP/2 async protocol handlers

2 months agoHTTP/1.1 and HTTP/2 async protocol handlers to use I/O session lock for output synchr...
Oleg Kalnichevski [Mon, 19 Nov 2018 14:10:21 +0000 (15:10 +0100)] 
HTTP/1.1 and HTTP/2 async protocol handlers to use I/O session lock for output synchronization

2 months agoRefactored output control in the async HTTP/2 protocol handlers
Oleg Kalnichevski [Mon, 19 Nov 2018 13:13:33 +0000 (14:13 +0100)] 
Refactored output control in the async HTTP/2 protocol handlers

2 months agoRefactored output control in the async HTTP/1.1 protocol handlers
Oleg Kalnichevski [Mon, 19 Nov 2018 09:28:51 +0000 (10:28 +0100)] 
Refactored output control in the async HTTP/1.1 protocol handlers

2 months agoMinor optimization
Oleg Kalnichevski [Mon, 19 Nov 2018 13:12:42 +0000 (14:12 +0100)] 
Minor optimization

2 months agoFixed incorrect thread synchronization in an HTTP/1.1 integration test
Oleg Kalnichevski [Mon, 19 Nov 2018 13:12:22 +0000 (14:12 +0100)] 
Fixed incorrect thread synchronization in an HTTP/1.1 integration test

2 months agoDo not override the actual HTTP protocol version in the HTTP execution context if...
Oleg Kalnichevski [Thu, 15 Nov 2018 15:31:28 +0000 (16:31 +0100)] 
Do not override the actual HTTP protocol version in the HTTP execution context if not explicitly specified in the message

2 months agoNon-blocking reverse proxy to use a distinct HttpContext for outgoing message exchanges
Oleg Kalnichevski [Thu, 15 Nov 2018 15:29:08 +0000 (16:29 +0100)] 
Non-blocking reverse proxy to use a distinct HttpContext for outgoing message exchanges

2 months agoBug fix: non-blocking HTTP/1.1 server side streams incorrectly report their keep...
Oleg Kalnichevski [Thu, 15 Nov 2018 15:27:59 +0000 (16:27 +0100)] 
Bug fix: non-blocking HTTP/1.1 server side streams incorrectly report their keep-alive status

2 months agoBug fix: fixed a race condition in non-blocking HTTP/1.1 protocol handlers causing...
Oleg Kalnichevski [Thu, 15 Nov 2018 14:32:01 +0000 (15:32 +0100)] 
Bug fix: fixed a race condition in non-blocking HTTP/1.1 protocol handlers causing premature clearing of output interest

2 months agoFix typo in comment.
Gary Gregory [Mon, 12 Nov 2018 03:28:17 +0000 (20:28 -0700)] 
Fix typo in comment.

2 months agoRefactor separate int constants into an enum.
Gary Gregory [Mon, 12 Nov 2018 01:40:24 +0000 (18:40 -0700)] 
Refactor separate int constants into an enum.

2 months agoFixed NPE in async reverse proxy example
Gary Gregory [Sun, 11 Nov 2018 22:36:23 +0000 (15:36 -0700)] 
Fixed NPE in async reverse proxy example

2 months agoJavadoc.
Gary Gregory [Sun, 11 Nov 2018 01:57:40 +0000 (18:57 -0700)] 
Javadoc.

2 months agoRefactor commons code. No need to call currentTimeMillis() twice.
Gary Gregory [Sat, 10 Nov 2018 22:22:00 +0000 (15:22 -0700)] 
Refactor commons code. No need to call currentTimeMillis() twice.

2 months agoFix type in local var name.
Gary Gregory [Sat, 10 Nov 2018 18:23:05 +0000 (11:23 -0700)] 
Fix type in local var name.

2 months agoRemove unused exceptions from method signatures.
Gary Gregory [Sat, 10 Nov 2018 18:17:01 +0000 (11:17 -0700)] 
Remove unused exceptions from method signatures.

There is no issue with subclasses since this class is final.

2 months agoJavadoc.
Gary Gregory [Sat, 10 Nov 2018 18:06:26 +0000 (11:06 -0700)] 
Javadoc.

2 months agoAdd missing synchronized (exchangeState) to one of failed() callback.
Gary Gregory [Sat, 10 Nov 2018 17:17:24 +0000 (10:17 -0700)] 
Add missing synchronized (exchangeState) to one of failed() callback.

2 months agoIn-line local variable.
Gary Gregory [Fri, 9 Nov 2018 01:26:02 +0000 (18:26 -0700)] 
In-line local variable.

2 months agoAdd org.apache.hc.core5.http.HttpHost.create(URI).
Gary Gregory [Fri, 9 Nov 2018 01:20:19 +0000 (18:20 -0700)] 
Add org.apache.hc.core5.http.HttpHost.create(URI).

2 months agoDeprecate constructors in org.apache.hc.core5.http.HttpHost that do not
Gary Gregory [Fri, 9 Nov 2018 00:49:51 +0000 (17:49 -0700)] 
Deprecate constructors in org.apache.hc.core5.http.HttpHost that do not
have the scheme argument first in favor of new constructors that do.

2 months agoConsistent naming of params throughout this classs.
Gary Gregory [Thu, 8 Nov 2018 23:22:15 +0000 (16:22 -0700)] 
Consistent naming of params throughout this classs.

2 months agoMove HOP_BY_HOP to the class that uses it.
Gary Gregory [Thu, 8 Nov 2018 23:03:50 +0000 (16:03 -0700)] 
Move HOP_BY_HOP to the class that uses it.

2 months agoAdd org.apache.hc.core5.net.URIBuilder.setHttpHost(HttpHost) to further
Gary Gregory [Thu, 8 Nov 2018 18:27:49 +0000 (11:27 -0700)] 
Add org.apache.hc.core5.net.URIBuilder.setHttpHost(HttpHost) to further
facilitate URI construction.

2 months agoJavadoc.
Gary Gregory [Thu, 8 Nov 2018 02:11:21 +0000 (19:11 -0700)] 
Javadoc.

2 months agoAdd Add org.apache.hc.core5.http.HttpRequest.setUri(URI).
Gary Gregory [Thu, 8 Nov 2018 01:43:18 +0000 (18:43 -0700)] 
Add Add org.apache.hc.core5.http.HttpRequest.setUri(URI).

This is allow rewriting all manners of URIs possible and simple. This
makes a previously package private method in BasicHttpRequest public and
pulls it up to the HttpRequest interface.

2 months agoRemove unused local var.
Gary Gregory [Wed, 7 Nov 2018 22:30:41 +0000 (15:30 -0700)] 
Remove unused local var.

2 months agoAdd HttpStreamResetException.serialVersionUID.
Gary Gregory [Wed, 7 Nov 2018 22:27:57 +0000 (15:27 -0700)] 
Add HttpStreamResetException.serialVersionUID.

2 months agoFix test on slow machines.
Gary Gregory [Wed, 7 Nov 2018 20:51:17 +0000 (13:51 -0700)] 
Fix test on slow machines.

2 months agoUse final.
Gary Gregory [Wed, 7 Nov 2018 19:33:13 +0000 (12:33 -0700)] 
Use final.

2 months agoChange timeout in example from 3 to 10 seconds to make the example a
Gary Gregory [Wed, 7 Nov 2018 19:00:53 +0000 (12:00 -0700)] 
Change timeout in example from 3 to 10 seconds to make the example a
little more resilient for real life experimentation with third party
origin servers.

2 months agoTimeValue can parse more leniently.
Gary Gregory [Mon, 5 Nov 2018 19:10:25 +0000 (12:10 -0700)] 
TimeValue can parse more leniently.

Allow spaces and singular words for time units, for example " 1 SECOND
".

2 months ago[HTTPCORE-562] The reason phrase returned by
Gary Gregory [Sun, 4 Nov 2018 22:03:41 +0000 (15:03 -0700)] 
[HTTPCORE-562] The reason phrase returned by
org.apache.hc.core5.http.HttpResponse.getReasonPhrase() may be empty.[

2 months agoThe reason phrase returned by
Gary Gregory [Sun, 4 Nov 2018 21:56:50 +0000 (14:56 -0700)] 
The reason phrase returned by
org.apache.hc.core5.http.HttpResponse.getReasonPhrase() may be empty.

I'm not sure how it happened, but I've seen this case within a debugger.
Also add the 'bin' folder to RAT excludes.

2 months agoFix Deadline APIs which were named 'backward': isExpired() vs.
Gary Gregory [Fri, 2 Nov 2018 20:11:23 +0000 (14:11 -0600)] 
Fix Deadline APIs which were named 'backward': isExpired() vs.
isNotExpired(). Add unit tests.

2 months agoUpdate to release notes.
Gary Gregory [Fri, 2 Nov 2018 18:15:26 +0000 (12:15 -0600)] 
Update to release notes.

2 months agoUpgraded HttpComponents Parent to version 11
Oleg Kalnichevski [Fri, 2 Nov 2018 10:28:54 +0000 (11:28 +0100)] 
Upgraded HttpComponents Parent to version 11

2 months agoSimplified AsyncDataConsumer interface contract
Oleg Kalnichevski [Sat, 27 Oct 2018 12:34:00 +0000 (14:34 +0200)] 
Simplified AsyncDataConsumer interface contract

2 months agoMatch case of param name in error message.
Gary Gregory [Fri, 26 Oct 2018 18:26:26 +0000 (12:26 -0600)] 
Match case of param name in error message.

2 months agoAdd accessor org.apache.hc.core5.http.URIScheme.getId()
Gary Gregory [Fri, 26 Oct 2018 17:57:14 +0000 (11:57 -0600)] 
Add accessor org.apache.hc.core5.http.URIScheme.getId()

2 months agoHTTPCORE-560: Fix LaxConnPool leasing incorrect PoolEntry when processing pending...
Desmond Yeung [Tue, 23 Oct 2018 19:54:20 +0000 (15:54 -0400)] 
HTTPCORE-560: Fix LaxConnPool leasing incorrect PoolEntry when processing pending requests

2 months agoAdd handy methods in TimeValue and fix TimeValue.convert(TimeUnit).
Gary Gregory [Tue, 23 Oct 2018 21:01:31 +0000 (15:01 -0600)] 
Add handy methods in TimeValue and fix TimeValue.convert(TimeUnit).

2 months agoReuse constant.
Gary Gregory [Tue, 23 Oct 2018 20:31:50 +0000 (14:31 -0600)] 
Reuse constant.

3 months ago- Deprecate and rename org.apache.hc.core5.util.Timeout.ofMillis(long)
Gary Gregory [Sun, 21 Oct 2018 15:02:17 +0000 (09:02 -0600)] 
- Deprecate and rename org.apache.hc.core5.util.Timeout.ofMillis(long)
to ofMilliseconds(long).
- Deprecate and rename org.apache.hc.core5.util.TimeValue.ofMillis(long)
to ofMilliseconds(long).
- In both cases, this was the only abbreviated API name in that class.
For comparison, we use ofMicroseconds(), not ofMicros(); both classes
now have consistent API names.

3 months agoReplaced deprecated Oracle JDK 10 with OpenJDK 10 in Travis CI configuration
Oleg Kalnichevski [Sun, 21 Oct 2018 11:51:15 +0000 (13:51 +0200)] 
Replaced deprecated Oracle JDK 10 with OpenJDK 10 in Travis CI configuration

3 months agoUpgraded HttpCore version to 5.0-beta6-SNAPSHOT
Oleg Kalnichevski [Sun, 21 Oct 2018 11:01:36 +0000 (13:01 +0200)] 
Upgraded HttpCore version to 5.0-beta6-SNAPSHOT

3 months agoHttpCore 5.0-beta5 release 5.0-beta5 5.0-beta5-RC2
Oleg Kalnichevski [Thu, 18 Oct 2018 16:55:57 +0000 (18:55 +0200)] 
HttpCore 5.0-beta5 release

3 months agoUpdated release notes for HttpCore 5.0-beta5 release
Oleg Kalnichevski [Thu, 18 Oct 2018 16:48:39 +0000 (18:48 +0200)] 
Updated release notes for HttpCore 5.0-beta5 release

3 months agoRegression: fixed incorrect default select interval for i/o reactors
Oleg Kalnichevski [Thu, 18 Oct 2018 11:52:59 +0000 (13:52 +0200)] 
Regression: fixed incorrect default select interval for i/o reactors

3 months agoAdded javadoc and project reports plugins to Reactive Streams POM
Oleg Kalnichevski [Thu, 18 Oct 2018 07:59:35 +0000 (09:59 +0200)] 
Added javadoc and project reports plugins to Reactive Streams POM

3 months agoDefine a timeout exception and deadline more precisely.
Gary Gregory [Mon, 15 Oct 2018 01:56:28 +0000 (19:56 -0600)] 
Define a timeout exception and deadline more precisely.

Closes PR #90

3 months agoCreate a subclass of java.util.concurrent.TimeoutException called TimeoutValueExcepti...
Gary Gregory [Fri, 12 Oct 2018 16:26:14 +0000 (10:26 -0600)] 
Create a subclass of java.util.concurrent.TimeoutException called TimeoutValueException to precisely define a timeout exception.

3 months agoCorrected scope of optional dependencies in Reactive Streams module
Oleg Kalnichevski [Thu, 18 Oct 2018 07:21:16 +0000 (09:21 +0200)] 
Corrected scope of optional dependencies in Reactive Streams module