* 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
* #574 consolidate some code, man the config stuff is a mess!
* #574 just use the downstream re route and the key for caching http clients
* #574 added benchmark, i was suprised to learn using a complex type was faster than a string in benchmark .net dictionary tests, hey ho probably dont have enough data in the type...
* #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
* #568 worked out how to check if qos handler present and kill Ocelot if options specified but no handler, need to refactor this into fluent validation style
* #568 acceptance tests to make sure Ocelot won't start if the user specifies QoSOptions but doesnt have a QoSHandler registered
* #568 Ocelot wont start if QoSOptions specified and no QoS DelegatingHandler registered e.g. no use of Ocelot.Provider.Polly. Also adds a NoQosDelegatingHandler and logs an error if ive missed something and the user can get to making the request
* #568 sadly something wierd with IServiceProvider and FluentValidation so I'm just defaulting to warning and noqosdelegatinghandler if someone doesnt register but provides options, also added basic in memory cache in case people dont use a specific package
* #555 added some tests for this issue but struggling to replicate
* #555 removed cmd=instance from service fabric code as someone who knows service fabric says its not needed
I
* #555 renamed test
* 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
* 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 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
* 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
* #464 added code to request mapper to not automatically add content type and content length headers, .net will automatically try and add these headers in a few circumstances but this solves the 464 issue
* #464 use seek instead of read on body check for websockets tests
* #464 ran out of inodes on linux, looks like reloadonchange causes this
* Expand other branch pipes
* Expand other branch pipes
* Expand other branch pipes
* optimization Expand other branch pipes ,Add Unit test
* I hope to add two attributes to IOcelotBuilder for easy extension.
* #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
* #419 Incorrect routing when UpstreamHost is specified and UpstreamHttpMethod is empty
* few tweaks to make seperate test as I got confused having one...there is too much setup in these tests
* added another test case for route matching
* set cake coveralls addin to v0.0.7 so build works...
* #383 added failing test for this issue
* #383 identified issue was with cached load balancer for a given upstream path template based on the key we use, have modified this to include more data, I guess this might be an issue again for other things so I will have a think about it
* #383 fixed failing tests after key change
* Seems to be an issue with coveralls new package not being on nuget...try same version as their nuget package
* bash the old manual tests json back in
* #405 needto check which version of .net we are using but cannot use compiler directives
* #405 started puttig abstraction around static method to get frameworks so we can test this logic
* #405 added test for all methods and tidied up tests
* #405 made contains as ms docs are wrong, thanks to davidni for the heads up