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
,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 type
envoy.config.route.v3.RouteAction.HashPolicy.Cookie
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final class
Envoy 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>, com.google.protobuf.GeneratedMessage.UnusedPrivateParameter Nested classes/interfaces inherited from class com.google.protobuf.AbstractMessage
com.google.protobuf.AbstractMessage.BuilderParent
Nested classes/interfaces inherited from class com.google.protobuf.AbstractMessageLite
com.google.protobuf.AbstractMessageLite.InternalOneOfEnum
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final int
private int
private static final RouteAction.HashPolicy.Cookie
private byte
private Object
static final int
private static final com.google.protobuf.Parser
<RouteAction.HashPolicy.Cookie> private Object
static final int
private static final long
private com.google.protobuf.Duration
static final int
Fields inherited from class com.google.protobuf.GeneratedMessage
alwaysUseFieldBuilders, unknownFields
Fields inherited from class com.google.protobuf.AbstractMessage
memoizedSize
Fields inherited from class com.google.protobuf.AbstractMessageLite
memoizedHashCode
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionboolean
getAttributes
(int index) Additional attributes for the cookie.int
Additional attributes for the cookie.Additional attributes for the cookie.getAttributesOrBuilder
(int index) Additional attributes for the cookie.Additional attributes for the cookie.static final com.google.protobuf.Descriptors.Descriptor
getName()
The name of the cookie that will be used to obtain the hash key.com.google.protobuf.ByteString
The name of the cookie that will be used to obtain the hash key.com.google.protobuf.Parser
<RouteAction.HashPolicy.Cookie> getPath()
The name of the path for the cookie.com.google.protobuf.ByteString
The name of the path for the cookie.int
com.google.protobuf.Duration
getTtl()
If specified, a cookie with the TTL will be generated if the cookie is not present.com.google.protobuf.DurationOrBuilder
If specified, a cookie with the TTL will be generated if the cookie is not present.int
hashCode()
boolean
hasTtl()
If specified, a cookie with the TTL will be generated if the cookie is not present.protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
final boolean
newBuilder
(RouteAction.HashPolicy.Cookie prototype) protected RouteAction.HashPolicy.Cookie.Builder
newBuilderForType
(com.google.protobuf.AbstractMessage.BuilderParent parent) parseDelimitedFrom
(InputStream input) parseDelimitedFrom
(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) parseFrom
(byte[] data) parseFrom
(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) parseFrom
(com.google.protobuf.ByteString data) parseFrom
(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) parseFrom
(com.google.protobuf.CodedInputStream input) parseFrom
(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) parseFrom
(InputStream input) parseFrom
(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) parseFrom
(ByteBuffer data) parseFrom
(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) static com.google.protobuf.Parser
<RouteAction.HashPolicy.Cookie> parser()
void
writeTo
(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
Methods inherited from interface com.google.protobuf.MessageLite
toByteArray, toByteString, writeDelimitedTo, writeTo
Methods inherited from interface com.google.protobuf.MessageOrBuilder
findInitializationErrors, getAllFields, getDescriptorForType, getField, getInitializationErrorString, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof
-
Field Details
-
serialVersionUID
private static final long serialVersionUID- See Also:
-
bitField0_
private int bitField0_ -
NAME_FIELD_NUMBER
public static final int NAME_FIELD_NUMBER- See Also:
-
name_
-
TTL_FIELD_NUMBER
public static final int TTL_FIELD_NUMBER- See Also:
-
ttl_
private com.google.protobuf.Duration ttl_ -
PATH_FIELD_NUMBER
public static final int PATH_FIELD_NUMBER- See Also:
-
path_
-
ATTRIBUTES_FIELD_NUMBER
public static final int ATTRIBUTES_FIELD_NUMBER- See Also:
-
attributes_
-
memoizedIsInitialized
private byte memoizedIsInitialized -
DEFAULT_INSTANCE
-
PARSER
-
-
Constructor Details
-
Cookie
private Cookie(com.google.protobuf.GeneratedMessage.Builder<?> builder) -
Cookie
private Cookie()
-
-
Method Details
-
getDescriptor
public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() -
internalGetFieldAccessorTable
protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()- Specified by:
internalGetFieldAccessorTable
in classcom.google.protobuf.GeneratedMessage
-
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:
getName
in 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:
getNameBytes
in 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:
hasTtl
in 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:
getTtl
in 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:
getTtlOrBuilder
in interfaceRouteAction.HashPolicy.CookieOrBuilder
-
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:
getPath
in 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:
getPathBytes
in interfaceRouteAction.HashPolicy.CookieOrBuilder
- Returns:
- The bytes for path.
-
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:
getAttributesList
in interfaceRouteAction.HashPolicy.CookieOrBuilder
-
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:
getAttributesOrBuilderList
in 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:
getAttributesCount
in interfaceRouteAction.HashPolicy.CookieOrBuilder
-
getAttributes
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:
getAttributes
in interfaceRouteAction.HashPolicy.CookieOrBuilder
-
getAttributesOrBuilder
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:
getAttributesOrBuilder
in interfaceRouteAction.HashPolicy.CookieOrBuilder
-
isInitialized
public final boolean isInitialized()- Specified by:
isInitialized
in interfacecom.google.protobuf.MessageLiteOrBuilder
- Overrides:
isInitialized
in classcom.google.protobuf.GeneratedMessage
-
writeTo
- Specified by:
writeTo
in interfacecom.google.protobuf.MessageLite
- Overrides:
writeTo
in classcom.google.protobuf.GeneratedMessage
- Throws:
IOException
-
getSerializedSize
public int getSerializedSize()- Specified by:
getSerializedSize
in interfacecom.google.protobuf.MessageLite
- Overrides:
getSerializedSize
in classcom.google.protobuf.GeneratedMessage
-
equals
- Specified by:
equals
in interfacecom.google.protobuf.Message
- Overrides:
equals
in classcom.google.protobuf.AbstractMessage
-
hashCode
public int hashCode()- Specified by:
hashCode
in interfacecom.google.protobuf.Message
- Overrides:
hashCode
in classcom.google.protobuf.AbstractMessage
-
parseFrom
public static RouteAction.HashPolicy.Cookie parseFrom(ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static RouteAction.HashPolicy.Cookie parseFrom(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
- Throws:
IOException
-
parseFrom
public static RouteAction.HashPolicy.Cookie parseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException - Throws:
IOException
-
parseDelimitedFrom
public static RouteAction.HashPolicy.Cookie parseDelimitedFrom(InputStream input) throws IOException - Throws:
IOException
-
parseDelimitedFrom
public static RouteAction.HashPolicy.Cookie parseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException - Throws:
IOException
-
parseFrom
public static RouteAction.HashPolicy.Cookie parseFrom(com.google.protobuf.CodedInputStream input) throws IOException - Throws:
IOException
-
parseFrom
public static RouteAction.HashPolicy.Cookie parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException - Throws:
IOException
-
newBuilderForType
- Specified by:
newBuilderForType
in interfacecom.google.protobuf.Message
- Specified by:
newBuilderForType
in interfacecom.google.protobuf.MessageLite
-
newBuilder
-
newBuilder
public static RouteAction.HashPolicy.Cookie.Builder newBuilder(RouteAction.HashPolicy.Cookie prototype) -
toBuilder
- Specified by:
toBuilder
in interfacecom.google.protobuf.Message
- Specified by:
toBuilder
in interfacecom.google.protobuf.MessageLite
-
newBuilderForType
protected RouteAction.HashPolicy.Cookie.Builder newBuilderForType(com.google.protobuf.AbstractMessage.BuilderParent parent) - Overrides:
newBuilderForType
in classcom.google.protobuf.AbstractMessage
-
getDefaultInstance
-
parser
-
getParserForType
- Specified by:
getParserForType
in interfacecom.google.protobuf.Message
- Specified by:
getParserForType
in interfacecom.google.protobuf.MessageLite
- Overrides:
getParserForType
in classcom.google.protobuf.GeneratedMessage
-
getDefaultInstanceForType
- Specified by:
getDefaultInstanceForType
in interfacecom.google.protobuf.MessageLiteOrBuilder
- Specified by:
getDefaultInstanceForType
in interfacecom.google.protobuf.MessageOrBuilder
-