Class RouteAction.HashPolicy.Cookie
- java.lang.Object
-
- com.google.protobuf.AbstractMessageLite
-
- com.google.protobuf.AbstractMessage
-
- com.google.protobuf.GeneratedMessage
-
- io.envoyproxy.envoy.config.route.v3.RouteAction.HashPolicy.Cookie
-
- All Implemented Interfaces:
com.google.protobuf.Message,com.google.protobuf.MessageLite,com.google.protobuf.MessageLiteOrBuilder,com.google.protobuf.MessageOrBuilder,RouteAction.HashPolicy.CookieOrBuilder,java.io.Serializable
- Enclosing class:
- RouteAction.HashPolicy
public static final class RouteAction.HashPolicy.Cookie extends com.google.protobuf.GeneratedMessage implements RouteAction.HashPolicy.CookieOrBuilder
Envoy supports two types of cookie affinity: 1. Passive. Envoy takes a cookie that's present in the cookies header and hashes on its value. 2. Generated. Envoy generates and sets a cookie with an expiration (TTL) on the first request from the client in its response to the client, based on the endpoint the request gets sent to. The client then presents this on the next and all subsequent requests. The hash of this is sufficient to ensure these requests get sent to the same endpoint. The cookie is generated by hashing the source and destination ports and addresses so that multiple independent HTTP2 streams on the same connection will independently receive the same cookie, even if they arrive at the Envoy simultaneously.
Protobuf typeenvoy.config.route.v3.RouteAction.HashPolicy.Cookie- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classRouteAction.HashPolicy.Cookie.BuilderEnvoy supports two types of cookie affinity: 1.-
Nested classes/interfaces inherited from class com.google.protobuf.GeneratedMessage
com.google.protobuf.GeneratedMessage.ExtendableBuilder<MessageT extends com.google.protobuf.GeneratedMessage.ExtendableMessage<MessageT>,BuilderT extends com.google.protobuf.GeneratedMessage.ExtendableBuilder<MessageT,BuilderT>>, com.google.protobuf.GeneratedMessage.ExtendableMessage<MessageT extends com.google.protobuf.GeneratedMessage.ExtendableMessage<MessageT>>, com.google.protobuf.GeneratedMessage.ExtendableMessageOrBuilder<MessageT extends com.google.protobuf.GeneratedMessage.ExtendableMessage<MessageT>>, com.google.protobuf.GeneratedMessage.FieldAccessorTable, com.google.protobuf.GeneratedMessage.GeneratedExtension<ContainingT extends com.google.protobuf.Message,T extends java.lang.Object>, com.google.protobuf.GeneratedMessage.UnusedPrivateParameter
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.List<RouteAction.HashPolicy.CookieAttribute>attributes_static intATTRIBUTES_FIELD_NUMBERprivate intbitField0_private static RouteAction.HashPolicy.CookieDEFAULT_INSTANCEprivate bytememoizedIsInitializedprivate java.lang.Objectname_static intNAME_FIELD_NUMBERprivate static com.google.protobuf.Parser<RouteAction.HashPolicy.Cookie>PARSERprivate java.lang.Objectpath_static intPATH_FIELD_NUMBERprivate static longserialVersionUIDprivate com.google.protobuf.Durationttl_static intTTL_FIELD_NUMBER
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanequals(java.lang.Object obj)RouteAction.HashPolicy.CookieAttributegetAttributes(int index)Additional attributes for the cookie.intgetAttributesCount()Additional attributes for the cookie.java.util.List<RouteAction.HashPolicy.CookieAttribute>getAttributesList()Additional attributes for the cookie.RouteAction.HashPolicy.CookieAttributeOrBuildergetAttributesOrBuilder(int index)Additional attributes for the cookie.java.util.List<? extends RouteAction.HashPolicy.CookieAttributeOrBuilder>getAttributesOrBuilderList()Additional attributes for the cookie.static RouteAction.HashPolicy.CookiegetDefaultInstance()RouteAction.HashPolicy.CookiegetDefaultInstanceForType()static com.google.protobuf.Descriptors.DescriptorgetDescriptor()java.lang.StringgetName()The name of the cookie that will be used to obtain the hash key.com.google.protobuf.ByteStringgetNameBytes()The name of the cookie that will be used to obtain the hash key.com.google.protobuf.Parser<RouteAction.HashPolicy.Cookie>getParserForType()java.lang.StringgetPath()The name of the path for the cookie.com.google.protobuf.ByteStringgetPathBytes()The name of the path for the cookie.intgetSerializedSize()com.google.protobuf.DurationgetTtl()If specified, a cookie with the TTL will be generated if the cookie is not present.com.google.protobuf.DurationOrBuildergetTtlOrBuilder()If specified, a cookie with the TTL will be generated if the cookie is not present.inthashCode()booleanhasTtl()If specified, a cookie with the TTL will be generated if the cookie is not present.protected com.google.protobuf.GeneratedMessage.FieldAccessorTableinternalGetFieldAccessorTable()booleanisInitialized()static RouteAction.HashPolicy.Cookie.BuildernewBuilder()static RouteAction.HashPolicy.Cookie.BuildernewBuilder(RouteAction.HashPolicy.Cookie prototype)RouteAction.HashPolicy.Cookie.BuildernewBuilderForType()protected RouteAction.HashPolicy.Cookie.BuildernewBuilderForType(com.google.protobuf.AbstractMessage.BuilderParent parent)static RouteAction.HashPolicy.CookieparseDelimitedFrom(java.io.InputStream input)static RouteAction.HashPolicy.CookieparseDelimitedFrom(java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static RouteAction.HashPolicy.CookieparseFrom(byte[] data)static RouteAction.HashPolicy.CookieparseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static RouteAction.HashPolicy.CookieparseFrom(com.google.protobuf.ByteString data)static RouteAction.HashPolicy.CookieparseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static RouteAction.HashPolicy.CookieparseFrom(com.google.protobuf.CodedInputStream input)static RouteAction.HashPolicy.CookieparseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static RouteAction.HashPolicy.CookieparseFrom(java.io.InputStream input)static RouteAction.HashPolicy.CookieparseFrom(java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static RouteAction.HashPolicy.CookieparseFrom(java.nio.ByteBuffer data)static RouteAction.HashPolicy.CookieparseFrom(java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static com.google.protobuf.Parser<RouteAction.HashPolicy.Cookie>parser()RouteAction.HashPolicy.Cookie.BuildertoBuilder()voidwriteTo(com.google.protobuf.CodedOutputStream output)-
Methods inherited from class com.google.protobuf.GeneratedMessage
canUseUnsafe, computeStringSize, computeStringSizeNoTag, emptyBooleanList, emptyDoubleList, emptyFloatList, emptyIntList, emptyList, emptyLongList, getAllFields, getDescriptorForType, getField, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof, internalGetMapField, internalGetMapFieldReflection, isStringEmpty, makeMutableCopy, makeMutableCopy, mergeFromAndMakeImmutableInternal, newFileScopedGeneratedExtension, newInstance, newMessageScopedGeneratedExtension, 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, hashFields, toString
-
Methods inherited from class com.google.protobuf.AbstractMessageLite
addAll, checkByteStringIsUtf8, toByteArray, toByteString, writeDelimitedTo, writeTo
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
- See Also:
- Constant Field Values
-
bitField0_
private int bitField0_
-
NAME_FIELD_NUMBER
public static final int NAME_FIELD_NUMBER
- See Also:
- Constant Field Values
-
name_
private volatile java.lang.Object name_
-
TTL_FIELD_NUMBER
public static final int TTL_FIELD_NUMBER
- See Also:
- Constant Field Values
-
ttl_
private com.google.protobuf.Duration ttl_
-
PATH_FIELD_NUMBER
public static final int PATH_FIELD_NUMBER
- See Also:
- Constant Field Values
-
path_
private volatile java.lang.Object path_
-
ATTRIBUTES_FIELD_NUMBER
public static final int ATTRIBUTES_FIELD_NUMBER
- See Also:
- Constant Field Values
-
attributes_
private java.util.List<RouteAction.HashPolicy.CookieAttribute> attributes_
-
memoizedIsInitialized
private byte memoizedIsInitialized
-
DEFAULT_INSTANCE
private static final RouteAction.HashPolicy.Cookie DEFAULT_INSTANCE
-
PARSER
private static final com.google.protobuf.Parser<RouteAction.HashPolicy.Cookie> PARSER
-
-
Method Detail
-
getDescriptor
public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
-
internalGetFieldAccessorTable
protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()
- Specified by:
internalGetFieldAccessorTablein classcom.google.protobuf.GeneratedMessage
-
getName
public java.lang.String getName()
The name of the cookie that will be used to obtain the hash key. If the cookie is not present and ttl below is not set, no hash will be produced.
string name = 1 [(.validate.rules) = { ... }- Specified by:
getNamein interfaceRouteAction.HashPolicy.CookieOrBuilder- Returns:
- The name.
-
getNameBytes
public com.google.protobuf.ByteString getNameBytes()
The name of the cookie that will be used to obtain the hash key. If the cookie is not present and ttl below is not set, no hash will be produced.
string name = 1 [(.validate.rules) = { ... }- Specified by:
getNameBytesin interfaceRouteAction.HashPolicy.CookieOrBuilder- Returns:
- The bytes for name.
-
hasTtl
public boolean hasTtl()
If specified, a cookie with the TTL will be generated if the cookie is not present. If the TTL is present and zero, the generated cookie will be a session cookie.
.google.protobuf.Duration ttl = 2;- Specified by:
hasTtlin interfaceRouteAction.HashPolicy.CookieOrBuilder- Returns:
- Whether the ttl field is set.
-
getTtl
public com.google.protobuf.Duration getTtl()
If specified, a cookie with the TTL will be generated if the cookie is not present. If the TTL is present and zero, the generated cookie will be a session cookie.
.google.protobuf.Duration ttl = 2;- Specified by:
getTtlin interfaceRouteAction.HashPolicy.CookieOrBuilder- Returns:
- The ttl.
-
getTtlOrBuilder
public com.google.protobuf.DurationOrBuilder getTtlOrBuilder()
If specified, a cookie with the TTL will be generated if the cookie is not present. If the TTL is present and zero, the generated cookie will be a session cookie.
.google.protobuf.Duration ttl = 2;- Specified by:
getTtlOrBuilderin interfaceRouteAction.HashPolicy.CookieOrBuilder
-
getPath
public java.lang.String getPath()
The name of the path for the cookie. If no path is specified here, no path will be set for the cookie.
string path = 3;- Specified by:
getPathin interfaceRouteAction.HashPolicy.CookieOrBuilder- Returns:
- The path.
-
getPathBytes
public com.google.protobuf.ByteString getPathBytes()
The name of the path for the cookie. If no path is specified here, no path will be set for the cookie.
string path = 3;- Specified by:
getPathBytesin interfaceRouteAction.HashPolicy.CookieOrBuilder- Returns:
- The bytes for path.
-
getAttributesList
public java.util.List<RouteAction.HashPolicy.CookieAttribute> getAttributesList()
Additional attributes for the cookie. They will be used when generating a new cookie.
repeated .envoy.config.route.v3.RouteAction.HashPolicy.CookieAttribute attributes = 4;- Specified by:
getAttributesListin interfaceRouteAction.HashPolicy.CookieOrBuilder
-
getAttributesOrBuilderList
public java.util.List<? extends RouteAction.HashPolicy.CookieAttributeOrBuilder> getAttributesOrBuilderList()
Additional attributes for the cookie. They will be used when generating a new cookie.
repeated .envoy.config.route.v3.RouteAction.HashPolicy.CookieAttribute attributes = 4;- Specified by:
getAttributesOrBuilderListin interfaceRouteAction.HashPolicy.CookieOrBuilder
-
getAttributesCount
public int getAttributesCount()
Additional attributes for the cookie. They will be used when generating a new cookie.
repeated .envoy.config.route.v3.RouteAction.HashPolicy.CookieAttribute attributes = 4;- Specified by:
getAttributesCountin interfaceRouteAction.HashPolicy.CookieOrBuilder
-
getAttributes
public RouteAction.HashPolicy.CookieAttribute getAttributes(int index)
Additional attributes for the cookie. They will be used when generating a new cookie.
repeated .envoy.config.route.v3.RouteAction.HashPolicy.CookieAttribute attributes = 4;- Specified by:
getAttributesin interfaceRouteAction.HashPolicy.CookieOrBuilder
-
getAttributesOrBuilder
public RouteAction.HashPolicy.CookieAttributeOrBuilder getAttributesOrBuilder(int index)
Additional attributes for the cookie. They will be used when generating a new cookie.
repeated .envoy.config.route.v3.RouteAction.HashPolicy.CookieAttribute attributes = 4;- Specified by:
getAttributesOrBuilderin interfaceRouteAction.HashPolicy.CookieOrBuilder
-
isInitialized
public final boolean isInitialized()
- Specified by:
isInitializedin interfacecom.google.protobuf.MessageLiteOrBuilder- Overrides:
isInitializedin classcom.google.protobuf.GeneratedMessage
-
writeTo
public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException- Specified by:
writeToin interfacecom.google.protobuf.MessageLite- Overrides:
writeToin classcom.google.protobuf.GeneratedMessage- Throws:
java.io.IOException
-
getSerializedSize
public int getSerializedSize()
- Specified by:
getSerializedSizein interfacecom.google.protobuf.MessageLite- Overrides:
getSerializedSizein classcom.google.protobuf.GeneratedMessage
-
equals
public boolean equals(java.lang.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 RouteAction.HashPolicy.Cookie parseFrom(java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static RouteAction.HashPolicy.Cookie parseFrom(java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static RouteAction.HashPolicy.Cookie parseFrom(com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static RouteAction.HashPolicy.Cookie parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static RouteAction.HashPolicy.Cookie parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static RouteAction.HashPolicy.Cookie parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static RouteAction.HashPolicy.Cookie parseFrom(java.io.InputStream input) throws java.io.IOException
- Throws:
java.io.IOException
-
parseFrom
public static RouteAction.HashPolicy.Cookie parseFrom(java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException
- Throws:
java.io.IOException
-
parseDelimitedFrom
public static RouteAction.HashPolicy.Cookie parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException
- Throws:
java.io.IOException
-
parseDelimitedFrom
public static RouteAction.HashPolicy.Cookie parseDelimitedFrom(java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException
- Throws:
java.io.IOException
-
parseFrom
public static RouteAction.HashPolicy.Cookie parseFrom(com.google.protobuf.CodedInputStream input) throws java.io.IOException
- Throws:
java.io.IOException
-
parseFrom
public static RouteAction.HashPolicy.Cookie parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException
- Throws:
java.io.IOException
-
newBuilderForType
public RouteAction.HashPolicy.Cookie.Builder newBuilderForType()
- Specified by:
newBuilderForTypein interfacecom.google.protobuf.Message- Specified by:
newBuilderForTypein interfacecom.google.protobuf.MessageLite
-
newBuilder
public static RouteAction.HashPolicy.Cookie.Builder newBuilder()
-
newBuilder
public static RouteAction.HashPolicy.Cookie.Builder newBuilder(RouteAction.HashPolicy.Cookie prototype)
-
toBuilder
public RouteAction.HashPolicy.Cookie.Builder toBuilder()
- Specified by:
toBuilderin interfacecom.google.protobuf.Message- Specified by:
toBuilderin interfacecom.google.protobuf.MessageLite
-
newBuilderForType
protected RouteAction.HashPolicy.Cookie.Builder newBuilderForType(com.google.protobuf.AbstractMessage.BuilderParent parent)
- Overrides:
newBuilderForTypein classcom.google.protobuf.AbstractMessage
-
getDefaultInstance
public static RouteAction.HashPolicy.Cookie getDefaultInstance()
-
parser
public static com.google.protobuf.Parser<RouteAction.HashPolicy.Cookie> parser()
-
getParserForType
public com.google.protobuf.Parser<RouteAction.HashPolicy.Cookie> getParserForType()
- Specified by:
getParserForTypein interfacecom.google.protobuf.Message- Specified by:
getParserForTypein interfacecom.google.protobuf.MessageLite- Overrides:
getParserForTypein classcom.google.protobuf.GeneratedMessage
-
getDefaultInstanceForType
public RouteAction.HashPolicy.Cookie getDefaultInstanceForType()
- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageLiteOrBuilder- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageOrBuilder
-
-