Line data Source code
1 : #pragma once 2 : 3 : #include "envoy/extensions/retry/host/omit_host_metadata/v3/omit_host_metadata_config.pb.h" 4 : #include "envoy/extensions/retry/host/omit_host_metadata/v3/omit_host_metadata_config.pb.validate.h" 5 : #include "envoy/upstream/retry.h" 6 : 7 : #include "source/extensions/retry/host/omit_host_metadata/omit_host_metadata.h" 8 : 9 : namespace Envoy { 10 : namespace Extensions { 11 : namespace Retry { 12 : namespace Host { 13 : 14 : class OmitHostsRetryPredicateFactory : public Upstream::RetryHostPredicateFactory { 15 : public: 16 : Upstream::RetryHostPredicateSharedPtr createHostPredicate(const Protobuf::Message& config, 17 : uint32_t retry_count) override; 18 : 19 38 : std::string name() const override { return "envoy.retry_host_predicates.omit_host_metadata"; } 20 : 21 1 : ProtobufTypes::MessagePtr createEmptyConfigProto() override { 22 1 : return ProtobufTypes::MessagePtr( 23 1 : new envoy::extensions::retry::host::omit_host_metadata::v3::OmitHostMetadataConfig()); 24 1 : } 25 : }; 26 : 27 : } // namespace Host 28 : } // namespace Retry 29 : } // namespace Extensions 30 : } // namespace Envoy