Class ExternalProcessor.Builder

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

public static final class ExternalProcessor.Builder extends com.google.protobuf.GeneratedMessageV3.Builder<ExternalProcessor.Builder> implements ExternalProcessorOrBuilder
 The filter communicates with an external gRPC service called an "external processor"
 that can do a variety of things with the request and response:

 * Access and modify the HTTP headers on the request, response, or both.
 * Access and modify the HTTP request and response bodies.
 * Access and modify the dynamic stream metadata.
 * Immediately send an HTTP response downstream and terminate other processing.

 The filter communicates with the server using a gRPC bidirectional stream. After the initial
 request, the external server is in control over what additional data is sent to it
 and how it should be processed.

 By implementing the protocol specified by the stream, the external server can choose:

 * Whether it receives the response message at all.
 * Whether it receives the message body at all, in separate chunks, or as a single buffer.
 * To modify request or response trailers if they already exist.

 The filter supports up to six different processing steps. Each is represented by
 a gRPC stream message that is sent to the external processor. For each message, the
 processor must send a matching response.

 * Request headers: Contains the headers from the original HTTP request.
 * Request body: If the body is present, the behavior depends on the
   body send mode. In ``BUFFERED`` or ``BUFFERED_PARTIAL`` mode, the body is sent to the external
   processor in a single message. In ``STREAMED`` or ``FULL_DUPLEX_STREAMED`` mode, the body will
   be split across multiple messages sent to the external processor. In ``GRPC`` mode, as each
   gRPC message arrives, it will be sent to the external processor (there will be exactly one
   gRPC message in each message sent to the external processor). In ``NONE`` mode, the body will
   not be sent to the external processor.
 * Request trailers: Delivered if they are present and if the trailer mode is set
   to ``SEND``.
 * Response headers: Contains the headers from the HTTP response. Keep in mind
   that if the upstream system sends them before processing the request body that
   this message may arrive before the complete body.
 * Response body: Sent according to the processing mode like the request body.
 * Response trailers: Delivered according to the processing mode like the
   request trailers.

 By default, the processor sends only the request and response headers messages.
 This may be changed to include any of the six steps by changing the ``processing_mode``
 setting of the filter configuration, or by setting the ``mode_override`` of any response
 from the external processor. The latter is only enabled if ``allow_mode_override`` is
 set to true. This way, a processor may, for example, use information
 in the request header to determine whether the message body must be examined, or whether
 the data plane should simply stream it straight through.

 All of this together allows a server to process the filter traffic in fairly
 sophisticated ways. For example:

 * A server may choose to examine all or part of the HTTP message bodies depending
   on the content of the headers.
 * A server may choose to immediately reject some messages based on their HTTP
   headers (or other dynamic metadata) and more carefully examine others.

 The protocol itself is based on a bidirectional gRPC stream. The data plane will send the server
 :ref:`ProcessingRequest <envoy_v3_api_msg_service.ext_proc.v3.ProcessingRequest>`
 messages, and the server must reply with
 :ref:`ProcessingResponse <envoy_v3_api_msg_service.ext_proc.v3.ProcessingResponse>`.

 Stats about each gRPC call are recorded in a :ref:`dynamic filter state
 <arch_overview_advanced_filter_state_sharing>` object in a namespace matching the filter
 name.

 [#next-free-field: 26]
 
Protobuf type envoy.extensions.filters.http.ext_proc.v3.ExternalProcessor
  • Method Summary

    Modifier and Type
    Method
    Description
    When :ref:`allow_mode_override <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.allow_mode_override>` is enabled and ``allowed_override_modes`` is configured, the filter config :ref:`processing_mode <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>` can only be overridden by the response message from the external processing server iff the :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>` is allowed by the ``allowed_override_modes`` allow-list below.
    When :ref:`allow_mode_override <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.allow_mode_override>` is enabled and ``allowed_override_modes`` is configured, the filter config :ref:`processing_mode <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>` can only be overridden by the response message from the external processing server iff the :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>` is allowed by the ``allowed_override_modes`` allow-list below.
    addAllowedOverrideModes(int index, ProcessingMode.Builder builderForValue)
    When :ref:`allow_mode_override <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.allow_mode_override>` is enabled and ``allowed_override_modes`` is configured, the filter config :ref:`processing_mode <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>` can only be overridden by the response message from the external processing server iff the :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>` is allowed by the ``allowed_override_modes`` allow-list below.
    When :ref:`allow_mode_override <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.allow_mode_override>` is enabled and ``allowed_override_modes`` is configured, the filter config :ref:`processing_mode <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>` can only be overridden by the response message from the external processing server iff the :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>` is allowed by the ``allowed_override_modes`` allow-list below.
    When :ref:`allow_mode_override <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.allow_mode_override>` is enabled and ``allowed_override_modes`` is configured, the filter config :ref:`processing_mode <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>` can only be overridden by the response message from the external processing server iff the :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>` is allowed by the ``allowed_override_modes`` allow-list below.
    When :ref:`allow_mode_override <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.allow_mode_override>` is enabled and ``allowed_override_modes`` is configured, the filter config :ref:`processing_mode <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>` can only be overridden by the response message from the external processing server iff the :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>` is allowed by the ``allowed_override_modes`` allow-list below.
    When :ref:`allow_mode_override <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.allow_mode_override>` is enabled and ``allowed_override_modes`` is configured, the filter config :ref:`processing_mode <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>` can only be overridden by the response message from the external processing server iff the :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>` is allowed by the ``allowed_override_modes`` allow-list below.
    The data plane provides a number of :ref:`attributes <arch_overview_attributes>` for expressive policies.
    The data plane provides a number of :ref:`attributes <arch_overview_attributes>` for expressive policies.
    addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value)
     
    The data plane provides a number of :ref:`attributes <arch_overview_attributes>` for expressive policies.
    addRequestAttributesBytes(com.google.protobuf.ByteString value)
    The data plane provides a number of :ref:`attributes <arch_overview_attributes>` for expressive policies.
    The data plane provides a number of :ref:`attributes <arch_overview_attributes>` for expressive policies.
    addResponseAttributesBytes(com.google.protobuf.ByteString value)
    The data plane provides a number of :ref:`attributes <arch_overview_attributes>` for expressive policies.
     
     
     
    When :ref:`allow_mode_override <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.allow_mode_override>` is enabled and ``allowed_override_modes`` is configured, the filter config :ref:`processing_mode <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>` can only be overridden by the response message from the external processing server iff the :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>` is allowed by the ``allowed_override_modes`` allow-list below.
    If ``allow_mode_override`` is set to true, the filter config :ref:`processing_mode <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>` can be overridden by the response message from the external processing server :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>`.
    Specifies the deferred closure timeout for gRPC stream that connects to external processor.
    Prevents clearing the route-cache when the :ref:`clear_route_cache <envoy_v3_api_field_service.ext_proc.v3.CommonResponse.clear_route_cache>` field is set in an external processor response.
    If set to true, ignore the :ref:`immediate_response <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.immediate_response>` message in an external processor response.
    By default, if in the following cases: 1.
    clearField(com.google.protobuf.Descriptors.FieldDescriptor field)
     
    Additional metadata to be added to the filter state for logging purposes.
    Allow headers matching the ``forward_rules`` to be forwarded to the external processing server.
    Configuration for the gRPC service that the filter will communicate with.
    Configuration for the HTTP service that the filter will communicate with.
    Specify the upper bound of :ref:`override_message_timeout <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.override_message_timeout>` If not specified, by default it is 0, which will effectively disable the ``override_message_timeout`` API.
    Specifies the timeout for each individual message sent on the stream.
    Options related to the sending and receiving of dynamic metadata.
    Rules that determine what modifications an external processing server may make to message headers.
    If true, send each part of the HTTP request or response specified by ``ProcessingMode`` without pausing on filter chain iteration.
    clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof)
     
    Decorator to introduce custom logic that runs after a message received from the External Processor is processed, but before continuing filter chain iteration. .. note:: Response processors are currently in alpha.
    Specifies default options for how HTTP headers, trailers, and bodies are sent.
    Decorator to introduce custom logic that runs after the ``ProcessingRequest`` is constructed, but before it is sent to the External Processor.
    The data plane provides a number of :ref:`attributes <arch_overview_attributes>` for expressive policies.
    The data plane provides a number of :ref:`attributes <arch_overview_attributes>` for expressive policies.
    Specifies the action to be taken when an external processor response is received in response to request headers.
    Send body to the side stream server once it arrives without waiting for the header response from that server.
    Optional additional prefix to use when emitting statistics.
    Sets the HTTP status code that is returned to the client when the external processing server returns an error, fails to respond, or cannot be reached.
     
    When :ref:`allow_mode_override <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.allow_mode_override>` is enabled and ``allowed_override_modes`` is configured, the filter config :ref:`processing_mode <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>` can only be overridden by the response message from the external processing server iff the :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>` is allowed by the ``allowed_override_modes`` allow-list below.
    When :ref:`allow_mode_override <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.allow_mode_override>` is enabled and ``allowed_override_modes`` is configured, the filter config :ref:`processing_mode <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>` can only be overridden by the response message from the external processing server iff the :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>` is allowed by the ``allowed_override_modes`` allow-list below.
    When :ref:`allow_mode_override <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.allow_mode_override>` is enabled and ``allowed_override_modes`` is configured, the filter config :ref:`processing_mode <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>` can only be overridden by the response message from the external processing server iff the :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>` is allowed by the ``allowed_override_modes`` allow-list below.
    int
    When :ref:`allow_mode_override <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.allow_mode_override>` is enabled and ``allowed_override_modes`` is configured, the filter config :ref:`processing_mode <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>` can only be overridden by the response message from the external processing server iff the :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>` is allowed by the ``allowed_override_modes`` allow-list below.
    When :ref:`allow_mode_override <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.allow_mode_override>` is enabled and ``allowed_override_modes`` is configured, the filter config :ref:`processing_mode <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>` can only be overridden by the response message from the external processing server iff the :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>` is allowed by the ``allowed_override_modes`` allow-list below.
    When :ref:`allow_mode_override <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.allow_mode_override>` is enabled and ``allowed_override_modes`` is configured, the filter config :ref:`processing_mode <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>` can only be overridden by the response message from the external processing server iff the :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>` is allowed by the ``allowed_override_modes`` allow-list below.
    When :ref:`allow_mode_override <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.allow_mode_override>` is enabled and ``allowed_override_modes`` is configured, the filter config :ref:`processing_mode <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>` can only be overridden by the response message from the external processing server iff the :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>` is allowed by the ``allowed_override_modes`` allow-list below.
    boolean
    If ``allow_mode_override`` is set to true, the filter config :ref:`processing_mode <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>` can be overridden by the response message from the external processing server :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>`.
     
    com.google.protobuf.Duration
    Specifies the deferred closure timeout for gRPC stream that connects to external processor.
    com.google.protobuf.Duration.Builder
    Specifies the deferred closure timeout for gRPC stream that connects to external processor.
    com.google.protobuf.DurationOrBuilder
    Specifies the deferred closure timeout for gRPC stream that connects to external processor.
    static final com.google.protobuf.Descriptors.Descriptor
     
    com.google.protobuf.Descriptors.Descriptor
     
    boolean
    Prevents clearing the route-cache when the :ref:`clear_route_cache <envoy_v3_api_field_service.ext_proc.v3.CommonResponse.clear_route_cache>` field is set in an external processor response.
    boolean
    If set to true, ignore the :ref:`immediate_response <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.immediate_response>` message in an external processor response.
    boolean
    By default, if in the following cases: 1.
    com.google.protobuf.Struct
    Additional metadata to be added to the filter state for logging purposes.
    com.google.protobuf.Struct.Builder
    Additional metadata to be added to the filter state for logging purposes.
    com.google.protobuf.StructOrBuilder
    Additional metadata to be added to the filter state for logging purposes.
    Allow headers matching the ``forward_rules`` to be forwarded to the external processing server.
    Allow headers matching the ``forward_rules`` to be forwarded to the external processing server.
    Allow headers matching the ``forward_rules`` to be forwarded to the external processing server.
    Configuration for the gRPC service that the filter will communicate with.
    Configuration for the gRPC service that the filter will communicate with.
    Configuration for the gRPC service that the filter will communicate with.
    Configuration for the HTTP service that the filter will communicate with.
    Configuration for the HTTP service that the filter will communicate with.
    Configuration for the HTTP service that the filter will communicate with.
    com.google.protobuf.Duration
    Specify the upper bound of :ref:`override_message_timeout <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.override_message_timeout>` If not specified, by default it is 0, which will effectively disable the ``override_message_timeout`` API.
    com.google.protobuf.Duration.Builder
    Specify the upper bound of :ref:`override_message_timeout <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.override_message_timeout>` If not specified, by default it is 0, which will effectively disable the ``override_message_timeout`` API.
    com.google.protobuf.DurationOrBuilder
    Specify the upper bound of :ref:`override_message_timeout <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.override_message_timeout>` If not specified, by default it is 0, which will effectively disable the ``override_message_timeout`` API.
    com.google.protobuf.Duration
    Specifies the timeout for each individual message sent on the stream.
    com.google.protobuf.Duration.Builder
    Specifies the timeout for each individual message sent on the stream.
    com.google.protobuf.DurationOrBuilder
    Specifies the timeout for each individual message sent on the stream.
    Options related to the sending and receiving of dynamic metadata.
    Options related to the sending and receiving of dynamic metadata.
    Options related to the sending and receiving of dynamic metadata.
    Rules that determine what modifications an external processing server may make to message headers.
    Rules that determine what modifications an external processing server may make to message headers.
    Rules that determine what modifications an external processing server may make to message headers.
    boolean
    If true, send each part of the HTTP request or response specified by ``ProcessingMode`` without pausing on filter chain iteration.
    Decorator to introduce custom logic that runs after a message received from the External Processor is processed, but before continuing filter chain iteration. .. note:: Response processors are currently in alpha.
    Decorator to introduce custom logic that runs after a message received from the External Processor is processed, but before continuing filter chain iteration. .. note:: Response processors are currently in alpha.
    Decorator to introduce custom logic that runs after a message received from the External Processor is processed, but before continuing filter chain iteration. .. note:: Response processors are currently in alpha.
    Specifies default options for how HTTP headers, trailers, and bodies are sent.
    Specifies default options for how HTTP headers, trailers, and bodies are sent.
    Specifies default options for how HTTP headers, trailers, and bodies are sent.
    Decorator to introduce custom logic that runs after the ``ProcessingRequest`` is constructed, but before it is sent to the External Processor.
    Decorator to introduce custom logic that runs after the ``ProcessingRequest`` is constructed, but before it is sent to the External Processor.
    Decorator to introduce custom logic that runs after the ``ProcessingRequest`` is constructed, but before it is sent to the External Processor.
    The data plane provides a number of :ref:`attributes <arch_overview_attributes>` for expressive policies.
    com.google.protobuf.ByteString
    The data plane provides a number of :ref:`attributes <arch_overview_attributes>` for expressive policies.
    int
    The data plane provides a number of :ref:`attributes <arch_overview_attributes>` for expressive policies.
    com.google.protobuf.ProtocolStringList
    The data plane provides a number of :ref:`attributes <arch_overview_attributes>` for expressive policies.
    The data plane provides a number of :ref:`attributes <arch_overview_attributes>` for expressive policies.
    com.google.protobuf.ByteString
    The data plane provides a number of :ref:`attributes <arch_overview_attributes>` for expressive policies.
    int
    The data plane provides a number of :ref:`attributes <arch_overview_attributes>` for expressive policies.
    com.google.protobuf.ProtocolStringList
    The data plane provides a number of :ref:`attributes <arch_overview_attributes>` for expressive policies.
    Specifies the action to be taken when an external processor response is received in response to request headers.
    int
    Specifies the action to be taken when an external processor response is received in response to request headers.
    boolean
    Send body to the side stream server once it arrives without waiting for the header response from that server.
    Optional additional prefix to use when emitting statistics.
    com.google.protobuf.ByteString
    Optional additional prefix to use when emitting statistics.
    Sets the HTTP status code that is returned to the client when the external processing server returns an error, fails to respond, or cannot be reached.
    Sets the HTTP status code that is returned to the client when the external processing server returns an error, fails to respond, or cannot be reached.
    Sets the HTTP status code that is returned to the client when the external processing server returns an error, fails to respond, or cannot be reached.
    boolean
    Specifies the deferred closure timeout for gRPC stream that connects to external processor.
    boolean
    Additional metadata to be added to the filter state for logging purposes.
    boolean
    Allow headers matching the ``forward_rules`` to be forwarded to the external processing server.
    boolean
    Configuration for the gRPC service that the filter will communicate with.
    boolean
    Configuration for the HTTP service that the filter will communicate with.
    boolean
    Specify the upper bound of :ref:`override_message_timeout <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.override_message_timeout>` If not specified, by default it is 0, which will effectively disable the ``override_message_timeout`` API.
    boolean
    Specifies the timeout for each individual message sent on the stream.
    boolean
    Options related to the sending and receiving of dynamic metadata.
    boolean
    Rules that determine what modifications an external processing server may make to message headers.
    boolean
    Decorator to introduce custom logic that runs after a message received from the External Processor is processed, but before continuing filter chain iteration. .. note:: Response processors are currently in alpha.
    boolean
    Specifies default options for how HTTP headers, trailers, and bodies are sent.
    boolean
    Decorator to introduce custom logic that runs after the ``ProcessingRequest`` is constructed, but before it is sent to the External Processor.
    boolean
    Sets the HTTP status code that is returned to the client when the external processing server returns an error, fails to respond, or cannot be reached.
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
     
    final boolean
     
    mergeDeferredCloseTimeout(com.google.protobuf.Duration value)
    Specifies the deferred closure timeout for gRPC stream that connects to external processor.
    mergeFilterMetadata(com.google.protobuf.Struct value)
    Additional metadata to be added to the filter state for logging purposes.
    Allow headers matching the ``forward_rules`` to be forwarded to the external processing server.
    mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     
    mergeFrom(com.google.protobuf.Message other)
     
     
    Configuration for the gRPC service that the filter will communicate with.
    Configuration for the HTTP service that the filter will communicate with.
    mergeMaxMessageTimeout(com.google.protobuf.Duration value)
    Specify the upper bound of :ref:`override_message_timeout <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.override_message_timeout>` If not specified, by default it is 0, which will effectively disable the ``override_message_timeout`` API.
    mergeMessageTimeout(com.google.protobuf.Duration value)
    Specifies the timeout for each individual message sent on the stream.
    Options related to the sending and receiving of dynamic metadata.
    Rules that determine what modifications an external processing server may make to message headers.
    Decorator to introduce custom logic that runs after a message received from the External Processor is processed, but before continuing filter chain iteration. .. note:: Response processors are currently in alpha.
    Specifies default options for how HTTP headers, trailers, and bodies are sent.
    Decorator to introduce custom logic that runs after the ``ProcessingRequest`` is constructed, but before it is sent to the External Processor.
    Sets the HTTP status code that is returned to the client when the external processing server returns an error, fails to respond, or cannot be reached.
    mergeUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)
     
    When :ref:`allow_mode_override <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.allow_mode_override>` is enabled and ``allowed_override_modes`` is configured, the filter config :ref:`processing_mode <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>` can only be overridden by the response message from the external processing server iff the :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>` is allowed by the ``allowed_override_modes`` allow-list below.
    When :ref:`allow_mode_override <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.allow_mode_override>` is enabled and ``allowed_override_modes`` is configured, the filter config :ref:`processing_mode <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>` can only be overridden by the response message from the external processing server iff the :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>` is allowed by the ``allowed_override_modes`` allow-list below.
    setAllowedOverrideModes(int index, ProcessingMode.Builder builderForValue)
    When :ref:`allow_mode_override <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.allow_mode_override>` is enabled and ``allowed_override_modes`` is configured, the filter config :ref:`processing_mode <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>` can only be overridden by the response message from the external processing server iff the :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>` is allowed by the ``allowed_override_modes`` allow-list below.
    setAllowModeOverride(boolean value)
    If ``allow_mode_override`` is set to true, the filter config :ref:`processing_mode <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>` can be overridden by the response message from the external processing server :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>`.
    setDeferredCloseTimeout(com.google.protobuf.Duration value)
    Specifies the deferred closure timeout for gRPC stream that connects to external processor.
    setDeferredCloseTimeout(com.google.protobuf.Duration.Builder builderForValue)
    Specifies the deferred closure timeout for gRPC stream that connects to external processor.
    Prevents clearing the route-cache when the :ref:`clear_route_cache <envoy_v3_api_field_service.ext_proc.v3.CommonResponse.clear_route_cache>` field is set in an external processor response.
    If set to true, ignore the :ref:`immediate_response <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.immediate_response>` message in an external processor response.
    setFailureModeAllow(boolean value)
    By default, if in the following cases: 1.
    setField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value)
     
    setFilterMetadata(com.google.protobuf.Struct value)
    Additional metadata to be added to the filter state for logging purposes.
    setFilterMetadata(com.google.protobuf.Struct.Builder builderForValue)
    Additional metadata to be added to the filter state for logging purposes.
    Allow headers matching the ``forward_rules`` to be forwarded to the external processing server.
    Allow headers matching the ``forward_rules`` to be forwarded to the external processing server.
    Configuration for the gRPC service that the filter will communicate with.
    Configuration for the gRPC service that the filter will communicate with.
    Configuration for the HTTP service that the filter will communicate with.
    Configuration for the HTTP service that the filter will communicate with.
    setMaxMessageTimeout(com.google.protobuf.Duration value)
    Specify the upper bound of :ref:`override_message_timeout <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.override_message_timeout>` If not specified, by default it is 0, which will effectively disable the ``override_message_timeout`` API.
    setMaxMessageTimeout(com.google.protobuf.Duration.Builder builderForValue)
    Specify the upper bound of :ref:`override_message_timeout <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.override_message_timeout>` If not specified, by default it is 0, which will effectively disable the ``override_message_timeout`` API.
    setMessageTimeout(com.google.protobuf.Duration value)
    Specifies the timeout for each individual message sent on the stream.
    setMessageTimeout(com.google.protobuf.Duration.Builder builderForValue)
    Specifies the timeout for each individual message sent on the stream.
    Options related to the sending and receiving of dynamic metadata.
    Options related to the sending and receiving of dynamic metadata.
    Rules that determine what modifications an external processing server may make to message headers.
    Rules that determine what modifications an external processing server may make to message headers.
    setObservabilityMode(boolean value)
    If true, send each part of the HTTP request or response specified by ``ProcessingMode`` without pausing on filter chain iteration.
    Decorator to introduce custom logic that runs after a message received from the External Processor is processed, but before continuing filter chain iteration. .. note:: Response processors are currently in alpha.
    Decorator to introduce custom logic that runs after a message received from the External Processor is processed, but before continuing filter chain iteration. .. note:: Response processors are currently in alpha.
    Specifies default options for how HTTP headers, trailers, and bodies are sent.
    Specifies default options for how HTTP headers, trailers, and bodies are sent.
    Decorator to introduce custom logic that runs after the ``ProcessingRequest`` is constructed, but before it is sent to the External Processor.
    Decorator to introduce custom logic that runs after the ``ProcessingRequest`` is constructed, but before it is sent to the External Processor.
    setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, int index, Object value)
     
    setRequestAttributes(int index, String value)
    The data plane provides a number of :ref:`attributes <arch_overview_attributes>` for expressive policies.
    setResponseAttributes(int index, String value)
    The data plane provides a number of :ref:`attributes <arch_overview_attributes>` for expressive policies.
    Specifies the action to be taken when an external processor response is received in response to request headers.
    Specifies the action to be taken when an external processor response is received in response to request headers.
    Send body to the side stream server once it arrives without waiting for the header response from that server.
    Optional additional prefix to use when emitting statistics.
    setStatPrefixBytes(com.google.protobuf.ByteString value)
    Optional additional prefix to use when emitting statistics.
    Sets the HTTP status code that is returned to the client when the external processing server returns an error, fails to respond, or cannot be reached.
    Sets the HTTP status code that is returned to the client when the external processing server returns an error, fails to respond, or cannot be reached.
    setUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)
     

    Methods inherited from class com.google.protobuf.GeneratedMessageV3.Builder

    getAllFields, getField, getFieldBuilder, getOneofFieldDescriptor, getParentForChildren, getRepeatedField, getRepeatedFieldBuilder, getRepeatedFieldCount, getUnknownFields, getUnknownFieldSetBuilder, hasField, hasOneof, internalGetMapField, internalGetMapFieldReflection, internalGetMutableMapField, internalGetMutableMapFieldReflection, isClean, markClean, mergeUnknownLengthDelimitedField, mergeUnknownVarintField, newBuilderForField, onBuilt, onChanged, parseUnknownField, setUnknownFieldSetBuilder, setUnknownFieldsProto3

    Methods inherited from class com.google.protobuf.AbstractMessage.Builder

    findInitializationErrors, getInitializationErrorString, internalMergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, newUninitializedMessageException, toString

    Methods inherited from class com.google.protobuf.AbstractMessageLite.Builder

    addAll, addAll, mergeDelimitedFrom, mergeDelimitedFrom, mergeFrom, newUninitializedMessageException

    Methods inherited from class java.lang.Object

    equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

    Methods inherited from interface com.google.protobuf.Message.Builder

    mergeDelimitedFrom, mergeDelimitedFrom

    Methods inherited from interface com.google.protobuf.MessageLite.Builder

    mergeFrom

    Methods inherited from interface com.google.protobuf.MessageOrBuilder

    findInitializationErrors, getAllFields, getField, getInitializationErrorString, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof
  • 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<ExternalProcessor.Builder>
    • clear

      public ExternalProcessor.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<ExternalProcessor.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<ExternalProcessor.Builder>
    • getDefaultInstanceForType

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

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

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

      public ExternalProcessor.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<ExternalProcessor.Builder>
    • setField

      public ExternalProcessor.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<ExternalProcessor.Builder>
    • clearField

      public ExternalProcessor.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<ExternalProcessor.Builder>
    • clearOneof

      public ExternalProcessor.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<ExternalProcessor.Builder>
    • setRepeatedField

      public ExternalProcessor.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<ExternalProcessor.Builder>
    • addRepeatedField

      public ExternalProcessor.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<ExternalProcessor.Builder>
    • mergeFrom

      public ExternalProcessor.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<ExternalProcessor.Builder>
    • mergeFrom

      public ExternalProcessor.Builder mergeFrom(ExternalProcessor other)
    • isInitialized

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

      public ExternalProcessor.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<ExternalProcessor.Builder>
      Throws:
      IOException
    • hasGrpcService

      public boolean hasGrpcService()
       Configuration for the gRPC service that the filter will communicate with.
       Only one of ``grpc_service`` or ``http_service`` can be set.
       It is required that one of them must be set.
       
      .envoy.config.core.v3.GrpcService grpc_service = 1 [(.udpa.annotations.field_migrate) = { ... }
      Specified by:
      hasGrpcService in interface ExternalProcessorOrBuilder
      Returns:
      Whether the grpcService field is set.
    • getGrpcService

      public GrpcService getGrpcService()
       Configuration for the gRPC service that the filter will communicate with.
       Only one of ``grpc_service`` or ``http_service`` can be set.
       It is required that one of them must be set.
       
      .envoy.config.core.v3.GrpcService grpc_service = 1 [(.udpa.annotations.field_migrate) = { ... }
      Specified by:
      getGrpcService in interface ExternalProcessorOrBuilder
      Returns:
      The grpcService.
    • setGrpcService

      public ExternalProcessor.Builder setGrpcService(GrpcService value)
       Configuration for the gRPC service that the filter will communicate with.
       Only one of ``grpc_service`` or ``http_service`` can be set.
       It is required that one of them must be set.
       
      .envoy.config.core.v3.GrpcService grpc_service = 1 [(.udpa.annotations.field_migrate) = { ... }
    • setGrpcService

      public ExternalProcessor.Builder setGrpcService(GrpcService.Builder builderForValue)
       Configuration for the gRPC service that the filter will communicate with.
       Only one of ``grpc_service`` or ``http_service`` can be set.
       It is required that one of them must be set.
       
      .envoy.config.core.v3.GrpcService grpc_service = 1 [(.udpa.annotations.field_migrate) = { ... }
    • mergeGrpcService

      public ExternalProcessor.Builder mergeGrpcService(GrpcService value)
       Configuration for the gRPC service that the filter will communicate with.
       Only one of ``grpc_service`` or ``http_service`` can be set.
       It is required that one of them must be set.
       
      .envoy.config.core.v3.GrpcService grpc_service = 1 [(.udpa.annotations.field_migrate) = { ... }
    • clearGrpcService

      public ExternalProcessor.Builder clearGrpcService()
       Configuration for the gRPC service that the filter will communicate with.
       Only one of ``grpc_service`` or ``http_service`` can be set.
       It is required that one of them must be set.
       
      .envoy.config.core.v3.GrpcService grpc_service = 1 [(.udpa.annotations.field_migrate) = { ... }
    • getGrpcServiceBuilder

      public GrpcService.Builder getGrpcServiceBuilder()
       Configuration for the gRPC service that the filter will communicate with.
       Only one of ``grpc_service`` or ``http_service`` can be set.
       It is required that one of them must be set.
       
      .envoy.config.core.v3.GrpcService grpc_service = 1 [(.udpa.annotations.field_migrate) = { ... }
    • getGrpcServiceOrBuilder

      public GrpcServiceOrBuilder getGrpcServiceOrBuilder()
       Configuration for the gRPC service that the filter will communicate with.
       Only one of ``grpc_service`` or ``http_service`` can be set.
       It is required that one of them must be set.
       
      .envoy.config.core.v3.GrpcService grpc_service = 1 [(.udpa.annotations.field_migrate) = { ... }
      Specified by:
      getGrpcServiceOrBuilder in interface ExternalProcessorOrBuilder
    • hasHttpService

      public boolean hasHttpService()
       Configuration for the HTTP service that the filter will communicate with.
       Only one of ``http_service`` or
       :ref:`grpc_service <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.grpc_service>`
       can be set. It is required that one of them must be set.
      
       If ``http_service`` is set, the
       :ref:`processing_mode <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>`
       cannot be configured to send any body or trailers. i.e., ``http_service`` only supports
       sending request or response headers to the side stream server.
      
       With this configuration, the data plane behavior is:
      
       1. The headers are first put in a proto message
       :ref:`ProcessingRequest <envoy_v3_api_msg_service.ext_proc.v3.ProcessingRequest>`.
      
       2. This proto message is then transcoded into a JSON text.
      
       3. The data plane then sends an HTTP POST message with content-type as "application/json",
       and this JSON text as body to the side stream server.
      
       After the side-stream receives this HTTP request message, it is expected to do as follows:
      
       1. It converts the body, which is a JSON string, into a ``ProcessingRequest``
       proto message to examine and mutate the headers.
      
       2. It then sets the mutated headers into a new proto message
       :ref:`ProcessingResponse <envoy_v3_api_msg_service.ext_proc.v3.ProcessingResponse>`.
      
       3. It converts the ``ProcessingResponse`` proto message into a JSON text.
      
       4. It then sends an HTTP response back to the data plane with status code as ``"200"``,
       ``content-type`` as ``"application/json"`` and sets the JSON text as the body.
       
      .envoy.extensions.filters.http.ext_proc.v3.ExtProcHttpService http_service = 20 [(.udpa.annotations.field_migrate) = { ... }
      Specified by:
      hasHttpService in interface ExternalProcessorOrBuilder
      Returns:
      Whether the httpService field is set.
    • getHttpService

      public ExtProcHttpService getHttpService()
       Configuration for the HTTP service that the filter will communicate with.
       Only one of ``http_service`` or
       :ref:`grpc_service <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.grpc_service>`
       can be set. It is required that one of them must be set.
      
       If ``http_service`` is set, the
       :ref:`processing_mode <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>`
       cannot be configured to send any body or trailers. i.e., ``http_service`` only supports
       sending request or response headers to the side stream server.
      
       With this configuration, the data plane behavior is:
      
       1. The headers are first put in a proto message
       :ref:`ProcessingRequest <envoy_v3_api_msg_service.ext_proc.v3.ProcessingRequest>`.
      
       2. This proto message is then transcoded into a JSON text.
      
       3. The data plane then sends an HTTP POST message with content-type as "application/json",
       and this JSON text as body to the side stream server.
      
       After the side-stream receives this HTTP request message, it is expected to do as follows:
      
       1. It converts the body, which is a JSON string, into a ``ProcessingRequest``
       proto message to examine and mutate the headers.
      
       2. It then sets the mutated headers into a new proto message
       :ref:`ProcessingResponse <envoy_v3_api_msg_service.ext_proc.v3.ProcessingResponse>`.
      
       3. It converts the ``ProcessingResponse`` proto message into a JSON text.
      
       4. It then sends an HTTP response back to the data plane with status code as ``"200"``,
       ``content-type`` as ``"application/json"`` and sets the JSON text as the body.
       
      .envoy.extensions.filters.http.ext_proc.v3.ExtProcHttpService http_service = 20 [(.udpa.annotations.field_migrate) = { ... }
      Specified by:
      getHttpService in interface ExternalProcessorOrBuilder
      Returns:
      The httpService.
    • setHttpService

      public ExternalProcessor.Builder setHttpService(ExtProcHttpService value)
       Configuration for the HTTP service that the filter will communicate with.
       Only one of ``http_service`` or
       :ref:`grpc_service <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.grpc_service>`
       can be set. It is required that one of them must be set.
      
       If ``http_service`` is set, the
       :ref:`processing_mode <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>`
       cannot be configured to send any body or trailers. i.e., ``http_service`` only supports
       sending request or response headers to the side stream server.
      
       With this configuration, the data plane behavior is:
      
       1. The headers are first put in a proto message
       :ref:`ProcessingRequest <envoy_v3_api_msg_service.ext_proc.v3.ProcessingRequest>`.
      
       2. This proto message is then transcoded into a JSON text.
      
       3. The data plane then sends an HTTP POST message with content-type as "application/json",
       and this JSON text as body to the side stream server.
      
       After the side-stream receives this HTTP request message, it is expected to do as follows:
      
       1. It converts the body, which is a JSON string, into a ``ProcessingRequest``
       proto message to examine and mutate the headers.
      
       2. It then sets the mutated headers into a new proto message
       :ref:`ProcessingResponse <envoy_v3_api_msg_service.ext_proc.v3.ProcessingResponse>`.
      
       3. It converts the ``ProcessingResponse`` proto message into a JSON text.
      
       4. It then sends an HTTP response back to the data plane with status code as ``"200"``,
       ``content-type`` as ``"application/json"`` and sets the JSON text as the body.
       
      .envoy.extensions.filters.http.ext_proc.v3.ExtProcHttpService http_service = 20 [(.udpa.annotations.field_migrate) = { ... }
    • setHttpService

      public ExternalProcessor.Builder setHttpService(ExtProcHttpService.Builder builderForValue)
       Configuration for the HTTP service that the filter will communicate with.
       Only one of ``http_service`` or
       :ref:`grpc_service <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.grpc_service>`
       can be set. It is required that one of them must be set.
      
       If ``http_service`` is set, the
       :ref:`processing_mode <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>`
       cannot be configured to send any body or trailers. i.e., ``http_service`` only supports
       sending request or response headers to the side stream server.
      
       With this configuration, the data plane behavior is:
      
       1. The headers are first put in a proto message
       :ref:`ProcessingRequest <envoy_v3_api_msg_service.ext_proc.v3.ProcessingRequest>`.
      
       2. This proto message is then transcoded into a JSON text.
      
       3. The data plane then sends an HTTP POST message with content-type as "application/json",
       and this JSON text as body to the side stream server.
      
       After the side-stream receives this HTTP request message, it is expected to do as follows:
      
       1. It converts the body, which is a JSON string, into a ``ProcessingRequest``
       proto message to examine and mutate the headers.
      
       2. It then sets the mutated headers into a new proto message
       :ref:`ProcessingResponse <envoy_v3_api_msg_service.ext_proc.v3.ProcessingResponse>`.
      
       3. It converts the ``ProcessingResponse`` proto message into a JSON text.
      
       4. It then sends an HTTP response back to the data plane with status code as ``"200"``,
       ``content-type`` as ``"application/json"`` and sets the JSON text as the body.
       
      .envoy.extensions.filters.http.ext_proc.v3.ExtProcHttpService http_service = 20 [(.udpa.annotations.field_migrate) = { ... }
    • mergeHttpService

      public ExternalProcessor.Builder mergeHttpService(ExtProcHttpService value)
       Configuration for the HTTP service that the filter will communicate with.
       Only one of ``http_service`` or
       :ref:`grpc_service <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.grpc_service>`
       can be set. It is required that one of them must be set.
      
       If ``http_service`` is set, the
       :ref:`processing_mode <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>`
       cannot be configured to send any body or trailers. i.e., ``http_service`` only supports
       sending request or response headers to the side stream server.
      
       With this configuration, the data plane behavior is:
      
       1. The headers are first put in a proto message
       :ref:`ProcessingRequest <envoy_v3_api_msg_service.ext_proc.v3.ProcessingRequest>`.
      
       2. This proto message is then transcoded into a JSON text.
      
       3. The data plane then sends an HTTP POST message with content-type as "application/json",
       and this JSON text as body to the side stream server.
      
       After the side-stream receives this HTTP request message, it is expected to do as follows:
      
       1. It converts the body, which is a JSON string, into a ``ProcessingRequest``
       proto message to examine and mutate the headers.
      
       2. It then sets the mutated headers into a new proto message
       :ref:`ProcessingResponse <envoy_v3_api_msg_service.ext_proc.v3.ProcessingResponse>`.
      
       3. It converts the ``ProcessingResponse`` proto message into a JSON text.
      
       4. It then sends an HTTP response back to the data plane with status code as ``"200"``,
       ``content-type`` as ``"application/json"`` and sets the JSON text as the body.
       
      .envoy.extensions.filters.http.ext_proc.v3.ExtProcHttpService http_service = 20 [(.udpa.annotations.field_migrate) = { ... }
    • clearHttpService

      public ExternalProcessor.Builder clearHttpService()
       Configuration for the HTTP service that the filter will communicate with.
       Only one of ``http_service`` or
       :ref:`grpc_service <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.grpc_service>`
       can be set. It is required that one of them must be set.
      
       If ``http_service`` is set, the
       :ref:`processing_mode <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>`
       cannot be configured to send any body or trailers. i.e., ``http_service`` only supports
       sending request or response headers to the side stream server.
      
       With this configuration, the data plane behavior is:
      
       1. The headers are first put in a proto message
       :ref:`ProcessingRequest <envoy_v3_api_msg_service.ext_proc.v3.ProcessingRequest>`.
      
       2. This proto message is then transcoded into a JSON text.
      
       3. The data plane then sends an HTTP POST message with content-type as "application/json",
       and this JSON text as body to the side stream server.
      
       After the side-stream receives this HTTP request message, it is expected to do as follows:
      
       1. It converts the body, which is a JSON string, into a ``ProcessingRequest``
       proto message to examine and mutate the headers.
      
       2. It then sets the mutated headers into a new proto message
       :ref:`ProcessingResponse <envoy_v3_api_msg_service.ext_proc.v3.ProcessingResponse>`.
      
       3. It converts the ``ProcessingResponse`` proto message into a JSON text.
      
       4. It then sends an HTTP response back to the data plane with status code as ``"200"``,
       ``content-type`` as ``"application/json"`` and sets the JSON text as the body.
       
      .envoy.extensions.filters.http.ext_proc.v3.ExtProcHttpService http_service = 20 [(.udpa.annotations.field_migrate) = { ... }
    • getHttpServiceBuilder

      public ExtProcHttpService.Builder getHttpServiceBuilder()
       Configuration for the HTTP service that the filter will communicate with.
       Only one of ``http_service`` or
       :ref:`grpc_service <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.grpc_service>`
       can be set. It is required that one of them must be set.
      
       If ``http_service`` is set, the
       :ref:`processing_mode <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>`
       cannot be configured to send any body or trailers. i.e., ``http_service`` only supports
       sending request or response headers to the side stream server.
      
       With this configuration, the data plane behavior is:
      
       1. The headers are first put in a proto message
       :ref:`ProcessingRequest <envoy_v3_api_msg_service.ext_proc.v3.ProcessingRequest>`.
      
       2. This proto message is then transcoded into a JSON text.
      
       3. The data plane then sends an HTTP POST message with content-type as "application/json",
       and this JSON text as body to the side stream server.
      
       After the side-stream receives this HTTP request message, it is expected to do as follows:
      
       1. It converts the body, which is a JSON string, into a ``ProcessingRequest``
       proto message to examine and mutate the headers.
      
       2. It then sets the mutated headers into a new proto message
       :ref:`ProcessingResponse <envoy_v3_api_msg_service.ext_proc.v3.ProcessingResponse>`.
      
       3. It converts the ``ProcessingResponse`` proto message into a JSON text.
      
       4. It then sends an HTTP response back to the data plane with status code as ``"200"``,
       ``content-type`` as ``"application/json"`` and sets the JSON text as the body.
       
      .envoy.extensions.filters.http.ext_proc.v3.ExtProcHttpService http_service = 20 [(.udpa.annotations.field_migrate) = { ... }
    • getHttpServiceOrBuilder

      public ExtProcHttpServiceOrBuilder getHttpServiceOrBuilder()
       Configuration for the HTTP service that the filter will communicate with.
       Only one of ``http_service`` or
       :ref:`grpc_service <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.grpc_service>`
       can be set. It is required that one of them must be set.
      
       If ``http_service`` is set, the
       :ref:`processing_mode <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>`
       cannot be configured to send any body or trailers. i.e., ``http_service`` only supports
       sending request or response headers to the side stream server.
      
       With this configuration, the data plane behavior is:
      
       1. The headers are first put in a proto message
       :ref:`ProcessingRequest <envoy_v3_api_msg_service.ext_proc.v3.ProcessingRequest>`.
      
       2. This proto message is then transcoded into a JSON text.
      
       3. The data plane then sends an HTTP POST message with content-type as "application/json",
       and this JSON text as body to the side stream server.
      
       After the side-stream receives this HTTP request message, it is expected to do as follows:
      
       1. It converts the body, which is a JSON string, into a ``ProcessingRequest``
       proto message to examine and mutate the headers.
      
       2. It then sets the mutated headers into a new proto message
       :ref:`ProcessingResponse <envoy_v3_api_msg_service.ext_proc.v3.ProcessingResponse>`.
      
       3. It converts the ``ProcessingResponse`` proto message into a JSON text.
      
       4. It then sends an HTTP response back to the data plane with status code as ``"200"``,
       ``content-type`` as ``"application/json"`` and sets the JSON text as the body.
       
      .envoy.extensions.filters.http.ext_proc.v3.ExtProcHttpService http_service = 20 [(.udpa.annotations.field_migrate) = { ... }
      Specified by:
      getHttpServiceOrBuilder in interface ExternalProcessorOrBuilder
    • getFailureModeAllow

      public boolean getFailureModeAllow()
       By default, if in the following cases:
      
       1. The gRPC stream cannot be established.
      
       2. The gRPC stream is closed prematurely with an error.
      
       3. The external processing timeouts.
      
       4. The ext_proc server sends back spurious response messages.
      
       The filter will fail and a local reply with error code
       504(for timeout case) or 500(for all other cases), will be sent to the downstream.
      
       However, with this parameter set to true and if the above cases happen, the processing
       continues without error.
       
      bool failure_mode_allow = 2;
      Specified by:
      getFailureModeAllow in interface ExternalProcessorOrBuilder
      Returns:
      The failureModeAllow.
    • setFailureModeAllow

      public ExternalProcessor.Builder setFailureModeAllow(boolean value)
       By default, if in the following cases:
      
       1. The gRPC stream cannot be established.
      
       2. The gRPC stream is closed prematurely with an error.
      
       3. The external processing timeouts.
      
       4. The ext_proc server sends back spurious response messages.
      
       The filter will fail and a local reply with error code
       504(for timeout case) or 500(for all other cases), will be sent to the downstream.
      
       However, with this parameter set to true and if the above cases happen, the processing
       continues without error.
       
      bool failure_mode_allow = 2;
      Parameters:
      value - The failureModeAllow to set.
      Returns:
      This builder for chaining.
    • clearFailureModeAllow

      public ExternalProcessor.Builder clearFailureModeAllow()
       By default, if in the following cases:
      
       1. The gRPC stream cannot be established.
      
       2. The gRPC stream is closed prematurely with an error.
      
       3. The external processing timeouts.
      
       4. The ext_proc server sends back spurious response messages.
      
       The filter will fail and a local reply with error code
       504(for timeout case) or 500(for all other cases), will be sent to the downstream.
      
       However, with this parameter set to true and if the above cases happen, the processing
       continues without error.
       
      bool failure_mode_allow = 2;
      Returns:
      This builder for chaining.
    • hasProcessingMode

      public boolean hasProcessingMode()
       Specifies default options for how HTTP headers, trailers, and bodies are
       sent. See ``ProcessingMode`` for details.
       
      .envoy.extensions.filters.http.ext_proc.v3.ProcessingMode processing_mode = 3;
      Specified by:
      hasProcessingMode in interface ExternalProcessorOrBuilder
      Returns:
      Whether the processingMode field is set.
    • getProcessingMode

      public ProcessingMode getProcessingMode()
       Specifies default options for how HTTP headers, trailers, and bodies are
       sent. See ``ProcessingMode`` for details.
       
      .envoy.extensions.filters.http.ext_proc.v3.ProcessingMode processing_mode = 3;
      Specified by:
      getProcessingMode in interface ExternalProcessorOrBuilder
      Returns:
      The processingMode.
    • setProcessingMode

      public ExternalProcessor.Builder setProcessingMode(ProcessingMode value)
       Specifies default options for how HTTP headers, trailers, and bodies are
       sent. See ``ProcessingMode`` for details.
       
      .envoy.extensions.filters.http.ext_proc.v3.ProcessingMode processing_mode = 3;
    • setProcessingMode

      public ExternalProcessor.Builder setProcessingMode(ProcessingMode.Builder builderForValue)
       Specifies default options for how HTTP headers, trailers, and bodies are
       sent. See ``ProcessingMode`` for details.
       
      .envoy.extensions.filters.http.ext_proc.v3.ProcessingMode processing_mode = 3;
    • mergeProcessingMode

      public ExternalProcessor.Builder mergeProcessingMode(ProcessingMode value)
       Specifies default options for how HTTP headers, trailers, and bodies are
       sent. See ``ProcessingMode`` for details.
       
      .envoy.extensions.filters.http.ext_proc.v3.ProcessingMode processing_mode = 3;
    • clearProcessingMode

      public ExternalProcessor.Builder clearProcessingMode()
       Specifies default options for how HTTP headers, trailers, and bodies are
       sent. See ``ProcessingMode`` for details.
       
      .envoy.extensions.filters.http.ext_proc.v3.ProcessingMode processing_mode = 3;
    • getProcessingModeBuilder

      public ProcessingMode.Builder getProcessingModeBuilder()
       Specifies default options for how HTTP headers, trailers, and bodies are
       sent. See ``ProcessingMode`` for details.
       
      .envoy.extensions.filters.http.ext_proc.v3.ProcessingMode processing_mode = 3;
    • getProcessingModeOrBuilder

      public ProcessingModeOrBuilder getProcessingModeOrBuilder()
       Specifies default options for how HTTP headers, trailers, and bodies are
       sent. See ``ProcessingMode`` for details.
       
      .envoy.extensions.filters.http.ext_proc.v3.ProcessingMode processing_mode = 3;
      Specified by:
      getProcessingModeOrBuilder in interface ExternalProcessorOrBuilder
    • getRequestAttributesList

      public com.google.protobuf.ProtocolStringList getRequestAttributesList()
       The data plane provides a number of :ref:`attributes <arch_overview_attributes>`
       for expressive policies. Each attribute name provided in this field will be
       matched against that list and populated in the
       :ref:`ProcessingRequest.attributes <envoy_v3_api_field_service.ext_proc.v3.ProcessingRequest.attributes>` field.
       See the :ref:`attribute documentation <arch_overview_request_attributes>`
       for the list of supported attributes and their types.
       
      repeated string request_attributes = 5;
      Specified by:
      getRequestAttributesList in interface ExternalProcessorOrBuilder
      Returns:
      A list containing the requestAttributes.
    • getRequestAttributesCount

      public int getRequestAttributesCount()
       The data plane provides a number of :ref:`attributes <arch_overview_attributes>`
       for expressive policies. Each attribute name provided in this field will be
       matched against that list and populated in the
       :ref:`ProcessingRequest.attributes <envoy_v3_api_field_service.ext_proc.v3.ProcessingRequest.attributes>` field.
       See the :ref:`attribute documentation <arch_overview_request_attributes>`
       for the list of supported attributes and their types.
       
      repeated string request_attributes = 5;
      Specified by:
      getRequestAttributesCount in interface ExternalProcessorOrBuilder
      Returns:
      The count of requestAttributes.
    • getRequestAttributes

      public String getRequestAttributes(int index)
       The data plane provides a number of :ref:`attributes <arch_overview_attributes>`
       for expressive policies. Each attribute name provided in this field will be
       matched against that list and populated in the
       :ref:`ProcessingRequest.attributes <envoy_v3_api_field_service.ext_proc.v3.ProcessingRequest.attributes>` field.
       See the :ref:`attribute documentation <arch_overview_request_attributes>`
       for the list of supported attributes and their types.
       
      repeated string request_attributes = 5;
      Specified by:
      getRequestAttributes in interface ExternalProcessorOrBuilder
      Parameters:
      index - The index of the element to return.
      Returns:
      The requestAttributes at the given index.
    • getRequestAttributesBytes

      public com.google.protobuf.ByteString getRequestAttributesBytes(int index)
       The data plane provides a number of :ref:`attributes <arch_overview_attributes>`
       for expressive policies. Each attribute name provided in this field will be
       matched against that list and populated in the
       :ref:`ProcessingRequest.attributes <envoy_v3_api_field_service.ext_proc.v3.ProcessingRequest.attributes>` field.
       See the :ref:`attribute documentation <arch_overview_request_attributes>`
       for the list of supported attributes and their types.
       
      repeated string request_attributes = 5;
      Specified by:
      getRequestAttributesBytes in interface ExternalProcessorOrBuilder
      Parameters:
      index - The index of the value to return.
      Returns:
      The bytes of the requestAttributes at the given index.
    • setRequestAttributes

      public ExternalProcessor.Builder setRequestAttributes(int index, String value)
       The data plane provides a number of :ref:`attributes <arch_overview_attributes>`
       for expressive policies. Each attribute name provided in this field will be
       matched against that list and populated in the
       :ref:`ProcessingRequest.attributes <envoy_v3_api_field_service.ext_proc.v3.ProcessingRequest.attributes>` field.
       See the :ref:`attribute documentation <arch_overview_request_attributes>`
       for the list of supported attributes and their types.
       
      repeated string request_attributes = 5;
      Parameters:
      index - The index to set the value at.
      value - The requestAttributes to set.
      Returns:
      This builder for chaining.
    • addRequestAttributes

      public ExternalProcessor.Builder addRequestAttributes(String value)
       The data plane provides a number of :ref:`attributes <arch_overview_attributes>`
       for expressive policies. Each attribute name provided in this field will be
       matched against that list and populated in the
       :ref:`ProcessingRequest.attributes <envoy_v3_api_field_service.ext_proc.v3.ProcessingRequest.attributes>` field.
       See the :ref:`attribute documentation <arch_overview_request_attributes>`
       for the list of supported attributes and their types.
       
      repeated string request_attributes = 5;
      Parameters:
      value - The requestAttributes to add.
      Returns:
      This builder for chaining.
    • addAllRequestAttributes

      public ExternalProcessor.Builder addAllRequestAttributes(Iterable<String> values)
       The data plane provides a number of :ref:`attributes <arch_overview_attributes>`
       for expressive policies. Each attribute name provided in this field will be
       matched against that list and populated in the
       :ref:`ProcessingRequest.attributes <envoy_v3_api_field_service.ext_proc.v3.ProcessingRequest.attributes>` field.
       See the :ref:`attribute documentation <arch_overview_request_attributes>`
       for the list of supported attributes and their types.
       
      repeated string request_attributes = 5;
      Parameters:
      values - The requestAttributes to add.
      Returns:
      This builder for chaining.
    • clearRequestAttributes

      public ExternalProcessor.Builder clearRequestAttributes()
       The data plane provides a number of :ref:`attributes <arch_overview_attributes>`
       for expressive policies. Each attribute name provided in this field will be
       matched against that list and populated in the
       :ref:`ProcessingRequest.attributes <envoy_v3_api_field_service.ext_proc.v3.ProcessingRequest.attributes>` field.
       See the :ref:`attribute documentation <arch_overview_request_attributes>`
       for the list of supported attributes and their types.
       
      repeated string request_attributes = 5;
      Returns:
      This builder for chaining.
    • addRequestAttributesBytes

      public ExternalProcessor.Builder addRequestAttributesBytes(com.google.protobuf.ByteString value)
       The data plane provides a number of :ref:`attributes <arch_overview_attributes>`
       for expressive policies. Each attribute name provided in this field will be
       matched against that list and populated in the
       :ref:`ProcessingRequest.attributes <envoy_v3_api_field_service.ext_proc.v3.ProcessingRequest.attributes>` field.
       See the :ref:`attribute documentation <arch_overview_request_attributes>`
       for the list of supported attributes and their types.
       
      repeated string request_attributes = 5;
      Parameters:
      value - The bytes of the requestAttributes to add.
      Returns:
      This builder for chaining.
    • getResponseAttributesList

      public com.google.protobuf.ProtocolStringList getResponseAttributesList()
       The data plane provides a number of :ref:`attributes <arch_overview_attributes>`
       for expressive policies. Each attribute name provided in this field will be
       matched against that list and populated in the
       :ref:`ProcessingRequest.attributes <envoy_v3_api_field_service.ext_proc.v3.ProcessingRequest.attributes>` field.
       See the :ref:`attribute documentation <arch_overview_attributes>`
       for the list of supported attributes and their types.
       
      repeated string response_attributes = 6;
      Specified by:
      getResponseAttributesList in interface ExternalProcessorOrBuilder
      Returns:
      A list containing the responseAttributes.
    • getResponseAttributesCount

      public int getResponseAttributesCount()
       The data plane provides a number of :ref:`attributes <arch_overview_attributes>`
       for expressive policies. Each attribute name provided in this field will be
       matched against that list and populated in the
       :ref:`ProcessingRequest.attributes <envoy_v3_api_field_service.ext_proc.v3.ProcessingRequest.attributes>` field.
       See the :ref:`attribute documentation <arch_overview_attributes>`
       for the list of supported attributes and their types.
       
      repeated string response_attributes = 6;
      Specified by:
      getResponseAttributesCount in interface ExternalProcessorOrBuilder
      Returns:
      The count of responseAttributes.
    • getResponseAttributes

      public String getResponseAttributes(int index)
       The data plane provides a number of :ref:`attributes <arch_overview_attributes>`
       for expressive policies. Each attribute name provided in this field will be
       matched against that list and populated in the
       :ref:`ProcessingRequest.attributes <envoy_v3_api_field_service.ext_proc.v3.ProcessingRequest.attributes>` field.
       See the :ref:`attribute documentation <arch_overview_attributes>`
       for the list of supported attributes and their types.
       
      repeated string response_attributes = 6;
      Specified by:
      getResponseAttributes in interface ExternalProcessorOrBuilder
      Parameters:
      index - The index of the element to return.
      Returns:
      The responseAttributes at the given index.
    • getResponseAttributesBytes

      public com.google.protobuf.ByteString getResponseAttributesBytes(int index)
       The data plane provides a number of :ref:`attributes <arch_overview_attributes>`
       for expressive policies. Each attribute name provided in this field will be
       matched against that list and populated in the
       :ref:`ProcessingRequest.attributes <envoy_v3_api_field_service.ext_proc.v3.ProcessingRequest.attributes>` field.
       See the :ref:`attribute documentation <arch_overview_attributes>`
       for the list of supported attributes and their types.
       
      repeated string response_attributes = 6;
      Specified by:
      getResponseAttributesBytes in interface ExternalProcessorOrBuilder
      Parameters:
      index - The index of the value to return.
      Returns:
      The bytes of the responseAttributes at the given index.
    • setResponseAttributes

      public ExternalProcessor.Builder setResponseAttributes(int index, String value)
       The data plane provides a number of :ref:`attributes <arch_overview_attributes>`
       for expressive policies. Each attribute name provided in this field will be
       matched against that list and populated in the
       :ref:`ProcessingRequest.attributes <envoy_v3_api_field_service.ext_proc.v3.ProcessingRequest.attributes>` field.
       See the :ref:`attribute documentation <arch_overview_attributes>`
       for the list of supported attributes and their types.
       
      repeated string response_attributes = 6;
      Parameters:
      index - The index to set the value at.
      value - The responseAttributes to set.
      Returns:
      This builder for chaining.
    • addResponseAttributes

      public ExternalProcessor.Builder addResponseAttributes(String value)
       The data plane provides a number of :ref:`attributes <arch_overview_attributes>`
       for expressive policies. Each attribute name provided in this field will be
       matched against that list and populated in the
       :ref:`ProcessingRequest.attributes <envoy_v3_api_field_service.ext_proc.v3.ProcessingRequest.attributes>` field.
       See the :ref:`attribute documentation <arch_overview_attributes>`
       for the list of supported attributes and their types.
       
      repeated string response_attributes = 6;
      Parameters:
      value - The responseAttributes to add.
      Returns:
      This builder for chaining.
    • addAllResponseAttributes

      public ExternalProcessor.Builder addAllResponseAttributes(Iterable<String> values)
       The data plane provides a number of :ref:`attributes <arch_overview_attributes>`
       for expressive policies. Each attribute name provided in this field will be
       matched against that list and populated in the
       :ref:`ProcessingRequest.attributes <envoy_v3_api_field_service.ext_proc.v3.ProcessingRequest.attributes>` field.
       See the :ref:`attribute documentation <arch_overview_attributes>`
       for the list of supported attributes and their types.
       
      repeated string response_attributes = 6;
      Parameters:
      values - The responseAttributes to add.
      Returns:
      This builder for chaining.
    • clearResponseAttributes

      public ExternalProcessor.Builder clearResponseAttributes()
       The data plane provides a number of :ref:`attributes <arch_overview_attributes>`
       for expressive policies. Each attribute name provided in this field will be
       matched against that list and populated in the
       :ref:`ProcessingRequest.attributes <envoy_v3_api_field_service.ext_proc.v3.ProcessingRequest.attributes>` field.
       See the :ref:`attribute documentation <arch_overview_attributes>`
       for the list of supported attributes and their types.
       
      repeated string response_attributes = 6;
      Returns:
      This builder for chaining.
    • addResponseAttributesBytes

      public ExternalProcessor.Builder addResponseAttributesBytes(com.google.protobuf.ByteString value)
       The data plane provides a number of :ref:`attributes <arch_overview_attributes>`
       for expressive policies. Each attribute name provided in this field will be
       matched against that list and populated in the
       :ref:`ProcessingRequest.attributes <envoy_v3_api_field_service.ext_proc.v3.ProcessingRequest.attributes>` field.
       See the :ref:`attribute documentation <arch_overview_attributes>`
       for the list of supported attributes and their types.
       
      repeated string response_attributes = 6;
      Parameters:
      value - The bytes of the responseAttributes to add.
      Returns:
      This builder for chaining.
    • hasMessageTimeout

      public boolean hasMessageTimeout()
       Specifies the timeout for each individual message sent on the stream.
       Whenever the data plane 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 before a
       matching response is received. There is no timeout when the filter is
       running in observability mode or when the body send mode is
       ``FULL_DUPLEX_STREAMED`` or ``GRPC``. Zero is a valid config which means
       the timer will be triggered immediately. If not configured, default is
       200 milliseconds.
       
      .google.protobuf.Duration message_timeout = 7 [(.validate.rules) = { ... }
      Specified by:
      hasMessageTimeout in interface ExternalProcessorOrBuilder
      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.
       Whenever the data plane 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 before a
       matching response is received. There is no timeout when the filter is
       running in observability mode or when the body send mode is
       ``FULL_DUPLEX_STREAMED`` or ``GRPC``. Zero is a valid config which means
       the timer will be triggered immediately. If not configured, default is
       200 milliseconds.
       
      .google.protobuf.Duration message_timeout = 7 [(.validate.rules) = { ... }
      Specified by:
      getMessageTimeout in interface ExternalProcessorOrBuilder
      Returns:
      The messageTimeout.
    • setMessageTimeout

      public ExternalProcessor.Builder setMessageTimeout(com.google.protobuf.Duration value)
       Specifies the timeout for each individual message sent on the stream.
       Whenever the data plane 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 before a
       matching response is received. There is no timeout when the filter is
       running in observability mode or when the body send mode is
       ``FULL_DUPLEX_STREAMED`` or ``GRPC``. Zero is a valid config which means
       the timer will be triggered immediately. If not configured, default is
       200 milliseconds.
       
      .google.protobuf.Duration message_timeout = 7 [(.validate.rules) = { ... }
    • setMessageTimeout

      public ExternalProcessor.Builder setMessageTimeout(com.google.protobuf.Duration.Builder builderForValue)
       Specifies the timeout for each individual message sent on the stream.
       Whenever the data plane 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 before a
       matching response is received. There is no timeout when the filter is
       running in observability mode or when the body send mode is
       ``FULL_DUPLEX_STREAMED`` or ``GRPC``. Zero is a valid config which means
       the timer will be triggered immediately. If not configured, default is
       200 milliseconds.
       
      .google.protobuf.Duration message_timeout = 7 [(.validate.rules) = { ... }
    • mergeMessageTimeout

      public ExternalProcessor.Builder mergeMessageTimeout(com.google.protobuf.Duration value)
       Specifies the timeout for each individual message sent on the stream.
       Whenever the data plane 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 before a
       matching response is received. There is no timeout when the filter is
       running in observability mode or when the body send mode is
       ``FULL_DUPLEX_STREAMED`` or ``GRPC``. Zero is a valid config which means
       the timer will be triggered immediately. If not configured, default is
       200 milliseconds.
       
      .google.protobuf.Duration message_timeout = 7 [(.validate.rules) = { ... }
    • clearMessageTimeout

      public ExternalProcessor.Builder clearMessageTimeout()
       Specifies the timeout for each individual message sent on the stream.
       Whenever the data plane 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 before a
       matching response is received. There is no timeout when the filter is
       running in observability mode or when the body send mode is
       ``FULL_DUPLEX_STREAMED`` or ``GRPC``. Zero is a valid config which means
       the timer will be triggered immediately. If not configured, default is
       200 milliseconds.
       
      .google.protobuf.Duration message_timeout = 7 [(.validate.rules) = { ... }
    • getMessageTimeoutBuilder

      public com.google.protobuf.Duration.Builder getMessageTimeoutBuilder()
       Specifies the timeout for each individual message sent on the stream.
       Whenever the data plane 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 before a
       matching response is received. There is no timeout when the filter is
       running in observability mode or when the body send mode is
       ``FULL_DUPLEX_STREAMED`` or ``GRPC``. Zero is a valid config which means
       the timer will be triggered immediately. If not configured, default is
       200 milliseconds.
       
      .google.protobuf.Duration message_timeout = 7 [(.validate.rules) = { ... }
    • getMessageTimeoutOrBuilder

      public com.google.protobuf.DurationOrBuilder getMessageTimeoutOrBuilder()
       Specifies the timeout for each individual message sent on the stream.
       Whenever the data plane 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 before a
       matching response is received. There is no timeout when the filter is
       running in observability mode or when the body send mode is
       ``FULL_DUPLEX_STREAMED`` or ``GRPC``. Zero is a valid config which means
       the timer will be triggered immediately. If not configured, default is
       200 milliseconds.
       
      .google.protobuf.Duration message_timeout = 7 [(.validate.rules) = { ... }
      Specified by:
      getMessageTimeoutOrBuilder in interface ExternalProcessorOrBuilder
    • getStatPrefix

      public String getStatPrefix()
       Optional additional prefix to use when emitting statistics. This allows to distinguish
       emitted statistics between configured ``ext_proc`` filters in an HTTP filter chain.
       
      string stat_prefix = 8;
      Specified by:
      getStatPrefix in interface ExternalProcessorOrBuilder
      Returns:
      The statPrefix.
    • getStatPrefixBytes

      public com.google.protobuf.ByteString getStatPrefixBytes()
       Optional additional prefix to use when emitting statistics. This allows to distinguish
       emitted statistics between configured ``ext_proc`` filters in an HTTP filter chain.
       
      string stat_prefix = 8;
      Specified by:
      getStatPrefixBytes in interface ExternalProcessorOrBuilder
      Returns:
      The bytes for statPrefix.
    • setStatPrefix

      public ExternalProcessor.Builder setStatPrefix(String value)
       Optional additional prefix to use when emitting statistics. This allows to distinguish
       emitted statistics between configured ``ext_proc`` filters in an HTTP filter chain.
       
      string stat_prefix = 8;
      Parameters:
      value - The statPrefix to set.
      Returns:
      This builder for chaining.
    • clearStatPrefix

      public ExternalProcessor.Builder clearStatPrefix()
       Optional additional prefix to use when emitting statistics. This allows to distinguish
       emitted statistics between configured ``ext_proc`` filters in an HTTP filter chain.
       
      string stat_prefix = 8;
      Returns:
      This builder for chaining.
    • setStatPrefixBytes

      public ExternalProcessor.Builder setStatPrefixBytes(com.google.protobuf.ByteString value)
       Optional additional prefix to use when emitting statistics. This allows to distinguish
       emitted statistics between configured ``ext_proc`` filters in an HTTP filter chain.
       
      string stat_prefix = 8;
      Parameters:
      value - The bytes for statPrefix to set.
      Returns:
      This builder for chaining.
    • hasMutationRules

      public boolean hasMutationRules()
       Rules that determine what modifications an external processing server may
       make to message headers. If not set, all headers may be modified except
       for "host", ":authority", ":scheme", ":method", and headers that start
       with the header prefix set via
       :ref:`header_prefix <envoy_v3_api_field_config.bootstrap.v3.Bootstrap.header_prefix>`
       (which is usually "x-envoy").
       Note that changing headers such as "host" or ":authority" may not in itself
       change the data plane's routing decision, as routes can be cached. To also force the
       route to be recomputed, set the
       :ref:`clear_route_cache <envoy_v3_api_field_service.ext_proc.v3.CommonResponse.clear_route_cache>`
       field to true in the same response.
       
      .envoy.config.common.mutation_rules.v3.HeaderMutationRules mutation_rules = 9;
      Specified by:
      hasMutationRules in interface ExternalProcessorOrBuilder
      Returns:
      Whether the mutationRules field is set.
    • getMutationRules

      public HeaderMutationRules getMutationRules()
       Rules that determine what modifications an external processing server may
       make to message headers. If not set, all headers may be modified except
       for "host", ":authority", ":scheme", ":method", and headers that start
       with the header prefix set via
       :ref:`header_prefix <envoy_v3_api_field_config.bootstrap.v3.Bootstrap.header_prefix>`
       (which is usually "x-envoy").
       Note that changing headers such as "host" or ":authority" may not in itself
       change the data plane's routing decision, as routes can be cached. To also force the
       route to be recomputed, set the
       :ref:`clear_route_cache <envoy_v3_api_field_service.ext_proc.v3.CommonResponse.clear_route_cache>`
       field to true in the same response.
       
      .envoy.config.common.mutation_rules.v3.HeaderMutationRules mutation_rules = 9;
      Specified by:
      getMutationRules in interface ExternalProcessorOrBuilder
      Returns:
      The mutationRules.
    • setMutationRules

      public ExternalProcessor.Builder setMutationRules(HeaderMutationRules value)
       Rules that determine what modifications an external processing server may
       make to message headers. If not set, all headers may be modified except
       for "host", ":authority", ":scheme", ":method", and headers that start
       with the header prefix set via
       :ref:`header_prefix <envoy_v3_api_field_config.bootstrap.v3.Bootstrap.header_prefix>`
       (which is usually "x-envoy").
       Note that changing headers such as "host" or ":authority" may not in itself
       change the data plane's routing decision, as routes can be cached. To also force the
       route to be recomputed, set the
       :ref:`clear_route_cache <envoy_v3_api_field_service.ext_proc.v3.CommonResponse.clear_route_cache>`
       field to true in the same response.
       
      .envoy.config.common.mutation_rules.v3.HeaderMutationRules mutation_rules = 9;
    • setMutationRules

      public ExternalProcessor.Builder setMutationRules(HeaderMutationRules.Builder builderForValue)
       Rules that determine what modifications an external processing server may
       make to message headers. If not set, all headers may be modified except
       for "host", ":authority", ":scheme", ":method", and headers that start
       with the header prefix set via
       :ref:`header_prefix <envoy_v3_api_field_config.bootstrap.v3.Bootstrap.header_prefix>`
       (which is usually "x-envoy").
       Note that changing headers such as "host" or ":authority" may not in itself
       change the data plane's routing decision, as routes can be cached. To also force the
       route to be recomputed, set the
       :ref:`clear_route_cache <envoy_v3_api_field_service.ext_proc.v3.CommonResponse.clear_route_cache>`
       field to true in the same response.
       
      .envoy.config.common.mutation_rules.v3.HeaderMutationRules mutation_rules = 9;
    • mergeMutationRules

      public ExternalProcessor.Builder mergeMutationRules(HeaderMutationRules value)
       Rules that determine what modifications an external processing server may
       make to message headers. If not set, all headers may be modified except
       for "host", ":authority", ":scheme", ":method", and headers that start
       with the header prefix set via
       :ref:`header_prefix <envoy_v3_api_field_config.bootstrap.v3.Bootstrap.header_prefix>`
       (which is usually "x-envoy").
       Note that changing headers such as "host" or ":authority" may not in itself
       change the data plane's routing decision, as routes can be cached. To also force the
       route to be recomputed, set the
       :ref:`clear_route_cache <envoy_v3_api_field_service.ext_proc.v3.CommonResponse.clear_route_cache>`
       field to true in the same response.
       
      .envoy.config.common.mutation_rules.v3.HeaderMutationRules mutation_rules = 9;
    • clearMutationRules

      public ExternalProcessor.Builder clearMutationRules()
       Rules that determine what modifications an external processing server may
       make to message headers. If not set, all headers may be modified except
       for "host", ":authority", ":scheme", ":method", and headers that start
       with the header prefix set via
       :ref:`header_prefix <envoy_v3_api_field_config.bootstrap.v3.Bootstrap.header_prefix>`
       (which is usually "x-envoy").
       Note that changing headers such as "host" or ":authority" may not in itself
       change the data plane's routing decision, as routes can be cached. To also force the
       route to be recomputed, set the
       :ref:`clear_route_cache <envoy_v3_api_field_service.ext_proc.v3.CommonResponse.clear_route_cache>`
       field to true in the same response.
       
      .envoy.config.common.mutation_rules.v3.HeaderMutationRules mutation_rules = 9;
    • getMutationRulesBuilder

      public HeaderMutationRules.Builder getMutationRulesBuilder()
       Rules that determine what modifications an external processing server may
       make to message headers. If not set, all headers may be modified except
       for "host", ":authority", ":scheme", ":method", and headers that start
       with the header prefix set via
       :ref:`header_prefix <envoy_v3_api_field_config.bootstrap.v3.Bootstrap.header_prefix>`
       (which is usually "x-envoy").
       Note that changing headers such as "host" or ":authority" may not in itself
       change the data plane's routing decision, as routes can be cached. To also force the
       route to be recomputed, set the
       :ref:`clear_route_cache <envoy_v3_api_field_service.ext_proc.v3.CommonResponse.clear_route_cache>`
       field to true in the same response.
       
      .envoy.config.common.mutation_rules.v3.HeaderMutationRules mutation_rules = 9;
    • getMutationRulesOrBuilder

      public HeaderMutationRulesOrBuilder getMutationRulesOrBuilder()
       Rules that determine what modifications an external processing server may
       make to message headers. If not set, all headers may be modified except
       for "host", ":authority", ":scheme", ":method", and headers that start
       with the header prefix set via
       :ref:`header_prefix <envoy_v3_api_field_config.bootstrap.v3.Bootstrap.header_prefix>`
       (which is usually "x-envoy").
       Note that changing headers such as "host" or ":authority" may not in itself
       change the data plane's routing decision, as routes can be cached. To also force the
       route to be recomputed, set the
       :ref:`clear_route_cache <envoy_v3_api_field_service.ext_proc.v3.CommonResponse.clear_route_cache>`
       field to true in the same response.
       
      .envoy.config.common.mutation_rules.v3.HeaderMutationRules mutation_rules = 9;
      Specified by:
      getMutationRulesOrBuilder in interface ExternalProcessorOrBuilder
    • hasMaxMessageTimeout

      public boolean hasMaxMessageTimeout()
       Specify the upper bound of
       :ref:`override_message_timeout <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.override_message_timeout>`
       If not specified, by default it is 0, which will effectively disable the ``override_message_timeout`` API.
       
      .google.protobuf.Duration max_message_timeout = 10 [(.validate.rules) = { ... }
      Specified by:
      hasMaxMessageTimeout in interface ExternalProcessorOrBuilder
      Returns:
      Whether the maxMessageTimeout field is set.
    • getMaxMessageTimeout

      public com.google.protobuf.Duration getMaxMessageTimeout()
       Specify the upper bound of
       :ref:`override_message_timeout <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.override_message_timeout>`
       If not specified, by default it is 0, which will effectively disable the ``override_message_timeout`` API.
       
      .google.protobuf.Duration max_message_timeout = 10 [(.validate.rules) = { ... }
      Specified by:
      getMaxMessageTimeout in interface ExternalProcessorOrBuilder
      Returns:
      The maxMessageTimeout.
    • setMaxMessageTimeout

      public ExternalProcessor.Builder setMaxMessageTimeout(com.google.protobuf.Duration value)
       Specify the upper bound of
       :ref:`override_message_timeout <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.override_message_timeout>`
       If not specified, by default it is 0, which will effectively disable the ``override_message_timeout`` API.
       
      .google.protobuf.Duration max_message_timeout = 10 [(.validate.rules) = { ... }
    • setMaxMessageTimeout

      public ExternalProcessor.Builder setMaxMessageTimeout(com.google.protobuf.Duration.Builder builderForValue)
       Specify the upper bound of
       :ref:`override_message_timeout <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.override_message_timeout>`
       If not specified, by default it is 0, which will effectively disable the ``override_message_timeout`` API.
       
      .google.protobuf.Duration max_message_timeout = 10 [(.validate.rules) = { ... }
    • mergeMaxMessageTimeout

      public ExternalProcessor.Builder mergeMaxMessageTimeout(com.google.protobuf.Duration value)
       Specify the upper bound of
       :ref:`override_message_timeout <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.override_message_timeout>`
       If not specified, by default it is 0, which will effectively disable the ``override_message_timeout`` API.
       
      .google.protobuf.Duration max_message_timeout = 10 [(.validate.rules) = { ... }
    • clearMaxMessageTimeout

      public ExternalProcessor.Builder clearMaxMessageTimeout()
       Specify the upper bound of
       :ref:`override_message_timeout <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.override_message_timeout>`
       If not specified, by default it is 0, which will effectively disable the ``override_message_timeout`` API.
       
      .google.protobuf.Duration max_message_timeout = 10 [(.validate.rules) = { ... }
    • getMaxMessageTimeoutBuilder

      public com.google.protobuf.Duration.Builder getMaxMessageTimeoutBuilder()
       Specify the upper bound of
       :ref:`override_message_timeout <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.override_message_timeout>`
       If not specified, by default it is 0, which will effectively disable the ``override_message_timeout`` API.
       
      .google.protobuf.Duration max_message_timeout = 10 [(.validate.rules) = { ... }
    • getMaxMessageTimeoutOrBuilder

      public com.google.protobuf.DurationOrBuilder getMaxMessageTimeoutOrBuilder()
       Specify the upper bound of
       :ref:`override_message_timeout <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.override_message_timeout>`
       If not specified, by default it is 0, which will effectively disable the ``override_message_timeout`` API.
       
      .google.protobuf.Duration max_message_timeout = 10 [(.validate.rules) = { ... }
      Specified by:
      getMaxMessageTimeoutOrBuilder in interface ExternalProcessorOrBuilder
    • hasForwardRules

      public boolean hasForwardRules()
       Allow headers matching the ``forward_rules`` to be forwarded to the external processing server.
       If not set, all headers are forwarded to the external processing server.
       
      .envoy.extensions.filters.http.ext_proc.v3.HeaderForwardingRules forward_rules = 12;
      Specified by:
      hasForwardRules in interface ExternalProcessorOrBuilder
      Returns:
      Whether the forwardRules field is set.
    • getForwardRules

      public HeaderForwardingRules getForwardRules()
       Allow headers matching the ``forward_rules`` to be forwarded to the external processing server.
       If not set, all headers are forwarded to the external processing server.
       
      .envoy.extensions.filters.http.ext_proc.v3.HeaderForwardingRules forward_rules = 12;
      Specified by:
      getForwardRules in interface ExternalProcessorOrBuilder
      Returns:
      The forwardRules.
    • setForwardRules

      public ExternalProcessor.Builder setForwardRules(HeaderForwardingRules value)
       Allow headers matching the ``forward_rules`` to be forwarded to the external processing server.
       If not set, all headers are forwarded to the external processing server.
       
      .envoy.extensions.filters.http.ext_proc.v3.HeaderForwardingRules forward_rules = 12;
    • setForwardRules

      public ExternalProcessor.Builder setForwardRules(HeaderForwardingRules.Builder builderForValue)
       Allow headers matching the ``forward_rules`` to be forwarded to the external processing server.
       If not set, all headers are forwarded to the external processing server.
       
      .envoy.extensions.filters.http.ext_proc.v3.HeaderForwardingRules forward_rules = 12;
    • mergeForwardRules

      public ExternalProcessor.Builder mergeForwardRules(HeaderForwardingRules value)
       Allow headers matching the ``forward_rules`` to be forwarded to the external processing server.
       If not set, all headers are forwarded to the external processing server.
       
      .envoy.extensions.filters.http.ext_proc.v3.HeaderForwardingRules forward_rules = 12;
    • clearForwardRules

      public ExternalProcessor.Builder clearForwardRules()
       Allow headers matching the ``forward_rules`` to be forwarded to the external processing server.
       If not set, all headers are forwarded to the external processing server.
       
      .envoy.extensions.filters.http.ext_proc.v3.HeaderForwardingRules forward_rules = 12;
    • getForwardRulesBuilder

      public HeaderForwardingRules.Builder getForwardRulesBuilder()
       Allow headers matching the ``forward_rules`` to be forwarded to the external processing server.
       If not set, all headers are forwarded to the external processing server.
       
      .envoy.extensions.filters.http.ext_proc.v3.HeaderForwardingRules forward_rules = 12;
    • getForwardRulesOrBuilder

      public HeaderForwardingRulesOrBuilder getForwardRulesOrBuilder()
       Allow headers matching the ``forward_rules`` to be forwarded to the external processing server.
       If not set, all headers are forwarded to the external processing server.
       
      .envoy.extensions.filters.http.ext_proc.v3.HeaderForwardingRules forward_rules = 12;
      Specified by:
      getForwardRulesOrBuilder in interface ExternalProcessorOrBuilder
    • hasFilterMetadata

      public boolean hasFilterMetadata()
       Additional metadata to be added to the filter state for logging purposes. The metadata
       will be added to StreamInfo's filter state under the namespace corresponding to the
       ext_proc filter name.
       
      .google.protobuf.Struct filter_metadata = 13;
      Specified by:
      hasFilterMetadata in interface ExternalProcessorOrBuilder
      Returns:
      Whether the filterMetadata field is set.
    • getFilterMetadata

      public com.google.protobuf.Struct getFilterMetadata()
       Additional metadata to be added to the filter state for logging purposes. The metadata
       will be added to StreamInfo's filter state under the namespace corresponding to the
       ext_proc filter name.
       
      .google.protobuf.Struct filter_metadata = 13;
      Specified by:
      getFilterMetadata in interface ExternalProcessorOrBuilder
      Returns:
      The filterMetadata.
    • setFilterMetadata

      public ExternalProcessor.Builder setFilterMetadata(com.google.protobuf.Struct value)
       Additional metadata to be added to the filter state for logging purposes. The metadata
       will be added to StreamInfo's filter state under the namespace corresponding to the
       ext_proc filter name.
       
      .google.protobuf.Struct filter_metadata = 13;
    • setFilterMetadata

      public ExternalProcessor.Builder setFilterMetadata(com.google.protobuf.Struct.Builder builderForValue)
       Additional metadata to be added to the filter state for logging purposes. The metadata
       will be added to StreamInfo's filter state under the namespace corresponding to the
       ext_proc filter name.
       
      .google.protobuf.Struct filter_metadata = 13;
    • mergeFilterMetadata

      public ExternalProcessor.Builder mergeFilterMetadata(com.google.protobuf.Struct value)
       Additional metadata to be added to the filter state for logging purposes. The metadata
       will be added to StreamInfo's filter state under the namespace corresponding to the
       ext_proc filter name.
       
      .google.protobuf.Struct filter_metadata = 13;
    • clearFilterMetadata

      public ExternalProcessor.Builder clearFilterMetadata()
       Additional metadata to be added to the filter state for logging purposes. The metadata
       will be added to StreamInfo's filter state under the namespace corresponding to the
       ext_proc filter name.
       
      .google.protobuf.Struct filter_metadata = 13;
    • getFilterMetadataBuilder

      public com.google.protobuf.Struct.Builder getFilterMetadataBuilder()
       Additional metadata to be added to the filter state for logging purposes. The metadata
       will be added to StreamInfo's filter state under the namespace corresponding to the
       ext_proc filter name.
       
      .google.protobuf.Struct filter_metadata = 13;
    • getFilterMetadataOrBuilder

      public com.google.protobuf.StructOrBuilder getFilterMetadataOrBuilder()
       Additional metadata to be added to the filter state for logging purposes. The metadata
       will be added to StreamInfo's filter state under the namespace corresponding to the
       ext_proc filter name.
       
      .google.protobuf.Struct filter_metadata = 13;
      Specified by:
      getFilterMetadataOrBuilder in interface ExternalProcessorOrBuilder
    • getAllowModeOverride

      public boolean getAllowModeOverride()
       If ``allow_mode_override`` is set to true, the filter config :ref:`processing_mode
       <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>`
       can be overridden by the response message from the external processing server
       :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>`.
       If not set, ``mode_override`` API in the response message will be ignored.
       Mode override is not supported if the body send mode is ``FULL_DUPLEX_STREAMED``.
       
      bool allow_mode_override = 14;
      Specified by:
      getAllowModeOverride in interface ExternalProcessorOrBuilder
      Returns:
      The allowModeOverride.
    • setAllowModeOverride

      public ExternalProcessor.Builder setAllowModeOverride(boolean value)
       If ``allow_mode_override`` is set to true, the filter config :ref:`processing_mode
       <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>`
       can be overridden by the response message from the external processing server
       :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>`.
       If not set, ``mode_override`` API in the response message will be ignored.
       Mode override is not supported if the body send mode is ``FULL_DUPLEX_STREAMED``.
       
      bool allow_mode_override = 14;
      Parameters:
      value - The allowModeOverride to set.
      Returns:
      This builder for chaining.
    • clearAllowModeOverride

      public ExternalProcessor.Builder clearAllowModeOverride()
       If ``allow_mode_override`` is set to true, the filter config :ref:`processing_mode
       <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>`
       can be overridden by the response message from the external processing server
       :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>`.
       If not set, ``mode_override`` API in the response message will be ignored.
       Mode override is not supported if the body send mode is ``FULL_DUPLEX_STREAMED``.
       
      bool allow_mode_override = 14;
      Returns:
      This builder for chaining.
    • getDisableImmediateResponse

      public boolean getDisableImmediateResponse()
       If set to true, ignore the
       :ref:`immediate_response <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.immediate_response>`
       message in an external processor response. In such case, no local reply will be sent.
       Instead, the stream to the external processor will be closed. There will be no
       more external processing for this stream from now on.
       
      bool disable_immediate_response = 15;
      Specified by:
      getDisableImmediateResponse in interface ExternalProcessorOrBuilder
      Returns:
      The disableImmediateResponse.
    • setDisableImmediateResponse

      public ExternalProcessor.Builder setDisableImmediateResponse(boolean value)
       If set to true, ignore the
       :ref:`immediate_response <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.immediate_response>`
       message in an external processor response. In such case, no local reply will be sent.
       Instead, the stream to the external processor will be closed. There will be no
       more external processing for this stream from now on.
       
      bool disable_immediate_response = 15;
      Parameters:
      value - The disableImmediateResponse to set.
      Returns:
      This builder for chaining.
    • clearDisableImmediateResponse

      public ExternalProcessor.Builder clearDisableImmediateResponse()
       If set to true, ignore the
       :ref:`immediate_response <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.immediate_response>`
       message in an external processor response. In such case, no local reply will be sent.
       Instead, the stream to the external processor will be closed. There will be no
       more external processing for this stream from now on.
       
      bool disable_immediate_response = 15;
      Returns:
      This builder for chaining.
    • hasMetadataOptions

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

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

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

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

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

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

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

      public MetadataOptionsOrBuilder getMetadataOptionsOrBuilder()
       Options related to the sending and receiving of dynamic metadata.
       
      .envoy.extensions.filters.http.ext_proc.v3.MetadataOptions metadata_options = 16;
      Specified by:
      getMetadataOptionsOrBuilder in interface ExternalProcessorOrBuilder
    • getObservabilityMode

      public boolean getObservabilityMode()
       If true, send each part of the HTTP request or response specified by ``ProcessingMode``
       without pausing on filter chain iteration. It is "Send and Go" mode that can be used
       by external processor to observe the request's data and status. In this mode:
      
       1. Only ``STREAMED``, ``GRPC``, and ``NONE`` body processing modes are supported; for any
       other body processing mode, the body will not be sent.
      
       2. External processor should not send back processing response, as any responses will be ignored.
       This also means that
       :ref:`message_timeout <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.message_timeout>`
       restriction doesn't apply to this mode.
      
       3. External processor may still close the stream to indicate that no more messages are needed.
      
       .. warning::
      
          Flow control is a necessary mechanism to prevent the fast sender (either downstream client or upstream server)
          from overwhelming the external processor when its processing speed is slower.
          This protective measure is being explored and developed but has not been ready yet, so please use your own
          discretion when enabling this feature.
          This work is currently tracked under https://github.com/envoyproxy/envoy/issues/33319.
       
      bool observability_mode = 17;
      Specified by:
      getObservabilityMode in interface ExternalProcessorOrBuilder
      Returns:
      The observabilityMode.
    • setObservabilityMode

      public ExternalProcessor.Builder setObservabilityMode(boolean value)
       If true, send each part of the HTTP request or response specified by ``ProcessingMode``
       without pausing on filter chain iteration. It is "Send and Go" mode that can be used
       by external processor to observe the request's data and status. In this mode:
      
       1. Only ``STREAMED``, ``GRPC``, and ``NONE`` body processing modes are supported; for any
       other body processing mode, the body will not be sent.
      
       2. External processor should not send back processing response, as any responses will be ignored.
       This also means that
       :ref:`message_timeout <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.message_timeout>`
       restriction doesn't apply to this mode.
      
       3. External processor may still close the stream to indicate that no more messages are needed.
      
       .. warning::
      
          Flow control is a necessary mechanism to prevent the fast sender (either downstream client or upstream server)
          from overwhelming the external processor when its processing speed is slower.
          This protective measure is being explored and developed but has not been ready yet, so please use your own
          discretion when enabling this feature.
          This work is currently tracked under https://github.com/envoyproxy/envoy/issues/33319.
       
      bool observability_mode = 17;
      Parameters:
      value - The observabilityMode to set.
      Returns:
      This builder for chaining.
    • clearObservabilityMode

      public ExternalProcessor.Builder clearObservabilityMode()
       If true, send each part of the HTTP request or response specified by ``ProcessingMode``
       without pausing on filter chain iteration. It is "Send and Go" mode that can be used
       by external processor to observe the request's data and status. In this mode:
      
       1. Only ``STREAMED``, ``GRPC``, and ``NONE`` body processing modes are supported; for any
       other body processing mode, the body will not be sent.
      
       2. External processor should not send back processing response, as any responses will be ignored.
       This also means that
       :ref:`message_timeout <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.message_timeout>`
       restriction doesn't apply to this mode.
      
       3. External processor may still close the stream to indicate that no more messages are needed.
      
       .. warning::
      
          Flow control is a necessary mechanism to prevent the fast sender (either downstream client or upstream server)
          from overwhelming the external processor when its processing speed is slower.
          This protective measure is being explored and developed but has not been ready yet, so please use your own
          discretion when enabling this feature.
          This work is currently tracked under https://github.com/envoyproxy/envoy/issues/33319.
       
      bool observability_mode = 17;
      Returns:
      This builder for chaining.
    • getDisableClearRouteCache

      public boolean getDisableClearRouteCache()
       Prevents clearing the route-cache when the
       :ref:`clear_route_cache <envoy_v3_api_field_service.ext_proc.v3.CommonResponse.clear_route_cache>`
       field is set in an external processor response.
       Only one of ``disable_clear_route_cache`` or ``route_cache_action`` can be set.
       It is recommended to set ``route_cache_action`` which supersedes ``disable_clear_route_cache``.
       
      bool disable_clear_route_cache = 11 [(.udpa.annotations.field_migrate) = { ... }
      Specified by:
      getDisableClearRouteCache in interface ExternalProcessorOrBuilder
      Returns:
      The disableClearRouteCache.
    • setDisableClearRouteCache

      public ExternalProcessor.Builder setDisableClearRouteCache(boolean value)
       Prevents clearing the route-cache when the
       :ref:`clear_route_cache <envoy_v3_api_field_service.ext_proc.v3.CommonResponse.clear_route_cache>`
       field is set in an external processor response.
       Only one of ``disable_clear_route_cache`` or ``route_cache_action`` can be set.
       It is recommended to set ``route_cache_action`` which supersedes ``disable_clear_route_cache``.
       
      bool disable_clear_route_cache = 11 [(.udpa.annotations.field_migrate) = { ... }
      Parameters:
      value - The disableClearRouteCache to set.
      Returns:
      This builder for chaining.
    • clearDisableClearRouteCache

      public ExternalProcessor.Builder clearDisableClearRouteCache()
       Prevents clearing the route-cache when the
       :ref:`clear_route_cache <envoy_v3_api_field_service.ext_proc.v3.CommonResponse.clear_route_cache>`
       field is set in an external processor response.
       Only one of ``disable_clear_route_cache`` or ``route_cache_action`` can be set.
       It is recommended to set ``route_cache_action`` which supersedes ``disable_clear_route_cache``.
       
      bool disable_clear_route_cache = 11 [(.udpa.annotations.field_migrate) = { ... }
      Returns:
      This builder for chaining.
    • getRouteCacheActionValue

      public int getRouteCacheActionValue()
       Specifies the action to be taken when an external processor response is
       received in response to request headers. It is recommended to set this field rather than set
       :ref:`disable_clear_route_cache <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.disable_clear_route_cache>`.
       Only one of ``disable_clear_route_cache`` or ``route_cache_action`` can be set.
       
      .envoy.extensions.filters.http.ext_proc.v3.ExternalProcessor.RouteCacheAction route_cache_action = 18 [(.udpa.annotations.field_migrate) = { ... }
      Specified by:
      getRouteCacheActionValue in interface ExternalProcessorOrBuilder
      Returns:
      The enum numeric value on the wire for routeCacheAction.
    • setRouteCacheActionValue

      public ExternalProcessor.Builder setRouteCacheActionValue(int value)
       Specifies the action to be taken when an external processor response is
       received in response to request headers. It is recommended to set this field rather than set
       :ref:`disable_clear_route_cache <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.disable_clear_route_cache>`.
       Only one of ``disable_clear_route_cache`` or ``route_cache_action`` can be set.
       
      .envoy.extensions.filters.http.ext_proc.v3.ExternalProcessor.RouteCacheAction route_cache_action = 18 [(.udpa.annotations.field_migrate) = { ... }
      Parameters:
      value - The enum numeric value on the wire for routeCacheAction to set.
      Returns:
      This builder for chaining.
    • getRouteCacheAction

      public ExternalProcessor.RouteCacheAction getRouteCacheAction()
       Specifies the action to be taken when an external processor response is
       received in response to request headers. It is recommended to set this field rather than set
       :ref:`disable_clear_route_cache <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.disable_clear_route_cache>`.
       Only one of ``disable_clear_route_cache`` or ``route_cache_action`` can be set.
       
      .envoy.extensions.filters.http.ext_proc.v3.ExternalProcessor.RouteCacheAction route_cache_action = 18 [(.udpa.annotations.field_migrate) = { ... }
      Specified by:
      getRouteCacheAction in interface ExternalProcessorOrBuilder
      Returns:
      The routeCacheAction.
    • setRouteCacheAction

       Specifies the action to be taken when an external processor response is
       received in response to request headers. It is recommended to set this field rather than set
       :ref:`disable_clear_route_cache <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.disable_clear_route_cache>`.
       Only one of ``disable_clear_route_cache`` or ``route_cache_action`` can be set.
       
      .envoy.extensions.filters.http.ext_proc.v3.ExternalProcessor.RouteCacheAction route_cache_action = 18 [(.udpa.annotations.field_migrate) = { ... }
      Parameters:
      value - The routeCacheAction to set.
      Returns:
      This builder for chaining.
    • clearRouteCacheAction

      public ExternalProcessor.Builder clearRouteCacheAction()
       Specifies the action to be taken when an external processor response is
       received in response to request headers. It is recommended to set this field rather than set
       :ref:`disable_clear_route_cache <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.disable_clear_route_cache>`.
       Only one of ``disable_clear_route_cache`` or ``route_cache_action`` can be set.
       
      .envoy.extensions.filters.http.ext_proc.v3.ExternalProcessor.RouteCacheAction route_cache_action = 18 [(.udpa.annotations.field_migrate) = { ... }
      Returns:
      This builder for chaining.
    • hasDeferredCloseTimeout

      public boolean hasDeferredCloseTimeout()
       Specifies the deferred closure timeout for gRPC stream that connects to external processor. Currently, the deferred stream closure
       is only used in :ref:`observability_mode <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.observability_mode>`.
       In observability mode, gRPC streams may be held open to the external processor longer than the lifetime of the regular client to
       backend stream lifetime. In this case, the data plane will eventually timeout the external processor stream according to this time limit.
       The default value is 5000 milliseconds (5 seconds) if not specified.
       
      .google.protobuf.Duration deferred_close_timeout = 19;
      Specified by:
      hasDeferredCloseTimeout in interface ExternalProcessorOrBuilder
      Returns:
      Whether the deferredCloseTimeout field is set.
    • getDeferredCloseTimeout

      public com.google.protobuf.Duration getDeferredCloseTimeout()
       Specifies the deferred closure timeout for gRPC stream that connects to external processor. Currently, the deferred stream closure
       is only used in :ref:`observability_mode <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.observability_mode>`.
       In observability mode, gRPC streams may be held open to the external processor longer than the lifetime of the regular client to
       backend stream lifetime. In this case, the data plane will eventually timeout the external processor stream according to this time limit.
       The default value is 5000 milliseconds (5 seconds) if not specified.
       
      .google.protobuf.Duration deferred_close_timeout = 19;
      Specified by:
      getDeferredCloseTimeout in interface ExternalProcessorOrBuilder
      Returns:
      The deferredCloseTimeout.
    • setDeferredCloseTimeout

      public ExternalProcessor.Builder setDeferredCloseTimeout(com.google.protobuf.Duration value)
       Specifies the deferred closure timeout for gRPC stream that connects to external processor. Currently, the deferred stream closure
       is only used in :ref:`observability_mode <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.observability_mode>`.
       In observability mode, gRPC streams may be held open to the external processor longer than the lifetime of the regular client to
       backend stream lifetime. In this case, the data plane will eventually timeout the external processor stream according to this time limit.
       The default value is 5000 milliseconds (5 seconds) if not specified.
       
      .google.protobuf.Duration deferred_close_timeout = 19;
    • setDeferredCloseTimeout

      public ExternalProcessor.Builder setDeferredCloseTimeout(com.google.protobuf.Duration.Builder builderForValue)
       Specifies the deferred closure timeout for gRPC stream that connects to external processor. Currently, the deferred stream closure
       is only used in :ref:`observability_mode <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.observability_mode>`.
       In observability mode, gRPC streams may be held open to the external processor longer than the lifetime of the regular client to
       backend stream lifetime. In this case, the data plane will eventually timeout the external processor stream according to this time limit.
       The default value is 5000 milliseconds (5 seconds) if not specified.
       
      .google.protobuf.Duration deferred_close_timeout = 19;
    • mergeDeferredCloseTimeout

      public ExternalProcessor.Builder mergeDeferredCloseTimeout(com.google.protobuf.Duration value)
       Specifies the deferred closure timeout for gRPC stream that connects to external processor. Currently, the deferred stream closure
       is only used in :ref:`observability_mode <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.observability_mode>`.
       In observability mode, gRPC streams may be held open to the external processor longer than the lifetime of the regular client to
       backend stream lifetime. In this case, the data plane will eventually timeout the external processor stream according to this time limit.
       The default value is 5000 milliseconds (5 seconds) if not specified.
       
      .google.protobuf.Duration deferred_close_timeout = 19;
    • clearDeferredCloseTimeout

      public ExternalProcessor.Builder clearDeferredCloseTimeout()
       Specifies the deferred closure timeout for gRPC stream that connects to external processor. Currently, the deferred stream closure
       is only used in :ref:`observability_mode <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.observability_mode>`.
       In observability mode, gRPC streams may be held open to the external processor longer than the lifetime of the regular client to
       backend stream lifetime. In this case, the data plane will eventually timeout the external processor stream according to this time limit.
       The default value is 5000 milliseconds (5 seconds) if not specified.
       
      .google.protobuf.Duration deferred_close_timeout = 19;
    • getDeferredCloseTimeoutBuilder

      public com.google.protobuf.Duration.Builder getDeferredCloseTimeoutBuilder()
       Specifies the deferred closure timeout for gRPC stream that connects to external processor. Currently, the deferred stream closure
       is only used in :ref:`observability_mode <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.observability_mode>`.
       In observability mode, gRPC streams may be held open to the external processor longer than the lifetime of the regular client to
       backend stream lifetime. In this case, the data plane will eventually timeout the external processor stream according to this time limit.
       The default value is 5000 milliseconds (5 seconds) if not specified.
       
      .google.protobuf.Duration deferred_close_timeout = 19;
    • getDeferredCloseTimeoutOrBuilder

      public com.google.protobuf.DurationOrBuilder getDeferredCloseTimeoutOrBuilder()
       Specifies the deferred closure timeout for gRPC stream that connects to external processor. Currently, the deferred stream closure
       is only used in :ref:`observability_mode <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.observability_mode>`.
       In observability mode, gRPC streams may be held open to the external processor longer than the lifetime of the regular client to
       backend stream lifetime. In this case, the data plane will eventually timeout the external processor stream according to this time limit.
       The default value is 5000 milliseconds (5 seconds) if not specified.
       
      .google.protobuf.Duration deferred_close_timeout = 19;
      Specified by:
      getDeferredCloseTimeoutOrBuilder in interface ExternalProcessorOrBuilder
    • getSendBodyWithoutWaitingForHeaderResponse

      public boolean getSendBodyWithoutWaitingForHeaderResponse()
       Send body to the side stream server once it arrives without waiting for the header response from that server.
       It only works for ``STREAMED`` body processing mode. For any other body
       processing modes, it is ignored.
       The server has two options upon receiving a header request:
      
       1. Instant Response: send the header response as soon as the header request is received.
      
       2. Delayed Response: wait for the body before sending any response.
      
       In all scenarios, the header-body ordering must always be maintained.
      
       If enabled the data plane will ignore the
       :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>`
       value that the server sends in the header response. This is because the data plane may have already
       sent the body to the server, prior to processing the header response.
       
      bool send_body_without_waiting_for_header_response = 21;
      Specified by:
      getSendBodyWithoutWaitingForHeaderResponse in interface ExternalProcessorOrBuilder
      Returns:
      The sendBodyWithoutWaitingForHeaderResponse.
    • setSendBodyWithoutWaitingForHeaderResponse

      public ExternalProcessor.Builder setSendBodyWithoutWaitingForHeaderResponse(boolean value)
       Send body to the side stream server once it arrives without waiting for the header response from that server.
       It only works for ``STREAMED`` body processing mode. For any other body
       processing modes, it is ignored.
       The server has two options upon receiving a header request:
      
       1. Instant Response: send the header response as soon as the header request is received.
      
       2. Delayed Response: wait for the body before sending any response.
      
       In all scenarios, the header-body ordering must always be maintained.
      
       If enabled the data plane will ignore the
       :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>`
       value that the server sends in the header response. This is because the data plane may have already
       sent the body to the server, prior to processing the header response.
       
      bool send_body_without_waiting_for_header_response = 21;
      Parameters:
      value - The sendBodyWithoutWaitingForHeaderResponse to set.
      Returns:
      This builder for chaining.
    • clearSendBodyWithoutWaitingForHeaderResponse

      public ExternalProcessor.Builder clearSendBodyWithoutWaitingForHeaderResponse()
       Send body to the side stream server once it arrives without waiting for the header response from that server.
       It only works for ``STREAMED`` body processing mode. For any other body
       processing modes, it is ignored.
       The server has two options upon receiving a header request:
      
       1. Instant Response: send the header response as soon as the header request is received.
      
       2. Delayed Response: wait for the body before sending any response.
      
       In all scenarios, the header-body ordering must always be maintained.
      
       If enabled the data plane will ignore the
       :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>`
       value that the server sends in the header response. This is because the data plane may have already
       sent the body to the server, prior to processing the header response.
       
      bool send_body_without_waiting_for_header_response = 21;
      Returns:
      This builder for chaining.
    • getAllowedOverrideModesList

      public List<ProcessingMode> getAllowedOverrideModesList()
       When :ref:`allow_mode_override
       <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.allow_mode_override>` is enabled and
       ``allowed_override_modes`` is configured, the filter config :ref:`processing_mode
       <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>`
       can only be overridden by the response message from the external processing server iff the
       :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>` is allowed by
       the ``allowed_override_modes`` allow-list below.
       Since ``request_header_mode`` is not applicable in any way, it's ignored in comparison.
       
      repeated .envoy.extensions.filters.http.ext_proc.v3.ProcessingMode allowed_override_modes = 22;
      Specified by:
      getAllowedOverrideModesList in interface ExternalProcessorOrBuilder
    • getAllowedOverrideModesCount

      public int getAllowedOverrideModesCount()
       When :ref:`allow_mode_override
       <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.allow_mode_override>` is enabled and
       ``allowed_override_modes`` is configured, the filter config :ref:`processing_mode
       <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>`
       can only be overridden by the response message from the external processing server iff the
       :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>` is allowed by
       the ``allowed_override_modes`` allow-list below.
       Since ``request_header_mode`` is not applicable in any way, it's ignored in comparison.
       
      repeated .envoy.extensions.filters.http.ext_proc.v3.ProcessingMode allowed_override_modes = 22;
      Specified by:
      getAllowedOverrideModesCount in interface ExternalProcessorOrBuilder
    • getAllowedOverrideModes

      public ProcessingMode getAllowedOverrideModes(int index)
       When :ref:`allow_mode_override
       <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.allow_mode_override>` is enabled and
       ``allowed_override_modes`` is configured, the filter config :ref:`processing_mode
       <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>`
       can only be overridden by the response message from the external processing server iff the
       :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>` is allowed by
       the ``allowed_override_modes`` allow-list below.
       Since ``request_header_mode`` is not applicable in any way, it's ignored in comparison.
       
      repeated .envoy.extensions.filters.http.ext_proc.v3.ProcessingMode allowed_override_modes = 22;
      Specified by:
      getAllowedOverrideModes in interface ExternalProcessorOrBuilder
    • setAllowedOverrideModes

      public ExternalProcessor.Builder setAllowedOverrideModes(int index, ProcessingMode value)
       When :ref:`allow_mode_override
       <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.allow_mode_override>` is enabled and
       ``allowed_override_modes`` is configured, the filter config :ref:`processing_mode
       <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>`
       can only be overridden by the response message from the external processing server iff the
       :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>` is allowed by
       the ``allowed_override_modes`` allow-list below.
       Since ``request_header_mode`` is not applicable in any way, it's ignored in comparison.
       
      repeated .envoy.extensions.filters.http.ext_proc.v3.ProcessingMode allowed_override_modes = 22;
    • setAllowedOverrideModes

      public ExternalProcessor.Builder setAllowedOverrideModes(int index, ProcessingMode.Builder builderForValue)
       When :ref:`allow_mode_override
       <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.allow_mode_override>` is enabled and
       ``allowed_override_modes`` is configured, the filter config :ref:`processing_mode
       <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>`
       can only be overridden by the response message from the external processing server iff the
       :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>` is allowed by
       the ``allowed_override_modes`` allow-list below.
       Since ``request_header_mode`` is not applicable in any way, it's ignored in comparison.
       
      repeated .envoy.extensions.filters.http.ext_proc.v3.ProcessingMode allowed_override_modes = 22;
    • addAllowedOverrideModes

      public ExternalProcessor.Builder addAllowedOverrideModes(ProcessingMode value)
       When :ref:`allow_mode_override
       <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.allow_mode_override>` is enabled and
       ``allowed_override_modes`` is configured, the filter config :ref:`processing_mode
       <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>`
       can only be overridden by the response message from the external processing server iff the
       :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>` is allowed by
       the ``allowed_override_modes`` allow-list below.
       Since ``request_header_mode`` is not applicable in any way, it's ignored in comparison.
       
      repeated .envoy.extensions.filters.http.ext_proc.v3.ProcessingMode allowed_override_modes = 22;
    • addAllowedOverrideModes

      public ExternalProcessor.Builder addAllowedOverrideModes(int index, ProcessingMode value)
       When :ref:`allow_mode_override
       <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.allow_mode_override>` is enabled and
       ``allowed_override_modes`` is configured, the filter config :ref:`processing_mode
       <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>`
       can only be overridden by the response message from the external processing server iff the
       :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>` is allowed by
       the ``allowed_override_modes`` allow-list below.
       Since ``request_header_mode`` is not applicable in any way, it's ignored in comparison.
       
      repeated .envoy.extensions.filters.http.ext_proc.v3.ProcessingMode allowed_override_modes = 22;
    • addAllowedOverrideModes

      public ExternalProcessor.Builder addAllowedOverrideModes(ProcessingMode.Builder builderForValue)
       When :ref:`allow_mode_override
       <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.allow_mode_override>` is enabled and
       ``allowed_override_modes`` is configured, the filter config :ref:`processing_mode
       <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>`
       can only be overridden by the response message from the external processing server iff the
       :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>` is allowed by
       the ``allowed_override_modes`` allow-list below.
       Since ``request_header_mode`` is not applicable in any way, it's ignored in comparison.
       
      repeated .envoy.extensions.filters.http.ext_proc.v3.ProcessingMode allowed_override_modes = 22;
    • addAllowedOverrideModes

      public ExternalProcessor.Builder addAllowedOverrideModes(int index, ProcessingMode.Builder builderForValue)
       When :ref:`allow_mode_override
       <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.allow_mode_override>` is enabled and
       ``allowed_override_modes`` is configured, the filter config :ref:`processing_mode
       <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>`
       can only be overridden by the response message from the external processing server iff the
       :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>` is allowed by
       the ``allowed_override_modes`` allow-list below.
       Since ``request_header_mode`` is not applicable in any way, it's ignored in comparison.
       
      repeated .envoy.extensions.filters.http.ext_proc.v3.ProcessingMode allowed_override_modes = 22;
    • addAllAllowedOverrideModes

      public ExternalProcessor.Builder addAllAllowedOverrideModes(Iterable<? extends ProcessingMode> values)
       When :ref:`allow_mode_override
       <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.allow_mode_override>` is enabled and
       ``allowed_override_modes`` is configured, the filter config :ref:`processing_mode
       <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>`
       can only be overridden by the response message from the external processing server iff the
       :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>` is allowed by
       the ``allowed_override_modes`` allow-list below.
       Since ``request_header_mode`` is not applicable in any way, it's ignored in comparison.
       
      repeated .envoy.extensions.filters.http.ext_proc.v3.ProcessingMode allowed_override_modes = 22;
    • clearAllowedOverrideModes

      public ExternalProcessor.Builder clearAllowedOverrideModes()
       When :ref:`allow_mode_override
       <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.allow_mode_override>` is enabled and
       ``allowed_override_modes`` is configured, the filter config :ref:`processing_mode
       <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>`
       can only be overridden by the response message from the external processing server iff the
       :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>` is allowed by
       the ``allowed_override_modes`` allow-list below.
       Since ``request_header_mode`` is not applicable in any way, it's ignored in comparison.
       
      repeated .envoy.extensions.filters.http.ext_proc.v3.ProcessingMode allowed_override_modes = 22;
    • removeAllowedOverrideModes

      public ExternalProcessor.Builder removeAllowedOverrideModes(int index)
       When :ref:`allow_mode_override
       <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.allow_mode_override>` is enabled and
       ``allowed_override_modes`` is configured, the filter config :ref:`processing_mode
       <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>`
       can only be overridden by the response message from the external processing server iff the
       :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>` is allowed by
       the ``allowed_override_modes`` allow-list below.
       Since ``request_header_mode`` is not applicable in any way, it's ignored in comparison.
       
      repeated .envoy.extensions.filters.http.ext_proc.v3.ProcessingMode allowed_override_modes = 22;
    • getAllowedOverrideModesBuilder

      public ProcessingMode.Builder getAllowedOverrideModesBuilder(int index)
       When :ref:`allow_mode_override
       <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.allow_mode_override>` is enabled and
       ``allowed_override_modes`` is configured, the filter config :ref:`processing_mode
       <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>`
       can only be overridden by the response message from the external processing server iff the
       :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>` is allowed by
       the ``allowed_override_modes`` allow-list below.
       Since ``request_header_mode`` is not applicable in any way, it's ignored in comparison.
       
      repeated .envoy.extensions.filters.http.ext_proc.v3.ProcessingMode allowed_override_modes = 22;
    • getAllowedOverrideModesOrBuilder

      public ProcessingModeOrBuilder getAllowedOverrideModesOrBuilder(int index)
       When :ref:`allow_mode_override
       <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.allow_mode_override>` is enabled and
       ``allowed_override_modes`` is configured, the filter config :ref:`processing_mode
       <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>`
       can only be overridden by the response message from the external processing server iff the
       :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>` is allowed by
       the ``allowed_override_modes`` allow-list below.
       Since ``request_header_mode`` is not applicable in any way, it's ignored in comparison.
       
      repeated .envoy.extensions.filters.http.ext_proc.v3.ProcessingMode allowed_override_modes = 22;
      Specified by:
      getAllowedOverrideModesOrBuilder in interface ExternalProcessorOrBuilder
    • getAllowedOverrideModesOrBuilderList

      public List<? extends ProcessingModeOrBuilder> getAllowedOverrideModesOrBuilderList()
       When :ref:`allow_mode_override
       <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.allow_mode_override>` is enabled and
       ``allowed_override_modes`` is configured, the filter config :ref:`processing_mode
       <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>`
       can only be overridden by the response message from the external processing server iff the
       :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>` is allowed by
       the ``allowed_override_modes`` allow-list below.
       Since ``request_header_mode`` is not applicable in any way, it's ignored in comparison.
       
      repeated .envoy.extensions.filters.http.ext_proc.v3.ProcessingMode allowed_override_modes = 22;
      Specified by:
      getAllowedOverrideModesOrBuilderList in interface ExternalProcessorOrBuilder
    • addAllowedOverrideModesBuilder

      public ProcessingMode.Builder addAllowedOverrideModesBuilder()
       When :ref:`allow_mode_override
       <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.allow_mode_override>` is enabled and
       ``allowed_override_modes`` is configured, the filter config :ref:`processing_mode
       <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>`
       can only be overridden by the response message from the external processing server iff the
       :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>` is allowed by
       the ``allowed_override_modes`` allow-list below.
       Since ``request_header_mode`` is not applicable in any way, it's ignored in comparison.
       
      repeated .envoy.extensions.filters.http.ext_proc.v3.ProcessingMode allowed_override_modes = 22;
    • addAllowedOverrideModesBuilder

      public ProcessingMode.Builder addAllowedOverrideModesBuilder(int index)
       When :ref:`allow_mode_override
       <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.allow_mode_override>` is enabled and
       ``allowed_override_modes`` is configured, the filter config :ref:`processing_mode
       <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>`
       can only be overridden by the response message from the external processing server iff the
       :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>` is allowed by
       the ``allowed_override_modes`` allow-list below.
       Since ``request_header_mode`` is not applicable in any way, it's ignored in comparison.
       
      repeated .envoy.extensions.filters.http.ext_proc.v3.ProcessingMode allowed_override_modes = 22;
    • getAllowedOverrideModesBuilderList

      public List<ProcessingMode.Builder> getAllowedOverrideModesBuilderList()
       When :ref:`allow_mode_override
       <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.allow_mode_override>` is enabled and
       ``allowed_override_modes`` is configured, the filter config :ref:`processing_mode
       <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>`
       can only be overridden by the response message from the external processing server iff the
       :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>` is allowed by
       the ``allowed_override_modes`` allow-list below.
       Since ``request_header_mode`` is not applicable in any way, it's ignored in comparison.
       
      repeated .envoy.extensions.filters.http.ext_proc.v3.ProcessingMode allowed_override_modes = 22;
    • hasProcessingRequestModifier

      public boolean hasProcessingRequestModifier()
       Decorator to introduce custom logic that runs after the ``ProcessingRequest`` is constructed, but
       before it is sent to the External Processor. The ``ProcessingRequest`` may be modified.
      
       .. note::
         Processing request modifiers are currently in alpha.
      
       [#extension-category: envoy.http.ext_proc.processing_request_modifiers]
       
      .envoy.config.core.v3.TypedExtensionConfig processing_request_modifier = 25 [(.xds.annotations.v3.field_status) = { ... }
      Specified by:
      hasProcessingRequestModifier in interface ExternalProcessorOrBuilder
      Returns:
      Whether the processingRequestModifier field is set.
    • getProcessingRequestModifier

      public TypedExtensionConfig getProcessingRequestModifier()
       Decorator to introduce custom logic that runs after the ``ProcessingRequest`` is constructed, but
       before it is sent to the External Processor. The ``ProcessingRequest`` may be modified.
      
       .. note::
         Processing request modifiers are currently in alpha.
      
       [#extension-category: envoy.http.ext_proc.processing_request_modifiers]
       
      .envoy.config.core.v3.TypedExtensionConfig processing_request_modifier = 25 [(.xds.annotations.v3.field_status) = { ... }
      Specified by:
      getProcessingRequestModifier in interface ExternalProcessorOrBuilder
      Returns:
      The processingRequestModifier.
    • setProcessingRequestModifier

      public ExternalProcessor.Builder setProcessingRequestModifier(TypedExtensionConfig value)
       Decorator to introduce custom logic that runs after the ``ProcessingRequest`` is constructed, but
       before it is sent to the External Processor. The ``ProcessingRequest`` may be modified.
      
       .. note::
         Processing request modifiers are currently in alpha.
      
       [#extension-category: envoy.http.ext_proc.processing_request_modifiers]
       
      .envoy.config.core.v3.TypedExtensionConfig processing_request_modifier = 25 [(.xds.annotations.v3.field_status) = { ... }
    • setProcessingRequestModifier

      public ExternalProcessor.Builder setProcessingRequestModifier(TypedExtensionConfig.Builder builderForValue)
       Decorator to introduce custom logic that runs after the ``ProcessingRequest`` is constructed, but
       before it is sent to the External Processor. The ``ProcessingRequest`` may be modified.
      
       .. note::
         Processing request modifiers are currently in alpha.
      
       [#extension-category: envoy.http.ext_proc.processing_request_modifiers]
       
      .envoy.config.core.v3.TypedExtensionConfig processing_request_modifier = 25 [(.xds.annotations.v3.field_status) = { ... }
    • mergeProcessingRequestModifier

      public ExternalProcessor.Builder mergeProcessingRequestModifier(TypedExtensionConfig value)
       Decorator to introduce custom logic that runs after the ``ProcessingRequest`` is constructed, but
       before it is sent to the External Processor. The ``ProcessingRequest`` may be modified.
      
       .. note::
         Processing request modifiers are currently in alpha.
      
       [#extension-category: envoy.http.ext_proc.processing_request_modifiers]
       
      .envoy.config.core.v3.TypedExtensionConfig processing_request_modifier = 25 [(.xds.annotations.v3.field_status) = { ... }
    • clearProcessingRequestModifier

      public ExternalProcessor.Builder clearProcessingRequestModifier()
       Decorator to introduce custom logic that runs after the ``ProcessingRequest`` is constructed, but
       before it is sent to the External Processor. The ``ProcessingRequest`` may be modified.
      
       .. note::
         Processing request modifiers are currently in alpha.
      
       [#extension-category: envoy.http.ext_proc.processing_request_modifiers]
       
      .envoy.config.core.v3.TypedExtensionConfig processing_request_modifier = 25 [(.xds.annotations.v3.field_status) = { ... }
    • getProcessingRequestModifierBuilder

      public TypedExtensionConfig.Builder getProcessingRequestModifierBuilder()
       Decorator to introduce custom logic that runs after the ``ProcessingRequest`` is constructed, but
       before it is sent to the External Processor. The ``ProcessingRequest`` may be modified.
      
       .. note::
         Processing request modifiers are currently in alpha.
      
       [#extension-category: envoy.http.ext_proc.processing_request_modifiers]
       
      .envoy.config.core.v3.TypedExtensionConfig processing_request_modifier = 25 [(.xds.annotations.v3.field_status) = { ... }
    • getProcessingRequestModifierOrBuilder

      public TypedExtensionConfigOrBuilder getProcessingRequestModifierOrBuilder()
       Decorator to introduce custom logic that runs after the ``ProcessingRequest`` is constructed, but
       before it is sent to the External Processor. The ``ProcessingRequest`` may be modified.
      
       .. note::
         Processing request modifiers are currently in alpha.
      
       [#extension-category: envoy.http.ext_proc.processing_request_modifiers]
       
      .envoy.config.core.v3.TypedExtensionConfig processing_request_modifier = 25 [(.xds.annotations.v3.field_status) = { ... }
      Specified by:
      getProcessingRequestModifierOrBuilder in interface ExternalProcessorOrBuilder
    • hasOnProcessingResponse

      public boolean hasOnProcessingResponse()
       Decorator to introduce custom logic that runs after a message received from
       the External Processor is processed, but before continuing filter chain iteration.
      
       .. note::
         Response processors are currently in alpha.
      
       [#extension-category: envoy.http.ext_proc.response_processors]
       
      .envoy.config.core.v3.TypedExtensionConfig on_processing_response = 23 [(.xds.annotations.v3.field_status) = { ... }
      Specified by:
      hasOnProcessingResponse in interface ExternalProcessorOrBuilder
      Returns:
      Whether the onProcessingResponse field is set.
    • getOnProcessingResponse

      public TypedExtensionConfig getOnProcessingResponse()
       Decorator to introduce custom logic that runs after a message received from
       the External Processor is processed, but before continuing filter chain iteration.
      
       .. note::
         Response processors are currently in alpha.
      
       [#extension-category: envoy.http.ext_proc.response_processors]
       
      .envoy.config.core.v3.TypedExtensionConfig on_processing_response = 23 [(.xds.annotations.v3.field_status) = { ... }
      Specified by:
      getOnProcessingResponse in interface ExternalProcessorOrBuilder
      Returns:
      The onProcessingResponse.
    • setOnProcessingResponse

      public ExternalProcessor.Builder setOnProcessingResponse(TypedExtensionConfig value)
       Decorator to introduce custom logic that runs after a message received from
       the External Processor is processed, but before continuing filter chain iteration.
      
       .. note::
         Response processors are currently in alpha.
      
       [#extension-category: envoy.http.ext_proc.response_processors]
       
      .envoy.config.core.v3.TypedExtensionConfig on_processing_response = 23 [(.xds.annotations.v3.field_status) = { ... }
    • setOnProcessingResponse

      public ExternalProcessor.Builder setOnProcessingResponse(TypedExtensionConfig.Builder builderForValue)
       Decorator to introduce custom logic that runs after a message received from
       the External Processor is processed, but before continuing filter chain iteration.
      
       .. note::
         Response processors are currently in alpha.
      
       [#extension-category: envoy.http.ext_proc.response_processors]
       
      .envoy.config.core.v3.TypedExtensionConfig on_processing_response = 23 [(.xds.annotations.v3.field_status) = { ... }
    • mergeOnProcessingResponse

      public ExternalProcessor.Builder mergeOnProcessingResponse(TypedExtensionConfig value)
       Decorator to introduce custom logic that runs after a message received from
       the External Processor is processed, but before continuing filter chain iteration.
      
       .. note::
         Response processors are currently in alpha.
      
       [#extension-category: envoy.http.ext_proc.response_processors]
       
      .envoy.config.core.v3.TypedExtensionConfig on_processing_response = 23 [(.xds.annotations.v3.field_status) = { ... }
    • clearOnProcessingResponse

      public ExternalProcessor.Builder clearOnProcessingResponse()
       Decorator to introduce custom logic that runs after a message received from
       the External Processor is processed, but before continuing filter chain iteration.
      
       .. note::
         Response processors are currently in alpha.
      
       [#extension-category: envoy.http.ext_proc.response_processors]
       
      .envoy.config.core.v3.TypedExtensionConfig on_processing_response = 23 [(.xds.annotations.v3.field_status) = { ... }
    • getOnProcessingResponseBuilder

      public TypedExtensionConfig.Builder getOnProcessingResponseBuilder()
       Decorator to introduce custom logic that runs after a message received from
       the External Processor is processed, but before continuing filter chain iteration.
      
       .. note::
         Response processors are currently in alpha.
      
       [#extension-category: envoy.http.ext_proc.response_processors]
       
      .envoy.config.core.v3.TypedExtensionConfig on_processing_response = 23 [(.xds.annotations.v3.field_status) = { ... }
    • getOnProcessingResponseOrBuilder

      public TypedExtensionConfigOrBuilder getOnProcessingResponseOrBuilder()
       Decorator to introduce custom logic that runs after a message received from
       the External Processor is processed, but before continuing filter chain iteration.
      
       .. note::
         Response processors are currently in alpha.
      
       [#extension-category: envoy.http.ext_proc.response_processors]
       
      .envoy.config.core.v3.TypedExtensionConfig on_processing_response = 23 [(.xds.annotations.v3.field_status) = { ... }
      Specified by:
      getOnProcessingResponseOrBuilder in interface ExternalProcessorOrBuilder
    • hasStatusOnError

      public boolean hasStatusOnError()
       Sets the HTTP status code that is returned to the client when the external processing server returns
       an error, fails to respond, or cannot be reached.
      
       The default status is ``HTTP 500 Internal Server Error``.
       
      .envoy.type.v3.HttpStatus status_on_error = 24;
      Specified by:
      hasStatusOnError in interface ExternalProcessorOrBuilder
      Returns:
      Whether the statusOnError field is set.
    • getStatusOnError

      public HttpStatus getStatusOnError()
       Sets the HTTP status code that is returned to the client when the external processing server returns
       an error, fails to respond, or cannot be reached.
      
       The default status is ``HTTP 500 Internal Server Error``.
       
      .envoy.type.v3.HttpStatus status_on_error = 24;
      Specified by:
      getStatusOnError in interface ExternalProcessorOrBuilder
      Returns:
      The statusOnError.
    • setStatusOnError

      public ExternalProcessor.Builder setStatusOnError(HttpStatus value)
       Sets the HTTP status code that is returned to the client when the external processing server returns
       an error, fails to respond, or cannot be reached.
      
       The default status is ``HTTP 500 Internal Server Error``.
       
      .envoy.type.v3.HttpStatus status_on_error = 24;
    • setStatusOnError

      public ExternalProcessor.Builder setStatusOnError(HttpStatus.Builder builderForValue)
       Sets the HTTP status code that is returned to the client when the external processing server returns
       an error, fails to respond, or cannot be reached.
      
       The default status is ``HTTP 500 Internal Server Error``.
       
      .envoy.type.v3.HttpStatus status_on_error = 24;
    • mergeStatusOnError

      public ExternalProcessor.Builder mergeStatusOnError(HttpStatus value)
       Sets the HTTP status code that is returned to the client when the external processing server returns
       an error, fails to respond, or cannot be reached.
      
       The default status is ``HTTP 500 Internal Server Error``.
       
      .envoy.type.v3.HttpStatus status_on_error = 24;
    • clearStatusOnError

      public ExternalProcessor.Builder clearStatusOnError()
       Sets the HTTP status code that is returned to the client when the external processing server returns
       an error, fails to respond, or cannot be reached.
      
       The default status is ``HTTP 500 Internal Server Error``.
       
      .envoy.type.v3.HttpStatus status_on_error = 24;
    • getStatusOnErrorBuilder

      public HttpStatus.Builder getStatusOnErrorBuilder()
       Sets the HTTP status code that is returned to the client when the external processing server returns
       an error, fails to respond, or cannot be reached.
      
       The default status is ``HTTP 500 Internal Server Error``.
       
      .envoy.type.v3.HttpStatus status_on_error = 24;
    • getStatusOnErrorOrBuilder

      public HttpStatusOrBuilder getStatusOnErrorOrBuilder()
       Sets the HTTP status code that is returned to the client when the external processing server returns
       an error, fails to respond, or cannot be reached.
      
       The default status is ``HTTP 500 Internal Server Error``.
       
      .envoy.type.v3.HttpStatus status_on_error = 24;
      Specified by:
      getStatusOnErrorOrBuilder in interface ExternalProcessorOrBuilder
    • setUnknownFields

      public final ExternalProcessor.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<ExternalProcessor.Builder>
    • mergeUnknownFields

      public final ExternalProcessor.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<ExternalProcessor.Builder>