Class NetworkExternalProcessor.Builder

java.lang.Object
com.google.protobuf.AbstractMessageLite.Builder
com.google.protobuf.AbstractMessage.Builder<BuilderT>
com.google.protobuf.GeneratedMessageV3.Builder<NetworkExternalProcessor.Builder>
io.envoyproxy.envoy.extensions.filters.network.ext_proc.v3.NetworkExternalProcessor.Builder
All Implemented Interfaces:
com.google.protobuf.Message.Builder, com.google.protobuf.MessageLite.Builder, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, NetworkExternalProcessorOrBuilder, Cloneable
Enclosing class:
NetworkExternalProcessor

public static final class NetworkExternalProcessor.Builder extends com.google.protobuf.GeneratedMessageV3.Builder<NetworkExternalProcessor.Builder> implements NetworkExternalProcessorOrBuilder
 The Network External Processing filter allows an external service to process raw TCP/UDP traffic
 in a flexible way using a bidirectional gRPC stream. Unlike the HTTP External Processing filter,
 this filter operates at the L4 (transport) layer, giving access to raw network traffic.

 The filter communicates with an external gRPC service that can:

 1. Inspect traffic in both directions
 2. Modify the network traffic
 3. Control connection lifecycle (continue, close, or reset)

 By using the filter's processing mode, you can selectively choose which data
 directions to process (read, write or both), allowing for efficient processing.
 [#next-free-field: 7]
 
Protobuf type envoy.extensions.filters.network.ext_proc.v3.NetworkExternalProcessor
  • Method Details

    • getDescriptor

      public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
    • internalGetFieldAccessorTable

      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
      Specified by:
      internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessageV3.Builder<NetworkExternalProcessor.Builder>
    • clear

      Specified by:
      clear in interface com.google.protobuf.Message.Builder
      Specified by:
      clear in interface com.google.protobuf.MessageLite.Builder
      Overrides:
      clear in class com.google.protobuf.GeneratedMessageV3.Builder<NetworkExternalProcessor.Builder>
    • getDescriptorForType

      public com.google.protobuf.Descriptors.Descriptor getDescriptorForType()
      Specified by:
      getDescriptorForType in interface com.google.protobuf.Message.Builder
      Specified by:
      getDescriptorForType in interface com.google.protobuf.MessageOrBuilder
      Overrides:
      getDescriptorForType in class com.google.protobuf.GeneratedMessageV3.Builder<NetworkExternalProcessor.Builder>
    • getDefaultInstanceForType

      public NetworkExternalProcessor getDefaultInstanceForType()
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder
    • build

      public NetworkExternalProcessor build()
      Specified by:
      build in interface com.google.protobuf.Message.Builder
      Specified by:
      build in interface com.google.protobuf.MessageLite.Builder
    • buildPartial

      public NetworkExternalProcessor buildPartial()
      Specified by:
      buildPartial in interface com.google.protobuf.Message.Builder
      Specified by:
      buildPartial in interface com.google.protobuf.MessageLite.Builder
    • clone

      Specified by:
      clone in interface com.google.protobuf.Message.Builder
      Specified by:
      clone in interface com.google.protobuf.MessageLite.Builder
      Overrides:
      clone in class com.google.protobuf.GeneratedMessageV3.Builder<NetworkExternalProcessor.Builder>
    • setField

      public NetworkExternalProcessor.Builder setField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value)
      Specified by:
      setField in interface com.google.protobuf.Message.Builder
      Overrides:
      setField in class com.google.protobuf.GeneratedMessageV3.Builder<NetworkExternalProcessor.Builder>
    • clearField

      public NetworkExternalProcessor.Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field)
      Specified by:
      clearField in interface com.google.protobuf.Message.Builder
      Overrides:
      clearField in class com.google.protobuf.GeneratedMessageV3.Builder<NetworkExternalProcessor.Builder>
    • clearOneof

      public NetworkExternalProcessor.Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof)
      Specified by:
      clearOneof in interface com.google.protobuf.Message.Builder
      Overrides:
      clearOneof in class com.google.protobuf.GeneratedMessageV3.Builder<NetworkExternalProcessor.Builder>
    • setRepeatedField

      public NetworkExternalProcessor.Builder setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, int index, Object value)
      Specified by:
      setRepeatedField in interface com.google.protobuf.Message.Builder
      Overrides:
      setRepeatedField in class com.google.protobuf.GeneratedMessageV3.Builder<NetworkExternalProcessor.Builder>
    • addRepeatedField

      public NetworkExternalProcessor.Builder addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value)
      Specified by:
      addRepeatedField in interface com.google.protobuf.Message.Builder
      Overrides:
      addRepeatedField in class com.google.protobuf.GeneratedMessageV3.Builder<NetworkExternalProcessor.Builder>
    • mergeFrom

      public NetworkExternalProcessor.Builder mergeFrom(com.google.protobuf.Message other)
      Specified by:
      mergeFrom in interface com.google.protobuf.Message.Builder
      Overrides:
      mergeFrom in class com.google.protobuf.AbstractMessage.Builder<NetworkExternalProcessor.Builder>
    • mergeFrom

    • isInitialized

      public final boolean isInitialized()
      Specified by:
      isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
      Overrides:
      isInitialized in class com.google.protobuf.GeneratedMessageV3.Builder<NetworkExternalProcessor.Builder>
    • mergeFrom

      public NetworkExternalProcessor.Builder mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Specified by:
      mergeFrom in interface com.google.protobuf.Message.Builder
      Specified by:
      mergeFrom in interface com.google.protobuf.MessageLite.Builder
      Overrides:
      mergeFrom in class com.google.protobuf.AbstractMessage.Builder<NetworkExternalProcessor.Builder>
      Throws:
      IOException
    • hasGrpcService

      public boolean hasGrpcService()
       The gRPC service that will process network traffic.
       This service must implement the NetworkExternalProcessor service
       defined in the proto file /envoy/service/network_ext_proc/v3/external_processor.proto.
       
      .envoy.config.core.v3.GrpcService grpc_service = 1;
      Specified by:
      hasGrpcService in interface NetworkExternalProcessorOrBuilder
      Returns:
      Whether the grpcService field is set.
    • getGrpcService

      public GrpcService getGrpcService()
       The gRPC service that will process network traffic.
       This service must implement the NetworkExternalProcessor service
       defined in the proto file /envoy/service/network_ext_proc/v3/external_processor.proto.
       
      .envoy.config.core.v3.GrpcService grpc_service = 1;
      Specified by:
      getGrpcService in interface NetworkExternalProcessorOrBuilder
      Returns:
      The grpcService.
    • setGrpcService

      public NetworkExternalProcessor.Builder setGrpcService(GrpcService value)
       The gRPC service that will process network traffic.
       This service must implement the NetworkExternalProcessor service
       defined in the proto file /envoy/service/network_ext_proc/v3/external_processor.proto.
       
      .envoy.config.core.v3.GrpcService grpc_service = 1;
    • setGrpcService

      public NetworkExternalProcessor.Builder setGrpcService(GrpcService.Builder builderForValue)
       The gRPC service that will process network traffic.
       This service must implement the NetworkExternalProcessor service
       defined in the proto file /envoy/service/network_ext_proc/v3/external_processor.proto.
       
      .envoy.config.core.v3.GrpcService grpc_service = 1;
    • mergeGrpcService

      public NetworkExternalProcessor.Builder mergeGrpcService(GrpcService value)
       The gRPC service that will process network traffic.
       This service must implement the NetworkExternalProcessor service
       defined in the proto file /envoy/service/network_ext_proc/v3/external_processor.proto.
       
      .envoy.config.core.v3.GrpcService grpc_service = 1;
    • clearGrpcService

      public NetworkExternalProcessor.Builder clearGrpcService()
       The gRPC service that will process network traffic.
       This service must implement the NetworkExternalProcessor service
       defined in the proto file /envoy/service/network_ext_proc/v3/external_processor.proto.
       
      .envoy.config.core.v3.GrpcService grpc_service = 1;
    • getGrpcServiceBuilder

      public GrpcService.Builder getGrpcServiceBuilder()
       The gRPC service that will process network traffic.
       This service must implement the NetworkExternalProcessor service
       defined in the proto file /envoy/service/network_ext_proc/v3/external_processor.proto.
       
      .envoy.config.core.v3.GrpcService grpc_service = 1;
    • getGrpcServiceOrBuilder

      public GrpcServiceOrBuilder getGrpcServiceOrBuilder()
       The gRPC service that will process network traffic.
       This service must implement the NetworkExternalProcessor service
       defined in the proto file /envoy/service/network_ext_proc/v3/external_processor.proto.
       
      .envoy.config.core.v3.GrpcService grpc_service = 1;
      Specified by:
      getGrpcServiceOrBuilder in interface NetworkExternalProcessorOrBuilder
    • getFailureModeAllow

      public boolean getFailureModeAllow()
       By default, if the gRPC stream cannot be established, or if it is closed
       prematurely with an error, the filter will fail, leading to the close of connection.
       With this parameter set to true, however, then if the gRPC stream is prematurely closed
       or could not be opened, processing continues without error.
       
      bool failure_mode_allow = 2;
      Specified by:
      getFailureModeAllow in interface NetworkExternalProcessorOrBuilder
      Returns:
      The failureModeAllow.
    • setFailureModeAllow

      public NetworkExternalProcessor.Builder setFailureModeAllow(boolean value)
       By default, if the gRPC stream cannot be established, or if it is closed
       prematurely with an error, the filter will fail, leading to the close of connection.
       With this parameter set to true, however, then if the gRPC stream is prematurely closed
       or could not be opened, processing continues without error.
       
      bool failure_mode_allow = 2;
      Parameters:
      value - The failureModeAllow to set.
      Returns:
      This builder for chaining.
    • clearFailureModeAllow

      public NetworkExternalProcessor.Builder clearFailureModeAllow()
       By default, if the gRPC stream cannot be established, or if it is closed
       prematurely with an error, the filter will fail, leading to the close of connection.
       With this parameter set to true, however, then if the gRPC stream is prematurely closed
       or could not be opened, processing continues without error.
       
      bool failure_mode_allow = 2;
      Returns:
      This builder for chaining.
    • hasProcessingMode

      public boolean hasProcessingMode()
       Options for controlling processing behavior.
       
      .envoy.extensions.filters.network.ext_proc.v3.ProcessingMode processing_mode = 3;
      Specified by:
      hasProcessingMode in interface NetworkExternalProcessorOrBuilder
      Returns:
      Whether the processingMode field is set.
    • getProcessingMode

      public ProcessingMode getProcessingMode()
       Options for controlling processing behavior.
       
      .envoy.extensions.filters.network.ext_proc.v3.ProcessingMode processing_mode = 3;
      Specified by:
      getProcessingMode in interface NetworkExternalProcessorOrBuilder
      Returns:
      The processingMode.
    • setProcessingMode

      public NetworkExternalProcessor.Builder setProcessingMode(ProcessingMode value)
       Options for controlling processing behavior.
       
      .envoy.extensions.filters.network.ext_proc.v3.ProcessingMode processing_mode = 3;
    • setProcessingMode

      public NetworkExternalProcessor.Builder setProcessingMode(ProcessingMode.Builder builderForValue)
       Options for controlling processing behavior.
       
      .envoy.extensions.filters.network.ext_proc.v3.ProcessingMode processing_mode = 3;
    • mergeProcessingMode

      public NetworkExternalProcessor.Builder mergeProcessingMode(ProcessingMode value)
       Options for controlling processing behavior.
       
      .envoy.extensions.filters.network.ext_proc.v3.ProcessingMode processing_mode = 3;
    • clearProcessingMode

      public NetworkExternalProcessor.Builder clearProcessingMode()
       Options for controlling processing behavior.
       
      .envoy.extensions.filters.network.ext_proc.v3.ProcessingMode processing_mode = 3;
    • getProcessingModeBuilder

      public ProcessingMode.Builder getProcessingModeBuilder()
       Options for controlling processing behavior.
       
      .envoy.extensions.filters.network.ext_proc.v3.ProcessingMode processing_mode = 3;
    • getProcessingModeOrBuilder

      public ProcessingModeOrBuilder getProcessingModeOrBuilder()
       Options for controlling processing behavior.
       
      .envoy.extensions.filters.network.ext_proc.v3.ProcessingMode processing_mode = 3;
      Specified by:
      getProcessingModeOrBuilder in interface NetworkExternalProcessorOrBuilder
    • hasMessageTimeout

      public boolean hasMessageTimeout()
       Specifies the timeout for each individual message sent on the stream and
       when the filter is running in synchronous mode. Whenever
       the proxy sends a message on the stream that requires a response, it will
       reset this timer, and will stop processing and return an error (subject
       to the processing mode) if the timer expires. Default is 200 ms.
       
      .google.protobuf.Duration message_timeout = 4 [(.validate.rules) = { ... }
      Specified by:
      hasMessageTimeout in interface NetworkExternalProcessorOrBuilder
      Returns:
      Whether the messageTimeout field is set.
    • getMessageTimeout

      public com.google.protobuf.Duration getMessageTimeout()
       Specifies the timeout for each individual message sent on the stream and
       when the filter is running in synchronous mode. Whenever
       the proxy sends a message on the stream that requires a response, it will
       reset this timer, and will stop processing and return an error (subject
       to the processing mode) if the timer expires. Default is 200 ms.
       
      .google.protobuf.Duration message_timeout = 4 [(.validate.rules) = { ... }
      Specified by:
      getMessageTimeout in interface NetworkExternalProcessorOrBuilder
      Returns:
      The messageTimeout.
    • setMessageTimeout

      public NetworkExternalProcessor.Builder setMessageTimeout(com.google.protobuf.Duration value)
       Specifies the timeout for each individual message sent on the stream and
       when the filter is running in synchronous mode. Whenever
       the proxy sends a message on the stream that requires a response, it will
       reset this timer, and will stop processing and return an error (subject
       to the processing mode) if the timer expires. Default is 200 ms.
       
      .google.protobuf.Duration message_timeout = 4 [(.validate.rules) = { ... }
    • setMessageTimeout

      public NetworkExternalProcessor.Builder setMessageTimeout(com.google.protobuf.Duration.Builder builderForValue)
       Specifies the timeout for each individual message sent on the stream and
       when the filter is running in synchronous mode. Whenever
       the proxy sends a message on the stream that requires a response, it will
       reset this timer, and will stop processing and return an error (subject
       to the processing mode) if the timer expires. Default is 200 ms.
       
      .google.protobuf.Duration message_timeout = 4 [(.validate.rules) = { ... }
    • mergeMessageTimeout

      public NetworkExternalProcessor.Builder mergeMessageTimeout(com.google.protobuf.Duration value)
       Specifies the timeout for each individual message sent on the stream and
       when the filter is running in synchronous mode. Whenever
       the proxy sends a message on the stream that requires a response, it will
       reset this timer, and will stop processing and return an error (subject
       to the processing mode) if the timer expires. Default is 200 ms.
       
      .google.protobuf.Duration message_timeout = 4 [(.validate.rules) = { ... }
    • clearMessageTimeout

      public NetworkExternalProcessor.Builder clearMessageTimeout()
       Specifies the timeout for each individual message sent on the stream and
       when the filter is running in synchronous mode. Whenever
       the proxy sends a message on the stream that requires a response, it will
       reset this timer, and will stop processing and return an error (subject
       to the processing mode) if the timer expires. Default is 200 ms.
       
      .google.protobuf.Duration message_timeout = 4 [(.validate.rules) = { ... }
    • getMessageTimeoutBuilder

      public com.google.protobuf.Duration.Builder getMessageTimeoutBuilder()
       Specifies the timeout for each individual message sent on the stream and
       when the filter is running in synchronous mode. Whenever
       the proxy sends a message on the stream that requires a response, it will
       reset this timer, and will stop processing and return an error (subject
       to the processing mode) if the timer expires. Default is 200 ms.
       
      .google.protobuf.Duration message_timeout = 4 [(.validate.rules) = { ... }
    • getMessageTimeoutOrBuilder

      public com.google.protobuf.DurationOrBuilder getMessageTimeoutOrBuilder()
       Specifies the timeout for each individual message sent on the stream and
       when the filter is running in synchronous mode. Whenever
       the proxy sends a message on the stream that requires a response, it will
       reset this timer, and will stop processing and return an error (subject
       to the processing mode) if the timer expires. Default is 200 ms.
       
      .google.protobuf.Duration message_timeout = 4 [(.validate.rules) = { ... }
      Specified by:
      getMessageTimeoutOrBuilder in interface NetworkExternalProcessorOrBuilder
    • getStatPrefix

      public String getStatPrefix()
      string stat_prefix = 5 [(.validate.rules) = { ... }
      Specified by:
      getStatPrefix in interface NetworkExternalProcessorOrBuilder
      Returns:
      The statPrefix.
    • getStatPrefixBytes

      public com.google.protobuf.ByteString getStatPrefixBytes()
      string stat_prefix = 5 [(.validate.rules) = { ... }
      Specified by:
      getStatPrefixBytes in interface NetworkExternalProcessorOrBuilder
      Returns:
      The bytes for statPrefix.
    • setStatPrefix

      public NetworkExternalProcessor.Builder setStatPrefix(String value)
      string stat_prefix = 5 [(.validate.rules) = { ... }
      Parameters:
      value - The statPrefix to set.
      Returns:
      This builder for chaining.
    • clearStatPrefix

      public NetworkExternalProcessor.Builder clearStatPrefix()
      string stat_prefix = 5 [(.validate.rules) = { ... }
      Returns:
      This builder for chaining.
    • setStatPrefixBytes

      public NetworkExternalProcessor.Builder setStatPrefixBytes(com.google.protobuf.ByteString value)
      string stat_prefix = 5 [(.validate.rules) = { ... }
      Parameters:
      value - The bytes for statPrefix to set.
      Returns:
      This builder for chaining.
    • hasMetadataOptions

      public boolean hasMetadataOptions()
       Options related to the sending and receiving of dynamic metadata.
       
      .envoy.extensions.filters.network.ext_proc.v3.MetadataOptions metadata_options = 6;
      Specified by:
      hasMetadataOptions in interface NetworkExternalProcessorOrBuilder
      Returns:
      Whether the metadataOptions field is set.
    • getMetadataOptions

      public MetadataOptions getMetadataOptions()
       Options related to the sending and receiving of dynamic metadata.
       
      .envoy.extensions.filters.network.ext_proc.v3.MetadataOptions metadata_options = 6;
      Specified by:
      getMetadataOptions in interface NetworkExternalProcessorOrBuilder
      Returns:
      The metadataOptions.
    • setMetadataOptions

      public NetworkExternalProcessor.Builder setMetadataOptions(MetadataOptions value)
       Options related to the sending and receiving of dynamic metadata.
       
      .envoy.extensions.filters.network.ext_proc.v3.MetadataOptions metadata_options = 6;
    • setMetadataOptions

      public NetworkExternalProcessor.Builder setMetadataOptions(MetadataOptions.Builder builderForValue)
       Options related to the sending and receiving of dynamic metadata.
       
      .envoy.extensions.filters.network.ext_proc.v3.MetadataOptions metadata_options = 6;
    • mergeMetadataOptions

      public NetworkExternalProcessor.Builder mergeMetadataOptions(MetadataOptions value)
       Options related to the sending and receiving of dynamic metadata.
       
      .envoy.extensions.filters.network.ext_proc.v3.MetadataOptions metadata_options = 6;
    • clearMetadataOptions

      public NetworkExternalProcessor.Builder clearMetadataOptions()
       Options related to the sending and receiving of dynamic metadata.
       
      .envoy.extensions.filters.network.ext_proc.v3.MetadataOptions metadata_options = 6;
    • getMetadataOptionsBuilder

      public MetadataOptions.Builder getMetadataOptionsBuilder()
       Options related to the sending and receiving of dynamic metadata.
       
      .envoy.extensions.filters.network.ext_proc.v3.MetadataOptions metadata_options = 6;
    • getMetadataOptionsOrBuilder

      public MetadataOptionsOrBuilder getMetadataOptionsOrBuilder()
       Options related to the sending and receiving of dynamic metadata.
       
      .envoy.extensions.filters.network.ext_proc.v3.MetadataOptions metadata_options = 6;
      Specified by:
      getMetadataOptionsOrBuilder in interface NetworkExternalProcessorOrBuilder
    • setUnknownFields

      public final NetworkExternalProcessor.Builder setUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)
      Specified by:
      setUnknownFields in interface com.google.protobuf.Message.Builder
      Overrides:
      setUnknownFields in class com.google.protobuf.GeneratedMessageV3.Builder<NetworkExternalProcessor.Builder>
    • mergeUnknownFields

      public final NetworkExternalProcessor.Builder mergeUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)
      Specified by:
      mergeUnknownFields in interface com.google.protobuf.Message.Builder
      Overrides:
      mergeUnknownFields in class com.google.protobuf.GeneratedMessageV3.Builder<NetworkExternalProcessor.Builder>