Line data Source code
1 : #pragma once 2 : 3 : #include "envoy/extensions/matching/input_matchers/ip/v3/ip.pb.h" 4 : #include "envoy/extensions/matching/input_matchers/ip/v3/ip.pb.validate.h" 5 : #include "envoy/matcher/matcher.h" 6 : #include "envoy/server/factory_context.h" 7 : 8 : #include "source/common/protobuf/utility.h" 9 : #include "source/extensions/matching/input_matchers/ip/matcher.h" 10 : 11 : namespace Envoy { 12 : namespace Extensions { 13 : namespace Matching { 14 : namespace InputMatchers { 15 : namespace IP { 16 : 17 : class Config : public Envoy::Matcher::InputMatcherFactory { 18 : public: 19 : Envoy::Matcher::InputMatcherFactoryCb createInputMatcherFactoryCb( 20 : const Protobuf::Message& config, 21 : Server::Configuration::ServerFactoryContext& factory_context) override; 22 : 23 40 : std::string name() const override { return "envoy.matching.matchers.ip"; } 24 : 25 1 : ProtobufTypes::MessagePtr createEmptyConfigProto() override { 26 1 : return std::make_unique<envoy::extensions::matching::input_matchers::ip::v3::Ip>(); 27 1 : } 28 : }; 29 : } // namespace IP 30 : } // namespace InputMatchers 31 : } // namespace Matching 32 : } // namespace Extensions 33 : } // namespace Envoy