Class Metadata
- java.lang.Object
-
- com.google.protobuf.AbstractMessageLite
-
- com.google.protobuf.AbstractMessage
-
- com.google.protobuf.GeneratedMessage
-
- io.envoyproxy.envoy.config.core.v3.Metadata
-
- All Implemented Interfaces:
com.google.protobuf.Message,com.google.protobuf.MessageLite,com.google.protobuf.MessageLiteOrBuilder,com.google.protobuf.MessageOrBuilder,MetadataOrBuilder,java.io.Serializable
public final class Metadata extends com.google.protobuf.GeneratedMessage implements MetadataOrBuilder
Metadata provides additional inputs to filters based on matched listeners, filter chains, routes and endpoints. It is structured as a map, usually from filter name (in reverse DNS format) to metadata specific to the filter. Metadata key-values for a filter are merged as connection and request handling occurs, with later values for the same key overriding earlier values. An example use of metadata is providing additional values to http_connection_manager in the envoy.http_connection_manager.access_log namespace. Another example use of metadata is to per service config info in cluster metadata, which may get consumed by multiple filters. For load balancing, Metadata provides a means to subset cluster endpoints. Endpoints have a Metadata object associated and routes contain a Metadata object to match against. There are some well defined metadata used today for this purpose: * ``{"envoy.lb": {"canary": <bool> }}`` This indicates the canary status of an endpoint and is also used during header processing (x-envoy-upstream-canary) and for stats purposes. [#next-major-version: move to type/metadata/v2]Protobuf typeenvoy.config.core.v3.Metadata- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classMetadata.BuilderMetadata provides additional inputs to filters based on matched listeners, filter chains, routes and endpoints.private static classMetadata.FilterMetadataDefaultEntryHolderprivate static classMetadata.TypedFilterMetadataDefaultEntryHolder-
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 static MetadataDEFAULT_INSTANCEstatic intFILTER_METADATA_FIELD_NUMBERprivate com.google.protobuf.MapField<java.lang.String,com.google.protobuf.Struct>filterMetadata_private bytememoizedIsInitializedprivate static com.google.protobuf.Parser<Metadata>PARSERprivate static longserialVersionUIDstatic intTYPED_FILTER_METADATA_FIELD_NUMBERprivate com.google.protobuf.MapField<java.lang.String,com.google.protobuf.Any>typedFilterMetadata_
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description booleancontainsFilterMetadata(java.lang.String key)Key is the reverse DNS filter name, e.g.booleancontainsTypedFilterMetadata(java.lang.String key)Key is the reverse DNS filter name, e.g.booleanequals(java.lang.Object obj)static MetadatagetDefaultInstance()MetadatagetDefaultInstanceForType()static com.google.protobuf.Descriptors.DescriptorgetDescriptor()java.util.Map<java.lang.String,com.google.protobuf.Struct>getFilterMetadata()Deprecated.intgetFilterMetadataCount()Key is the reverse DNS filter name, e.g.java.util.Map<java.lang.String,com.google.protobuf.Struct>getFilterMetadataMap()Key is the reverse DNS filter name, e.g.com.google.protobuf.StructgetFilterMetadataOrDefault(java.lang.String key, com.google.protobuf.Struct defaultValue)Key is the reverse DNS filter name, e.g.com.google.protobuf.StructgetFilterMetadataOrThrow(java.lang.String key)Key is the reverse DNS filter name, e.g.com.google.protobuf.Parser<Metadata>getParserForType()intgetSerializedSize()java.util.Map<java.lang.String,com.google.protobuf.Any>getTypedFilterMetadata()Deprecated.intgetTypedFilterMetadataCount()Key is the reverse DNS filter name, e.g.java.util.Map<java.lang.String,com.google.protobuf.Any>getTypedFilterMetadataMap()Key is the reverse DNS filter name, e.g.com.google.protobuf.AnygetTypedFilterMetadataOrDefault(java.lang.String key, com.google.protobuf.Any defaultValue)Key is the reverse DNS filter name, e.g.com.google.protobuf.AnygetTypedFilterMetadataOrThrow(java.lang.String key)Key is the reverse DNS filter name, e.g.inthashCode()protected com.google.protobuf.GeneratedMessage.FieldAccessorTableinternalGetFieldAccessorTable()private com.google.protobuf.MapField<java.lang.String,com.google.protobuf.Struct>internalGetFilterMetadata()protected com.google.protobuf.MapFieldReflectionAccessorinternalGetMapFieldReflection(int number)private com.google.protobuf.MapField<java.lang.String,com.google.protobuf.Any>internalGetTypedFilterMetadata()booleanisInitialized()static Metadata.BuildernewBuilder()static Metadata.BuildernewBuilder(Metadata prototype)Metadata.BuildernewBuilderForType()protected Metadata.BuildernewBuilderForType(com.google.protobuf.AbstractMessage.BuilderParent parent)static MetadataparseDelimitedFrom(java.io.InputStream input)static MetadataparseDelimitedFrom(java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static MetadataparseFrom(byte[] data)static MetadataparseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static MetadataparseFrom(com.google.protobuf.ByteString data)static MetadataparseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static MetadataparseFrom(com.google.protobuf.CodedInputStream input)static MetadataparseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static MetadataparseFrom(java.io.InputStream input)static MetadataparseFrom(java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static MetadataparseFrom(java.nio.ByteBuffer data)static MetadataparseFrom(java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static com.google.protobuf.Parser<Metadata>parser()Metadata.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, 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
-
FILTER_METADATA_FIELD_NUMBER
public static final int FILTER_METADATA_FIELD_NUMBER
- See Also:
- Constant Field Values
-
filterMetadata_
private com.google.protobuf.MapField<java.lang.String,com.google.protobuf.Struct> filterMetadata_
-
TYPED_FILTER_METADATA_FIELD_NUMBER
public static final int TYPED_FILTER_METADATA_FIELD_NUMBER
- See Also:
- Constant Field Values
-
typedFilterMetadata_
private com.google.protobuf.MapField<java.lang.String,com.google.protobuf.Any> typedFilterMetadata_
-
memoizedIsInitialized
private byte memoizedIsInitialized
-
DEFAULT_INSTANCE
private static final Metadata DEFAULT_INSTANCE
-
PARSER
private static final com.google.protobuf.Parser<Metadata> PARSER
-
-
Method Detail
-
getDescriptor
public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
-
internalGetMapFieldReflection
protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection(int number)
- Overrides:
internalGetMapFieldReflectionin classcom.google.protobuf.GeneratedMessage
-
internalGetFieldAccessorTable
protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()
- Specified by:
internalGetFieldAccessorTablein classcom.google.protobuf.GeneratedMessage
-
internalGetFilterMetadata
private com.google.protobuf.MapField<java.lang.String,com.google.protobuf.Struct> internalGetFilterMetadata()
-
getFilterMetadataCount
public int getFilterMetadataCount()
Description copied from interface:MetadataOrBuilderKey is the reverse DNS filter name, e.g. com.acme.widget. The ``envoy.*`` namespace is reserved for Envoy's built-in filters. If both ``filter_metadata`` and :ref:`typed_filter_metadata <envoy_v3_api_field_config.core.v3.Metadata.typed_filter_metadata>` fields are present in the metadata with same keys, only ``typed_filter_metadata`` field will be parsed.
map<string, .google.protobuf.Struct> filter_metadata = 1 [(.validate.rules) = { ... }- Specified by:
getFilterMetadataCountin interfaceMetadataOrBuilder
-
containsFilterMetadata
public boolean containsFilterMetadata(java.lang.String key)
Key is the reverse DNS filter name, e.g. com.acme.widget. The ``envoy.*`` namespace is reserved for Envoy's built-in filters. If both ``filter_metadata`` and :ref:`typed_filter_metadata <envoy_v3_api_field_config.core.v3.Metadata.typed_filter_metadata>` fields are present in the metadata with same keys, only ``typed_filter_metadata`` field will be parsed.
map<string, .google.protobuf.Struct> filter_metadata = 1 [(.validate.rules) = { ... }- Specified by:
containsFilterMetadatain interfaceMetadataOrBuilder
-
getFilterMetadata
@Deprecated public java.util.Map<java.lang.String,com.google.protobuf.Struct> getFilterMetadata()
Deprecated.UsegetFilterMetadataMap()instead.- Specified by:
getFilterMetadatain interfaceMetadataOrBuilder
-
getFilterMetadataMap
public java.util.Map<java.lang.String,com.google.protobuf.Struct> getFilterMetadataMap()
Key is the reverse DNS filter name, e.g. com.acme.widget. The ``envoy.*`` namespace is reserved for Envoy's built-in filters. If both ``filter_metadata`` and :ref:`typed_filter_metadata <envoy_v3_api_field_config.core.v3.Metadata.typed_filter_metadata>` fields are present in the metadata with same keys, only ``typed_filter_metadata`` field will be parsed.
map<string, .google.protobuf.Struct> filter_metadata = 1 [(.validate.rules) = { ... }- Specified by:
getFilterMetadataMapin interfaceMetadataOrBuilder
-
getFilterMetadataOrDefault
public com.google.protobuf.Struct getFilterMetadataOrDefault(java.lang.String key, com.google.protobuf.Struct defaultValue)Key is the reverse DNS filter name, e.g. com.acme.widget. The ``envoy.*`` namespace is reserved for Envoy's built-in filters. If both ``filter_metadata`` and :ref:`typed_filter_metadata <envoy_v3_api_field_config.core.v3.Metadata.typed_filter_metadata>` fields are present in the metadata with same keys, only ``typed_filter_metadata`` field will be parsed.
map<string, .google.protobuf.Struct> filter_metadata = 1 [(.validate.rules) = { ... }- Specified by:
getFilterMetadataOrDefaultin interfaceMetadataOrBuilder
-
getFilterMetadataOrThrow
public com.google.protobuf.Struct getFilterMetadataOrThrow(java.lang.String key)
Key is the reverse DNS filter name, e.g. com.acme.widget. The ``envoy.*`` namespace is reserved for Envoy's built-in filters. If both ``filter_metadata`` and :ref:`typed_filter_metadata <envoy_v3_api_field_config.core.v3.Metadata.typed_filter_metadata>` fields are present in the metadata with same keys, only ``typed_filter_metadata`` field will be parsed.
map<string, .google.protobuf.Struct> filter_metadata = 1 [(.validate.rules) = { ... }- Specified by:
getFilterMetadataOrThrowin interfaceMetadataOrBuilder
-
internalGetTypedFilterMetadata
private com.google.protobuf.MapField<java.lang.String,com.google.protobuf.Any> internalGetTypedFilterMetadata()
-
getTypedFilterMetadataCount
public int getTypedFilterMetadataCount()
Description copied from interface:MetadataOrBuilderKey is the reverse DNS filter name, e.g. com.acme.widget. The ``envoy.*`` namespace is reserved for Envoy's built-in filters. The value is encoded as google.protobuf.Any. If both :ref:`filter_metadata <envoy_v3_api_field_config.core.v3.Metadata.filter_metadata>` and ``typed_filter_metadata`` fields are present in the metadata with same keys, only ``typed_filter_metadata`` field will be parsed.
map<string, .google.protobuf.Any> typed_filter_metadata = 2 [(.validate.rules) = { ... }- Specified by:
getTypedFilterMetadataCountin interfaceMetadataOrBuilder
-
containsTypedFilterMetadata
public boolean containsTypedFilterMetadata(java.lang.String key)
Key is the reverse DNS filter name, e.g. com.acme.widget. The ``envoy.*`` namespace is reserved for Envoy's built-in filters. The value is encoded as google.protobuf.Any. If both :ref:`filter_metadata <envoy_v3_api_field_config.core.v3.Metadata.filter_metadata>` and ``typed_filter_metadata`` fields are present in the metadata with same keys, only ``typed_filter_metadata`` field will be parsed.
map<string, .google.protobuf.Any> typed_filter_metadata = 2 [(.validate.rules) = { ... }- Specified by:
containsTypedFilterMetadatain interfaceMetadataOrBuilder
-
getTypedFilterMetadata
@Deprecated public java.util.Map<java.lang.String,com.google.protobuf.Any> getTypedFilterMetadata()
Deprecated.UsegetTypedFilterMetadataMap()instead.- Specified by:
getTypedFilterMetadatain interfaceMetadataOrBuilder
-
getTypedFilterMetadataMap
public java.util.Map<java.lang.String,com.google.protobuf.Any> getTypedFilterMetadataMap()
Key is the reverse DNS filter name, e.g. com.acme.widget. The ``envoy.*`` namespace is reserved for Envoy's built-in filters. The value is encoded as google.protobuf.Any. If both :ref:`filter_metadata <envoy_v3_api_field_config.core.v3.Metadata.filter_metadata>` and ``typed_filter_metadata`` fields are present in the metadata with same keys, only ``typed_filter_metadata`` field will be parsed.
map<string, .google.protobuf.Any> typed_filter_metadata = 2 [(.validate.rules) = { ... }- Specified by:
getTypedFilterMetadataMapin interfaceMetadataOrBuilder
-
getTypedFilterMetadataOrDefault
public com.google.protobuf.Any getTypedFilterMetadataOrDefault(java.lang.String key, com.google.protobuf.Any defaultValue)Key is the reverse DNS filter name, e.g. com.acme.widget. The ``envoy.*`` namespace is reserved for Envoy's built-in filters. The value is encoded as google.protobuf.Any. If both :ref:`filter_metadata <envoy_v3_api_field_config.core.v3.Metadata.filter_metadata>` and ``typed_filter_metadata`` fields are present in the metadata with same keys, only ``typed_filter_metadata`` field will be parsed.
map<string, .google.protobuf.Any> typed_filter_metadata = 2 [(.validate.rules) = { ... }- Specified by:
getTypedFilterMetadataOrDefaultin interfaceMetadataOrBuilder
-
getTypedFilterMetadataOrThrow
public com.google.protobuf.Any getTypedFilterMetadataOrThrow(java.lang.String key)
Key is the reverse DNS filter name, e.g. com.acme.widget. The ``envoy.*`` namespace is reserved for Envoy's built-in filters. The value is encoded as google.protobuf.Any. If both :ref:`filter_metadata <envoy_v3_api_field_config.core.v3.Metadata.filter_metadata>` and ``typed_filter_metadata`` fields are present in the metadata with same keys, only ``typed_filter_metadata`` field will be parsed.
map<string, .google.protobuf.Any> typed_filter_metadata = 2 [(.validate.rules) = { ... }- Specified by:
getTypedFilterMetadataOrThrowin interfaceMetadataOrBuilder
-
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 Metadata parseFrom(java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static Metadata parseFrom(java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static Metadata parseFrom(com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static Metadata parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static Metadata parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static Metadata parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static Metadata parseFrom(java.io.InputStream input) throws java.io.IOException
- Throws:
java.io.IOException
-
parseFrom
public static Metadata parseFrom(java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException
- Throws:
java.io.IOException
-
parseDelimitedFrom
public static Metadata parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException
- Throws:
java.io.IOException
-
parseDelimitedFrom
public static Metadata parseDelimitedFrom(java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException
- Throws:
java.io.IOException
-
parseFrom
public static Metadata parseFrom(com.google.protobuf.CodedInputStream input) throws java.io.IOException
- Throws:
java.io.IOException
-
parseFrom
public static Metadata parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException
- Throws:
java.io.IOException
-
newBuilderForType
public Metadata.Builder newBuilderForType()
- Specified by:
newBuilderForTypein interfacecom.google.protobuf.Message- Specified by:
newBuilderForTypein interfacecom.google.protobuf.MessageLite
-
newBuilder
public static Metadata.Builder newBuilder()
-
newBuilder
public static Metadata.Builder newBuilder(Metadata prototype)
-
toBuilder
public Metadata.Builder toBuilder()
- Specified by:
toBuilderin interfacecom.google.protobuf.Message- Specified by:
toBuilderin interfacecom.google.protobuf.MessageLite
-
newBuilderForType
protected Metadata.Builder newBuilderForType(com.google.protobuf.AbstractMessage.BuilderParent parent)
- Overrides:
newBuilderForTypein classcom.google.protobuf.AbstractMessage
-
getDefaultInstance
public static Metadata getDefaultInstance()
-
parser
public static com.google.protobuf.Parser<Metadata> parser()
-
getParserForType
public com.google.protobuf.Parser<Metadata> getParserForType()
- Specified by:
getParserForTypein interfacecom.google.protobuf.Message- Specified by:
getParserForTypein interfacecom.google.protobuf.MessageLite- Overrides:
getParserForTypein classcom.google.protobuf.GeneratedMessage
-
getDefaultInstanceForType
public Metadata getDefaultInstanceForType()
- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageLiteOrBuilder- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageOrBuilder
-
-