A change in Zuul in NetflixOSS means that it buffers all requests unless
you switch it off at the level of the servlet. And even when you do that
you need to ensure that Spring Cloud doesn't re-introduce a buffer through
the Servlet30RequestWrapper.
This change restores the feature in Spring Cloud Angel that multipart files
posted to /zuul/* go straight through the servlet and are not buffered in
memory.
Fixes gh-773
More often than not what Route.path was used it had to be concatenated
with the prefix. This change just encapsulates that concern in the
Route itself.
The RouteLocator interface wasn't very useful to anyone in its
1.0.x form. If ProxyRouteLocator features are consolidated into
the RouteLocator interface then users can supply their own
strategies more easily.
Also added RefreshableRouteLocator for implementations that need
to recompute routes when something changes. SimpleRouteLocator
doesn't need to do that because all the routes are in the configuration.
Added spring-cloud-starter-archaius so downstream projects
like consul and zookeeper don't need to maintain the list of
archaius depenencies.
fixes gh-765
The exception class has to be "fixed"
You may register a serviceId with invalid URI characters (e.g.: '_'), but the URI::getHost() fails when such chars are found.
Fixes a problem with a header in the response containing
content-encoding in lowercase letters. Uses HttpHeaders for case
insensitve check.
Also fixes an issue checking if a request is made for gzip content.
If headers has more than gzip (ie gzip,deflate,sdch), checks if
contains gzip instead of equals to.
Fixes gh-662
RibbonLoadBalancingHttpClient being IClientConfigAware, it is now
initialized within initWithNiwsConfig. The values of the config keys
FollowRedirects, ConnectTimeout and ReadTimeout are now respected.
Fixes gh-691
If the management.port is explicitly set to something other than the
server.port, we can use it to set the status page and health URL
default values. (They can still be overridden by config properties.)
If management.port=0 there's not much we can do because we don't know
the port number yet when the instance config is created.
Fixes gh-425
The aspectjweaver jar includes all of aspectjrt, and the former is
used at runtime in a number of places (tests fail if you remove
it). Both are not needed so we have picked one (the other one than
recommended in gh-666).
Fixes gh-666
This is an implementation of a RibbonCommand and a factory which makes
use of a loadbalancing http client based on apache's http-components
http-client.
With this command/factory it is possible to route PATCH http requests
via zuul/ribbon as well.
fixes gh-412