Class ExternalProcessor.Builder
- java.lang.Object
-
- com.google.protobuf.AbstractMessageLite.Builder
-
- com.google.protobuf.AbstractMessage.Builder<BuilderType>
-
- 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 * Whether subsequent HTTP requests are transmitted synchronously or whether they are sent asynchronously. * 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: Delivered if they are present and sent in a single message if the BUFFERED or BUFFERED_PARTIAL mode is chosen, in multiple messages if the STREAMED mode is chosen, and not at all otherwise. * 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 proxy 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. * A server may asynchronously monitor traffic coming through the filter by inspecting headers, bodies, or both, and then decide to switch to a synchronous processing mode, either permanently or temporarily. The protocol itself is based on a bidirectional gRPC stream. Envoy 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: 16]
Protobuf typeenvoy.extensions.filters.http.ext_proc.v3.ExternalProcessor
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description ExternalProcessor.BuilderaddAllRequestAttributes(Iterable<String> values)[#not-implemented-hide:] Envoy provides a number of :ref:`attributes <arch_overview_attributes>` for expressive policies.ExternalProcessor.BuilderaddAllResponseAttributes(Iterable<String> values)[#not-implemented-hide:] Envoy provides a number of :ref:`attributes <arch_overview_attributes>` for expressive policies.ExternalProcessor.BuilderaddRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value)ExternalProcessor.BuilderaddRequestAttributes(String value)[#not-implemented-hide:] Envoy provides a number of :ref:`attributes <arch_overview_attributes>` for expressive policies.ExternalProcessor.BuilderaddRequestAttributesBytes(com.google.protobuf.ByteString value)[#not-implemented-hide:] Envoy provides a number of :ref:`attributes <arch_overview_attributes>` for expressive policies.ExternalProcessor.BuilderaddResponseAttributes(String value)[#not-implemented-hide:] Envoy provides a number of :ref:`attributes <arch_overview_attributes>` for expressive policies.ExternalProcessor.BuilderaddResponseAttributesBytes(com.google.protobuf.ByteString value)[#not-implemented-hide:] Envoy provides a number of :ref:`attributes <arch_overview_attributes>` for expressive policies.ExternalProcessorbuild()ExternalProcessorbuildPartial()ExternalProcessor.Builderclear()ExternalProcessor.BuilderclearAllowModeOverride()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>`.ExternalProcessor.BuilderclearAsyncMode()[#not-implemented-hide:] If true, send each part of the HTTP request or response specified by ProcessingMode asynchronously -- in other words, send the message on the gRPC stream and then continue filter processing.ExternalProcessor.BuilderclearDisableClearRouteCache()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.ExternalProcessor.BuilderclearDisableImmediateResponse()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.ExternalProcessor.BuilderclearFailureModeAllow()By default, if the gRPC stream cannot be established, or if it is closed prematurely with an error, the filter will fail.ExternalProcessor.BuilderclearField(com.google.protobuf.Descriptors.FieldDescriptor field)ExternalProcessor.BuilderclearFilterMetadata()Additional metadata to be added to the filter state for logging purposes.ExternalProcessor.BuilderclearForwardRules()Allow headers matching the ``forward_rules`` to be forwarded to the external processing server.ExternalProcessor.BuilderclearGrpcService()Configuration for the gRPC service that the filter will communicate with.ExternalProcessor.BuilderclearMaxMessageTimeout()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.ExternalProcessor.BuilderclearMessageTimeout()Specifies the timeout for each individual message sent on the stream and when the filter is running in synchronous mode.ExternalProcessor.BuilderclearMutationRules()Rules that determine what modifications an external processing server may make to message headers.ExternalProcessor.BuilderclearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof)ExternalProcessor.BuilderclearProcessingMode()Specifies default options for how HTTP headers, trailers, and bodies are sent.ExternalProcessor.BuilderclearRequestAttributes()[#not-implemented-hide:] Envoy provides a number of :ref:`attributes <arch_overview_attributes>` for expressive policies.ExternalProcessor.BuilderclearResponseAttributes()[#not-implemented-hide:] Envoy provides a number of :ref:`attributes <arch_overview_attributes>` for expressive policies.ExternalProcessor.BuilderclearStatPrefix()Optional additional prefix to use when emitting statistics.ExternalProcessor.Builderclone()booleangetAllowModeOverride()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>`.booleangetAsyncMode()[#not-implemented-hide:] If true, send each part of the HTTP request or response specified by ProcessingMode asynchronously -- in other words, send the message on the gRPC stream and then continue filter processing.ExternalProcessorgetDefaultInstanceForType()static com.google.protobuf.Descriptors.DescriptorgetDescriptor()com.google.protobuf.Descriptors.DescriptorgetDescriptorForType()booleangetDisableClearRouteCache()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.booleangetDisableImmediateResponse()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.booleangetFailureModeAllow()By default, if the gRPC stream cannot be established, or if it is closed prematurely with an error, the filter will fail.com.google.protobuf.StructgetFilterMetadata()Additional metadata to be added to the filter state for logging purposes.com.google.protobuf.Struct.BuildergetFilterMetadataBuilder()Additional metadata to be added to the filter state for logging purposes.com.google.protobuf.StructOrBuildergetFilterMetadataOrBuilder()Additional metadata to be added to the filter state for logging purposes.HeaderForwardingRulesgetForwardRules()Allow headers matching the ``forward_rules`` to be forwarded to the external processing server.HeaderForwardingRules.BuildergetForwardRulesBuilder()Allow headers matching the ``forward_rules`` to be forwarded to the external processing server.HeaderForwardingRulesOrBuildergetForwardRulesOrBuilder()Allow headers matching the ``forward_rules`` to be forwarded to the external processing server.GrpcServicegetGrpcService()Configuration for the gRPC service that the filter will communicate with.GrpcService.BuildergetGrpcServiceBuilder()Configuration for the gRPC service that the filter will communicate with.GrpcServiceOrBuildergetGrpcServiceOrBuilder()Configuration for the gRPC service that the filter will communicate with.com.google.protobuf.DurationgetMaxMessageTimeout()Specify the upper bound of :ref:`override_message_timeout <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.override_message_timeout>` If not specified, by default it is 0, which will effectively disable the ``override_message_timeout`` API.com.google.protobuf.Duration.BuildergetMaxMessageTimeoutBuilder()Specify the upper bound of :ref:`override_message_timeout <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.override_message_timeout>` If not specified, by default it is 0, which will effectively disable the ``override_message_timeout`` API.com.google.protobuf.DurationOrBuildergetMaxMessageTimeoutOrBuilder()Specify the upper bound of :ref:`override_message_timeout <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.override_message_timeout>` If not specified, by default it is 0, which will effectively disable the ``override_message_timeout`` API.com.google.protobuf.DurationgetMessageTimeout()Specifies the timeout for each individual message sent on the stream and when the filter is running in synchronous mode.com.google.protobuf.Duration.BuildergetMessageTimeoutBuilder()Specifies the timeout for each individual message sent on the stream and when the filter is running in synchronous mode.com.google.protobuf.DurationOrBuildergetMessageTimeoutOrBuilder()Specifies the timeout for each individual message sent on the stream and when the filter is running in synchronous mode.HeaderMutationRulesgetMutationRules()Rules that determine what modifications an external processing server may make to message headers.HeaderMutationRules.BuildergetMutationRulesBuilder()Rules that determine what modifications an external processing server may make to message headers.HeaderMutationRulesOrBuildergetMutationRulesOrBuilder()Rules that determine what modifications an external processing server may make to message headers.ProcessingModegetProcessingMode()Specifies default options for how HTTP headers, trailers, and bodies are sent.ProcessingMode.BuildergetProcessingModeBuilder()Specifies default options for how HTTP headers, trailers, and bodies are sent.ProcessingModeOrBuildergetProcessingModeOrBuilder()Specifies default options for how HTTP headers, trailers, and bodies are sent.StringgetRequestAttributes(int index)[#not-implemented-hide:] Envoy provides a number of :ref:`attributes <arch_overview_attributes>` for expressive policies.com.google.protobuf.ByteStringgetRequestAttributesBytes(int index)[#not-implemented-hide:] Envoy provides a number of :ref:`attributes <arch_overview_attributes>` for expressive policies.intgetRequestAttributesCount()[#not-implemented-hide:] Envoy provides a number of :ref:`attributes <arch_overview_attributes>` for expressive policies.com.google.protobuf.ProtocolStringListgetRequestAttributesList()[#not-implemented-hide:] Envoy provides a number of :ref:`attributes <arch_overview_attributes>` for expressive policies.StringgetResponseAttributes(int index)[#not-implemented-hide:] Envoy provides a number of :ref:`attributes <arch_overview_attributes>` for expressive policies.com.google.protobuf.ByteStringgetResponseAttributesBytes(int index)[#not-implemented-hide:] Envoy provides a number of :ref:`attributes <arch_overview_attributes>` for expressive policies.intgetResponseAttributesCount()[#not-implemented-hide:] Envoy provides a number of :ref:`attributes <arch_overview_attributes>` for expressive policies.com.google.protobuf.ProtocolStringListgetResponseAttributesList()[#not-implemented-hide:] Envoy provides a number of :ref:`attributes <arch_overview_attributes>` for expressive policies.StringgetStatPrefix()Optional additional prefix to use when emitting statistics.com.google.protobuf.ByteStringgetStatPrefixBytes()Optional additional prefix to use when emitting statistics.booleanhasFilterMetadata()Additional metadata to be added to the filter state for logging purposes.booleanhasForwardRules()Allow headers matching the ``forward_rules`` to be forwarded to the external processing server.booleanhasGrpcService()Configuration for the gRPC service that the filter will communicate with.booleanhasMaxMessageTimeout()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.booleanhasMessageTimeout()Specifies the timeout for each individual message sent on the stream and when the filter is running in synchronous mode.booleanhasMutationRules()Rules that determine what modifications an external processing server may make to message headers.booleanhasProcessingMode()Specifies default options for how HTTP headers, trailers, and bodies are sent.protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTableinternalGetFieldAccessorTable()booleanisInitialized()ExternalProcessor.BuildermergeFilterMetadata(com.google.protobuf.Struct value)Additional metadata to be added to the filter state for logging purposes.ExternalProcessor.BuildermergeForwardRules(HeaderForwardingRules value)Allow headers matching the ``forward_rules`` to be forwarded to the external processing server.ExternalProcessor.BuildermergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)ExternalProcessor.BuildermergeFrom(com.google.protobuf.Message other)ExternalProcessor.BuildermergeFrom(ExternalProcessor other)ExternalProcessor.BuildermergeGrpcService(GrpcService value)Configuration for the gRPC service that the filter will communicate with.ExternalProcessor.BuildermergeMaxMessageTimeout(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.ExternalProcessor.BuildermergeMessageTimeout(com.google.protobuf.Duration value)Specifies the timeout for each individual message sent on the stream and when the filter is running in synchronous mode.ExternalProcessor.BuildermergeMutationRules(HeaderMutationRules value)Rules that determine what modifications an external processing server may make to message headers.ExternalProcessor.BuildermergeProcessingMode(ProcessingMode value)Specifies default options for how HTTP headers, trailers, and bodies are sent.ExternalProcessor.BuildermergeUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)ExternalProcessor.BuildersetAllowModeOverride(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>`.ExternalProcessor.BuildersetAsyncMode(boolean value)[#not-implemented-hide:] If true, send each part of the HTTP request or response specified by ProcessingMode asynchronously -- in other words, send the message on the gRPC stream and then continue filter processing.ExternalProcessor.BuildersetDisableClearRouteCache(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.ExternalProcessor.BuildersetDisableImmediateResponse(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.ExternalProcessor.BuildersetFailureModeAllow(boolean value)By default, if the gRPC stream cannot be established, or if it is closed prematurely with an error, the filter will fail.ExternalProcessor.BuildersetField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value)ExternalProcessor.BuildersetFilterMetadata(com.google.protobuf.Struct value)Additional metadata to be added to the filter state for logging purposes.ExternalProcessor.BuildersetFilterMetadata(com.google.protobuf.Struct.Builder builderForValue)Additional metadata to be added to the filter state for logging purposes.ExternalProcessor.BuildersetForwardRules(HeaderForwardingRules value)Allow headers matching the ``forward_rules`` to be forwarded to the external processing server.ExternalProcessor.BuildersetForwardRules(HeaderForwardingRules.Builder builderForValue)Allow headers matching the ``forward_rules`` to be forwarded to the external processing server.ExternalProcessor.BuildersetGrpcService(GrpcService value)Configuration for the gRPC service that the filter will communicate with.ExternalProcessor.BuildersetGrpcService(GrpcService.Builder builderForValue)Configuration for the gRPC service that the filter will communicate with.ExternalProcessor.BuildersetMaxMessageTimeout(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.ExternalProcessor.BuildersetMaxMessageTimeout(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.ExternalProcessor.BuildersetMessageTimeout(com.google.protobuf.Duration value)Specifies the timeout for each individual message sent on the stream and when the filter is running in synchronous mode.ExternalProcessor.BuildersetMessageTimeout(com.google.protobuf.Duration.Builder builderForValue)Specifies the timeout for each individual message sent on the stream and when the filter is running in synchronous mode.ExternalProcessor.BuildersetMutationRules(HeaderMutationRules value)Rules that determine what modifications an external processing server may make to message headers.ExternalProcessor.BuildersetMutationRules(HeaderMutationRules.Builder builderForValue)Rules that determine what modifications an external processing server may make to message headers.ExternalProcessor.BuildersetProcessingMode(ProcessingMode value)Specifies default options for how HTTP headers, trailers, and bodies are sent.ExternalProcessor.BuildersetProcessingMode(ProcessingMode.Builder builderForValue)Specifies default options for how HTTP headers, trailers, and bodies are sent.ExternalProcessor.BuildersetRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, int index, Object value)ExternalProcessor.BuildersetRequestAttributes(int index, String value)[#not-implemented-hide:] Envoy provides a number of :ref:`attributes <arch_overview_attributes>` for expressive policies.ExternalProcessor.BuildersetResponseAttributes(int index, String value)[#not-implemented-hide:] Envoy provides a number of :ref:`attributes <arch_overview_attributes>` for expressive policies.ExternalProcessor.BuildersetStatPrefix(String value)Optional additional prefix to use when emitting statistics.ExternalProcessor.BuildersetStatPrefixBytes(com.google.protobuf.ByteString value)Optional additional prefix to use when emitting statistics.ExternalProcessor.BuildersetUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)-
Methods inherited from class com.google.protobuf.GeneratedMessageV3.Builder
getAllFields, getField, getFieldBuilder, getOneofFieldDescriptor, getParentForChildren, getRepeatedField, getRepeatedFieldBuilder, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof, internalGetMapField, internalGetMutableMapField, isClean, markClean, newBuilderForField, onBuilt, onChanged, setUnknownFieldsProto3
-
Methods inherited from class com.google.protobuf.AbstractMessage.Builder
findInitializationErrors, getInitializationErrorString, internalMergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, newUninitializedMessageException, toString
-
Methods inherited from class com.google.protobuf.AbstractMessageLite.Builder
addAll, addAll, mergeDelimitedFrom, mergeDelimitedFrom, mergeFrom, newUninitializedMessageException
-
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
-
-
-
Method Detail
-
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
public 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
public ExternalProcessor getDefaultInstanceForType()
- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageLiteOrBuilder- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageOrBuilder
-
build
public ExternalProcessor build()
- Specified by:
buildin interfacecom.google.protobuf.Message.Builder- Specified by:
buildin interfacecom.google.protobuf.MessageLite.Builder
-
buildPartial
public ExternalProcessor buildPartial()
- Specified by:
buildPartialin interfacecom.google.protobuf.Message.Builder- Specified by:
buildPartialin interfacecom.google.protobuf.MessageLite.Builder
-
clone
public ExternalProcessor.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
public ExternalProcessor.Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field)
- Specified by:
clearFieldin interfacecom.google.protobuf.Message.Builder- Overrides:
clearFieldin classcom.google.protobuf.GeneratedMessageV3.Builder<ExternalProcessor.Builder>
-
clearOneof
public ExternalProcessor.Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof)
- 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
public ExternalProcessor.Builder mergeFrom(com.google.protobuf.Message other)
- Specified by:
mergeFromin interfacecom.google.protobuf.Message.Builder- Overrides:
mergeFromin classcom.google.protobuf.AbstractMessage.Builder<ExternalProcessor.Builder>
-
mergeFrom
public ExternalProcessor.Builder mergeFrom(ExternalProcessor other)
-
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. The filter supports both the "Envoy" and "Google" gRPC clients.
.envoy.config.core.v3.GrpcService grpc_service = 1 [(.validate.rules) = { ... }- Specified by:
hasGrpcServicein interfaceExternalProcessorOrBuilder- Returns:
- Whether the grpcService field is set.
-
getGrpcService
public GrpcService getGrpcService()
Configuration for the gRPC service that the filter will communicate with. The filter supports both the "Envoy" and "Google" gRPC clients.
.envoy.config.core.v3.GrpcService grpc_service = 1 [(.validate.rules) = { ... }- Specified by:
getGrpcServicein interfaceExternalProcessorOrBuilder- Returns:
- The grpcService.
-
setGrpcService
public ExternalProcessor.Builder setGrpcService(GrpcService value)
Configuration for the gRPC service that the filter will communicate with. The filter supports both the "Envoy" and "Google" gRPC clients.
.envoy.config.core.v3.GrpcService grpc_service = 1 [(.validate.rules) = { ... }
-
setGrpcService
public ExternalProcessor.Builder setGrpcService(GrpcService.Builder builderForValue)
Configuration for the gRPC service that the filter will communicate with. The filter supports both the "Envoy" and "Google" gRPC clients.
.envoy.config.core.v3.GrpcService grpc_service = 1 [(.validate.rules) = { ... }
-
mergeGrpcService
public ExternalProcessor.Builder mergeGrpcService(GrpcService value)
Configuration for the gRPC service that the filter will communicate with. The filter supports both the "Envoy" and "Google" gRPC clients.
.envoy.config.core.v3.GrpcService grpc_service = 1 [(.validate.rules) = { ... }
-
clearGrpcService
public ExternalProcessor.Builder clearGrpcService()
Configuration for the gRPC service that the filter will communicate with. The filter supports both the "Envoy" and "Google" gRPC clients.
.envoy.config.core.v3.GrpcService grpc_service = 1 [(.validate.rules) = { ... }
-
getGrpcServiceBuilder
public GrpcService.Builder getGrpcServiceBuilder()
Configuration for the gRPC service that the filter will communicate with. The filter supports both the "Envoy" and "Google" gRPC clients.
.envoy.config.core.v3.GrpcService grpc_service = 1 [(.validate.rules) = { ... }
-
getGrpcServiceOrBuilder
public GrpcServiceOrBuilder getGrpcServiceOrBuilder()
Configuration for the gRPC service that the filter will communicate with. The filter supports both the "Envoy" and "Google" gRPC clients.
.envoy.config.core.v3.GrpcService grpc_service = 1 [(.validate.rules) = { ... }- Specified by:
getGrpcServiceOrBuilderin interfaceExternalProcessorOrBuilder
-
getFailureModeAllow
public boolean getFailureModeAllow()
By default, if the gRPC stream cannot be established, or if it is closed prematurely with an error, the filter will fail. Specifically, if the response headers have not yet been delivered, then it will return a 500 error downstream. If they have been delivered, then instead the HTTP stream to the downstream client will be reset. With this parameter set to true, however, then if the gRPC stream is prematurely closed or could not be opened, processing continues without error.
bool failure_mode_allow = 2;- Specified by:
getFailureModeAllowin interfaceExternalProcessorOrBuilder- Returns:
- The failureModeAllow.
-
setFailureModeAllow
public ExternalProcessor.Builder setFailureModeAllow(boolean value)
By default, if the gRPC stream cannot be established, or if it is closed prematurely with an error, the filter will fail. Specifically, if the response headers have not yet been delivered, then it will return a 500 error downstream. If they have been delivered, then instead the HTTP stream to the downstream client will be reset. With this parameter set to true, however, then if the gRPC stream is prematurely closed or could not be opened, processing continues without error.
bool failure_mode_allow = 2;- Parameters:
value- The failureModeAllow to set.- Returns:
- This builder for chaining.
-
clearFailureModeAllow
public ExternalProcessor.Builder clearFailureModeAllow()
By default, if the gRPC stream cannot be established, or if it is closed prematurely with an error, the filter will fail. Specifically, if the response headers have not yet been delivered, then it will return a 500 error downstream. If they have been delivered, then instead the HTTP stream to the downstream client will be reset. With this parameter set to true, however, then if the gRPC stream is prematurely closed or could not be opened, processing continues without error.
bool failure_mode_allow = 2;- Returns:
- This builder for chaining.
-
hasProcessingMode
public boolean hasProcessingMode()
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
public ProcessingMode getProcessingMode()
Specifies default options for how HTTP headers, trailers, and bodies are sent. See ProcessingMode for details.
.envoy.extensions.filters.http.ext_proc.v3.ProcessingMode processing_mode = 3;- Specified by:
getProcessingModein interfaceExternalProcessorOrBuilder- Returns:
- The processingMode.
-
setProcessingMode
public ExternalProcessor.Builder setProcessingMode(ProcessingMode value)
Specifies default options for how HTTP headers, trailers, and bodies are sent. See ProcessingMode for details.
.envoy.extensions.filters.http.ext_proc.v3.ProcessingMode processing_mode = 3;
-
setProcessingMode
public ExternalProcessor.Builder setProcessingMode(ProcessingMode.Builder builderForValue)
Specifies default options for how HTTP headers, trailers, and bodies are sent. See ProcessingMode for details.
.envoy.extensions.filters.http.ext_proc.v3.ProcessingMode processing_mode = 3;
-
mergeProcessingMode
public ExternalProcessor.Builder mergeProcessingMode(ProcessingMode value)
Specifies default options for how HTTP headers, trailers, and bodies are sent. See ProcessingMode for details.
.envoy.extensions.filters.http.ext_proc.v3.ProcessingMode processing_mode = 3;
-
clearProcessingMode
public ExternalProcessor.Builder clearProcessingMode()
Specifies default options for how HTTP headers, trailers, and bodies are sent. See ProcessingMode for details.
.envoy.extensions.filters.http.ext_proc.v3.ProcessingMode processing_mode = 3;
-
getProcessingModeBuilder
public ProcessingMode.Builder getProcessingModeBuilder()
Specifies default options for how HTTP headers, trailers, and bodies are sent. See ProcessingMode for details.
.envoy.extensions.filters.http.ext_proc.v3.ProcessingMode processing_mode = 3;
-
getProcessingModeOrBuilder
public ProcessingModeOrBuilder getProcessingModeOrBuilder()
Specifies default options for how HTTP headers, trailers, and bodies are sent. See ProcessingMode for details.
.envoy.extensions.filters.http.ext_proc.v3.ProcessingMode processing_mode = 3;- Specified by:
getProcessingModeOrBuilderin interfaceExternalProcessorOrBuilder
-
getAsyncMode
public boolean getAsyncMode()
[#not-implemented-hide:] If true, send each part of the HTTP request or response specified by ProcessingMode asynchronously -- in other words, send the message on the gRPC stream and then continue filter processing. If false, which is the default, suspend filter execution after each message is sent to the remote service and wait up to "message_timeout" for a reply.
bool async_mode = 4;- Specified by:
getAsyncModein interfaceExternalProcessorOrBuilder- Returns:
- The asyncMode.
-
setAsyncMode
public ExternalProcessor.Builder setAsyncMode(boolean value)
[#not-implemented-hide:] If true, send each part of the HTTP request or response specified by ProcessingMode asynchronously -- in other words, send the message on the gRPC stream and then continue filter processing. If false, which is the default, suspend filter execution after each message is sent to the remote service and wait up to "message_timeout" for a reply.
bool async_mode = 4;- Parameters:
value- The asyncMode to set.- Returns:
- This builder for chaining.
-
clearAsyncMode
public ExternalProcessor.Builder clearAsyncMode()
[#not-implemented-hide:] If true, send each part of the HTTP request or response specified by ProcessingMode asynchronously -- in other words, send the message on the gRPC stream and then continue filter processing. If false, which is the default, suspend filter execution after each message is sent to the remote service and wait up to "message_timeout" for a reply.
bool async_mode = 4;- Returns:
- This builder for chaining.
-
getRequestAttributesList
public com.google.protobuf.ProtocolStringList getRequestAttributesList()
[#not-implemented-hide:] Envoy 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 request_headers message. 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()
[#not-implemented-hide:] Envoy 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 request_headers message. 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
public String getRequestAttributes(int index)
[#not-implemented-hide:] Envoy 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 request_headers message. 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)
[#not-implemented-hide:] Envoy 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 request_headers message. 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
public ExternalProcessor.Builder setRequestAttributes(int index, String value)
[#not-implemented-hide:] Envoy 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 request_headers message. See the :ref:`attribute documentation <arch_overview_request_attributes>` for the list of supported attributes and their types.
repeated string request_attributes = 5;- Parameters:
index- The index to set the value at.value- The requestAttributes to set.- Returns:
- This builder for chaining.
-
addRequestAttributes
public ExternalProcessor.Builder addRequestAttributes(String value)
[#not-implemented-hide:] Envoy 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 request_headers message. See the :ref:`attribute documentation <arch_overview_request_attributes>` for the list of supported attributes and their types.
repeated string request_attributes = 5;- Parameters:
value- The requestAttributes to add.- Returns:
- This builder for chaining.
-
addAllRequestAttributes
public ExternalProcessor.Builder addAllRequestAttributes(Iterable<String> values)
[#not-implemented-hide:] Envoy 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 request_headers message. See the :ref:`attribute documentation <arch_overview_request_attributes>` for the list of supported attributes and their types.
repeated string request_attributes = 5;- Parameters:
values- The requestAttributes to add.- Returns:
- This builder for chaining.
-
clearRequestAttributes
public ExternalProcessor.Builder clearRequestAttributes()
[#not-implemented-hide:] Envoy 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 request_headers message. See the :ref:`attribute documentation <arch_overview_request_attributes>` for the list of supported attributes and their types.
repeated string request_attributes = 5;- Returns:
- This builder for chaining.
-
addRequestAttributesBytes
public ExternalProcessor.Builder addRequestAttributesBytes(com.google.protobuf.ByteString value)
[#not-implemented-hide:] Envoy 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 request_headers message. 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()
[#not-implemented-hide:] Envoy 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 response_headers message. 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()
[#not-implemented-hide:] Envoy 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 response_headers message. 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
public String getResponseAttributes(int index)
[#not-implemented-hide:] Envoy 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 response_headers message. 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)
[#not-implemented-hide:] Envoy 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 response_headers message. 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
public ExternalProcessor.Builder setResponseAttributes(int index, String value)
[#not-implemented-hide:] Envoy 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 response_headers message. See the :ref:`attribute documentation <arch_overview_attributes>` for the list of supported attributes and their types.
repeated string response_attributes = 6;- Parameters:
index- The index to set the value at.value- The responseAttributes to set.- Returns:
- This builder for chaining.
-
addResponseAttributes
public ExternalProcessor.Builder addResponseAttributes(String value)
[#not-implemented-hide:] Envoy 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 response_headers message. See the :ref:`attribute documentation <arch_overview_attributes>` for the list of supported attributes and their types.
repeated string response_attributes = 6;- Parameters:
value- The responseAttributes to add.- Returns:
- This builder for chaining.
-
addAllResponseAttributes
public ExternalProcessor.Builder addAllResponseAttributes(Iterable<String> values)
[#not-implemented-hide:] Envoy 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 response_headers message. See the :ref:`attribute documentation <arch_overview_attributes>` for the list of supported attributes and their types.
repeated string response_attributes = 6;- Parameters:
values- The responseAttributes to add.- Returns:
- This builder for chaining.
-
clearResponseAttributes
public ExternalProcessor.Builder clearResponseAttributes()
[#not-implemented-hide:] Envoy 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 response_headers message. See the :ref:`attribute documentation <arch_overview_attributes>` for the list of supported attributes and their types.
repeated string response_attributes = 6;- Returns:
- This builder for chaining.
-
addResponseAttributesBytes
public ExternalProcessor.Builder addResponseAttributesBytes(com.google.protobuf.ByteString value)
[#not-implemented-hide:] Envoy 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 response_headers message. 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 and when the filter is running in synchronous mode. Whenever the proxy sends a message on the stream that requires a response, it will reset this timer, and will stop processing and return an error (subject to the processing mode) if the timer expires before a matching response is received. There is no timeout when the filter is running in asynchronous mode. 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 and when the filter is running in synchronous mode. Whenever the proxy sends a message on the stream that requires a response, it will reset this timer, and will stop processing and return an error (subject to the processing mode) if the timer expires before a matching response is received. There is no timeout when the filter is running in asynchronous mode. 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
public ExternalProcessor.Builder setMessageTimeout(com.google.protobuf.Duration value)
Specifies the timeout for each individual message sent on the stream and when the filter is running in synchronous mode. Whenever the proxy sends a message on the stream that requires a response, it will reset this timer, and will stop processing and return an error (subject to the processing mode) if the timer expires before a matching response is received. There is no timeout when the filter is running in asynchronous mode. 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 and when the filter is running in synchronous mode. Whenever the proxy sends a message on the stream that requires a response, it will reset this timer, and will stop processing and return an error (subject to the processing mode) if the timer expires before a matching response is received. There is no timeout when the filter is running in asynchronous mode. Zero is a valid config which means the timer will be triggered immediately. If not configured, default is 200 milliseconds.
.google.protobuf.Duration message_timeout = 7 [(.validate.rules) = { ... }
-
mergeMessageTimeout
public ExternalProcessor.Builder mergeMessageTimeout(com.google.protobuf.Duration value)
Specifies the timeout for each individual message sent on the stream and when the filter is running in synchronous mode. Whenever the proxy sends a message on the stream that requires a response, it will reset this timer, and will stop processing and return an error (subject to the processing mode) if the timer expires before a matching response is received. There is no timeout when the filter is running in asynchronous mode. Zero is a valid config which means the timer will be triggered immediately. If not configured, default is 200 milliseconds.
.google.protobuf.Duration message_timeout = 7 [(.validate.rules) = { ... }
-
clearMessageTimeout
public ExternalProcessor.Builder clearMessageTimeout()
Specifies the timeout for each individual message sent on the stream and when the filter is running in synchronous mode. Whenever the proxy sends a message on the stream that requires a response, it will reset this timer, and will stop processing and return an error (subject to the processing mode) if the timer expires before a matching response is received. There is no timeout when the filter is running in asynchronous mode. 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 and when the filter is running in synchronous mode. Whenever the proxy sends a message on the stream that requires a response, it will reset this timer, and will stop processing and return an error (subject to the processing mode) if the timer expires before a matching response is received. There is no timeout when the filter is running in asynchronous mode. 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 and when the filter is running in synchronous mode. Whenever the proxy sends a message on the stream that requires a response, it will reset this timer, and will stop processing and return an error (subject to the processing mode) if the timer expires before a matching response is received. There is no timeout when the filter is running in asynchronous mode. 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
public String getStatPrefix()
Optional additional prefix to use when emitting statistics. This allows to distinguish emitted statistics between configured *ext_proc* filters in an HTTP filter chain.
string stat_prefix = 8;- Specified by:
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
public ExternalProcessor.Builder setStatPrefix(String value)
Optional additional prefix to use when emitting statistics. This allows to distinguish emitted statistics between configured *ext_proc* filters in an HTTP filter chain.
string stat_prefix = 8;- Parameters:
value- The statPrefix to set.- Returns:
- This builder for chaining.
-
clearStatPrefix
public ExternalProcessor.Builder clearStatPrefix()
Optional additional prefix to use when emitting statistics. This allows to distinguish emitted statistics between configured *ext_proc* filters in an HTTP filter chain.
string stat_prefix = 8;- Returns:
- This builder for chaining.
-
setStatPrefixBytes
public ExternalProcessor.Builder setStatPrefixBytes(com.google.protobuf.ByteString value)
Optional additional prefix to use when emitting statistics. This allows to distinguish emitted statistics between configured *ext_proc* filters in an HTTP filter chain.
string stat_prefix = 8;- Parameters:
value- The bytes for statPrefix to set.- Returns:
- This builder for chaining.
-
hasMutationRules
public boolean hasMutationRules()
Rules that determine what modifications an external processing server may make to message headers. If not set, all headers may be modified except for "host", ":authority", ":scheme", ":method", and headers that start with the header prefix set via :ref:`header_prefix <envoy_v3_api_field_config.bootstrap.v3.Bootstrap.header_prefix>` (which is usually "x-envoy"). Note that changing headers such as "host" or ":authority" may not in itself change Envoy'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
public HeaderMutationRules getMutationRules()
Rules that determine what modifications an external processing server may make to message headers. If not set, all headers may be modified except for "host", ":authority", ":scheme", ":method", and headers that start with the header prefix set via :ref:`header_prefix <envoy_v3_api_field_config.bootstrap.v3.Bootstrap.header_prefix>` (which is usually "x-envoy"). Note that changing headers such as "host" or ":authority" may not in itself change Envoy'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
public ExternalProcessor.Builder setMutationRules(HeaderMutationRules value)
Rules that determine what modifications an external processing server may make to message headers. If not set, all headers may be modified except for "host", ":authority", ":scheme", ":method", and headers that start with the header prefix set via :ref:`header_prefix <envoy_v3_api_field_config.bootstrap.v3.Bootstrap.header_prefix>` (which is usually "x-envoy"). Note that changing headers such as "host" or ":authority" may not in itself change Envoy's routing decision, as routes can be cached. To also force the route to be recomputed, set the :ref:`clear_route_cache <envoy_v3_api_field_service.ext_proc.v3.CommonResponse.clear_route_cache>` field to true in the same response.
.envoy.config.common.mutation_rules.v3.HeaderMutationRules mutation_rules = 9;
-
setMutationRules
public ExternalProcessor.Builder setMutationRules(HeaderMutationRules.Builder builderForValue)
Rules that determine what modifications an external processing server may make to message headers. If not set, all headers may be modified except for "host", ":authority", ":scheme", ":method", and headers that start with the header prefix set via :ref:`header_prefix <envoy_v3_api_field_config.bootstrap.v3.Bootstrap.header_prefix>` (which is usually "x-envoy"). Note that changing headers such as "host" or ":authority" may not in itself change Envoy's routing decision, as routes can be cached. To also force the route to be recomputed, set the :ref:`clear_route_cache <envoy_v3_api_field_service.ext_proc.v3.CommonResponse.clear_route_cache>` field to true in the same response.
.envoy.config.common.mutation_rules.v3.HeaderMutationRules mutation_rules = 9;
-
mergeMutationRules
public ExternalProcessor.Builder mergeMutationRules(HeaderMutationRules value)
Rules that determine what modifications an external processing server may make to message headers. If not set, all headers may be modified except for "host", ":authority", ":scheme", ":method", and headers that start with the header prefix set via :ref:`header_prefix <envoy_v3_api_field_config.bootstrap.v3.Bootstrap.header_prefix>` (which is usually "x-envoy"). Note that changing headers such as "host" or ":authority" may not in itself change Envoy's routing decision, as routes can be cached. To also force the route to be recomputed, set the :ref:`clear_route_cache <envoy_v3_api_field_service.ext_proc.v3.CommonResponse.clear_route_cache>` field to true in the same response.
.envoy.config.common.mutation_rules.v3.HeaderMutationRules mutation_rules = 9;
-
clearMutationRules
public ExternalProcessor.Builder clearMutationRules()
Rules that determine what modifications an external processing server may make to message headers. If not set, all headers may be modified except for "host", ":authority", ":scheme", ":method", and headers that start with the header prefix set via :ref:`header_prefix <envoy_v3_api_field_config.bootstrap.v3.Bootstrap.header_prefix>` (which is usually "x-envoy"). Note that changing headers such as "host" or ":authority" may not in itself change Envoy's routing decision, as routes can be cached. To also force the route to be recomputed, set the :ref:`clear_route_cache <envoy_v3_api_field_service.ext_proc.v3.CommonResponse.clear_route_cache>` field to true in the same response.
.envoy.config.common.mutation_rules.v3.HeaderMutationRules mutation_rules = 9;
-
getMutationRulesBuilder
public HeaderMutationRules.Builder getMutationRulesBuilder()
Rules that determine what modifications an external processing server may make to message headers. If not set, all headers may be modified except for "host", ":authority", ":scheme", ":method", and headers that start with the header prefix set via :ref:`header_prefix <envoy_v3_api_field_config.bootstrap.v3.Bootstrap.header_prefix>` (which is usually "x-envoy"). Note that changing headers such as "host" or ":authority" may not in itself change Envoy's routing decision, as routes can be cached. To also force the route to be recomputed, set the :ref:`clear_route_cache <envoy_v3_api_field_service.ext_proc.v3.CommonResponse.clear_route_cache>` field to true in the same response.
.envoy.config.common.mutation_rules.v3.HeaderMutationRules mutation_rules = 9;
-
getMutationRulesOrBuilder
public HeaderMutationRulesOrBuilder getMutationRulesOrBuilder()
Rules that determine what modifications an external processing server may make to message headers. If not set, all headers may be modified except for "host", ":authority", ":scheme", ":method", and headers that start with the header prefix set via :ref:`header_prefix <envoy_v3_api_field_config.bootstrap.v3.Bootstrap.header_prefix>` (which is usually "x-envoy"). Note that changing headers such as "host" or ":authority" may not in itself change Envoy'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
public ExternalProcessor.Builder setMaxMessageTimeout(com.google.protobuf.Duration value)
Specify the upper bound of :ref:`override_message_timeout <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.override_message_timeout>` If not specified, by default it is 0, which will effectively disable the ``override_message_timeout`` API.
.google.protobuf.Duration max_message_timeout = 10 [(.validate.rules) = { ... }
-
setMaxMessageTimeout
public ExternalProcessor.Builder setMaxMessageTimeout(com.google.protobuf.Duration.Builder builderForValue)
Specify the upper bound of :ref:`override_message_timeout <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.override_message_timeout>` If not specified, by default it is 0, which will effectively disable the ``override_message_timeout`` API.
.google.protobuf.Duration max_message_timeout = 10 [(.validate.rules) = { ... }
-
mergeMaxMessageTimeout
public ExternalProcessor.Builder mergeMaxMessageTimeout(com.google.protobuf.Duration value)
Specify the upper bound of :ref:`override_message_timeout <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.override_message_timeout>` If not specified, by default it is 0, which will effectively disable the ``override_message_timeout`` API.
.google.protobuf.Duration max_message_timeout = 10 [(.validate.rules) = { ... }
-
clearMaxMessageTimeout
public ExternalProcessor.Builder clearMaxMessageTimeout()
Specify the upper bound of :ref:`override_message_timeout <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.override_message_timeout>` If not specified, by default it is 0, which will effectively disable the ``override_message_timeout`` API.
.google.protobuf.Duration max_message_timeout = 10 [(.validate.rules) = { ... }
-
getMaxMessageTimeoutBuilder
public com.google.protobuf.Duration.Builder getMaxMessageTimeoutBuilder()
Specify the upper bound of :ref:`override_message_timeout <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.override_message_timeout>` If not specified, by default it is 0, which will effectively disable the ``override_message_timeout`` API.
.google.protobuf.Duration max_message_timeout = 10 [(.validate.rules) = { ... }
-
getMaxMessageTimeoutOrBuilder
public com.google.protobuf.DurationOrBuilder getMaxMessageTimeoutOrBuilder()
Specify the upper bound of :ref:`override_message_timeout <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.override_message_timeout>` If not specified, by default it is 0, which will effectively disable the ``override_message_timeout`` API.
.google.protobuf.Duration max_message_timeout = 10 [(.validate.rules) = { ... }- Specified by:
getMaxMessageTimeoutOrBuilderin interfaceExternalProcessorOrBuilder
-
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.
bool disable_clear_route_cache = 11;- Specified by:
getDisableClearRouteCachein interfaceExternalProcessorOrBuilder- Returns:
- The disableClearRouteCache.
-
setDisableClearRouteCache
public ExternalProcessor.Builder setDisableClearRouteCache(boolean value)
Prevents clearing the route-cache when the :ref:`clear_route_cache <envoy_v3_api_field_service.ext_proc.v3.CommonResponse.clear_route_cache>` field is set in an external processor response.
bool disable_clear_route_cache = 11;- Parameters:
value- The disableClearRouteCache to set.- Returns:
- This builder for chaining.
-
clearDisableClearRouteCache
public ExternalProcessor.Builder clearDisableClearRouteCache()
Prevents clearing the route-cache when the :ref:`clear_route_cache <envoy_v3_api_field_service.ext_proc.v3.CommonResponse.clear_route_cache>` field is set in an external processor response.
bool disable_clear_route_cache = 11;- Returns:
- This builder for chaining.
-
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
public HeaderForwardingRules getForwardRules()
Allow headers matching the ``forward_rules`` to be forwarded to the external processing server. If not set, all headers are forwarded to the external processing server.
.envoy.extensions.filters.http.ext_proc.v3.HeaderForwardingRules forward_rules = 12;- Specified by:
getForwardRulesin interfaceExternalProcessorOrBuilder- Returns:
- The forwardRules.
-
setForwardRules
public ExternalProcessor.Builder setForwardRules(HeaderForwardingRules value)
Allow headers matching the ``forward_rules`` to be forwarded to the external processing server. If not set, all headers are forwarded to the external processing server.
.envoy.extensions.filters.http.ext_proc.v3.HeaderForwardingRules forward_rules = 12;
-
setForwardRules
public ExternalProcessor.Builder setForwardRules(HeaderForwardingRules.Builder builderForValue)
Allow headers matching the ``forward_rules`` to be forwarded to the external processing server. If not set, all headers are forwarded to the external processing server.
.envoy.extensions.filters.http.ext_proc.v3.HeaderForwardingRules forward_rules = 12;
-
mergeForwardRules
public ExternalProcessor.Builder mergeForwardRules(HeaderForwardingRules value)
Allow headers matching the ``forward_rules`` to be forwarded to the external processing server. If not set, all headers are forwarded to the external processing server.
.envoy.extensions.filters.http.ext_proc.v3.HeaderForwardingRules forward_rules = 12;
-
clearForwardRules
public ExternalProcessor.Builder clearForwardRules()
Allow headers matching the ``forward_rules`` to be forwarded to the external processing server. If not set, all headers are forwarded to the external processing server.
.envoy.extensions.filters.http.ext_proc.v3.HeaderForwardingRules forward_rules = 12;
-
getForwardRulesBuilder
public HeaderForwardingRules.Builder getForwardRulesBuilder()
Allow headers matching the ``forward_rules`` to be forwarded to the external processing server. If not set, all headers are forwarded to the external processing server.
.envoy.extensions.filters.http.ext_proc.v3.HeaderForwardingRules forward_rules = 12;
-
getForwardRulesOrBuilder
public HeaderForwardingRulesOrBuilder getForwardRulesOrBuilder()
Allow headers matching the ``forward_rules`` to be forwarded to the external processing server. If not set, all headers are forwarded to the external processing server.
.envoy.extensions.filters.http.ext_proc.v3.HeaderForwardingRules forward_rules = 12;- Specified by:
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
public ExternalProcessor.Builder setFilterMetadata(com.google.protobuf.Struct value)
Additional metadata to be added to the filter state for logging purposes. The metadata will be added to StreamInfo's filter state under the namespace corresponding to the ext_proc filter name.
.google.protobuf.Struct filter_metadata = 13;
-
setFilterMetadata
public ExternalProcessor.Builder setFilterMetadata(com.google.protobuf.Struct.Builder builderForValue)
Additional metadata to be added to the filter state for logging purposes. The metadata will be added to StreamInfo's filter state under the namespace corresponding to the ext_proc filter name.
.google.protobuf.Struct filter_metadata = 13;
-
mergeFilterMetadata
public ExternalProcessor.Builder mergeFilterMetadata(com.google.protobuf.Struct value)
Additional metadata to be added to the filter state for logging purposes. The metadata will be added to StreamInfo's filter state under the namespace corresponding to the ext_proc filter name.
.google.protobuf.Struct filter_metadata = 13;
-
clearFilterMetadata
public ExternalProcessor.Builder clearFilterMetadata()
Additional metadata to be added to the filter state for logging purposes. The metadata will be added to StreamInfo's filter state under the namespace corresponding to the ext_proc filter name.
.google.protobuf.Struct filter_metadata = 13;
-
getFilterMetadataBuilder
public com.google.protobuf.Struct.Builder getFilterMetadataBuilder()
Additional metadata to be added to the filter state for logging purposes. The metadata will be added to StreamInfo's filter state under the namespace corresponding to the ext_proc filter name.
.google.protobuf.Struct filter_metadata = 13;
-
getFilterMetadataOrBuilder
public com.google.protobuf.StructOrBuilder getFilterMetadataOrBuilder()
Additional metadata to be added to the filter state for logging purposes. The metadata will be added to StreamInfo's filter state under the namespace corresponding to the ext_proc filter name.
.google.protobuf.Struct filter_metadata = 13;- Specified by:
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.
bool allow_mode_override = 14;- Specified by:
getAllowModeOverridein interfaceExternalProcessorOrBuilder- Returns:
- The allowModeOverride.
-
setAllowModeOverride
public ExternalProcessor.Builder setAllowModeOverride(boolean value)
If ``allow_mode_override`` is set to true, the filter config :ref:`processing_mode <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>` can be overridden by the response message from the external processing server :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>`. If not set, ``mode_override`` API in the response message will be ignored.
bool allow_mode_override = 14;- Parameters:
value- The allowModeOverride to set.- Returns:
- This builder for chaining.
-
clearAllowModeOverride
public ExternalProcessor.Builder clearAllowModeOverride()
If ``allow_mode_override`` is set to true, the filter config :ref:`processing_mode <envoy_v3_api_field_extensions.filters.http.ext_proc.v3.ExternalProcessor.processing_mode>` can be overridden by the response message from the external processing server :ref:`mode_override <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.mode_override>`. If not set, ``mode_override`` API in the response message will be ignored.
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
public ExternalProcessor.Builder setDisableImmediateResponse(boolean value)
If set to true, ignore the :ref:`immediate_response <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.immediate_response>` message in an external processor response. In such case, no local reply will be sent. Instead, the stream to the external processor will be closed. There will be no more external processing for this stream from now on.
bool disable_immediate_response = 15;- Parameters:
value- The disableImmediateResponse to set.- Returns:
- This builder for chaining.
-
clearDisableImmediateResponse
public ExternalProcessor.Builder clearDisableImmediateResponse()
If set to true, ignore the :ref:`immediate_response <envoy_v3_api_field_service.ext_proc.v3.ProcessingResponse.immediate_response>` message in an external processor response. In such case, no local reply will be sent. Instead, the stream to the external processor will be closed. There will be no more external processing for this stream from now on.
bool disable_immediate_response = 15;- Returns:
- This builder for chaining.
-
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>
-
-