Line data Source code
1 : #pragma once 2 : 3 : #include "envoy/extensions/retry/priority/previous_priorities/v3/previous_priorities_config.pb.h" 4 : #include "envoy/upstream/retry.h" 5 : 6 : #include "source/common/protobuf/protobuf.h" 7 : #include "source/extensions/retry/priority/previous_priorities/previous_priorities.h" 8 : 9 : namespace Envoy { 10 : namespace Extensions { 11 : namespace Retry { 12 : namespace Priority { 13 : 14 : class PreviousPrioritiesRetryPriorityFactory : public Upstream::RetryPriorityFactory { 15 : public: 16 : Upstream::RetryPrioritySharedPtr 17 : createRetryPriority(const Protobuf::Message& config, 18 : ProtobufMessage::ValidationVisitor& validation_visitor, 19 : uint32_t max_retries) override; 20 : 21 38 : std::string name() const override { return "envoy.retry_priorities.previous_priorities"; } 22 : 23 1 : ProtobufTypes::MessagePtr createEmptyConfigProto() override { 24 1 : return ProtobufTypes::MessagePtr(new envoy::extensions::retry::priority::previous_priorities:: 25 1 : v3::PreviousPrioritiesConfig()); 26 1 : } 27 : }; 28 : 29 : } // namespace Priority 30 : } // namespace Retry 31 : } // namespace Extensions 32 : } // namespace Envoy