public class OpenFeatureAPI extends Object implements EventBus<OpenFeatureAPI>
Clients.| Modifier | Constructor and Description |
|---|---|
protected |
OpenFeatureAPI() |
| Modifier and Type | Method and Description |
|---|---|
void |
addHooks(Hook... hooks)
Adds hooks for globally, used for all evaluations.
|
void |
clearHooks()
Removes all hooks.
|
Client |
getClient()
A factory function for creating new, OpenFeature clients.
|
Client |
getClient(String domain)
A factory function for creating new domainless OpenFeature clients.
|
Client |
getClient(String domain,
String version)
A factory function for creating new domainless OpenFeature clients.
|
EvaluationContext |
getEvaluationContext()
Gets the global evaluation context, which will be used for all evaluations.
|
List<Hook> |
getHooks()
Fetch the hooks associated to this client.
|
static OpenFeatureAPI |
getInstance()
Provisions the
OpenFeatureAPI singleton (if needed) and returns it. |
FeatureProvider |
getProvider()
Return the default provider.
|
FeatureProvider |
getProvider(String domain)
Fetch a provider for a domain.
|
Metadata |
getProviderMetadata()
Get metadata about the default provider.
|
Metadata |
getProviderMetadata(String domain)
Get metadata about a registered provider using the client name.
|
TransactionContextPropagator |
getTransactionContextPropagator()
Return the transaction context propagator.
|
OpenFeatureAPI |
on(ProviderEvent event,
Consumer<EventDetails> handler)
Add a handler for the specified
ProviderEvent. |
OpenFeatureAPI |
onProviderConfigurationChanged(Consumer<EventDetails> handler)
Add a handler for the
ProviderEvent.PROVIDER_CONFIGURATION_CHANGED event. |
OpenFeatureAPI |
onProviderError(Consumer<EventDetails> handler)
Add a handler for the
ProviderEvent.PROVIDER_STALE event. |
OpenFeatureAPI |
onProviderReady(Consumer<EventDetails> handler)
Add a handler for the
ProviderEvent.PROVIDER_READY event. |
OpenFeatureAPI |
onProviderStale(Consumer<EventDetails> handler)
Add a handler for the
ProviderEvent.PROVIDER_ERROR event. |
OpenFeatureAPI |
removeHandler(ProviderEvent event,
Consumer<EventDetails> handler)
Remove the previously attached handler by reference.
|
OpenFeatureAPI |
setEvaluationContext(EvaluationContext evaluationContext)
Sets the global evaluation context, which will be used for all evaluations.
|
void |
setProvider(FeatureProvider provider)
Set the default provider.
|
void |
setProvider(String domain,
FeatureProvider provider)
Add a provider for a domain.
|
void |
setProviderAndWait(FeatureProvider provider)
Set the default provider and wait for initialization to finish.
|
void |
setProviderAndWait(String domain,
FeatureProvider provider)
Add a provider for a domain and wait for initialization to finish.
|
void |
setTransactionContext(EvaluationContext evaluationContext)
Sets the transaction context using the registered transaction context propagator.
|
void |
setTransactionContextPropagator(TransactionContextPropagator transactionContextPropagator)
Sets the transaction context propagator.
|
void |
shutdown()
Shut down and reset the current status of OpenFeature API.
|
public static OpenFeatureAPI getInstance()
OpenFeatureAPI singleton (if needed) and returns it.public Metadata getProviderMetadata()
public Metadata getProviderMetadata(String domain)
domain - an identifier which logically binds clients with providerspublic Client getClient()
public Client getClient(String domain)
domain - an identifier which logically binds clients with providerspublic Client getClient(String domain, String version)
domain - a identifier which logically binds clients with providersversion - a version identifierpublic OpenFeatureAPI setEvaluationContext(EvaluationContext evaluationContext)
evaluationContext - the contextpublic EvaluationContext getEvaluationContext()
public TransactionContextPropagator getTransactionContextPropagator()
public void setTransactionContextPropagator(TransactionContextPropagator transactionContextPropagator)
IllegalArgumentException - if transactionContextPropagator is nullpublic void setTransactionContext(EvaluationContext evaluationContext)
public void setProvider(FeatureProvider provider)
public void setProvider(String domain, FeatureProvider provider)
domain - The domain to bind the provider to.provider - The provider to set.public void setProviderAndWait(FeatureProvider provider) throws OpenFeatureError
OpenFeatureErrorpublic void setProviderAndWait(String domain, FeatureProvider provider) throws OpenFeatureError
domain - The domain to bind the provider to.provider - The provider to set.OpenFeatureErrorpublic FeatureProvider getProvider()
public FeatureProvider getProvider(String domain)
domain - The domain to look for.FeatureProviderpublic void addHooks(Hook... hooks)
hooks - The hook to add.public List<Hook> getHooks()
Hooks.public void clearHooks()
public void shutdown()
public OpenFeatureAPI onProviderReady(Consumer<EventDetails> handler)
ProviderEvent.PROVIDER_READY event.
Shorthand for EventBus.on(ProviderEvent, Consumer)onProviderReady in interface EventBus<OpenFeatureAPI>handler - behavior to add with this eventpublic OpenFeatureAPI onProviderConfigurationChanged(Consumer<EventDetails> handler)
ProviderEvent.PROVIDER_CONFIGURATION_CHANGED event.
Shorthand for EventBus.on(ProviderEvent, Consumer)onProviderConfigurationChanged in interface EventBus<OpenFeatureAPI>handler - behavior to add with this eventpublic OpenFeatureAPI onProviderStale(Consumer<EventDetails> handler)
ProviderEvent.PROVIDER_ERROR event.
Shorthand for EventBus.on(ProviderEvent, Consumer)onProviderStale in interface EventBus<OpenFeatureAPI>handler - behavior to add with this eventpublic OpenFeatureAPI onProviderError(Consumer<EventDetails> handler)
ProviderEvent.PROVIDER_STALE event.
Shorthand for EventBus.on(ProviderEvent, Consumer)onProviderError in interface EventBus<OpenFeatureAPI>handler - behavior to add with this eventpublic OpenFeatureAPI on(ProviderEvent event, Consumer<EventDetails> handler)
ProviderEvent.on in interface EventBus<OpenFeatureAPI>event - event typehandler - behavior to add with this eventpublic OpenFeatureAPI removeHandler(ProviderEvent event, Consumer<EventDetails> handler)
removeHandler in interface EventBus<OpenFeatureAPI>event - event typehandler - to be removedCopyright © 2024. All rights reserved.