Package io.opentelemetry.sdk.internal
Class ComponentRegistry<V>
java.lang.Object
io.opentelemetry.sdk.internal.ComponentRegistry<V>
- Type Parameters:
V
- the type of the registered value.
Component (tracer, meter, etc) registry class for all the provider classes (TracerProvider,
MeterProvider, etc.).
Components are identified by name, version, and schema. Name is required, but version and schema are optional. Therefore, we have 4 possible scenarios for component keys:
- Only name is provided, represented by
componentByName
- Name and version are provided, represented by
componentByNameAndVersion
- Name and schema are provided, represented by
componentByNameAndSchema
- Name, version and schema are provided, represented by
componentByNameVersionAndSchema
This class is internal and is hence not for public use. Its APIs are unstable and can change at any time.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final Function
<InstrumentationScopeInfo, V> private final Object
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate V
buildComponent
(InstrumentationScopeInfo instrumentationScopeInfo) get
(String name, String version, String schemaUrl, Attributes attributes) Returns the component associated with thename
,version
, andschemaUrl
.Returns aCollection
view of the registered components.
-
Field Details
-
componentByName
-
componentByNameAndVersion
-
componentByNameAndSchema
-
componentByNameVersionAndSchema
-
lock
-
allComponents
-
factory
-
-
Constructor Details
-
ComponentRegistry
-
-
Method Details
-
get
public V get(String name, @Nullable String version, @Nullable String schemaUrl, Attributes attributes) Returns the component associated with thename
,version
, andschemaUrl
.Attributes
are not part of component identity. Behavior is undefined when differentAttributes
are provided wherename
,version
, andschemaUrl
are identical. -
buildComponent
-
getComponents
Returns aCollection
view of the registered components.- Returns:
- a
Collection
view of the registered components.
-