Commit Graph

72 Commits

Author SHA1 Message Date
javanna b38ef345e2 remove streams leftover
Given that we don't use streams anymore, we can check straightaway if the connection iterator is empty before returning it and resurrect a connection when needed directly in the connection pool, no lastResortConnection method required.
2016-06-03 16:01:07 +02:00
javanna 599dad560c remove streams and java 8 only api, build with source and target 1.7 2016-06-03 16:01:07 +02:00
javanna 9569ebc262 add builders for simple creation of RestClient and SniffingConnectionPool instances
We have quite some constructor parameters and some defaults should be applied, builders help simplifying creation of objects for users.
2016-06-03 16:01:07 +02:00
javanna e040d2fc77 remove ConnectionPool interface 2016-06-03 16:01:07 +02:00
javanna 17a21f0272 add curl format trace logging for requests and responses 2016-06-03 16:01:07 +02:00
javanna e7fe397c39 add missing parentheses 2016-06-03 16:01:07 +02:00
javanna 530ad227a2 prevent unclosed response entities in ElasticsearchResponseException, eagerly read response string in case of error status code 2016-06-03 16:01:07 +02:00
javanna e77ab87926 return the response as part of ElasticsearchResponseException 2016-06-03 16:01:07 +02:00
javanna e85ed3eb52 remove pinging from static connection pool, can be replaced by a low connect timeout on each request 2016-06-03 16:01:07 +02:00
javanna d7c41764f2 add some javadocs to connection pool classes 2016-06-03 16:01:07 +02:00
javanna 9ffdea9515 remove Scheme enum 2016-06-03 16:01:07 +02:00
javanna bd29dc1572 Remove Transport class, move all of it within RestClient class 2016-06-03 16:01:07 +02:00
javanna 062a21678c merge Connection and StatefulConnection into one class, remove generic type from Transport 2016-06-03 16:01:07 +02:00
javanna a472544ab4 move sniff related stuff to sniff package 2016-06-03 16:01:07 +02:00
javanna ce663e9703 get rid of connection selector predicate 2016-06-03 16:01:07 +02:00
javanna f6a5a0a4ad get rid of Node abstraction 2016-06-03 16:01:07 +02:00
javanna 94cf8437d0 get rid of retry timeout exception 2016-06-03 16:01:07 +02:00
javanna 25892351e7 remove Verb enum 2016-06-03 16:01:07 +02:00
javanna 6ae8be55bd Introduce notion of Transport, Connection and ConnectionPool
There are two implementations of connection pool, a static one that allows to enable/disable pings, and a sniffing one that sniffs nodes from the nodes info api.

Transport retrieves a stream of connections from the connection for each request and calls onSuccess or onFailure depending on the result of the request.

Transport also supports a max retry timeout to control the timeout for the request retries overall.
2016-06-03 16:01:07 +02:00
javanna 5970723945 clarify why jarhell and dependency license check are disabled, add okhttp mockwebserver dependency
Also enable forbiddenApisTest (will fail till we get rid of the sun http web server in RestClientTests that will be replaced with mockwebserver)
2016-06-03 16:01:07 +02:00
javanna c9c33a7719 Fix checkstyle issues, setup thirdPartyAudit checks and enable forbiddenApisMain 2016-06-03 16:01:07 +02:00
Simon Willnauer 3efbe95ca4 RestClient prototype 2016-06-03 16:01:07 +02:00