diff --git a/api/envoy/admin/v2alpha/certs.proto b/api/envoy/admin/v2alpha/certs.proto index bb8d173b97d43..c6d5e4154aed8 100644 --- a/api/envoy/admin/v2alpha/certs.proto +++ b/api/envoy/admin/v2alpha/certs.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.admin.v2alpha; + +option java_outer_classname = "CertsProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.admin.v2alpha"; import "google/protobuf/timestamp.proto"; diff --git a/api/envoy/admin/v2alpha/clusters.proto b/api/envoy/admin/v2alpha/clusters.proto index 68e3cb363df05..be7011be03036 100644 --- a/api/envoy/admin/v2alpha/clusters.proto +++ b/api/envoy/admin/v2alpha/clusters.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.admin.v2alpha; + +option java_outer_classname = "ClustersProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.admin.v2alpha"; import "envoy/admin/v2alpha/metrics.proto"; diff --git a/api/envoy/admin/v2alpha/config_dump.proto b/api/envoy/admin/v2alpha/config_dump.proto index 0cb1ad21e11ca..cfc1cdd54d8f5 100644 --- a/api/envoy/admin/v2alpha/config_dump.proto +++ b/api/envoy/admin/v2alpha/config_dump.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.admin.v2alpha; + +option java_outer_classname = "ConfigDumpProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.admin.v2alpha"; import "envoy/api/v2/cds.proto"; diff --git a/api/envoy/admin/v2alpha/memory.proto b/api/envoy/admin/v2alpha/memory.proto index 3e83811a75c4c..f4158f4bb37a2 100644 --- a/api/envoy/admin/v2alpha/memory.proto +++ b/api/envoy/admin/v2alpha/memory.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.admin.v2alpha; + +option java_outer_classname = "MemoryProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.admin.v2alpha"; // [#protodoc-title: Memory] diff --git a/api/envoy/admin/v2alpha/metrics.proto b/api/envoy/admin/v2alpha/metrics.proto index f2a90b0bca0be..9a91c7477be5b 100644 --- a/api/envoy/admin/v2alpha/metrics.proto +++ b/api/envoy/admin/v2alpha/metrics.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.admin.v2alpha; + +option java_outer_classname = "MetricsProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.admin.v2alpha"; // [#protodoc-title: Metrics] diff --git a/api/envoy/admin/v2alpha/mutex_stats.proto b/api/envoy/admin/v2alpha/mutex_stats.proto index 65f121cce398c..272d7224b0e98 100644 --- a/api/envoy/admin/v2alpha/mutex_stats.proto +++ b/api/envoy/admin/v2alpha/mutex_stats.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.admin.v2alpha; + +option java_outer_classname = "MutexStatsProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.admin.v2alpha"; // [#protodoc-title: MutexStats] diff --git a/api/envoy/admin/v2alpha/server_info.proto b/api/envoy/admin/v2alpha/server_info.proto index 3feb5952b83a5..18dcc70b805cc 100644 --- a/api/envoy/admin/v2alpha/server_info.proto +++ b/api/envoy/admin/v2alpha/server_info.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.admin.v2alpha; + +option java_outer_classname = "ServerInfoProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.admin.v2alpha"; import "google/protobuf/duration.proto"; diff --git a/api/envoy/admin/v2alpha/tap.proto b/api/envoy/admin/v2alpha/tap.proto index e35ef3cc5aec6..789be14b01c37 100644 --- a/api/envoy/admin/v2alpha/tap.proto +++ b/api/envoy/admin/v2alpha/tap.proto @@ -4,6 +4,9 @@ import "envoy/service/tap/v2alpha/common.proto"; import "validate/validate.proto"; package envoy.admin.v2alpha; + +option java_outer_classname = "TapProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.admin.v2alpha"; // The /tap admin request body that is used to configure an active tap session. diff --git a/api/envoy/api/v2/auth/cert.proto b/api/envoy/api/v2/auth/cert.proto index 778c8c17ba0d0..8bc2ee37b849d 100644 --- a/api/envoy/api/v2/auth/cert.proto +++ b/api/envoy/api/v2/auth/cert.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.api.v2.auth; + +option java_outer_classname = "CertProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.api.v2.auth"; option go_package = "auth"; diff --git a/api/envoy/api/v2/cds.proto b/api/envoy/api/v2/cds.proto index bd200eae261bb..cca6de9e0d670 100644 --- a/api/envoy/api/v2/cds.proto +++ b/api/envoy/api/v2/cds.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.api.v2; + +option java_outer_classname = "CdsProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.api.v2"; option java_generic_services = true; diff --git a/api/envoy/api/v2/cluster/circuit_breaker.proto b/api/envoy/api/v2/cluster/circuit_breaker.proto index a1193cc6b61f5..50b20c08e5e7e 100644 --- a/api/envoy/api/v2/cluster/circuit_breaker.proto +++ b/api/envoy/api/v2/cluster/circuit_breaker.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.api.v2.cluster; + +option java_outer_classname = "CircuitBreakerProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.api.v2.cluster"; option go_package = "cluster"; option csharp_namespace = "Envoy.Api.V2.ClusterNS"; diff --git a/api/envoy/api/v2/cluster/outlier_detection.proto b/api/envoy/api/v2/cluster/outlier_detection.proto index dd373c2e29471..cd33cde1eccd9 100644 --- a/api/envoy/api/v2/cluster/outlier_detection.proto +++ b/api/envoy/api/v2/cluster/outlier_detection.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.api.v2.cluster; + +option java_outer_classname = "OutlierDetectionProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.api.v2.cluster"; option csharp_namespace = "Envoy.Api.V2.ClusterNS"; diff --git a/api/envoy/api/v2/core/address.proto b/api/envoy/api/v2/core/address.proto index dbf6acc7a1ec3..6e76f5b721901 100644 --- a/api/envoy/api/v2/core/address.proto +++ b/api/envoy/api/v2/core/address.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.api.v2.core; + +option java_outer_classname = "AddressProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.api.v2.core"; import "envoy/api/v2/core/base.proto"; diff --git a/api/envoy/api/v2/core/base.proto b/api/envoy/api/v2/core/base.proto index 23f525096c9b8..3d03b3eb467ae 100644 --- a/api/envoy/api/v2/core/base.proto +++ b/api/envoy/api/v2/core/base.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.api.v2.core; + +option java_outer_classname = "BaseProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.api.v2.core"; option go_package = "core"; diff --git a/api/envoy/api/v2/core/config_source.proto b/api/envoy/api/v2/core/config_source.proto index eb314fc4a0157..3be59c1886b5f 100644 --- a/api/envoy/api/v2/core/config_source.proto +++ b/api/envoy/api/v2/core/config_source.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.api.v2.core; + +option java_outer_classname = "ConfigSourceProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.api.v2.core"; import "envoy/api/v2/core/grpc_service.proto"; diff --git a/api/envoy/api/v2/core/grpc_service.proto b/api/envoy/api/v2/core/grpc_service.proto index 08672849ce69c..0ee84e3b1077d 100644 --- a/api/envoy/api/v2/core/grpc_service.proto +++ b/api/envoy/api/v2/core/grpc_service.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.api.v2.core; + +option java_outer_classname = "GrpcServiceProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.api.v2.core"; import "envoy/api/v2/core/base.proto"; diff --git a/api/envoy/api/v2/core/health_check.proto b/api/envoy/api/v2/core/health_check.proto index b158b6c80ea8c..65102d613dc81 100644 --- a/api/envoy/api/v2/core/health_check.proto +++ b/api/envoy/api/v2/core/health_check.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.api.v2.core; + +option java_outer_classname = "HealthCheckProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.api.v2.core"; import "envoy/api/v2/core/base.proto"; diff --git a/api/envoy/api/v2/core/http_uri.proto b/api/envoy/api/v2/core/http_uri.proto index c0a007e10ee7e..21c66c7fa63c0 100644 --- a/api/envoy/api/v2/core/http_uri.proto +++ b/api/envoy/api/v2/core/http_uri.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.api.v2.core; + +option java_outer_classname = "HttpUriProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.api.v2.core"; import "google/protobuf/duration.proto"; diff --git a/api/envoy/api/v2/core/protocol.proto b/api/envoy/api/v2/core/protocol.proto index 69bddec072a5d..1f5027e7e8b8b 100644 --- a/api/envoy/api/v2/core/protocol.proto +++ b/api/envoy/api/v2/core/protocol.proto @@ -3,6 +3,9 @@ syntax = "proto3"; package envoy.api.v2.core; + +option java_outer_classname = "ProtocolProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.api.v2.core"; import "google/protobuf/duration.proto"; diff --git a/api/envoy/api/v2/discovery.proto b/api/envoy/api/v2/discovery.proto index 75fcc02a8d7b5..17e5cfdcc38d6 100644 --- a/api/envoy/api/v2/discovery.proto +++ b/api/envoy/api/v2/discovery.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.api.v2; + +option java_outer_classname = "DiscoveryProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.api.v2"; option go_package = "v2"; diff --git a/api/envoy/api/v2/eds.proto b/api/envoy/api/v2/eds.proto index afb932190d35b..fcef8c5f95fc9 100644 --- a/api/envoy/api/v2/eds.proto +++ b/api/envoy/api/v2/eds.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.api.v2; + +option java_outer_classname = "EdsProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.api.v2"; option java_generic_services = true; diff --git a/api/envoy/api/v2/endpoint/endpoint.proto b/api/envoy/api/v2/endpoint/endpoint.proto index 2efe7d1ff5f7e..c458884c3a2bf 100644 --- a/api/envoy/api/v2/endpoint/endpoint.proto +++ b/api/envoy/api/v2/endpoint/endpoint.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.api.v2.endpoint; + +option java_outer_classname = "EndpointProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.api.v2.endpoint"; option go_package = "endpoint"; diff --git a/api/envoy/api/v2/endpoint/load_report.proto b/api/envoy/api/v2/endpoint/load_report.proto index cbb01d3271897..58580d4203913 100644 --- a/api/envoy/api/v2/endpoint/load_report.proto +++ b/api/envoy/api/v2/endpoint/load_report.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.api.v2.endpoint; + +option java_outer_classname = "LoadReportProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.api.v2.endpoint"; import "envoy/api/v2/core/address.proto"; diff --git a/api/envoy/api/v2/lds.proto b/api/envoy/api/v2/lds.proto index 56980a11f9cea..5b2f8bbc1b976 100644 --- a/api/envoy/api/v2/lds.proto +++ b/api/envoy/api/v2/lds.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.api.v2; + +option java_outer_classname = "LdsProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.api.v2"; option java_generic_services = true; diff --git a/api/envoy/api/v2/listener/listener.proto b/api/envoy/api/v2/listener/listener.proto index c919531c0f83e..96b7668af2560 100644 --- a/api/envoy/api/v2/listener/listener.proto +++ b/api/envoy/api/v2/listener/listener.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.api.v2.listener; + +option java_outer_classname = "ListenerProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.api.v2.listener"; option go_package = "listener"; option csharp_namespace = "Envoy.Api.V2.ListenerNS"; diff --git a/api/envoy/api/v2/ratelimit/ratelimit.proto b/api/envoy/api/v2/ratelimit/ratelimit.proto index 78bdc9c86463b..8ebec7182257e 100644 --- a/api/envoy/api/v2/ratelimit/ratelimit.proto +++ b/api/envoy/api/v2/ratelimit/ratelimit.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.api.v2.ratelimit; + +option java_outer_classname = "RatelimitProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.api.v2.ratelimit"; option go_package = "ratelimit"; diff --git a/api/envoy/api/v2/rds.proto b/api/envoy/api/v2/rds.proto index 9699accf95ce2..8d41b384ba9bd 100644 --- a/api/envoy/api/v2/rds.proto +++ b/api/envoy/api/v2/rds.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.api.v2; + +option java_outer_classname = "RdsProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.api.v2"; option java_generic_services = true; diff --git a/api/envoy/api/v2/route/route.proto b/api/envoy/api/v2/route/route.proto index 7e7b41de30251..f752ad14e26e1 100644 --- a/api/envoy/api/v2/route/route.proto +++ b/api/envoy/api/v2/route/route.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.api.v2.route; + +option java_outer_classname = "RouteProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.api.v2.route"; option go_package = "route"; option java_generic_services = true; diff --git a/api/envoy/config/accesslog/v2/als.proto b/api/envoy/config/accesslog/v2/als.proto index fdc5fa12c8f50..c71fe70a8c855 100644 --- a/api/envoy/config/accesslog/v2/als.proto +++ b/api/envoy/config/accesslog/v2/als.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.config.accesslog.v2; + +option java_outer_classname = "AlsProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.accesslog.v2"; option go_package = "v2"; diff --git a/api/envoy/config/accesslog/v2/file.proto b/api/envoy/config/accesslog/v2/file.proto index fb5bddcebdae6..48a1841a9614a 100644 --- a/api/envoy/config/accesslog/v2/file.proto +++ b/api/envoy/config/accesslog/v2/file.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.config.accesslog.v2; + +option java_outer_classname = "FileProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.accesslog.v2"; option go_package = "v2"; diff --git a/api/envoy/config/bootstrap/v2/bootstrap.proto b/api/envoy/config/bootstrap/v2/bootstrap.proto index f6f883b822521..5bf09febcddd0 100644 --- a/api/envoy/config/bootstrap/v2/bootstrap.proto +++ b/api/envoy/config/bootstrap/v2/bootstrap.proto @@ -6,6 +6,9 @@ syntax = "proto3"; package envoy.config.bootstrap.v2; + +option java_outer_classname = "BootstrapProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.bootstrap.v2"; option go_package = "v2"; diff --git a/api/envoy/config/common/tap/v2alpha/common.proto b/api/envoy/config/common/tap/v2alpha/common.proto index 9fb3832868efb..a7b587e3ba38c 100644 --- a/api/envoy/config/common/tap/v2alpha/common.proto +++ b/api/envoy/config/common/tap/v2alpha/common.proto @@ -5,6 +5,9 @@ import "envoy/service/tap/v2alpha/common.proto"; import "validate/validate.proto"; package envoy.config.common.tap.v2alpha; + +option java_outer_classname = "CommonProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.service.tap.v2alpha"; // [#protodoc-title: Common tap extension configuration] diff --git a/api/envoy/config/filter/accesslog/v2/accesslog.proto b/api/envoy/config/filter/accesslog/v2/accesslog.proto index c85f06efa3e1b..da699432ee177 100644 --- a/api/envoy/config/filter/accesslog/v2/accesslog.proto +++ b/api/envoy/config/filter/accesslog/v2/accesslog.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.config.filter.accesslog.v2; + +option java_outer_classname = "AccesslogProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.filter.accesslog.v2"; option go_package = "v2"; diff --git a/api/envoy/config/filter/fault/v2/fault.proto b/api/envoy/config/filter/fault/v2/fault.proto index 8462a2f95c5d7..7c6e405ba9704 100644 --- a/api/envoy/config/filter/fault/v2/fault.proto +++ b/api/envoy/config/filter/fault/v2/fault.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.config.filter.fault.v2; + +option java_outer_classname = "FaultProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.filter.fault.v2"; option go_package = "v2"; diff --git a/api/envoy/config/filter/http/buffer/v2/buffer.proto b/api/envoy/config/filter/http/buffer/v2/buffer.proto index fce389c68b0c2..6da5cbb94746a 100644 --- a/api/envoy/config/filter/http/buffer/v2/buffer.proto +++ b/api/envoy/config/filter/http/buffer/v2/buffer.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.config.filter.http.buffer.v2; + +option java_outer_classname = "BufferProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.filter.http.buffer.v2"; option go_package = "v2"; diff --git a/api/envoy/config/filter/http/ext_authz/v2/ext_authz.proto b/api/envoy/config/filter/http/ext_authz/v2/ext_authz.proto index ddcdf6ab51c16..2f5423afd4a83 100644 --- a/api/envoy/config/filter/http/ext_authz/v2/ext_authz.proto +++ b/api/envoy/config/filter/http/ext_authz/v2/ext_authz.proto @@ -1,6 +1,8 @@ syntax = "proto3"; package envoy.config.filter.http.ext_authz.v2; + +option java_outer_classname = "ExtAuthzProto"; option java_package = "io.envoyproxy.envoy.config.filter.http.ext_authz.v2"; option java_multiple_files = true; option go_package = "v2"; diff --git a/api/envoy/config/filter/http/fault/v2/fault.proto b/api/envoy/config/filter/http/fault/v2/fault.proto index 134a5424cee14..aaffbc1f316ab 100644 --- a/api/envoy/config/filter/http/fault/v2/fault.proto +++ b/api/envoy/config/filter/http/fault/v2/fault.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.config.filter.http.fault.v2; + +option java_outer_classname = "FaultProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.filter.http.fault.v2"; option go_package = "v2"; diff --git a/api/envoy/config/filter/http/grpc_http1_reverse_bridge/v2alpha1/config.proto b/api/envoy/config/filter/http/grpc_http1_reverse_bridge/v2alpha1/config.proto index 5b236fff4f30f..eb1dfd68fe2d9 100644 --- a/api/envoy/config/filter/http/grpc_http1_reverse_bridge/v2alpha1/config.proto +++ b/api/envoy/config/filter/http/grpc_http1_reverse_bridge/v2alpha1/config.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.extensions.filter.http.grpc_http1_reverse_bridge.v2alpha1; + +option java_outer_classname = "ConfigProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.extensions.filter.http.grpc_http1_reverse_bridge.v2alpha1"; option go_package = "v2"; diff --git a/api/envoy/config/filter/http/gzip/v2/gzip.proto b/api/envoy/config/filter/http/gzip/v2/gzip.proto index e6609f171f34d..fb6b8878e6528 100644 --- a/api/envoy/config/filter/http/gzip/v2/gzip.proto +++ b/api/envoy/config/filter/http/gzip/v2/gzip.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.config.filter.http.gzip.v2; + +option java_outer_classname = "GzipProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.filter.http.gzip.v2"; option go_package = "v2"; diff --git a/api/envoy/config/filter/http/header_to_metadata/v2/header_to_metadata.proto b/api/envoy/config/filter/http/header_to_metadata/v2/header_to_metadata.proto index af9a4d0cf0c3b..2c8c606d3f863 100644 --- a/api/envoy/config/filter/http/header_to_metadata/v2/header_to_metadata.proto +++ b/api/envoy/config/filter/http/header_to_metadata/v2/header_to_metadata.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.config.filter.http.header_to_metadata.v2; + +option java_outer_classname = "HeaderToMetadataProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.filter.http.header_to_metadata.v2"; option go_package = "v2"; diff --git a/api/envoy/config/filter/http/health_check/v2/health_check.proto b/api/envoy/config/filter/http/health_check/v2/health_check.proto index 5cb6a9d37265b..c951f08c1314b 100644 --- a/api/envoy/config/filter/http/health_check/v2/health_check.proto +++ b/api/envoy/config/filter/http/health_check/v2/health_check.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.config.filter.http.health_check.v2; + +option java_outer_classname = "HealthCheckProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.filter.http.health_check.v2"; option go_package = "v2"; diff --git a/api/envoy/config/filter/http/ip_tagging/v2/ip_tagging.proto b/api/envoy/config/filter/http/ip_tagging/v2/ip_tagging.proto index aba17986ab739..4d0b4fe64de7e 100644 --- a/api/envoy/config/filter/http/ip_tagging/v2/ip_tagging.proto +++ b/api/envoy/config/filter/http/ip_tagging/v2/ip_tagging.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.config.filter.http.ip_tagging.v2; + +option java_outer_classname = "IpTaggingProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.filter.http.ip_tagging.v2"; option go_package = "v2"; diff --git a/api/envoy/config/filter/http/jwt_authn/v2alpha/config.proto b/api/envoy/config/filter/http/jwt_authn/v2alpha/config.proto index b585cb6dbde0b..b60d74a652b87 100644 --- a/api/envoy/config/filter/http/jwt_authn/v2alpha/config.proto +++ b/api/envoy/config/filter/http/jwt_authn/v2alpha/config.proto @@ -2,6 +2,9 @@ syntax = "proto3"; package envoy.config.filter.http.jwt_authn.v2alpha; + +option java_outer_classname = "ConfigProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.filter.http.jwt_authn.v2alpha"; import "envoy/api/v2/core/base.proto"; diff --git a/api/envoy/config/filter/http/lua/v2/lua.proto b/api/envoy/config/filter/http/lua/v2/lua.proto index a2bbb3fc7c951..f29bcdbe89ef0 100644 --- a/api/envoy/config/filter/http/lua/v2/lua.proto +++ b/api/envoy/config/filter/http/lua/v2/lua.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.config.filter.http.lua.v2; + +option java_outer_classname = "LuaProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.filter.http.lua.v2"; option go_package = "v2"; diff --git a/api/envoy/config/filter/http/rate_limit/v2/rate_limit.proto b/api/envoy/config/filter/http/rate_limit/v2/rate_limit.proto index f153e59bfc143..e9ea6fbb12753 100644 --- a/api/envoy/config/filter/http/rate_limit/v2/rate_limit.proto +++ b/api/envoy/config/filter/http/rate_limit/v2/rate_limit.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.config.filter.http.rate_limit.v2; + +option java_outer_classname = "RateLimitProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.filter.http.rate_limit.v2"; option go_package = "v2"; diff --git a/api/envoy/config/filter/http/rbac/v2/rbac.proto b/api/envoy/config/filter/http/rbac/v2/rbac.proto index 82f92f6ef221e..936d39807c9fc 100644 --- a/api/envoy/config/filter/http/rbac/v2/rbac.proto +++ b/api/envoy/config/filter/http/rbac/v2/rbac.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.config.filter.http.rbac.v2; + +option java_outer_classname = "RbacProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.filter.http.rbac.v2"; option go_package = "v2"; diff --git a/api/envoy/config/filter/http/router/v2/router.proto b/api/envoy/config/filter/http/router/v2/router.proto index b23624271dc28..02115cb81f734 100644 --- a/api/envoy/config/filter/http/router/v2/router.proto +++ b/api/envoy/config/filter/http/router/v2/router.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.config.filter.http.router.v2; + +option java_outer_classname = "RouterProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.filter.http.router.v2"; option go_package = "v2"; diff --git a/api/envoy/config/filter/http/squash/v2/squash.proto b/api/envoy/config/filter/http/squash/v2/squash.proto index f3bdd9d2e0679..006af4380d41f 100644 --- a/api/envoy/config/filter/http/squash/v2/squash.proto +++ b/api/envoy/config/filter/http/squash/v2/squash.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.config.filter.http.squash.v2; + +option java_outer_classname = "SquashProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.filter.http.squash.v2"; option go_package = "v2"; diff --git a/api/envoy/config/filter/http/tap/v2alpha/tap.proto b/api/envoy/config/filter/http/tap/v2alpha/tap.proto index 9d93d2943a5b5..10d7bdd1e0d81 100644 --- a/api/envoy/config/filter/http/tap/v2alpha/tap.proto +++ b/api/envoy/config/filter/http/tap/v2alpha/tap.proto @@ -5,6 +5,9 @@ import "envoy/config/common/tap/v2alpha/common.proto"; import "validate/validate.proto"; package envoy.config.filter.http.tap.v2alpha; + +option java_outer_classname = "TapProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.filter.http.tap.v2alpha"; // [#protodoc-title: Tap] diff --git a/api/envoy/config/filter/http/transcoder/v2/transcoder.proto b/api/envoy/config/filter/http/transcoder/v2/transcoder.proto index ccb455ac2168c..fecd55d694b66 100644 --- a/api/envoy/config/filter/http/transcoder/v2/transcoder.proto +++ b/api/envoy/config/filter/http/transcoder/v2/transcoder.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.config.filter.http.transcoder.v2; + +option java_outer_classname = "TranscoderProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.filter.http.transcoder.v2"; option go_package = "v2"; diff --git a/api/envoy/config/filter/listener/original_src/v2alpha1/original_src.proto b/api/envoy/config/filter/listener/original_src/v2alpha1/original_src.proto index 0f3ab8fe20c9f..aa38e1d3df0a5 100644 --- a/api/envoy/config/filter/listener/original_src/v2alpha1/original_src.proto +++ b/api/envoy/config/filter/listener/original_src/v2alpha1/original_src.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.config.filter.listener.original_src.v2alpha1; + +option java_outer_classname = "OriginalSrcProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.filter.listener.original_src.v2alpha1"; option go_package = "v2alpha1"; diff --git a/api/envoy/config/filter/network/client_ssl_auth/v2/client_ssl_auth.proto b/api/envoy/config/filter/network/client_ssl_auth/v2/client_ssl_auth.proto index 30bf9910fed64..fe0a6a3800b88 100644 --- a/api/envoy/config/filter/network/client_ssl_auth/v2/client_ssl_auth.proto +++ b/api/envoy/config/filter/network/client_ssl_auth/v2/client_ssl_auth.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.config.filter.network.client_ssl_auth.v2; + +option java_outer_classname = "ClientSslAuthProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.filter.network.client_ssl_auth.v2"; option go_package = "v2"; diff --git a/api/envoy/config/filter/network/dubbo_proxy/v2alpha1/dubbo_proxy.proto b/api/envoy/config/filter/network/dubbo_proxy/v2alpha1/dubbo_proxy.proto index e38e50a50a3ec..e639830794741 100644 --- a/api/envoy/config/filter/network/dubbo_proxy/v2alpha1/dubbo_proxy.proto +++ b/api/envoy/config/filter/network/dubbo_proxy/v2alpha1/dubbo_proxy.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.config.filter.network.dubbo_proxy.v2alpha1; + +option java_outer_classname = "DubboProxyProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.filter.network.dubbo_proxy.v2alpha1"; option go_package = "v2"; diff --git a/api/envoy/config/filter/network/dubbo_proxy/v2alpha1/route.proto b/api/envoy/config/filter/network/dubbo_proxy/v2alpha1/route.proto index 8ac386c32874d..2c3d80ae3608c 100644 --- a/api/envoy/config/filter/network/dubbo_proxy/v2alpha1/route.proto +++ b/api/envoy/config/filter/network/dubbo_proxy/v2alpha1/route.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.config.filter.network.dubbo_proxy.v2alpha1; + +option java_outer_classname = "RouteProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.filter.network.dubbo_proxy.v2alpha1"; option go_package = "v2"; diff --git a/api/envoy/config/filter/network/ext_authz/v2/ext_authz.proto b/api/envoy/config/filter/network/ext_authz/v2/ext_authz.proto index c8d59c1b5d9f1..f9a2f351f79e8 100644 --- a/api/envoy/config/filter/network/ext_authz/v2/ext_authz.proto +++ b/api/envoy/config/filter/network/ext_authz/v2/ext_authz.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.config.filter.network.ext_authz.v2; + +option java_outer_classname = "ExtAuthzProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.filter.network.ext_authz.v2"; option go_package = "v2"; diff --git a/api/envoy/config/filter/network/http_connection_manager/v2/http_connection_manager.proto b/api/envoy/config/filter/network/http_connection_manager/v2/http_connection_manager.proto index 60e7728a86e0c..8e445bc9c0090 100644 --- a/api/envoy/config/filter/network/http_connection_manager/v2/http_connection_manager.proto +++ b/api/envoy/config/filter/network/http_connection_manager/v2/http_connection_manager.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.config.filter.network.http_connection_manager.v2; + +option java_outer_classname = "HttpConnectionManagerProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.filter.network.http_connection_manager.v2"; option go_package = "v2"; diff --git a/api/envoy/config/filter/network/mongo_proxy/v2/mongo_proxy.proto b/api/envoy/config/filter/network/mongo_proxy/v2/mongo_proxy.proto index 1149a53ba0115..0d3d67bf66545 100644 --- a/api/envoy/config/filter/network/mongo_proxy/v2/mongo_proxy.proto +++ b/api/envoy/config/filter/network/mongo_proxy/v2/mongo_proxy.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.config.filter.network.mongo_proxy.v2; + +option java_outer_classname = "MongoProxyProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.filter.network.mongo_proxy.v2"; option go_package = "v2"; diff --git a/api/envoy/config/filter/network/mysql_proxy/v1alpha1/mysql_proxy.proto b/api/envoy/config/filter/network/mysql_proxy/v1alpha1/mysql_proxy.proto index 3f107057dc02f..e4246c9314aa2 100644 --- a/api/envoy/config/filter/network/mysql_proxy/v1alpha1/mysql_proxy.proto +++ b/api/envoy/config/filter/network/mysql_proxy/v1alpha1/mysql_proxy.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.config.filter.network.mysql_proxy.v1alpha1; + +option java_outer_classname = "MysqlProxyProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.filter.network.mysql_proxy.v1alpha1"; option go_package = "v1alpha1"; diff --git a/api/envoy/config/filter/network/rate_limit/v2/rate_limit.proto b/api/envoy/config/filter/network/rate_limit/v2/rate_limit.proto index 9a89081bf98eb..0ceab0ebd6d54 100644 --- a/api/envoy/config/filter/network/rate_limit/v2/rate_limit.proto +++ b/api/envoy/config/filter/network/rate_limit/v2/rate_limit.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.config.filter.network.rate_limit.v2; + +option java_outer_classname = "RateLimitProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.filter.network.rate_limit.v2"; option go_package = "v2"; diff --git a/api/envoy/config/filter/network/rbac/v2/rbac.proto b/api/envoy/config/filter/network/rbac/v2/rbac.proto index 4441d5e4ebadc..ccab4779ca6c2 100644 --- a/api/envoy/config/filter/network/rbac/v2/rbac.proto +++ b/api/envoy/config/filter/network/rbac/v2/rbac.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.config.filter.network.rbac.v2; + +option java_outer_classname = "RbacProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.filter.network.rbac.v2"; option go_package = "v2"; diff --git a/api/envoy/config/filter/network/redis_proxy/v2/redis_proxy.proto b/api/envoy/config/filter/network/redis_proxy/v2/redis_proxy.proto index a7847be18dd4e..8aba7a744b2e9 100644 --- a/api/envoy/config/filter/network/redis_proxy/v2/redis_proxy.proto +++ b/api/envoy/config/filter/network/redis_proxy/v2/redis_proxy.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.config.filter.network.redis_proxy.v2; + +option java_outer_classname = "RedisProxyProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.filter.network.redis_proxy.v2"; option go_package = "v2"; diff --git a/api/envoy/config/filter/network/tcp_proxy/v2/tcp_proxy.proto b/api/envoy/config/filter/network/tcp_proxy/v2/tcp_proxy.proto index ef9407d8c5a23..12ce0d2757896 100644 --- a/api/envoy/config/filter/network/tcp_proxy/v2/tcp_proxy.proto +++ b/api/envoy/config/filter/network/tcp_proxy/v2/tcp_proxy.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.config.filter.network.tcp_proxy.v2; + +option java_outer_classname = "TcpProxyProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.filter.network.tcp_proxy.v2"; option go_package = "v2"; diff --git a/api/envoy/config/filter/network/thrift_proxy/v2alpha1/route.proto b/api/envoy/config/filter/network/thrift_proxy/v2alpha1/route.proto index f8d38fdbb61ef..c516f516fab1d 100644 --- a/api/envoy/config/filter/network/thrift_proxy/v2alpha1/route.proto +++ b/api/envoy/config/filter/network/thrift_proxy/v2alpha1/route.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.config.filter.network.thrift_proxy.v2alpha1; + +option java_outer_classname = "RouteProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.filter.network.thrift_proxy.v2alpha1"; option go_package = "v2"; diff --git a/api/envoy/config/filter/network/thrift_proxy/v2alpha1/thrift_proxy.proto b/api/envoy/config/filter/network/thrift_proxy/v2alpha1/thrift_proxy.proto index 8ca4e64df1219..951a51e871621 100644 --- a/api/envoy/config/filter/network/thrift_proxy/v2alpha1/thrift_proxy.proto +++ b/api/envoy/config/filter/network/thrift_proxy/v2alpha1/thrift_proxy.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.config.filter.network.thrift_proxy.v2alpha1; + +option java_outer_classname = "ThriftProxyProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.filter.network.thrift_proxy.v2alpha1"; option go_package = "v2"; diff --git a/api/envoy/config/filter/thrift/rate_limit/v2alpha1/rate_limit.proto b/api/envoy/config/filter/thrift/rate_limit/v2alpha1/rate_limit.proto index e3ced525ad1e5..7b4db2ae3d49d 100644 --- a/api/envoy/config/filter/thrift/rate_limit/v2alpha1/rate_limit.proto +++ b/api/envoy/config/filter/thrift/rate_limit/v2alpha1/rate_limit.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.config.filter.thrift.rate_limit.v2alpha1; + +option java_outer_classname = "RateLimitProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.filter.thrift.rate_limit.v2alpha1"; option go_package = "v2alpha1"; diff --git a/api/envoy/config/filter/thrift/router/v2alpha1/router.proto b/api/envoy/config/filter/thrift/router/v2alpha1/router.proto index d7ac3b02e1ef9..c515752c2a001 100644 --- a/api/envoy/config/filter/thrift/router/v2alpha1/router.proto +++ b/api/envoy/config/filter/thrift/router/v2alpha1/router.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.config.filter.thrift.router.v2alpha1; + +option java_outer_classname = "RouterProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.filter.thrift.router.v2alpha1"; option go_package = "v2alpha1"; diff --git a/api/envoy/config/grpc_credential/v2alpha/file_based_metadata.proto b/api/envoy/config/grpc_credential/v2alpha/file_based_metadata.proto index f210da30acf13..c91c50e39a55d 100644 --- a/api/envoy/config/grpc_credential/v2alpha/file_based_metadata.proto +++ b/api/envoy/config/grpc_credential/v2alpha/file_based_metadata.proto @@ -4,6 +4,9 @@ syntax = "proto3"; // Configuration for File Based Metadata Grpc Credentials Plugin package envoy.config.grpc_credential.v2alpha; + +option java_outer_classname = "FileBasedMetadataProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.grpc_credential.v2alpha"; option go_package = "v2alpha"; diff --git a/api/envoy/config/health_checker/redis/v2/redis.proto b/api/envoy/config/health_checker/redis/v2/redis.proto index 2aa32364773c1..130454b5d4069 100644 --- a/api/envoy/config/health_checker/redis/v2/redis.proto +++ b/api/envoy/config/health_checker/redis/v2/redis.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.config.health_checker.redis.v2; + +option java_outer_classname = "RedisProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.health_checker.redis.v2"; option go_package = "v2"; diff --git a/api/envoy/config/metrics/v2/metrics_service.proto b/api/envoy/config/metrics/v2/metrics_service.proto index ae78e8403e03a..208a5c2076edf 100644 --- a/api/envoy/config/metrics/v2/metrics_service.proto +++ b/api/envoy/config/metrics/v2/metrics_service.proto @@ -3,6 +3,9 @@ syntax = "proto3"; // [#protodoc-title: Metrics service] package envoy.config.metrics.v2; + +option java_outer_classname = "MetricsServiceProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.metrics.v2"; import "envoy/api/v2/core/grpc_service.proto"; diff --git a/api/envoy/config/metrics/v2/stats.proto b/api/envoy/config/metrics/v2/stats.proto index 63470a5e7e197..8b85198f60cef 100644 --- a/api/envoy/config/metrics/v2/stats.proto +++ b/api/envoy/config/metrics/v2/stats.proto @@ -4,6 +4,9 @@ syntax = "proto3"; package envoy.config.metrics.v2; + +option java_outer_classname = "StatsProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.metrics.v2"; option go_package = "v2"; diff --git a/api/envoy/config/overload/v2alpha/overload.proto b/api/envoy/config/overload/v2alpha/overload.proto index 925bd9ddb6106..cf50275201a58 100644 --- a/api/envoy/config/overload/v2alpha/overload.proto +++ b/api/envoy/config/overload/v2alpha/overload.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.config.overload.v2alpha; + +option java_outer_classname = "OverloadProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.overload.v2alpha"; option go_package = "v2alpha"; diff --git a/api/envoy/config/ratelimit/v2/rls.proto b/api/envoy/config/ratelimit/v2/rls.proto index c0d615abcf5df..8f039b44efeb3 100644 --- a/api/envoy/config/ratelimit/v2/rls.proto +++ b/api/envoy/config/ratelimit/v2/rls.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.config.ratelimit.v2; + +option java_outer_classname = "RlsProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.ratelimit.v2"; option go_package = "v2"; diff --git a/api/envoy/config/rbac/v2alpha/rbac.proto b/api/envoy/config/rbac/v2alpha/rbac.proto index 2856dd0370bfe..19b61473496a8 100644 --- a/api/envoy/config/rbac/v2alpha/rbac.proto +++ b/api/envoy/config/rbac/v2alpha/rbac.proto @@ -7,6 +7,9 @@ import "envoy/type/matcher/metadata.proto"; import "envoy/type/matcher/string.proto"; package envoy.config.rbac.v2alpha; + +option java_outer_classname = "RbacProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.rbac.v2alpha"; option go_package = "v2alpha"; diff --git a/api/envoy/config/resource_monitor/fixed_heap/v2alpha/fixed_heap.proto b/api/envoy/config/resource_monitor/fixed_heap/v2alpha/fixed_heap.proto index 96d439c2afe30..f945a31495944 100644 --- a/api/envoy/config/resource_monitor/fixed_heap/v2alpha/fixed_heap.proto +++ b/api/envoy/config/resource_monitor/fixed_heap/v2alpha/fixed_heap.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.config.resource_monitor.fixed_heap.v2alpha; + +option java_outer_classname = "FixedHeapProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.resource_monitor.fixed_heap.v2alpha"; option go_package = "v2alpha"; diff --git a/api/envoy/config/resource_monitor/injected_resource/v2alpha/injected_resource.proto b/api/envoy/config/resource_monitor/injected_resource/v2alpha/injected_resource.proto index bd364ebbf333b..cab704a4b64ae 100644 --- a/api/envoy/config/resource_monitor/injected_resource/v2alpha/injected_resource.proto +++ b/api/envoy/config/resource_monitor/injected_resource/v2alpha/injected_resource.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.config.resource_monitor.injected_resource.v2alpha; + +option java_outer_classname = "InjectedResourceProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.resource_monitor.injected_resource.v2alpha"; option go_package = "v2alpha"; diff --git a/api/envoy/config/retry/previous_priorities/previous_priorities_config.proto b/api/envoy/config/retry/previous_priorities/previous_priorities_config.proto index 0d84b929f2e56..9ee2ed5526871 100644 --- a/api/envoy/config/retry/previous_priorities/previous_priorities_config.proto +++ b/api/envoy/config/retry/previous_priorities/previous_priorities_config.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.config.retry.previous_priorities; + +option java_outer_classname = "PreviousPrioritiesConfigProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.retry.previous_priorities"; // A retry host selector that attempts to spread retries between priorities, even if certain diff --git a/api/envoy/config/trace/v2/trace.proto b/api/envoy/config/trace/v2/trace.proto index 4f25ec69bc4be..10c25df5a97f8 100644 --- a/api/envoy/config/trace/v2/trace.proto +++ b/api/envoy/config/trace/v2/trace.proto @@ -4,6 +4,9 @@ syntax = "proto3"; package envoy.config.trace.v2; + +option java_outer_classname = "TraceProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.trace.v2"; option go_package = "v2"; diff --git a/api/envoy/config/transport_socket/alts/v2alpha/alts.proto b/api/envoy/config/transport_socket/alts/v2alpha/alts.proto index d9cf9b6fc96c7..f5a9db64c0e45 100644 --- a/api/envoy/config/transport_socket/alts/v2alpha/alts.proto +++ b/api/envoy/config/transport_socket/alts/v2alpha/alts.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.config.transport_socket.alts.v2alpha; + +option java_outer_classname = "AltsProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.transport_socket.alts.v2alpha"; option go_package = "v2"; diff --git a/api/envoy/config/transport_socket/tap/v2alpha/tap.proto b/api/envoy/config/transport_socket/tap/v2alpha/tap.proto index 52338f7c6f9e4..84918699ef97d 100644 --- a/api/envoy/config/transport_socket/tap/v2alpha/tap.proto +++ b/api/envoy/config/transport_socket/tap/v2alpha/tap.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.config.transport_socket.tap.v2alpha; + +option java_outer_classname = "TapProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.config.transport_socket.tap.v2alpha"; option go_package = "v2"; diff --git a/api/envoy/data/accesslog/v2/accesslog.proto b/api/envoy/data/accesslog/v2/accesslog.proto index 95763781b83f2..3f52910573129 100644 --- a/api/envoy/data/accesslog/v2/accesslog.proto +++ b/api/envoy/data/accesslog/v2/accesslog.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.data.accesslog.v2; + +option java_outer_classname = "AccesslogProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.data.accesslog.v2"; import "envoy/api/v2/core/address.proto"; diff --git a/api/envoy/data/cluster/v2alpha/outlier_detection_event.proto b/api/envoy/data/cluster/v2alpha/outlier_detection_event.proto index ed2b763099db0..ba3f0289942f0 100644 --- a/api/envoy/data/cluster/v2alpha/outlier_detection_event.proto +++ b/api/envoy/data/cluster/v2alpha/outlier_detection_event.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.data.cluster.v2alpha; + +option java_outer_classname = "OutlierDetectionEventProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.data.cluster.v2alpha"; import "google/protobuf/timestamp.proto"; diff --git a/api/envoy/data/core/v2alpha/health_check_event.proto b/api/envoy/data/core/v2alpha/health_check_event.proto index 54dc8f38a1698..adfb6c67e5c72 100644 --- a/api/envoy/data/core/v2alpha/health_check_event.proto +++ b/api/envoy/data/core/v2alpha/health_check_event.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.data.core.v2alpha; + +option java_outer_classname = "HealthCheckEventProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.data.core.v2alpha"; import "envoy/api/v2/core/address.proto"; diff --git a/api/envoy/data/tap/v2alpha/http.proto b/api/envoy/data/tap/v2alpha/http.proto index 92b731c2ec977..253f1ad9e04e6 100644 --- a/api/envoy/data/tap/v2alpha/http.proto +++ b/api/envoy/data/tap/v2alpha/http.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.data.tap.v2alpha; + +option java_outer_classname = "HttpProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.data.tap.v2alpha"; import "envoy/api/v2/core/base.proto"; diff --git a/api/envoy/data/tap/v2alpha/transport.proto b/api/envoy/data/tap/v2alpha/transport.proto index 216cf9db6d1fb..87e4b8d26018c 100644 --- a/api/envoy/data/tap/v2alpha/transport.proto +++ b/api/envoy/data/tap/v2alpha/transport.proto @@ -5,6 +5,9 @@ syntax = "proto3"; // sequences on a socket. package envoy.data.tap.v2alpha; + +option java_outer_classname = "TransportProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.data.tap.v2alpha"; option go_package = "v2"; diff --git a/api/envoy/data/tap/v2alpha/wrapper.proto b/api/envoy/data/tap/v2alpha/wrapper.proto index 48a6f863fabb8..f3c3c9a169964 100644 --- a/api/envoy/data/tap/v2alpha/wrapper.proto +++ b/api/envoy/data/tap/v2alpha/wrapper.proto @@ -6,6 +6,9 @@ import "envoy/data/tap/v2alpha/transport.proto"; import "validate/validate.proto"; package envoy.data.tap.v2alpha; + +option java_outer_classname = "WrapperProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.data.tap.v2alpha"; // [#protodoc-title: Tap data wrappers] diff --git a/api/envoy/service/accesslog/v2/als.proto b/api/envoy/service/accesslog/v2/als.proto index ebb7013ae2f8e..1ee6ccd0094c3 100644 --- a/api/envoy/service/accesslog/v2/als.proto +++ b/api/envoy/service/accesslog/v2/als.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.service.accesslog.v2; + +option java_outer_classname = "AlsProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.service.accesslog.v2"; option go_package = "v2"; option java_generic_services = true; diff --git a/api/envoy/service/auth/v2/attribute_context.proto b/api/envoy/service/auth/v2/attribute_context.proto index ca3fde9cfec96..ed0dd33b7c749 100644 --- a/api/envoy/service/auth/v2/attribute_context.proto +++ b/api/envoy/service/auth/v2/attribute_context.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.service.auth.v2; + +option java_outer_classname = "AttributeContextProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.service.auth.v2"; import "envoy/api/v2/core/address.proto"; diff --git a/api/envoy/service/auth/v2/external_auth.proto b/api/envoy/service/auth/v2/external_auth.proto index c071d528e385d..c08046f532815 100644 --- a/api/envoy/service/auth/v2/external_auth.proto +++ b/api/envoy/service/auth/v2/external_auth.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.service.auth.v2; + +option java_outer_classname = "ExternalAuthProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.service.auth.v2"; option go_package = "v2"; option java_generic_services = true; diff --git a/api/envoy/service/discovery/v2/ads.proto b/api/envoy/service/discovery/v2/ads.proto index e8774dd291725..73f272191bd01 100644 --- a/api/envoy/service/discovery/v2/ads.proto +++ b/api/envoy/service/discovery/v2/ads.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.service.discovery.v2; + +option java_outer_classname = "AdsProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.service.discovery.v2"; option go_package = "v2"; option java_generic_services = true; diff --git a/api/envoy/service/discovery/v2/hds.proto b/api/envoy/service/discovery/v2/hds.proto index 7dd3e8a9631fd..354dae9447ccd 100644 --- a/api/envoy/service/discovery/v2/hds.proto +++ b/api/envoy/service/discovery/v2/hds.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.service.discovery.v2; + +option java_outer_classname = "HdsProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.service.discovery.v2"; option java_generic_services = true; diff --git a/api/envoy/service/discovery/v2/sds.proto b/api/envoy/service/discovery/v2/sds.proto index 60d5d22812d55..055df682d9aff 100644 --- a/api/envoy/service/discovery/v2/sds.proto +++ b/api/envoy/service/discovery/v2/sds.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.service.discovery.v2; + +option java_outer_classname = "SdsProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.service.discovery.v2"; import "envoy/api/v2/discovery.proto"; diff --git a/api/envoy/service/load_stats/v2/lrs.proto b/api/envoy/service/load_stats/v2/lrs.proto index aa3638b63e6ef..2fe95f3b6a904 100644 --- a/api/envoy/service/load_stats/v2/lrs.proto +++ b/api/envoy/service/load_stats/v2/lrs.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.service.load_stats.v2; + +option java_outer_classname = "LrsProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.service.load_stats.v2"; option go_package = "v2"; option java_generic_services = true; diff --git a/api/envoy/service/metrics/v2/metrics_service.proto b/api/envoy/service/metrics/v2/metrics_service.proto index 6b88148ecc2b7..b70be3bdd9a18 100644 --- a/api/envoy/service/metrics/v2/metrics_service.proto +++ b/api/envoy/service/metrics/v2/metrics_service.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.service.metrics.v2; + +option java_outer_classname = "MetricsServiceProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.service.metrics.v2"; option go_package = "v2"; option java_generic_services = true; diff --git a/api/envoy/service/ratelimit/v2/rls.proto b/api/envoy/service/ratelimit/v2/rls.proto index 07478d1983527..18b6b678e9082 100644 --- a/api/envoy/service/ratelimit/v2/rls.proto +++ b/api/envoy/service/ratelimit/v2/rls.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.service.ratelimit.v2; + +option java_outer_classname = "RlsProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.service.ratelimit.v2"; option go_package = "v2"; diff --git a/api/envoy/service/tap/v2alpha/common.proto b/api/envoy/service/tap/v2alpha/common.proto index 47f9b53f7e261..b330b6c96ea31 100644 --- a/api/envoy/service/tap/v2alpha/common.proto +++ b/api/envoy/service/tap/v2alpha/common.proto @@ -5,6 +5,9 @@ import "envoy/api/v2/route/route.proto"; import "validate/validate.proto"; package envoy.service.tap.v2alpha; + +option java_outer_classname = "CommonProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.service.tap.v2alpha"; // [#protodoc-title: Common tap configuration] diff --git a/api/envoy/service/trace/v2/trace_service.proto b/api/envoy/service/trace/v2/trace_service.proto index 9ab4579a0cceb..a6385bb1f7430 100644 --- a/api/envoy/service/trace/v2/trace_service.proto +++ b/api/envoy/service/trace/v2/trace_service.proto @@ -3,6 +3,9 @@ syntax = "proto3"; // [#proto-status: draft] package envoy.service.trace.v2; + +option java_outer_classname = "TraceServiceProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.service.trace.v2"; option go_package = "v2"; option java_generic_services = true; diff --git a/api/envoy/type/http_status.proto b/api/envoy/type/http_status.proto index 626805b8d9cd6..9d9a6230c29bb 100644 --- a/api/envoy/type/http_status.proto +++ b/api/envoy/type/http_status.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.type; + +option java_outer_classname = "HttpStatusProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.type"; import "validate/validate.proto"; diff --git a/api/envoy/type/matcher/metadata.proto b/api/envoy/type/matcher/metadata.proto index 60df44d7c6dcc..1739a00ba47c3 100644 --- a/api/envoy/type/matcher/metadata.proto +++ b/api/envoy/type/matcher/metadata.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.type.matcher; + +option java_outer_classname = "MetadataProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.type.matcher"; option go_package = "matcher"; diff --git a/api/envoy/type/matcher/number.proto b/api/envoy/type/matcher/number.proto index c6e6a26c29e06..f6c49b3fcdf60 100644 --- a/api/envoy/type/matcher/number.proto +++ b/api/envoy/type/matcher/number.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.type.matcher; + +option java_outer_classname = "NumberProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.type.matcher"; option go_package = "matcher"; diff --git a/api/envoy/type/matcher/string.proto b/api/envoy/type/matcher/string.proto index 44d4a53f51a1f..02077522d8255 100644 --- a/api/envoy/type/matcher/string.proto +++ b/api/envoy/type/matcher/string.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.type.matcher; + +option java_outer_classname = "StringProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.type.matcher"; option go_package = "matcher"; diff --git a/api/envoy/type/matcher/value.proto b/api/envoy/type/matcher/value.proto index def4e49d53c2a..52f5e5b100b15 100644 --- a/api/envoy/type/matcher/value.proto +++ b/api/envoy/type/matcher/value.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.type.matcher; + +option java_outer_classname = "ValueProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.type.matcher"; option go_package = "matcher"; diff --git a/api/envoy/type/percent.proto b/api/envoy/type/percent.proto index 543c0a0535c12..551e93bfdd1ec 100644 --- a/api/envoy/type/percent.proto +++ b/api/envoy/type/percent.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.type; + +option java_outer_classname = "PercentProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.type"; import "validate/validate.proto"; diff --git a/api/envoy/type/range.proto b/api/envoy/type/range.proto index 3ce3e32b7a372..e64b71e440f39 100644 --- a/api/envoy/type/range.proto +++ b/api/envoy/type/range.proto @@ -1,6 +1,9 @@ syntax = "proto3"; package envoy.type; + +option java_outer_classname = "RangeProto"; +option java_multiple_files = true; option java_package = "io.envoyproxy.envoy.type"; option go_package = "envoy_type"; diff --git a/tools/check_format.py b/tools/check_format.py index c14ce69819a1a..bfd9c9061aaeb 100755 --- a/tools/check_format.py +++ b/tools/check_format.py @@ -50,7 +50,10 @@ SUBDIR_SET = set(common.includeDirOrder()) INCLUDE_ANGLE = "#include <" INCLUDE_ANGLE_LEN = len(INCLUDE_ANGLE) -PROTO_PACKAGE_REGEX = re.compile("package (.*);") +PROTO_PACKAGE_REGEX = re.compile(r"^package (\S+);\n*", re.MULTILINE) +PROTO_OPTION_JAVA_PACKAGE = "option java_package = \"" +PROTO_OPTION_JAVA_OUTER_CLASSNAME = "option java_outer_classname = \"" +PROTO_OPTION_JAVA_MULTIPLE_FILES = "option java_multiple_files = " # yapf: disable PROTOBUF_TYPE_ERRORS = { @@ -147,37 +150,58 @@ def checkNamespace(file_path): return [] -def fixJavaProtoOptions(file_path): - package_name = None - for line in fileinput.FileInput(file_path): - if line.startswith("package "): - result = PROTO_PACKAGE_REGEX.search(line) - if result is None or len(result.groups()) != 1: - continue +# If the substring is not found in the file, then insert to_add +def insertProtoOptionIfNotFound(substring, file_path, to_add): + text = None + with open(file_path) as f: + text = f.read() - package_name = result.group(1) - if "option java_package = \"io.envoyproxy.envoy" in line: - return [] + if not substring in text: + + def repl(m): + return m.group(0).rstrip() + "\n\n" + to_add + "\n" - if package_name is None: - return ["Unable to find package name for proto file: %s" % file_path] + with open(file_path, "w") as f: + f.write(re.sub(PROTO_PACKAGE_REGEX, repl, text)) - to_add = "option java_package = \"io.envoyproxy.{}\";\n".format(package_name) - for line in fileinput.FileInput(file_path, inplace=True): - if line.startswith("package "): - line = line.replace(line, line + to_add) - sys.stdout.write(line) +def packageNameForProto(file_path): + package_name = None + error_message = [] + with open(file_path) as f: + result = PROTO_PACKAGE_REGEX.search(f.read()) + if result is not None and len(result.groups()) == 1: + package_name = result.group(1) + if package_name is None: + error_message = ["Unable to find package name for proto file: %s" % file_path] + + return [package_name, error_message] + +def fixJavaPackageProtoOption(file_path): + package_name = packageNameForProto(file_path)[0] + to_add = PROTO_OPTION_JAVA_PACKAGE + "io.envoyproxy.{}\";".format(package_name) + insertProtoOptionIfNotFound("\n" + PROTO_OPTION_JAVA_PACKAGE, file_path, to_add) return [] -def checkJavaProtoOptions(file_path): - for line in fileinput.FileInput(file_path): - if "option java_package = \"io.envoyproxy.envoy" in line: - return [] +# Add "option java_outer_classname = FooBarProto;" for foo_bar.proto +def fixJavaOuterClassnameProtoOption(file_path): + file_name = os.path.basename(file_path)[:-len(".proto")] + if "-" in file_name or "." in file_name or not file_name.islower(): + return ["Unable to decide java_outer_classname for proto file: %s" % file_path] + + to_add = PROTO_OPTION_JAVA_OUTER_CLASSNAME \ + + "".join(x.title() for x in file_name.split("_")) \ + + "Proto\";" + insertProtoOptionIfNotFound("\n" + PROTO_OPTION_JAVA_OUTER_CLASSNAME, file_path, to_add) + return [] + - return ["Java proto option 'java_package' not set correctly for file: %s" % file_path] +def fixJavaMultipleFilesProtoOption(file_path): + to_add = PROTO_OPTION_JAVA_MULTIPLE_FILES + "true;" + insertProtoOptionIfNotFound("\n" + PROTO_OPTION_JAVA_MULTIPLE_FILES, file_path, to_add) + return [] # To avoid breaking the Lyft import, we just check for path inclusion here. @@ -211,6 +235,11 @@ def findSubstringAndReturnError(pattern, file_path, error_message): return [] +def errorIfNoSubstringFound(pattern, file_path, error_message): + with open(file_path) as f: + return [] if pattern in f.read() else [file_path + ": " + error_message] + + def isApiFile(file_path): return file_path.startswith(args.api_prefix) @@ -440,7 +469,13 @@ def fixSourcePath(file_path): error_messages += fixHeaderOrder(file_path) error_messages += clangFormat(file_path) if file_path.endswith(PROTO_SUFFIX) and isApiFile(file_path): - error_messages += fixJavaProtoOptions(file_path) + package_name, error_message = packageNameForProto(file_path) + if package_name is None: + error_messages += error_message + else: + error_messages += fixJavaMultipleFilesProtoOption(file_path) + error_messages += fixJavaOuterClassnameProtoOption(file_path) + error_messages += fixJavaPackageProtoOption(file_path) return error_messages @@ -456,7 +491,16 @@ def checkSourcePath(file_path): error_messages += executeCommand(command, "clang-format check failed", file_path) if file_path.endswith(PROTO_SUFFIX) and isApiFile(file_path): - error_messages += checkJavaProtoOptions(file_path) + package_name, error_message = packageNameForProto(file_path) + if package_name is None: + error_messages += error_message + else: + error_messages += errorIfNoSubstringFound("\n" + PROTO_OPTION_JAVA_PACKAGE, file_path, + "Java proto option 'java_package' not set") + error_messages += errorIfNoSubstringFound("\n" + PROTO_OPTION_JAVA_OUTER_CLASSNAME, file_path, + "Java proto option 'java_outer_classname' not set") + error_messages += errorIfNoSubstringFound("\n" + PROTO_OPTION_JAVA_MULTIPLE_FILES, file_path, + "Java proto option 'java_multiple_files' not set") return error_messages diff --git a/tools/testdata/check_format/api/java_options.proto.gold b/tools/testdata/check_format/api/java_options.proto.gold index ab524690ed71d..54513d2a81fe0 100644 --- a/tools/testdata/check_format/api/java_options.proto.gold +++ b/tools/testdata/check_format/api/java_options.proto.gold @@ -1,2 +1,5 @@ package envoy.foo; + option java_package = "io.envoyproxy.envoy.foo"; +option java_outer_classname = "JavaOptionsProto"; +option java_multiple_files = true;