Line data Source code
1 : #pragma once 2 : 3 : #include "envoy/extensions/matching/common_inputs/environment_variable/v3/input.pb.h" 4 : #include "envoy/extensions/matching/common_inputs/environment_variable/v3/input.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/common_inputs/environment_variable/input.h" 10 : 11 : namespace Envoy { 12 : namespace Extensions { 13 : namespace Matching { 14 : namespace CommonInputs { 15 : namespace EnvironmentVariable { 16 : 17 : class Config : public Envoy::Matcher::CommonProtocolInputFactory { 18 : public: 19 : Envoy::Matcher::CommonProtocolInputFactoryCb createCommonProtocolInputFactoryCb( 20 : const Protobuf::Message& config, 21 : ProtobufMessage::ValidationVisitor& validation_visitor) override; 22 : 23 40 : std::string name() const override { return "envoy.matching.common_inputs.environment_variable"; } 24 : 25 1 : ProtobufTypes::MessagePtr createEmptyConfigProto() override { 26 1 : return std::make_unique< 27 1 : envoy::extensions::matching::common_inputs::environment_variable::v3::Config>(); 28 1 : } 29 : }; 30 : } // namespace EnvironmentVariable 31 : } // namespace CommonInputs 32 : } // namespace Matching 33 : } // namespace Extensions 34 : } // namespace Envoy