Interface ValueProviderRegistry
-
- All Superinterfaces:
ValueProviderResolver
- All Known Implementing Classes:
ValueProviderRegistry.Adapter
public interface ValueProviderRegistry extends ValueProviderResolver
ValueProvider registry
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static class
ValueProviderRegistry.Adapter
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
addUnknownKeyHandler(ValueProviderResolver valueTypeResolver)
Register aValueProviderResolver
that will be used whengetValueProvider(String)
will be called with a key that was not registered neither byregisterValueProvider(ValueProvider)
nor byregisterAlias(ValueProvider, String)
.ValueProvider
getValueProvider(java.lang.String key)
Returns registered ValueProviderjava.util.Collection<ValueProvider>
getValueProviders()
ValueProvider
registerAlias(ValueProvider valueProvider, java.lang.String key)
ValueProvider
registerorFindValueProvider(ValueProvider valueProvider)
Registers a value provider, if there is no value provider with given valueProvider.getKeyvoid
registerValueProvider(ValueProvider valueProvider)
Registers a value providervoid
unregisterValueProvider(ValueProvider valueProvider)
Unregisters a value provider.
-
-
-
Method Detail
-
getValueProvider
@Nullable ValueProvider getValueProvider(@NotNull java.lang.String key)
Returns registered ValueProvider- Specified by:
getValueProvider
in interfaceValueProviderResolver
- Parameters:
key
- to lookup- Returns:
- found registered ValueType
- See Also:
ValueProvider.getKey()
-
registerValueProvider
void registerValueProvider(@NotNull ValueProvider valueProvider)
Registers a value provider- Parameters:
valueProvider
- metric value provider- Throws:
java.lang.IllegalArgumentException
- if trying register a value provider with the same key
-
registerorFindValueProvider
ValueProvider registerorFindValueProvider(@NotNull ValueProvider valueProvider)
Registers a value provider, if there is no value provider with given valueProvider.getKey- Parameters:
valueProvider
- value provider- Returns:
- registered value provider or existing, previously registered value provider with given key
-
registerAlias
ValueProvider registerAlias(@NotNull ValueProvider valueProvider, @NotNull java.lang.String key)
-
unregisterValueProvider
void unregisterValueProvider(@NotNull ValueProvider valueProvider)
Unregisters a value provider. If not registered, does nothing- Parameters:
valueProvider
- to unregister
-
getValueProviders
@NotNull java.util.Collection<ValueProvider> getValueProviders()
- Returns:
- collection of all registered value providers in the system
-
addUnknownKeyHandler
void addUnknownKeyHandler(@NotNull ValueProviderResolver valueTypeResolver)
Register aValueProviderResolver
that will be used whengetValueProvider(String)
will be called with a key that was not registered neither byregisterValueProvider(ValueProvider)
nor byregisterAlias(ValueProvider, String)
. ValueProviders provided byValueProviderResolver
will not be cached or registered and will not appear ingetValueProviders()
. RegisteredValueProviderResolver
will be called in the order they were added until any returns aValueProvider
. In order to provide default format and description for a keyValueProviderResolver
must return aValueProvider
implementing at leastclass
(e.g.SimpleBuildMetricVT
).- Parameters:
valueTypeResolver
-ValueProviderResolver
to register
-
-