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 TypeMethodDescriptionaddAllAllowedOverrideModes(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.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.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.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.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.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.addAllRequestAttributes(Iterable<String> values) The data plane provides a number of :ref:`attributes <arch_overview_attributes>` for expressive policies.addAllResponseAttributes(Iterable<String> values) The data plane provides a number of :ref:`attributes <arch_overview_attributes>` for expressive policies.addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value) addRequestAttributes(String 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.addResponseAttributes(String value) 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.build()clear()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.clone()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.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.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.intWhen :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.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.List<? extends ProcessingModeOrBuilder>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.booleanIf ``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.DurationSpecifies the deferred closure timeout for gRPC stream that connects to external processor.com.google.protobuf.Duration.BuilderSpecifies the deferred closure timeout for gRPC stream that connects to external processor.com.google.protobuf.DurationOrBuilderSpecifies the deferred closure timeout for gRPC stream that connects to external processor.static final com.google.protobuf.Descriptors.Descriptorcom.google.protobuf.Descriptors.DescriptorbooleanPrevents 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.booleanIf 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.booleanBy default, if in the following cases: 1.com.google.protobuf.StructAdditional metadata to be added to the filter state for logging purposes.com.google.protobuf.Struct.BuilderAdditional metadata to be added to the filter state for logging purposes.com.google.protobuf.StructOrBuilderAdditional 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.DurationSpecify 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.BuilderSpecify 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.DurationOrBuilderSpecify 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.DurationSpecifies the timeout for each individual message sent on the stream.com.google.protobuf.Duration.BuilderSpecifies the timeout for each individual message sent on the stream.com.google.protobuf.DurationOrBuilderSpecifies 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.booleanIf 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.getRequestAttributes(int index) The data plane provides a number of :ref:`attributes <arch_overview_attributes>` for expressive policies.com.google.protobuf.ByteStringgetRequestAttributesBytes(int index) The data plane provides a number of :ref:`attributes <arch_overview_attributes>` for expressive policies.intThe data plane provides a number of :ref:`attributes <arch_overview_attributes>` for expressive policies.com.google.protobuf.ProtocolStringListThe data plane provides a number of :ref:`attributes <arch_overview_attributes>` for expressive policies.getResponseAttributes(int index) The data plane provides a number of :ref:`attributes <arch_overview_attributes>` for expressive policies.com.google.protobuf.ByteStringgetResponseAttributesBytes(int index) The data plane provides a number of :ref:`attributes <arch_overview_attributes>` for expressive policies.intThe data plane provides a number of :ref:`attributes <arch_overview_attributes>` for expressive policies.com.google.protobuf.ProtocolStringListThe 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.intSpecifies the action to be taken when an external processor response is received in response to request headers.booleanSend 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.ByteStringOptional 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.booleanSpecifies the deferred closure timeout for gRPC stream that connects to external processor.booleanAdditional metadata to be added to the filter state for logging purposes.booleanAllow headers matching the ``forward_rules`` to be forwarded to the external processing server.booleanConfiguration for the gRPC service that the filter will communicate with.booleanConfiguration for the HTTP service that the filter will communicate with.booleanSpecify 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.booleanSpecifies the timeout for each individual message sent on the stream.booleanOptions related to the sending and receiving of dynamic metadata.booleanRules that determine what modifications an external processing server may make to message headers.booleanDecorator 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.booleanSpecifies default options for how HTTP headers, trailers, and bodies are sent.booleanDecorator to introduce custom logic that runs after the ``ProcessingRequest`` is constructed, but before it is sent to the External Processor.booleanSets 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.FieldAccessorTablefinal booleanmergeDeferredCloseTimeout(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) mergeFrom(ExternalProcessor other) mergeGrpcService(GrpcService value) 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.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.mergeUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields) 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.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.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.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.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.setFailureModeAllow(boolean value) By default, if in the following cases: 1.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.setForwardRules(HeaderForwardingRules.Builder builderForValue) Allow headers matching the ``forward_rules`` to be forwarded to the external processing server.setGrpcService(GrpcService value) Configuration for the gRPC service that the filter will communicate with.setGrpcService(GrpcService.Builder builderForValue) Configuration for the gRPC service that the filter will communicate with.setHttpService(ExtProcHttpService value) Configuration for the HTTP service that the filter will communicate with.setHttpService(ExtProcHttpService.Builder builderForValue) 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.setMetadataOptions(MetadataOptions.Builder builderForValue) Options related to the sending and receiving of dynamic metadata.Rules that determine what modifications an external processing server may make to message headers.setMutationRules(HeaderMutationRules.Builder builderForValue) 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.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.setProcessingMode(ProcessingMode value) Specifies default options for how HTTP headers, trailers, and bodies are sent.setProcessingMode(ProcessingMode.Builder builderForValue) 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.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.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.setRouteCacheActionValue(int value) Specifies the action to be taken when an external processor response is received in response to request headers.setSendBodyWithoutWaitingForHeaderResponse(boolean value) Send body to the side stream server once it arrives without waiting for the header response from that server.setStatPrefix(String value) Optional additional prefix to use when emitting statistics.setStatPrefixBytes(com.google.protobuf.ByteString value) Optional additional prefix to use when emitting statistics.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.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.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, setUnknownFieldsProto3Methods inherited from class com.google.protobuf.AbstractMessage.Builder
findInitializationErrors, getInitializationErrorString, internalMergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, newUninitializedMessageException, toStringMethods inherited from class com.google.protobuf.AbstractMessageLite.Builder
addAll, addAll, mergeDelimitedFrom, mergeDelimitedFrom, mergeFrom, newUninitializedMessageExceptionMethods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface com.google.protobuf.Message.Builder
mergeDelimitedFrom, mergeDelimitedFromMethods inherited from interface com.google.protobuf.MessageLite.Builder
mergeFromMethods 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:
internalGetFieldAccessorTablein classcom.google.protobuf.GeneratedMessageV3.Builder<ExternalProcessor.Builder>
-
clear
- Specified by:
clearin interfacecom.google.protobuf.Message.Builder- Specified by:
clearin interfacecom.google.protobuf.MessageLite.Builder- Overrides:
clearin classcom.google.protobuf.GeneratedMessageV3.Builder<ExternalProcessor.Builder>
-
getDescriptorForType
public com.google.protobuf.Descriptors.Descriptor getDescriptorForType()- Specified by:
getDescriptorForTypein interfacecom.google.protobuf.Message.Builder- Specified by:
getDescriptorForTypein interfacecom.google.protobuf.MessageOrBuilder- Overrides:
getDescriptorForTypein classcom.google.protobuf.GeneratedMessageV3.Builder<ExternalProcessor.Builder>
-
getDefaultInstanceForType
- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageLiteOrBuilder- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageOrBuilder
-
build
- Specified by:
buildin interfacecom.google.protobuf.Message.Builder- Specified by:
buildin interfacecom.google.protobuf.MessageLite.Builder
-
buildPartial
- Specified by:
buildPartialin interfacecom.google.protobuf.Message.Builder- Specified by:
buildPartialin interfacecom.google.protobuf.MessageLite.Builder
-
clone
- Specified by:
clonein interfacecom.google.protobuf.Message.Builder- Specified by:
clonein interfacecom.google.protobuf.MessageLite.Builder- Overrides:
clonein classcom.google.protobuf.GeneratedMessageV3.Builder<ExternalProcessor.Builder>
-
setField
public ExternalProcessor.Builder setField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value) - Specified by:
setFieldin interfacecom.google.protobuf.Message.Builder- Overrides:
setFieldin classcom.google.protobuf.GeneratedMessageV3.Builder<ExternalProcessor.Builder>
-
clearField
- Specified by:
clearFieldin interfacecom.google.protobuf.Message.Builder- Overrides:
clearFieldin classcom.google.protobuf.GeneratedMessageV3.Builder<ExternalProcessor.Builder>
-
clearOneof
- Specified by:
clearOneofin interfacecom.google.protobuf.Message.Builder- Overrides:
clearOneofin classcom.google.protobuf.GeneratedMessageV3.Builder<ExternalProcessor.Builder>
-
setRepeatedField
public ExternalProcessor.Builder setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, int index, Object value) - Specified by:
setRepeatedFieldin interfacecom.google.protobuf.Message.Builder- Overrides:
setRepeatedFieldin classcom.google.protobuf.GeneratedMessageV3.Builder<ExternalProcessor.Builder>
-
addRepeatedField
public ExternalProcessor.Builder addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value) - Specified by:
addRepeatedFieldin interfacecom.google.protobuf.Message.Builder- Overrides:
addRepeatedFieldin classcom.google.protobuf.GeneratedMessageV3.Builder<ExternalProcessor.Builder>
-
mergeFrom
- Specified by:
mergeFromin interfacecom.google.protobuf.Message.Builder- Overrides:
mergeFromin classcom.google.protobuf.AbstractMessage.Builder<ExternalProcessor.Builder>
-
mergeFrom
-
isInitialized
public final boolean isInitialized()- Specified by:
isInitializedin interfacecom.google.protobuf.MessageLiteOrBuilder- Overrides:
isInitializedin classcom.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:
mergeFromin interfacecom.google.protobuf.Message.Builder- Specified by:
mergeFromin interfacecom.google.protobuf.MessageLite.Builder- Overrides:
mergeFromin classcom.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:
hasGrpcServicein interfaceExternalProcessorOrBuilder- Returns:
- Whether the grpcService field is set.
-
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:
getGrpcServicein interfaceExternalProcessorOrBuilder- Returns:
- The grpcService.
-
setGrpcService
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
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
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
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
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
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:
getGrpcServiceOrBuilderin interfaceExternalProcessorOrBuilder
-
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:
hasHttpServicein interfaceExternalProcessorOrBuilder- Returns:
- Whether the httpService field is set.
-
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:
getHttpServicein interfaceExternalProcessorOrBuilder- Returns:
- The httpService.
-
setHttpService
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
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
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
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
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
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:
getHttpServiceOrBuilderin interfaceExternalProcessorOrBuilder
-
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:
getFailureModeAllowin interfaceExternalProcessorOrBuilder- Returns:
- The failureModeAllow.
-
setFailureModeAllow
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
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:
hasProcessingModein interfaceExternalProcessorOrBuilder- Returns:
- Whether the processingMode field is set.
-
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:
getProcessingModein interfaceExternalProcessorOrBuilder- Returns:
- The processingMode.
-
setProcessingMode
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
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
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
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
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
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:
getProcessingModeOrBuilderin interfaceExternalProcessorOrBuilder
-
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:
getRequestAttributesListin interfaceExternalProcessorOrBuilder- 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:
getRequestAttributesCountin interfaceExternalProcessorOrBuilder- Returns:
- The count of requestAttributes.
-
getRequestAttributes
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:
getRequestAttributesin interfaceExternalProcessorOrBuilder- 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:
getRequestAttributesBytesin interfaceExternalProcessorOrBuilder- Parameters:
index- The index of the value to return.- Returns:
- The bytes of the requestAttributes at the given index.
-
setRequestAttributes
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
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
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
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
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:
getResponseAttributesListin interfaceExternalProcessorOrBuilder- 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:
getResponseAttributesCountin interfaceExternalProcessorOrBuilder- Returns:
- The count of responseAttributes.
-
getResponseAttributes
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:
getResponseAttributesin interfaceExternalProcessorOrBuilder- 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:
getResponseAttributesBytesin interfaceExternalProcessorOrBuilder- Parameters:
index- The index of the value to return.- Returns:
- The bytes of the responseAttributes at the given index.
-
setResponseAttributes
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
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
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
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
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:
hasMessageTimeoutin interfaceExternalProcessorOrBuilder- 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:
getMessageTimeoutin interfaceExternalProcessorOrBuilder- Returns:
- The messageTimeout.
-
setMessageTimeout
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
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
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:
getMessageTimeoutOrBuilderin interfaceExternalProcessorOrBuilder
-
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:
getStatPrefixin interfaceExternalProcessorOrBuilder- 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:
getStatPrefixBytesin interfaceExternalProcessorOrBuilder- Returns:
- The bytes for statPrefix.
-
setStatPrefix
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
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
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:
hasMutationRulesin interfaceExternalProcessorOrBuilder- Returns:
- Whether the mutationRules field is set.
-
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:
getMutationRulesin interfaceExternalProcessorOrBuilder- Returns:
- The mutationRules.
-
setMutationRules
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
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
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
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
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
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:
getMutationRulesOrBuilderin interfaceExternalProcessorOrBuilder
-
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:
hasMaxMessageTimeoutin interfaceExternalProcessorOrBuilder- 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:
getMaxMessageTimeoutin interfaceExternalProcessorOrBuilder- Returns:
- The maxMessageTimeout.
-
setMaxMessageTimeout
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
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
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:
getMaxMessageTimeoutOrBuilderin interfaceExternalProcessorOrBuilder
-
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:
hasForwardRulesin interfaceExternalProcessorOrBuilder- Returns:
- Whether the forwardRules field is set.
-
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:
getForwardRulesin interfaceExternalProcessorOrBuilder- Returns:
- The forwardRules.
-
setForwardRules
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
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
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
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
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
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:
getForwardRulesOrBuilderin interfaceExternalProcessorOrBuilder
-
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:
hasFilterMetadatain interfaceExternalProcessorOrBuilder- 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:
getFilterMetadatain interfaceExternalProcessorOrBuilder- Returns:
- The filterMetadata.
-
setFilterMetadata
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
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
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:
getFilterMetadataOrBuilderin interfaceExternalProcessorOrBuilder
-
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:
getAllowModeOverridein interfaceExternalProcessorOrBuilder- Returns:
- The allowModeOverride.
-
setAllowModeOverride
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
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:
getDisableImmediateResponsein interfaceExternalProcessorOrBuilder- Returns:
- The disableImmediateResponse.
-
setDisableImmediateResponse
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
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:
hasMetadataOptionsin interfaceExternalProcessorOrBuilder- Returns:
- Whether the metadataOptions field is set.
-
getMetadataOptions
Options related to the sending and receiving of dynamic metadata.
.envoy.extensions.filters.http.ext_proc.v3.MetadataOptions metadata_options = 16;- Specified by:
getMetadataOptionsin interfaceExternalProcessorOrBuilder- Returns:
- The metadataOptions.
-
setMetadataOptions
Options related to the sending and receiving of dynamic metadata.
.envoy.extensions.filters.http.ext_proc.v3.MetadataOptions metadata_options = 16; -
setMetadataOptions
Options related to the sending and receiving of dynamic metadata.
.envoy.extensions.filters.http.ext_proc.v3.MetadataOptions metadata_options = 16; -
mergeMetadataOptions
Options related to the sending and receiving of dynamic metadata.
.envoy.extensions.filters.http.ext_proc.v3.MetadataOptions metadata_options = 16; -
clearMetadataOptions
Options related to the sending and receiving of dynamic metadata.
.envoy.extensions.filters.http.ext_proc.v3.MetadataOptions metadata_options = 16; -
getMetadataOptionsBuilder
Options related to the sending and receiving of dynamic metadata.
.envoy.extensions.filters.http.ext_proc.v3.MetadataOptions metadata_options = 16; -
getMetadataOptionsOrBuilder
Options related to the sending and receiving of dynamic metadata.
.envoy.extensions.filters.http.ext_proc.v3.MetadataOptions metadata_options = 16;- Specified by:
getMetadataOptionsOrBuilderin interfaceExternalProcessorOrBuilder
-
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:
getObservabilityModein interfaceExternalProcessorOrBuilder- Returns:
- The observabilityMode.
-
setObservabilityMode
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
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:
getDisableClearRouteCachein interfaceExternalProcessorOrBuilder- Returns:
- The disableClearRouteCache.
-
setDisableClearRouteCache
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
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:
getRouteCacheActionValuein interfaceExternalProcessorOrBuilder- Returns:
- The enum numeric value on the wire for routeCacheAction.
-
setRouteCacheActionValue
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
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:
getRouteCacheActionin interfaceExternalProcessorOrBuilder- 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
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:
hasDeferredCloseTimeoutin interfaceExternalProcessorOrBuilder- 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:
getDeferredCloseTimeoutin interfaceExternalProcessorOrBuilder- Returns:
- The deferredCloseTimeout.
-
setDeferredCloseTimeout
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
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
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:
getDeferredCloseTimeoutOrBuilderin interfaceExternalProcessorOrBuilder
-
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:
getSendBodyWithoutWaitingForHeaderResponsein interfaceExternalProcessorOrBuilder- Returns:
- The sendBodyWithoutWaitingForHeaderResponse.
-
setSendBodyWithoutWaitingForHeaderResponse
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
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
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:
getAllowedOverrideModesListin interfaceExternalProcessorOrBuilder
-
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:
getAllowedOverrideModesCountin interfaceExternalProcessorOrBuilder
-
getAllowedOverrideModes
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:
getAllowedOverrideModesin interfaceExternalProcessorOrBuilder
-
setAllowedOverrideModes
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
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
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
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
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
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
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
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:
getAllowedOverrideModesOrBuilderin interfaceExternalProcessorOrBuilder
-
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:
getAllowedOverrideModesOrBuilderListin interfaceExternalProcessorOrBuilder
-
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
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
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:
hasProcessingRequestModifierin interfaceExternalProcessorOrBuilder- Returns:
- Whether the processingRequestModifier field is set.
-
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:
getProcessingRequestModifierin interfaceExternalProcessorOrBuilder- Returns:
- The processingRequestModifier.
-
setProcessingRequestModifier
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
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
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
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
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:
getProcessingRequestModifierOrBuilderin interfaceExternalProcessorOrBuilder
-
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:
hasOnProcessingResponsein interfaceExternalProcessorOrBuilder- Returns:
- Whether the onProcessingResponse field is set.
-
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:
getOnProcessingResponsein interfaceExternalProcessorOrBuilder- Returns:
- The onProcessingResponse.
-
setOnProcessingResponse
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
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
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
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
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:
getOnProcessingResponseOrBuilderin interfaceExternalProcessorOrBuilder
-
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:
hasStatusOnErrorin interfaceExternalProcessorOrBuilder- Returns:
- Whether the statusOnError field is set.
-
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:
getStatusOnErrorin interfaceExternalProcessorOrBuilder- Returns:
- The statusOnError.
-
setStatusOnError
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
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
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
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
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
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:
getStatusOnErrorOrBuilderin interfaceExternalProcessorOrBuilder
-
setUnknownFields
public final ExternalProcessor.Builder setUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields) - Specified by:
setUnknownFieldsin interfacecom.google.protobuf.Message.Builder- Overrides:
setUnknownFieldsin classcom.google.protobuf.GeneratedMessageV3.Builder<ExternalProcessor.Builder>
-
mergeUnknownFields
public final ExternalProcessor.Builder mergeUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields) - Specified by:
mergeUnknownFieldsin interfacecom.google.protobuf.Message.Builder- Overrides:
mergeUnknownFieldsin classcom.google.protobuf.GeneratedMessageV3.Builder<ExternalProcessor.Builder>
-