Line data Source code
1 : #include "source/extensions/config/validators/minimum_clusters/config.h" 2 : 3 : #include "envoy/extensions/config/validators/minimum_clusters/v3/minimum_clusters.pb.h" 4 : #include "envoy/extensions/config/validators/minimum_clusters/v3/minimum_clusters.pb.validate.h" 5 : #include "envoy/registry/registry.h" 6 : 7 : #include "source/common/config/resource_name.h" 8 : 9 : namespace Envoy { 10 : namespace Extensions { 11 : namespace Config { 12 : namespace Validators { 13 : 14 : Envoy::Config::ConfigValidatorPtr MinimumClustersValidatorFactory::createConfigValidator( 15 0 : const ProtobufWkt::Any& config, ProtobufMessage::ValidationVisitor& validation_visitor) { 16 0 : const auto& validator_config = MessageUtil::anyConvertAndValidate< 17 0 : envoy::extensions::config::validators::minimum_clusters::v3::MinimumClustersValidator>( 18 0 : config, validation_visitor); 19 : 20 0 : return std::make_unique<MinimumClustersValidator>(validator_config); 21 0 : } 22 : 23 2 : Envoy::ProtobufTypes::MessagePtr MinimumClustersValidatorFactory::createEmptyConfigProto() { 24 2 : return std::make_unique< 25 2 : envoy::extensions::config::validators::minimum_clusters::v3::MinimumClustersValidator>(); 26 2 : } 27 : 28 42 : std::string MinimumClustersValidatorFactory::name() const { 29 42 : return absl::StrCat(category(), ".minimum_clusters_validator"); 30 42 : } 31 : 32 0 : std::string MinimumClustersValidatorFactory::typeUrl() const { 33 0 : return Envoy::Config::getTypeUrl<envoy::config::cluster::v3::Cluster>(); 34 0 : } 35 : 36 : /** 37 : * Static registration for this config validator factory. @see RegisterFactory. 38 : */ 39 : LEGACY_REGISTER_FACTORY(MinimumClustersValidatorFactory, Envoy::Config::ConfigValidatorFactory, 40 : "envoy.config.validators.minimum_clusters"); 41 : 42 : } // namespace Validators 43 : } // namespace Config 44 : } // namespace Extensions 45 : } // namespace Envoy