Add the ability to disable interceptors via the config bag (#2757)
This replaces the existing custom interceptor disable logic with shared logic to allow generally disabling any public interceptors from Runtime plugins. The previous behavior was very brittle because it relied heavily on runtime plugin execution order. ## Motivation and Context - simplify presigning behavior - generalize logic to disable interceptors ## Description Create `disable_interceptor` struct, which, when inserted into the configuration bag can disable an interceptor via the `Interceptors` execution interface. ## Testing - ` (cd aws/sdk/build/aws-sdk/sdk/s3 && cargo test --test presigning)` ## Checklist <!--- If a checkbox below is not applicable, then please DELETE it rather than leaving it unchecked --> - [ ] I have updated `CHANGELOG.next.toml` if I made changes to the smithy-rs codegen or runtime crates - [ ] I have updated `CHANGELOG.next.toml` if I made changes to the AWS SDK, generated SDK code, or SDK runtime crates ---- _By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice._
Loading
Please register or sign in to comment