Class CacheV2Config
java.lang.Object
com.google.protobuf.AbstractMessageLite
com.google.protobuf.AbstractMessage
com.google.protobuf.GeneratedMessageV3
io.envoyproxy.envoy.extensions.filters.http.cache_v2.v3.CacheV2Config
- All Implemented Interfaces:
com.google.protobuf.Message,com.google.protobuf.MessageLite,com.google.protobuf.MessageLiteOrBuilder,com.google.protobuf.MessageOrBuilder,CacheV2ConfigOrBuilder,Serializable
public final class CacheV2Config
extends com.google.protobuf.GeneratedMessageV3
implements CacheV2ConfigOrBuilder
[#extension: envoy.filters.http.cache_v2] [#next-free-field: 8]Protobuf type
envoy.extensions.filters.http.cache_v2.v3.CacheV2Config- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final class[#extension: envoy.filters.http.cache_v2] [#next-free-field: 8]static final class[#not-implemented-hide:] Modifies cache key creation by restricting which parts of the URL are included.static interfaceNested classes/interfaces inherited from class com.google.protobuf.GeneratedMessageV3
com.google.protobuf.GeneratedMessageV3.BuilderParent, com.google.protobuf.GeneratedMessageV3.ExtendableBuilder<MessageT extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage<MessageT>,BuilderT extends com.google.protobuf.GeneratedMessageV3.ExtendableBuilder<MessageT, BuilderT>>, com.google.protobuf.GeneratedMessageV3.ExtendableMessage<MessageT extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage<MessageT>>, com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder<MessageT extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage<MessageT>>, com.google.protobuf.GeneratedMessageV3.FieldAccessorTable, com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter Nested classes/interfaces inherited from class com.google.protobuf.AbstractMessageLite
com.google.protobuf.AbstractMessageLite.InternalOneOfEnum -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intFields inherited from class com.google.protobuf.GeneratedMessageV3
alwaysUseFieldBuilders, unknownFieldsFields inherited from class com.google.protobuf.AbstractMessage
memoizedSizeFields inherited from class com.google.protobuf.AbstractMessageLite
memoizedHashCode -
Method Summary
Modifier and TypeMethodDescriptionbooleangetAllowedVaryHeaders(int index) [#not-implemented-hide:] List of matching rules that defines allowed ``Vary`` headers.int[#not-implemented-hide:] List of matching rules that defines allowed ``Vary`` headers.[#not-implemented-hide:] List of matching rules that defines allowed ``Vary`` headers.getAllowedVaryHeadersOrBuilder(int index) [#not-implemented-hide:] List of matching rules that defines allowed ``Vary`` headers.List<? extends StringMatcherOrBuilder>[#not-implemented-hide:] List of matching rules that defines allowed ``Vary`` headers.static CacheV2Configstatic final com.google.protobuf.Descriptors.Descriptorcom.google.protobuf.BoolValueWhen true, the cache filter is a no-op filter.com.google.protobuf.BoolValueOrBuilderWhen true, the cache filter is a no-op filter.booleanBy default, a ``cache-control: no-cache`` or ``pragma: no-cache`` header in the request causes the cache to validate with its upstream even if the lookup is a hit.[#not-implemented-hide:] <TODO(toddmgreer) implement key customization> Modifies cache key creation by restricting which parts of the URL are included.[#not-implemented-hide:] <TODO(toddmgreer) implement key customization> Modifies cache key creation by restricting which parts of the URL are included.int[#not-implemented-hide:] <TODO(toddmgreer) implement size limit> Max body size the cache filter will insert into a cache. 0 means unlimited (though the cache storage implementation may have its own limit beyond which it will reject insertions).If this is set, requests sent upstream to populate the cache will go to the specified cluster rather than the cluster selected by the vhost and route.com.google.protobuf.ByteStringIf this is set, requests sent upstream to populate the cache will go to the specified cluster rather than the cluster selected by the vhost and route.com.google.protobuf.Parser<CacheV2Config>intcom.google.protobuf.AnyConfig specific to the cache storage implementation.com.google.protobuf.AnyOrBuilderConfig specific to the cache storage implementation.booleanWhen true, the cache filter is a no-op filter.inthashCode()boolean[#not-implemented-hide:] <TODO(toddmgreer) implement key customization> Modifies cache key creation by restricting which parts of the URL are included.booleanConfig specific to the cache storage implementation.protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTablefinal booleanstatic CacheV2Config.Builderstatic CacheV2Config.BuildernewBuilder(CacheV2Config prototype) protected CacheV2Config.BuildernewBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) protected ObjectnewInstance(com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter unused) static CacheV2ConfigparseDelimitedFrom(InputStream input) static CacheV2ConfigparseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) static CacheV2ConfigparseFrom(byte[] data) static CacheV2ConfigparseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) static CacheV2ConfigparseFrom(com.google.protobuf.ByteString data) static CacheV2ConfigparseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) static CacheV2ConfigparseFrom(com.google.protobuf.CodedInputStream input) static CacheV2ConfigparseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) static CacheV2ConfigparseFrom(InputStream input) static CacheV2ConfigparseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) static CacheV2ConfigparseFrom(ByteBuffer data) static CacheV2ConfigparseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) static com.google.protobuf.Parser<CacheV2Config>parser()voidwriteTo(com.google.protobuf.CodedOutputStream output) Methods inherited from class com.google.protobuf.GeneratedMessageV3
canUseUnsafe, computeStringSize, computeStringSizeNoTag, emptyBooleanList, emptyDoubleList, emptyFloatList, emptyIntList, emptyList, emptyLongList, getAllFields, getDescriptorForType, getField, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof, internalGetMapField, internalGetMapFieldReflection, isStringEmpty, makeExtensionsImmutable, makeMutableCopy, makeMutableCopy, 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, writeStringNoTagMethods inherited from class com.google.protobuf.AbstractMessage
findInitializationErrors, getInitializationErrorString, hashBoolean, hashEnum, hashEnumList, hashFields, hashLong, toStringMethods inherited from class com.google.protobuf.AbstractMessageLite
addAll, addAll, checkByteStringIsUtf8, toByteArray, toByteString, writeDelimitedTo, writeToMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface com.google.protobuf.MessageLite
toByteArray, toByteString, writeDelimitedTo, writeToMethods inherited from interface com.google.protobuf.MessageOrBuilder
findInitializationErrors, getAllFields, getDescriptorForType, getField, getInitializationErrorString, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof
-
Field Details
-
TYPED_CONFIG_FIELD_NUMBER
public static final int TYPED_CONFIG_FIELD_NUMBER- See Also:
-
DISABLED_FIELD_NUMBER
public static final int DISABLED_FIELD_NUMBER- See Also:
-
ALLOWED_VARY_HEADERS_FIELD_NUMBER
public static final int ALLOWED_VARY_HEADERS_FIELD_NUMBER- See Also:
-
KEY_CREATOR_PARAMS_FIELD_NUMBER
public static final int KEY_CREATOR_PARAMS_FIELD_NUMBER- See Also:
-
MAX_BODY_BYTES_FIELD_NUMBER
public static final int MAX_BODY_BYTES_FIELD_NUMBER- See Also:
-
IGNORE_REQUEST_CACHE_CONTROL_HEADER_FIELD_NUMBER
public static final int IGNORE_REQUEST_CACHE_CONTROL_HEADER_FIELD_NUMBER- See Also:
-
OVERRIDE_UPSTREAM_CLUSTER_FIELD_NUMBER
public static final int OVERRIDE_UPSTREAM_CLUSTER_FIELD_NUMBER- See Also:
-
-
Method Details
-
newInstance
- Overrides:
newInstancein 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
-
hasTypedConfig
public boolean hasTypedConfig()Config specific to the cache storage implementation. Required unless ``disabled`` is true. [#extension-category: envoy.http.cache_v2]
.google.protobuf.Any typed_config = 1;- Specified by:
hasTypedConfigin interfaceCacheV2ConfigOrBuilder- Returns:
- Whether the typedConfig field is set.
-
getTypedConfig
public com.google.protobuf.Any getTypedConfig()Config specific to the cache storage implementation. Required unless ``disabled`` is true. [#extension-category: envoy.http.cache_v2]
.google.protobuf.Any typed_config = 1;- Specified by:
getTypedConfigin interfaceCacheV2ConfigOrBuilder- Returns:
- The typedConfig.
-
getTypedConfigOrBuilder
public com.google.protobuf.AnyOrBuilder getTypedConfigOrBuilder()Config specific to the cache storage implementation. Required unless ``disabled`` is true. [#extension-category: envoy.http.cache_v2]
.google.protobuf.Any typed_config = 1;- Specified by:
getTypedConfigOrBuilderin interfaceCacheV2ConfigOrBuilder
-
hasDisabled
public boolean hasDisabled()When true, the cache filter is a no-op filter. Possible use-cases for this include: - Turning a filter on and off with :ref:`ECDS <envoy_v3_api_file_envoy/service/extension/v3/config_discovery.proto>`. [#comment: once route-specific overrides are implemented, they are the more likely use-case.]
.google.protobuf.BoolValue disabled = 5;- Specified by:
hasDisabledin interfaceCacheV2ConfigOrBuilder- Returns:
- Whether the disabled field is set.
-
getDisabled
public com.google.protobuf.BoolValue getDisabled()When true, the cache filter is a no-op filter. Possible use-cases for this include: - Turning a filter on and off with :ref:`ECDS <envoy_v3_api_file_envoy/service/extension/v3/config_discovery.proto>`. [#comment: once route-specific overrides are implemented, they are the more likely use-case.]
.google.protobuf.BoolValue disabled = 5;- Specified by:
getDisabledin interfaceCacheV2ConfigOrBuilder- Returns:
- The disabled.
-
getDisabledOrBuilder
public com.google.protobuf.BoolValueOrBuilder getDisabledOrBuilder()When true, the cache filter is a no-op filter. Possible use-cases for this include: - Turning a filter on and off with :ref:`ECDS <envoy_v3_api_file_envoy/service/extension/v3/config_discovery.proto>`. [#comment: once route-specific overrides are implemented, they are the more likely use-case.]
.google.protobuf.BoolValue disabled = 5;- Specified by:
getDisabledOrBuilderin interfaceCacheV2ConfigOrBuilder
-
getAllowedVaryHeadersList
[#not-implemented-hide:] List of matching rules that defines allowed ``Vary`` headers. The ``vary`` response header holds a list of header names that affect the contents of a response, as described by https://httpwg.org/specs/rfc7234.html#caching.negotiated.responses. During insertion, ``allowed_vary_headers`` acts as a allowlist: if a response's ``vary`` header mentions any header names that aren't matched by any rules in ``allowed_vary_headers``, that response will not be cached. During lookup, ``allowed_vary_headers`` controls what request headers will be sent to the cache storage implementation.
repeated .envoy.type.matcher.v3.StringMatcher allowed_vary_headers = 2;- Specified by:
getAllowedVaryHeadersListin interfaceCacheV2ConfigOrBuilder
-
getAllowedVaryHeadersOrBuilderList
[#not-implemented-hide:] List of matching rules that defines allowed ``Vary`` headers. The ``vary`` response header holds a list of header names that affect the contents of a response, as described by https://httpwg.org/specs/rfc7234.html#caching.negotiated.responses. During insertion, ``allowed_vary_headers`` acts as a allowlist: if a response's ``vary`` header mentions any header names that aren't matched by any rules in ``allowed_vary_headers``, that response will not be cached. During lookup, ``allowed_vary_headers`` controls what request headers will be sent to the cache storage implementation.
repeated .envoy.type.matcher.v3.StringMatcher allowed_vary_headers = 2;- Specified by:
getAllowedVaryHeadersOrBuilderListin interfaceCacheV2ConfigOrBuilder
-
getAllowedVaryHeadersCount
public int getAllowedVaryHeadersCount()[#not-implemented-hide:] List of matching rules that defines allowed ``Vary`` headers. The ``vary`` response header holds a list of header names that affect the contents of a response, as described by https://httpwg.org/specs/rfc7234.html#caching.negotiated.responses. During insertion, ``allowed_vary_headers`` acts as a allowlist: if a response's ``vary`` header mentions any header names that aren't matched by any rules in ``allowed_vary_headers``, that response will not be cached. During lookup, ``allowed_vary_headers`` controls what request headers will be sent to the cache storage implementation.
repeated .envoy.type.matcher.v3.StringMatcher allowed_vary_headers = 2;- Specified by:
getAllowedVaryHeadersCountin interfaceCacheV2ConfigOrBuilder
-
getAllowedVaryHeaders
[#not-implemented-hide:] List of matching rules that defines allowed ``Vary`` headers. The ``vary`` response header holds a list of header names that affect the contents of a response, as described by https://httpwg.org/specs/rfc7234.html#caching.negotiated.responses. During insertion, ``allowed_vary_headers`` acts as a allowlist: if a response's ``vary`` header mentions any header names that aren't matched by any rules in ``allowed_vary_headers``, that response will not be cached. During lookup, ``allowed_vary_headers`` controls what request headers will be sent to the cache storage implementation.
repeated .envoy.type.matcher.v3.StringMatcher allowed_vary_headers = 2;- Specified by:
getAllowedVaryHeadersin interfaceCacheV2ConfigOrBuilder
-
getAllowedVaryHeadersOrBuilder
[#not-implemented-hide:] List of matching rules that defines allowed ``Vary`` headers. The ``vary`` response header holds a list of header names that affect the contents of a response, as described by https://httpwg.org/specs/rfc7234.html#caching.negotiated.responses. During insertion, ``allowed_vary_headers`` acts as a allowlist: if a response's ``vary`` header mentions any header names that aren't matched by any rules in ``allowed_vary_headers``, that response will not be cached. During lookup, ``allowed_vary_headers`` controls what request headers will be sent to the cache storage implementation.
repeated .envoy.type.matcher.v3.StringMatcher allowed_vary_headers = 2;- Specified by:
getAllowedVaryHeadersOrBuilderin interfaceCacheV2ConfigOrBuilder
-
hasKeyCreatorParams
public boolean hasKeyCreatorParams()[#not-implemented-hide:] <TODO(toddmgreer) implement key customization> Modifies cache key creation by restricting which parts of the URL are included.
.envoy.extensions.filters.http.cache_v2.v3.CacheV2Config.KeyCreatorParams key_creator_params = 3;- Specified by:
hasKeyCreatorParamsin interfaceCacheV2ConfigOrBuilder- Returns:
- Whether the keyCreatorParams field is set.
-
getKeyCreatorParams
[#not-implemented-hide:] <TODO(toddmgreer) implement key customization> Modifies cache key creation by restricting which parts of the URL are included.
.envoy.extensions.filters.http.cache_v2.v3.CacheV2Config.KeyCreatorParams key_creator_params = 3;- Specified by:
getKeyCreatorParamsin interfaceCacheV2ConfigOrBuilder- Returns:
- The keyCreatorParams.
-
getKeyCreatorParamsOrBuilder
[#not-implemented-hide:] <TODO(toddmgreer) implement key customization> Modifies cache key creation by restricting which parts of the URL are included.
.envoy.extensions.filters.http.cache_v2.v3.CacheV2Config.KeyCreatorParams key_creator_params = 3;- Specified by:
getKeyCreatorParamsOrBuilderin interfaceCacheV2ConfigOrBuilder
-
getMaxBodyBytes
public int getMaxBodyBytes()[#not-implemented-hide:] <TODO(toddmgreer) implement size limit> Max body size the cache filter will insert into a cache. 0 means unlimited (though the cache storage implementation may have its own limit beyond which it will reject insertions).
uint32 max_body_bytes = 4;- Specified by:
getMaxBodyBytesin interfaceCacheV2ConfigOrBuilder- Returns:
- The maxBodyBytes.
-
getIgnoreRequestCacheControlHeader
public boolean getIgnoreRequestCacheControlHeader()By default, a ``cache-control: no-cache`` or ``pragma: no-cache`` header in the request causes the cache to validate with its upstream even if the lookup is a hit. Setting this to true will ignore these headers.
bool ignore_request_cache_control_header = 6;- Specified by:
getIgnoreRequestCacheControlHeaderin interfaceCacheV2ConfigOrBuilder- Returns:
- The ignoreRequestCacheControlHeader.
-
getOverrideUpstreamCluster
If this is set, requests sent upstream to populate the cache will go to the specified cluster rather than the cluster selected by the vhost and route. If you have actions to be taken by the router filter - either ``upstream_http_filters`` or one of the ``RouteConfiguration`` actions such as ``response_headers_to_add`` - then the cache's side-channel going directly to the routed cluster will bypass these actions. You can set ``override_upstream_cluster`` to an internal listener which duplicates the relevant ``RouteConfiguration``, to replicate the desired behavior on the side-channel upstream request issued by the cache. This is a workaround for implementation constraints which it is hoped will at some point become unnecessary, then unsupported and this field will be removed.
string override_upstream_cluster = 7;- Specified by:
getOverrideUpstreamClusterin interfaceCacheV2ConfigOrBuilder- Returns:
- The overrideUpstreamCluster.
-
getOverrideUpstreamClusterBytes
public com.google.protobuf.ByteString getOverrideUpstreamClusterBytes()If this is set, requests sent upstream to populate the cache will go to the specified cluster rather than the cluster selected by the vhost and route. If you have actions to be taken by the router filter - either ``upstream_http_filters`` or one of the ``RouteConfiguration`` actions such as ``response_headers_to_add`` - then the cache's side-channel going directly to the routed cluster will bypass these actions. You can set ``override_upstream_cluster`` to an internal listener which duplicates the relevant ``RouteConfiguration``, to replicate the desired behavior on the side-channel upstream request issued by the cache. This is a workaround for implementation constraints which it is hoped will at some point become unnecessary, then unsupported and this field will be removed.
string override_upstream_cluster = 7;- Specified by:
getOverrideUpstreamClusterBytesin interfaceCacheV2ConfigOrBuilder- Returns:
- The bytes for overrideUpstreamCluster.
-
isInitialized
public final boolean isInitialized()- Specified by:
isInitializedin interfacecom.google.protobuf.MessageLiteOrBuilder- Overrides:
isInitializedin classcom.google.protobuf.GeneratedMessageV3
-
writeTo
- 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
- 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 CacheV2Config parseFrom(ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static CacheV2Config parseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static CacheV2Config parseFrom(com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static CacheV2Config parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static CacheV2Config parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static CacheV2Config parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
- Throws:
IOException
-
parseFrom
public static CacheV2Config parseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException - Throws:
IOException
-
parseDelimitedFrom
- Throws:
IOException
-
parseDelimitedFrom
public static CacheV2Config parseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException - Throws:
IOException
-
parseFrom
public static CacheV2Config parseFrom(com.google.protobuf.CodedInputStream input) throws IOException - Throws:
IOException
-
parseFrom
public static CacheV2Config parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException - Throws:
IOException
-
newBuilderForType
- Specified by:
newBuilderForTypein interfacecom.google.protobuf.Message- Specified by:
newBuilderForTypein interfacecom.google.protobuf.MessageLite
-
newBuilder
-
newBuilder
-
toBuilder
- Specified by:
toBuilderin interfacecom.google.protobuf.Message- Specified by:
toBuilderin interfacecom.google.protobuf.MessageLite
-
newBuilderForType
protected CacheV2Config.Builder newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) - Specified by:
newBuilderForTypein classcom.google.protobuf.GeneratedMessageV3
-
getDefaultInstance
-
parser
-
getParserForType
- Specified by:
getParserForTypein interfacecom.google.protobuf.Message- Specified by:
getParserForTypein interfacecom.google.protobuf.MessageLite- Overrides:
getParserForTypein classcom.google.protobuf.GeneratedMessageV3
-
getDefaultInstanceForType
- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageLiteOrBuilder- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageOrBuilder
-