Class HeaderBasedSessionState.Builder
- java.lang.Object
-
- com.google.protobuf.AbstractMessageLite.Builder
-
- com.google.protobuf.AbstractMessage.Builder<BuilderType>
-
- com.google.protobuf.GeneratedMessageV3.Builder<HeaderBasedSessionState.Builder>
-
- io.envoyproxy.envoy.extensions.http.stateful_session.header.v3.HeaderBasedSessionState.Builder
-
- All Implemented Interfaces:
com.google.protobuf.Message.Builder,com.google.protobuf.MessageLite.Builder,com.google.protobuf.MessageLiteOrBuilder,com.google.protobuf.MessageOrBuilder,HeaderBasedSessionStateOrBuilder,java.lang.Cloneable
- Enclosing class:
- HeaderBasedSessionState
public static final class HeaderBasedSessionState.Builder extends com.google.protobuf.GeneratedMessageV3.Builder<HeaderBasedSessionState.Builder> implements HeaderBasedSessionStateOrBuilder
This extension allows the session state to be tracked via request headers. This extension encodes the address of the upstream host selected by the load balancer into a response header with the :ref:`header configuration <envoy_v3_api_msg_extensions.http.stateful_session.header.v3.HeaderBasedSessionState>`. When new requests are incoming, this extension will try to parse the specific upstream host address by header name. If the address parsed from the header corresponds to a valid upstream host, this upstream host will be selected first. See :ref:`stateful session filter <envoy_v3_api_msg_extensions.filters.http.stateful_session.v3.StatefulSession>`. For example, if the header name is set to ``session-header``, envoy will prefer ``1.2.3.4:80`` as the upstream host when the request contains the following header: .. code-block:: none session-header: "MS4yLjMuNDo4MA==" When processing the upstream response, if ``1.2.3.4:80`` is indeed the final choice the extension does nothing. If ``1.2.3.4:80`` is not the final choice, the new selected host will be set to response headers (via the ``session-header`` response header). [#extension: envoy.http.stateful_session.header]Protobuf typeenvoy.extensions.http.stateful_session.header.v3.HeaderBasedSessionState
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description HeaderBasedSessionState.BuilderaddRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value)HeaderBasedSessionStatebuild()HeaderBasedSessionStatebuildPartial()HeaderBasedSessionState.Builderclear()HeaderBasedSessionState.BuilderclearField(com.google.protobuf.Descriptors.FieldDescriptor field)HeaderBasedSessionState.BuilderclearName()The name that will be used to obtain header value from downstream HTTP request or generate new header for downstream.HeaderBasedSessionState.BuilderclearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof)HeaderBasedSessionState.Builderclone()HeaderBasedSessionStategetDefaultInstanceForType()static com.google.protobuf.Descriptors.DescriptorgetDescriptor()com.google.protobuf.Descriptors.DescriptorgetDescriptorForType()java.lang.StringgetName()The name that will be used to obtain header value from downstream HTTP request or generate new header for downstream.com.google.protobuf.ByteStringgetNameBytes()The name that will be used to obtain header value from downstream HTTP request or generate new header for downstream.protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTableinternalGetFieldAccessorTable()booleanisInitialized()HeaderBasedSessionState.BuildermergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)HeaderBasedSessionState.BuildermergeFrom(com.google.protobuf.Message other)HeaderBasedSessionState.BuildermergeFrom(HeaderBasedSessionState other)HeaderBasedSessionState.BuildermergeUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)HeaderBasedSessionState.BuildersetField(com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value)HeaderBasedSessionState.BuildersetName(java.lang.String value)The name that will be used to obtain header value from downstream HTTP request or generate new header for downstream.HeaderBasedSessionState.BuildersetNameBytes(com.google.protobuf.ByteString value)The name that will be used to obtain header value from downstream HTTP request or generate new header for downstream.HeaderBasedSessionState.BuildersetRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value)HeaderBasedSessionState.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, mergeDelimitedFrom, mergeDelimitedFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, newUninitializedMessageException, toString
-
Methods inherited from class com.google.protobuf.AbstractMessageLite.Builder
addAll, addAll, mergeFrom, newUninitializedMessageException
-
-
-
-
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<HeaderBasedSessionState.Builder>
-
clear
public HeaderBasedSessionState.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<HeaderBasedSessionState.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<HeaderBasedSessionState.Builder>
-
getDefaultInstanceForType
public HeaderBasedSessionState getDefaultInstanceForType()
- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageLiteOrBuilder- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageOrBuilder
-
build
public HeaderBasedSessionState build()
- Specified by:
buildin interfacecom.google.protobuf.Message.Builder- Specified by:
buildin interfacecom.google.protobuf.MessageLite.Builder
-
buildPartial
public HeaderBasedSessionState buildPartial()
- Specified by:
buildPartialin interfacecom.google.protobuf.Message.Builder- Specified by:
buildPartialin interfacecom.google.protobuf.MessageLite.Builder
-
clone
public HeaderBasedSessionState.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<HeaderBasedSessionState.Builder>
-
setField
public HeaderBasedSessionState.Builder setField(com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value)
- Specified by:
setFieldin interfacecom.google.protobuf.Message.Builder- Overrides:
setFieldin classcom.google.protobuf.GeneratedMessageV3.Builder<HeaderBasedSessionState.Builder>
-
clearField
public HeaderBasedSessionState.Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field)
- Specified by:
clearFieldin interfacecom.google.protobuf.Message.Builder- Overrides:
clearFieldin classcom.google.protobuf.GeneratedMessageV3.Builder<HeaderBasedSessionState.Builder>
-
clearOneof
public HeaderBasedSessionState.Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof)
- Specified by:
clearOneofin interfacecom.google.protobuf.Message.Builder- Overrides:
clearOneofin classcom.google.protobuf.GeneratedMessageV3.Builder<HeaderBasedSessionState.Builder>
-
setRepeatedField
public HeaderBasedSessionState.Builder setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value)
- Specified by:
setRepeatedFieldin interfacecom.google.protobuf.Message.Builder- Overrides:
setRepeatedFieldin classcom.google.protobuf.GeneratedMessageV3.Builder<HeaderBasedSessionState.Builder>
-
addRepeatedField
public HeaderBasedSessionState.Builder addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value)
- Specified by:
addRepeatedFieldin interfacecom.google.protobuf.Message.Builder- Overrides:
addRepeatedFieldin classcom.google.protobuf.GeneratedMessageV3.Builder<HeaderBasedSessionState.Builder>
-
mergeFrom
public HeaderBasedSessionState.Builder mergeFrom(com.google.protobuf.Message other)
- Specified by:
mergeFromin interfacecom.google.protobuf.Message.Builder- Overrides:
mergeFromin classcom.google.protobuf.AbstractMessage.Builder<HeaderBasedSessionState.Builder>
-
mergeFrom
public HeaderBasedSessionState.Builder mergeFrom(HeaderBasedSessionState other)
-
isInitialized
public final boolean isInitialized()
- Specified by:
isInitializedin interfacecom.google.protobuf.MessageLiteOrBuilder- Overrides:
isInitializedin classcom.google.protobuf.GeneratedMessageV3.Builder<HeaderBasedSessionState.Builder>
-
mergeFrom
public HeaderBasedSessionState.Builder mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException
- Specified by:
mergeFromin interfacecom.google.protobuf.Message.Builder- Specified by:
mergeFromin interfacecom.google.protobuf.MessageLite.Builder- Overrides:
mergeFromin classcom.google.protobuf.AbstractMessage.Builder<HeaderBasedSessionState.Builder>- Throws:
java.io.IOException
-
getName
public java.lang.String getName()
The name that will be used to obtain header value from downstream HTTP request or generate new header for downstream.
string name = 1 [(.validate.rules) = { ... }- Specified by:
getNamein interfaceHeaderBasedSessionStateOrBuilder- Returns:
- The name.
-
getNameBytes
public com.google.protobuf.ByteString getNameBytes()
The name that will be used to obtain header value from downstream HTTP request or generate new header for downstream.
string name = 1 [(.validate.rules) = { ... }- Specified by:
getNameBytesin interfaceHeaderBasedSessionStateOrBuilder- Returns:
- The bytes for name.
-
setName
public HeaderBasedSessionState.Builder setName(java.lang.String value)
The name that will be used to obtain header value from downstream HTTP request or generate new header for downstream.
string name = 1 [(.validate.rules) = { ... }- Parameters:
value- The name to set.- Returns:
- This builder for chaining.
-
clearName
public HeaderBasedSessionState.Builder clearName()
The name that will be used to obtain header value from downstream HTTP request or generate new header for downstream.
string name = 1 [(.validate.rules) = { ... }- Returns:
- This builder for chaining.
-
setNameBytes
public HeaderBasedSessionState.Builder setNameBytes(com.google.protobuf.ByteString value)
The name that will be used to obtain header value from downstream HTTP request or generate new header for downstream.
string name = 1 [(.validate.rules) = { ... }- Parameters:
value- The bytes for name to set.- Returns:
- This builder for chaining.
-
setUnknownFields
public final HeaderBasedSessionState.Builder setUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)
- Specified by:
setUnknownFieldsin interfacecom.google.protobuf.Message.Builder- Overrides:
setUnknownFieldsin classcom.google.protobuf.GeneratedMessageV3.Builder<HeaderBasedSessionState.Builder>
-
mergeUnknownFields
public final HeaderBasedSessionState.Builder mergeUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)
- Specified by:
mergeUnknownFieldsin interfacecom.google.protobuf.Message.Builder- Overrides:
mergeUnknownFieldsin classcom.google.protobuf.GeneratedMessageV3.Builder<HeaderBasedSessionState.Builder>
-
-