* started refactoring json config validation stack because ive made it crap
* inject validators from DI rather than instanciating, next step mock them
* added some unit tests for specific validators on the train yey
* #580 added failing test
* #580 added failing test for dynamic reroutes
* #580 added failing test for validator
* #580 validation tests passing
* #580 acceptance tests passing
* #580 got rid of the list in sdp factory
* +semver: breaking #580 service discovery provider returned by delegate must be the same as name in config, this is a breaking change because you have to specify consul now
* #580 removed use servide discovery property from file config, we dont need it, just use the service name as indicator the user wants to use service discovery for the given reroute
* added delegate to select last handler
* #529 implemented a way we can inject the last delegating handler
* wip - moving code
* #529 removed loads of qos code and moved it into Ocelot.Provider.Polly
* #529 can now inject http client expcetions to ocelot errors mappers and updated docs
* #529 removed consul deps and introduced delegate to find service discovery provider
* +semver: breaking moved consul configuration to package..introduced mechanism for packages to configure Ocelot pipeline
* Made the file config poller use IHostedService, bit more generic, not just need to provide the correct implementations of the repo services and it will poll anything..this means we can open up redis for #458
* removed comments
* #458 allow users to set rate limits per service for dynamic re routes
* #458 added docs for rate limting on dynamic reroutes
* #451 started implementing querystring support in templates
* #451 ocelot.json back to normal and specified in docs query string wont work in upstream template
* Revert "#451 ocelot.json back to normal and specified in docs query string wont work in upstream template"
This reverts commit 563193f7b2f78bad6109484fe77f3c87de831005.
* #451 ocelot.json back to normal and specified in docs query string wont work in upstream template
* #428 dont use dynamic routing unless service discovery provider explictly set and log that we are going to use dynamic info
* #428 fixed tests that were failing due to not maintaining backwards compat with config for service discovery
* WIP - implement a consul service discovery poller, lots of shared code with existing, refactor next and a todo in the docs to finish
* #374 implement polling for consul as option
* #374 updated docs to remove todo
* #374 fixed failing unit test
* #374 fixed failing unit test
* #374 fixed failing acceptance test
* #340 started looking at supporting automatic routing when using service discovery
* #340 getting old routing tests to pass
* #340 renamed stuff to provider rather than finder, as its not longer finding anything
* #340 working towards supporting dynamic routing
* #340 loads of refactoring to make configuration work with dynamic routing
* #340 refactor consul config code so the registry class owns it
* #340 default to consul to maintain backwards compat
* #340 added docs, finished this branches todos
* started messing around with sticky sessions idea
* more tests for sticky session thing
* more faffing cant make up my mind how to do this
* +semver: breaking added sticky session load balancer and changed way load balancer configuration is set by user
* #336 made tests BDDFy
* #262 - Integrated Steeltoe Service Discovery with Ocelot for review.
* messing around
* seems to be working with eureka
* acceptance test passing with external lib references
* #262 support for netflix eureka service discovery thanks to pivotal
* #262 fixed warnings
* #318 http client obeys Qos timeout or defaults to 90 seconds, which is think is default for http client anyway but zero docs....
* #318 updated docs to specify default timeout and make it clear how to set it on a ReRoute basis
* #318 missed this
* #318 missed this
* #296 renamed configuration.json to ocelot.json in preparation
* removed things we dont need for tests
* another file we dont need
* removed some async we dont need
* refactoring to consolidate configuration code
* removed another pointless abstraction
* #296 started writing merge code
* #296 coming up with ideas for this config merging
* #296 still hacking this idea around
* #296 will now do a crappy merge on the configuration
* #296 change so tests pass on windows
Class name "OcelotMiddlewareConfiguration" does not exist and "UseOcelot" extension method expects a "OcelotPipelineConfiguration" so i think this documentaiton is outdated.
* #298 initial hacking around better aggregation
* #298 bit more hacking around
* #298 abstraction over httpresponsemessage
* #298 tidying up
* #298 docs
* #298 missed this
* #306 example of how to do GraphQL