Class Metadata.Builder
java.lang.Object
com.google.protobuf.AbstractMessageLite.Builder
com.google.protobuf.AbstractMessage.Builder<Metadata.Builder>
com.google.protobuf.GeneratedMessage.Builder<Metadata.Builder>
io.envoyproxy.envoy.config.core.v3.Metadata.Builder
- All Implemented Interfaces:
com.google.protobuf.Message.Builder
,com.google.protobuf.MessageLite.Builder
,com.google.protobuf.MessageLiteOrBuilder
,com.google.protobuf.MessageOrBuilder
,MetadataOrBuilder
,Cloneable
- Enclosing class:
Metadata
public static final class Metadata.Builder
extends com.google.protobuf.GeneratedMessage.Builder<Metadata.Builder>
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 type
envoy.config.core.v3.Metadata
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate static final class
private static final class
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate int
private com.google.protobuf.MapFieldBuilder
<String, com.google.protobuf.StructOrBuilder, com.google.protobuf.Struct, com.google.protobuf.Struct.Builder> private static final Metadata.Builder.FilterMetadataConverter
private com.google.protobuf.MapFieldBuilder
<String, com.google.protobuf.AnyOrBuilder, com.google.protobuf.Any, com.google.protobuf.Any.Builder> private static final Metadata.Builder.TypedFilterMetadataConverter
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbuild()
private void
buildPartial0
(Metadata result) clear()
boolean
Key is the reverse DNS filter name, e.g.boolean
Key is the reverse DNS filter name, e.g.static final com.google.protobuf.Descriptors.Descriptor
com.google.protobuf.Descriptors.Descriptor
Deprecated.int
Key is the reverse DNS filter name, e.g.Key is the reverse DNS filter name, e.g.com.google.protobuf.Struct
getFilterMetadataOrDefault
(String key, com.google.protobuf.Struct defaultValue) Key is the reverse DNS filter name, e.g.com.google.protobuf.Struct
Key is the reverse DNS filter name, e.g.Deprecated.Deprecated.Deprecated.int
Key is the reverse DNS filter name, e.g.Key is the reverse DNS filter name, e.g.com.google.protobuf.Any
getTypedFilterMetadataOrDefault
(String key, com.google.protobuf.Any defaultValue) Key is the reverse DNS filter name, e.g.com.google.protobuf.Any
Key is the reverse DNS filter name, e.g.protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
private com.google.protobuf.MapFieldBuilder
<String, com.google.protobuf.StructOrBuilder, com.google.protobuf.Struct, com.google.protobuf.Struct.Builder> protected com.google.protobuf.MapFieldReflectionAccessor
internalGetMapFieldReflection
(int number) private com.google.protobuf.MapFieldBuilder
<String, com.google.protobuf.StructOrBuilder, com.google.protobuf.Struct, com.google.protobuf.Struct.Builder> protected com.google.protobuf.MapFieldReflectionAccessor
internalGetMutableMapFieldReflection
(int number) private com.google.protobuf.MapFieldBuilder
<String, com.google.protobuf.AnyOrBuilder, com.google.protobuf.Any, com.google.protobuf.Any.Builder> private com.google.protobuf.MapFieldBuilder
<String, com.google.protobuf.AnyOrBuilder, com.google.protobuf.Any, com.google.protobuf.Any.Builder> final boolean
mergeFrom
(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) mergeFrom
(com.google.protobuf.Message other) putAllFilterMetadata
(Map<String, com.google.protobuf.Struct> values) Key is the reverse DNS filter name, e.g.putAllTypedFilterMetadata
(Map<String, com.google.protobuf.Any> values) Key is the reverse DNS filter name, e.g.putFilterMetadata
(String key, com.google.protobuf.Struct value) Key is the reverse DNS filter name, e.g.com.google.protobuf.Struct.Builder
Key is the reverse DNS filter name, e.g.putTypedFilterMetadata
(String key, com.google.protobuf.Any value) Key is the reverse DNS filter name, e.g.com.google.protobuf.Any.Builder
Key is the reverse DNS filter name, e.g.Key is the reverse DNS filter name, e.g.Key is the reverse DNS filter name, e.g.Methods inherited from class com.google.protobuf.GeneratedMessage.Builder
addRepeatedField, clearField, clearOneof, clone, getAllFields, getField, getFieldBuilder, getOneofFieldDescriptor, getParentForChildren, getRepeatedField, getRepeatedFieldBuilder, getRepeatedFieldCount, getUnknownFields, getUnknownFieldSetBuilder, hasField, hasOneof, internalGetMapField, internalGetMutableMapField, isClean, markClean, mergeUnknownFields, mergeUnknownLengthDelimitedField, mergeUnknownVarintField, newBuilderForField, onBuilt, onChanged, parseUnknownField, setField, setRepeatedField, setUnknownFields, setUnknownFieldSetBuilder, setUnknownFieldsProto3
Methods inherited from class com.google.protobuf.AbstractMessage.Builder
findInitializationErrors, getInitializationErrorString, internalMergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, newUninitializedMessageException, toString
Methods inherited from class com.google.protobuf.AbstractMessageLite.Builder
addAll, addAll, mergeDelimitedFrom, mergeDelimitedFrom, mergeFrom, newUninitializedMessageException
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface com.google.protobuf.Message.Builder
mergeDelimitedFrom, mergeDelimitedFrom
Methods inherited from interface com.google.protobuf.MessageLite.Builder
mergeFrom
Methods inherited from interface com.google.protobuf.MessageOrBuilder
findInitializationErrors, getAllFields, getField, getInitializationErrorString, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof
-
Field Details
-
bitField0_
private int bitField0_ -
filterMetadataConverter
-
filterMetadata_
private com.google.protobuf.MapFieldBuilder<String,com.google.protobuf.StructOrBuilder, filterMetadata_com.google.protobuf.Struct, com.google.protobuf.Struct.Builder> -
typedFilterMetadataConverter
-
typedFilterMetadata_
private com.google.protobuf.MapFieldBuilder<String,com.google.protobuf.AnyOrBuilder, typedFilterMetadata_com.google.protobuf.Any, com.google.protobuf.Any.Builder>
-
-
Constructor Details
-
Builder
private Builder() -
Builder
private Builder(com.google.protobuf.AbstractMessage.BuilderParent parent)
-
-
Method Details
-
getDescriptor
public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() -
internalGetMapFieldReflection
protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection(int number) - Overrides:
internalGetMapFieldReflection
in classcom.google.protobuf.GeneratedMessage.Builder<Metadata.Builder>
-
internalGetMutableMapFieldReflection
protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection(int number) - Overrides:
internalGetMutableMapFieldReflection
in classcom.google.protobuf.GeneratedMessage.Builder<Metadata.Builder>
-
internalGetFieldAccessorTable
protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()- Specified by:
internalGetFieldAccessorTable
in classcom.google.protobuf.GeneratedMessage.Builder<Metadata.Builder>
-
clear
- Specified by:
clear
in interfacecom.google.protobuf.Message.Builder
- Specified by:
clear
in interfacecom.google.protobuf.MessageLite.Builder
- Overrides:
clear
in classcom.google.protobuf.GeneratedMessage.Builder<Metadata.Builder>
-
getDescriptorForType
public com.google.protobuf.Descriptors.Descriptor getDescriptorForType()- Specified by:
getDescriptorForType
in interfacecom.google.protobuf.Message.Builder
- Specified by:
getDescriptorForType
in interfacecom.google.protobuf.MessageOrBuilder
- Overrides:
getDescriptorForType
in classcom.google.protobuf.GeneratedMessage.Builder<Metadata.Builder>
-
getDefaultInstanceForType
- Specified by:
getDefaultInstanceForType
in interfacecom.google.protobuf.MessageLiteOrBuilder
- Specified by:
getDefaultInstanceForType
in interfacecom.google.protobuf.MessageOrBuilder
-
build
- Specified by:
build
in interfacecom.google.protobuf.Message.Builder
- Specified by:
build
in interfacecom.google.protobuf.MessageLite.Builder
-
buildPartial
- Specified by:
buildPartial
in interfacecom.google.protobuf.Message.Builder
- Specified by:
buildPartial
in interfacecom.google.protobuf.MessageLite.Builder
-
buildPartial0
-
mergeFrom
- Specified by:
mergeFrom
in interfacecom.google.protobuf.Message.Builder
- Overrides:
mergeFrom
in classcom.google.protobuf.AbstractMessage.Builder<Metadata.Builder>
-
mergeFrom
-
isInitialized
public final boolean isInitialized()- Specified by:
isInitialized
in interfacecom.google.protobuf.MessageLiteOrBuilder
- Overrides:
isInitialized
in classcom.google.protobuf.GeneratedMessage.Builder<Metadata.Builder>
-
mergeFrom
public Metadata.Builder mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException - Specified by:
mergeFrom
in interfacecom.google.protobuf.Message.Builder
- Specified by:
mergeFrom
in interfacecom.google.protobuf.MessageLite.Builder
- Overrides:
mergeFrom
in classcom.google.protobuf.AbstractMessage.Builder<Metadata.Builder>
- Throws:
IOException
-
internalGetFilterMetadata
private com.google.protobuf.MapFieldBuilder<String,com.google.protobuf.StructOrBuilder, internalGetFilterMetadata()com.google.protobuf.Struct, com.google.protobuf.Struct.Builder> -
internalGetMutableFilterMetadata
private com.google.protobuf.MapFieldBuilder<String,com.google.protobuf.StructOrBuilder, internalGetMutableFilterMetadata()com.google.protobuf.Struct, com.google.protobuf.Struct.Builder> -
getFilterMetadataCount
public int getFilterMetadataCount()Description copied from interface:MetadataOrBuilder
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:
getFilterMetadataCount
in interfaceMetadataOrBuilder
-
containsFilterMetadata
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:
containsFilterMetadata
in interfaceMetadataOrBuilder
-
getFilterMetadata
Deprecated.UsegetFilterMetadataMap()
instead.- Specified by:
getFilterMetadata
in interfaceMetadataOrBuilder
-
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:
getFilterMetadataMap
in interfaceMetadataOrBuilder
-
getFilterMetadataOrDefault
public com.google.protobuf.Struct getFilterMetadataOrDefault(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:
getFilterMetadataOrDefault
in interfaceMetadataOrBuilder
-
getFilterMetadataOrThrow
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:
getFilterMetadataOrThrow
in interfaceMetadataOrBuilder
-
clearFilterMetadata
-
removeFilterMetadata
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) = { ... }
-
getMutableFilterMetadata
Deprecated.Use alternate mutation accessors instead. -
putFilterMetadata
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) = { ... }
-
putAllFilterMetadata
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) = { ... }
-
putFilterMetadataBuilderIfAbsent
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) = { ... }
-
internalGetTypedFilterMetadata
private com.google.protobuf.MapFieldBuilder<String,com.google.protobuf.AnyOrBuilder, internalGetTypedFilterMetadata()com.google.protobuf.Any, com.google.protobuf.Any.Builder> -
internalGetMutableTypedFilterMetadata
private com.google.protobuf.MapFieldBuilder<String,com.google.protobuf.AnyOrBuilder, internalGetMutableTypedFilterMetadata()com.google.protobuf.Any, com.google.protobuf.Any.Builder> -
getTypedFilterMetadataCount
public int getTypedFilterMetadataCount()Description copied from interface:MetadataOrBuilder
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:
getTypedFilterMetadataCount
in interfaceMetadataOrBuilder
-
containsTypedFilterMetadata
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:
containsTypedFilterMetadata
in interfaceMetadataOrBuilder
-
getTypedFilterMetadata
Deprecated.UsegetTypedFilterMetadataMap()
instead.- Specified by:
getTypedFilterMetadata
in interfaceMetadataOrBuilder
-
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:
getTypedFilterMetadataMap
in interfaceMetadataOrBuilder
-
getTypedFilterMetadataOrDefault
public com.google.protobuf.Any getTypedFilterMetadataOrDefault(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:
getTypedFilterMetadataOrDefault
in interfaceMetadataOrBuilder
-
getTypedFilterMetadataOrThrow
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:
getTypedFilterMetadataOrThrow
in interfaceMetadataOrBuilder
-
clearTypedFilterMetadata
-
removeTypedFilterMetadata
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) = { ... }
-
getMutableTypedFilterMetadata
Deprecated.Use alternate mutation accessors instead. -
putTypedFilterMetadata
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) = { ... }
-
putAllTypedFilterMetadata
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) = { ... }
-
putTypedFilterMetadataBuilderIfAbsent
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) = { ... }
-