* add feign client properties
* configure feign builder from properties if exists
* change string config to class config and add unit test for feign client using configuration properties
* refactoring and add primary flag configuration
* add decode404 in feign client configuration properties
* change unit test properties decode404 to true
* remove lombok from FeignClientProperties and change primary attribute to default-to-properties
fixes gh-1931
* Support for re-writing Location Headers
* Added additional constructor for Route, removed auto-configuration of LocationRewriteFilter
* Polished docs, more tests
* Add options for RibbonCommand to use separate thread pools for hystrix
* Remove lombok annotation and Add getter/setter for ZuulProperties$HystrixThreadPool
* Add doc about how to configure hystrix thread pools in Zuul Developer Guide
* Add testcases for HystrixThreadPoolKey of RibbonCommand
* Tiny change about if block in AbstractRibbonCommand
By default, `LoadBalancerBuilder` built a load-balancer with a `PollingServerListUpdater`. This change introduces a `ServerListUpdater` bean which creates a `PollingServerListUpdater(IClientConfig)` so that `ribbon.ServerListRefreshInterval` is respected.
fixes gh-1304
Fix a suspected typo. @Autowired throws a `NoUniqueBeanDefinitionException` if there are multiple beans of the same type without a primary, but the documentation said multiple beans 'cause `@Autowired` to work', rather than 'not work'.
As discovered in #1643, using `@Configuration` on a custom configuration with `@FeignClient` is unnecessary and creates extra work for exclusion from a `@ComponentScan`. This updates the docs to make this explicit.
Some webserver are picky with the encoding (uWSGI for example) and the current code behavior of decoding and reencoding the query string can lead to valid requests
rejected by the backend after the modifications in Zuul. This commit adds an optional parameter to force the original encoding of the query string in SimpleHostRoutingFilter.
Fixes gh-971