Class CookieBasedSessionState
- java.lang.Object
-
- com.google.protobuf.AbstractMessageLite
-
- com.google.protobuf.AbstractMessage
-
- com.google.protobuf.GeneratedMessageV3
-
- io.envoyproxy.envoy.extensions.http.stateful_session.cookie.v3.CookieBasedSessionState
-
- All Implemented Interfaces:
com.google.protobuf.Message,com.google.protobuf.MessageLite,com.google.protobuf.MessageLiteOrBuilder,com.google.protobuf.MessageOrBuilder,CookieBasedSessionStateOrBuilder,Serializable
public final class CookieBasedSessionState extends com.google.protobuf.GeneratedMessageV3 implements CookieBasedSessionStateOrBuilder
This extension allows the session state to be tracked via cookies. This extension first encodes the address of the upstream host selected by the load balancer into a ``set-cookie`` response header with the :ref:`cookie configuration <envoy_v3_api_field_extensions.http.stateful_session.cookie.v3.CookieBasedSessionState.cookie>`. when new requests are incoming, this extension will try to parse the specific upstream host address by the cookie name. If the address parsed from the cookie 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 cookie name is set to ``sticky-host``, envoy will prefer ``1.2.3.4:80`` as the upstream host when the request contains the following header: .. code-block:: none cookie: sticky-host="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 used to update the cookie (via the ``set-cookie`` response header). [#extension: envoy.http.stateful_session.cookie]Protobuf typeenvoy.extensions.http.stateful_session.cookie.v3.CookieBasedSessionState- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classCookieBasedSessionState.BuilderThis extension allows the session state to be tracked via cookies.-
Nested classes/interfaces inherited from class com.google.protobuf.GeneratedMessageV3
com.google.protobuf.GeneratedMessageV3.BuilderParent, com.google.protobuf.GeneratedMessageV3.ExtendableBuilder<MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage,BuilderType extends com.google.protobuf.GeneratedMessageV3.ExtendableBuilder<MessageType,BuilderType>>, com.google.protobuf.GeneratedMessageV3.ExtendableMessage<MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage>, com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder<MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage>, com.google.protobuf.GeneratedMessageV3.FieldAccessorTable, com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter
-
-
Field Summary
Fields Modifier and Type Field Description static intCOOKIE_FIELD_NUMBER
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanequals(Object obj)CookiegetCookie()The cookie configuration used to track session state.CookieOrBuildergetCookieOrBuilder()The cookie configuration used to track session state.static CookieBasedSessionStategetDefaultInstance()CookieBasedSessionStategetDefaultInstanceForType()static com.google.protobuf.Descriptors.DescriptorgetDescriptor()com.google.protobuf.Parser<CookieBasedSessionState>getParserForType()intgetSerializedSize()com.google.protobuf.UnknownFieldSetgetUnknownFields()booleanhasCookie()The cookie configuration used to track session state.inthashCode()protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTableinternalGetFieldAccessorTable()booleanisInitialized()static CookieBasedSessionState.BuildernewBuilder()static CookieBasedSessionState.BuildernewBuilder(CookieBasedSessionState prototype)CookieBasedSessionState.BuildernewBuilderForType()protected CookieBasedSessionState.BuildernewBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)protected ObjectnewInstance(com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter unused)static CookieBasedSessionStateparseDelimitedFrom(InputStream input)static CookieBasedSessionStateparseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static CookieBasedSessionStateparseFrom(byte[] data)static CookieBasedSessionStateparseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static CookieBasedSessionStateparseFrom(com.google.protobuf.ByteString data)static CookieBasedSessionStateparseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static CookieBasedSessionStateparseFrom(com.google.protobuf.CodedInputStream input)static CookieBasedSessionStateparseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static CookieBasedSessionStateparseFrom(InputStream input)static CookieBasedSessionStateparseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static CookieBasedSessionStateparseFrom(ByteBuffer data)static CookieBasedSessionStateparseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static com.google.protobuf.Parser<CookieBasedSessionState>parser()CookieBasedSessionState.BuildertoBuilder()voidwriteTo(com.google.protobuf.CodedOutputStream output)-
Methods inherited from class com.google.protobuf.GeneratedMessageV3
canUseUnsafe, computeStringSize, computeStringSizeNoTag, emptyBooleanList, emptyDoubleList, emptyFloatList, emptyIntList, emptyLongList, getAllFields, getDescriptorForType, getField, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, hasField, hasOneof, internalGetMapField, isStringEmpty, makeExtensionsImmutable, mergeFromAndMakeImmutableInternal, mutableCopy, mutableCopy, mutableCopy, mutableCopy, mutableCopy, newBooleanList, newBuilderForType, newDoubleList, newFloatList, newIntList, newLongList, parseDelimitedWithIOException, parseDelimitedWithIOException, parseUnknownField, parseUnknownFieldProto3, parseWithIOException, parseWithIOException, parseWithIOException, parseWithIOException, serializeBooleanMapTo, serializeIntegerMapTo, serializeLongMapTo, serializeStringMapTo, writeReplace, writeString, writeStringNoTag
-
Methods inherited from class com.google.protobuf.AbstractMessage
findInitializationErrors, getInitializationErrorString, hashBoolean, hashEnum, hashEnumList, hashFields, hashLong, toString
-
Methods inherited from class com.google.protobuf.AbstractMessageLite
addAll, addAll, checkByteStringIsUtf8, toByteArray, toByteString, writeDelimitedTo, writeTo
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
-
-
-
Field Detail
-
COOKIE_FIELD_NUMBER
public static final int COOKIE_FIELD_NUMBER
- See Also:
- Constant Field Values
-
-
Method Detail
-
newInstance
protected Object newInstance(com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter unused)
- Overrides:
newInstancein classcom.google.protobuf.GeneratedMessageV3
-
getUnknownFields
public final com.google.protobuf.UnknownFieldSet getUnknownFields()
- Specified by:
getUnknownFieldsin interfacecom.google.protobuf.MessageOrBuilder- Overrides:
getUnknownFieldsin classcom.google.protobuf.GeneratedMessageV3
-
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
-
hasCookie
public boolean hasCookie()
The cookie configuration used to track session state.
.envoy.type.http.v3.Cookie cookie = 1 [(.validate.rules) = { ... }- Specified by:
hasCookiein interfaceCookieBasedSessionStateOrBuilder- Returns:
- Whether the cookie field is set.
-
getCookie
public Cookie getCookie()
The cookie configuration used to track session state.
.envoy.type.http.v3.Cookie cookie = 1 [(.validate.rules) = { ... }- Specified by:
getCookiein interfaceCookieBasedSessionStateOrBuilder- Returns:
- The cookie.
-
getCookieOrBuilder
public CookieOrBuilder getCookieOrBuilder()
The cookie configuration used to track session state.
.envoy.type.http.v3.Cookie cookie = 1 [(.validate.rules) = { ... }- Specified by:
getCookieOrBuilderin interfaceCookieBasedSessionStateOrBuilder
-
isInitialized
public final boolean isInitialized()
- Specified by:
isInitializedin interfacecom.google.protobuf.MessageLiteOrBuilder- Overrides:
isInitializedin classcom.google.protobuf.GeneratedMessageV3
-
writeTo
public void writeTo(com.google.protobuf.CodedOutputStream output) throws IOException- Specified by:
writeToin interfacecom.google.protobuf.MessageLite- Overrides:
writeToin classcom.google.protobuf.GeneratedMessageV3- Throws:
IOException
-
getSerializedSize
public int getSerializedSize()
- Specified by:
getSerializedSizein interfacecom.google.protobuf.MessageLite- Overrides:
getSerializedSizein classcom.google.protobuf.GeneratedMessageV3
-
equals
public boolean equals(Object obj)
- Specified by:
equalsin interfacecom.google.protobuf.Message- Overrides:
equalsin classcom.google.protobuf.AbstractMessage
-
hashCode
public int hashCode()
- Specified by:
hashCodein interfacecom.google.protobuf.Message- Overrides:
hashCodein classcom.google.protobuf.AbstractMessage
-
parseFrom
public static CookieBasedSessionState parseFrom(ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static CookieBasedSessionState parseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static CookieBasedSessionState parseFrom(com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static CookieBasedSessionState parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static CookieBasedSessionState parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static CookieBasedSessionState parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static CookieBasedSessionState parseFrom(InputStream input) throws IOException
- Throws:
IOException
-
parseFrom
public static CookieBasedSessionState parseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
- Throws:
IOException
-
parseDelimitedFrom
public static CookieBasedSessionState parseDelimitedFrom(InputStream input) throws IOException
- Throws:
IOException
-
parseDelimitedFrom
public static CookieBasedSessionState parseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
- Throws:
IOException
-
parseFrom
public static CookieBasedSessionState parseFrom(com.google.protobuf.CodedInputStream input) throws IOException
- Throws:
IOException
-
parseFrom
public static CookieBasedSessionState parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
- Throws:
IOException
-
newBuilderForType
public CookieBasedSessionState.Builder newBuilderForType()
- Specified by:
newBuilderForTypein interfacecom.google.protobuf.Message- Specified by:
newBuilderForTypein interfacecom.google.protobuf.MessageLite
-
newBuilder
public static CookieBasedSessionState.Builder newBuilder()
-
newBuilder
public static CookieBasedSessionState.Builder newBuilder(CookieBasedSessionState prototype)
-
toBuilder
public CookieBasedSessionState.Builder toBuilder()
- Specified by:
toBuilderin interfacecom.google.protobuf.Message- Specified by:
toBuilderin interfacecom.google.protobuf.MessageLite
-
newBuilderForType
protected CookieBasedSessionState.Builder newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)
- Specified by:
newBuilderForTypein classcom.google.protobuf.GeneratedMessageV3
-
getDefaultInstance
public static CookieBasedSessionState getDefaultInstance()
-
parser
public static com.google.protobuf.Parser<CookieBasedSessionState> parser()
-
getParserForType
public com.google.protobuf.Parser<CookieBasedSessionState> getParserForType()
- Specified by:
getParserForTypein interfacecom.google.protobuf.Message- Specified by:
getParserForTypein interfacecom.google.protobuf.MessageLite- Overrides:
getParserForTypein classcom.google.protobuf.GeneratedMessageV3
-
getDefaultInstanceForType
public CookieBasedSessionState getDefaultInstanceForType()
- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageLiteOrBuilder- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageOrBuilder
-
-