Interface CircuitBreakerRegistry
-
- All Superinterfaces:
io.github.resilience4j.core.Registry<CircuitBreaker,CircuitBreakerConfig>
- All Known Implementing Classes:
InMemoryCircuitBreakerRegistry
public interface CircuitBreakerRegistry extends io.github.resilience4j.core.Registry<CircuitBreaker,CircuitBreakerConfig>
TheCircuitBreakerRegistryis a factory to create CircuitBreaker instances which stores all CircuitBreaker instances in a registry.
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static classCircuitBreakerRegistry.Builder
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Modifier and Type Method Description CircuitBreakercircuitBreaker(java.lang.String name)Returns a managedCircuitBreakeror creates a new one with the default CircuitBreaker configuration.CircuitBreakercircuitBreaker(java.lang.String name, CircuitBreakerConfig config)Returns a managedCircuitBreakeror creates a new one with a custom CircuitBreaker configuration.CircuitBreakercircuitBreaker(java.lang.String name, CircuitBreakerConfig config, io.vavr.collection.Map<java.lang.String,java.lang.String> tags)Returns a managedCircuitBreakeror creates a new one with a custom CircuitBreaker configuration.CircuitBreakercircuitBreaker(java.lang.String name, io.vavr.collection.Map<java.lang.String,java.lang.String> tags)Returns a managedCircuitBreakeror creates a new one with the default CircuitBreaker configuration.CircuitBreakercircuitBreaker(java.lang.String name, java.lang.String configName)Returns a managedCircuitBreakeror creates a new one.CircuitBreakercircuitBreaker(java.lang.String name, java.lang.String configName, io.vavr.collection.Map<java.lang.String,java.lang.String> tags)Returns a managedCircuitBreakeror creates a new one.CircuitBreakercircuitBreaker(java.lang.String name, java.util.function.Supplier<CircuitBreakerConfig> circuitBreakerConfigSupplier)Returns a managedCircuitBreakeror creates a new one with a custom CircuitBreaker configuration.CircuitBreakercircuitBreaker(java.lang.String name, java.util.function.Supplier<CircuitBreakerConfig> circuitBreakerConfigSupplier, io.vavr.collection.Map<java.lang.String,java.lang.String> tags)Returns a managedCircuitBreakeror creates a new one with a custom CircuitBreaker configuration.static CircuitBreakerRegistry.Buildercustom()Returns a builder to create a custom CircuitBreakerRegistry.io.vavr.collection.Seq<CircuitBreaker>getAllCircuitBreakers()Returns all managedCircuitBreakerinstances.static CircuitBreakerRegistryof(CircuitBreakerConfig circuitBreakerConfig)Creates a CircuitBreakerRegistry with a custom default CircuitBreaker configuration.static CircuitBreakerRegistryof(CircuitBreakerConfig circuitBreakerConfig, io.github.resilience4j.core.registry.RegistryEventConsumer<CircuitBreaker> registryEventConsumer)Creates a CircuitBreakerRegistry with a custom default CircuitBreaker configuration and a CircuitBreaker registry event consumer.static CircuitBreakerRegistryof(CircuitBreakerConfig circuitBreakerConfig, java.util.List<io.github.resilience4j.core.registry.RegistryEventConsumer<CircuitBreaker>> registryEventConsumers)Creates a CircuitBreakerRegistry with a custom default CircuitBreaker configuration and a list of CircuitBreaker registry event consumers.static CircuitBreakerRegistryof(java.util.Map<java.lang.String,CircuitBreakerConfig> configs)Creates a CircuitBreakerRegistry with a Map of shared CircuitBreaker configurations.static CircuitBreakerRegistryof(java.util.Map<java.lang.String,CircuitBreakerConfig> configs, io.github.resilience4j.core.registry.RegistryEventConsumer<CircuitBreaker> registryEventConsumer)Creates a CircuitBreakerRegistry with a Map of shared CircuitBreaker configurations and a CircuitBreaker registry event consumer.static CircuitBreakerRegistryof(java.util.Map<java.lang.String,CircuitBreakerConfig> configs, io.github.resilience4j.core.registry.RegistryEventConsumer<CircuitBreaker> registryEventConsumer, io.vavr.collection.Map<java.lang.String,java.lang.String> tags)Creates a CircuitBreakerRegistry with a Map of shared CircuitBreaker configurations and a CircuitBreaker registry event consumer.static CircuitBreakerRegistryof(java.util.Map<java.lang.String,CircuitBreakerConfig> configs, io.vavr.collection.Map<java.lang.String,java.lang.String> tags)Creates a CircuitBreakerRegistry with a Map of shared CircuitBreaker configurations.static CircuitBreakerRegistryof(java.util.Map<java.lang.String,CircuitBreakerConfig> configs, java.util.List<io.github.resilience4j.core.registry.RegistryEventConsumer<CircuitBreaker>> registryEventConsumers)Creates a CircuitBreakerRegistry with a Map of shared CircuitBreaker configurations and a list of CircuitBreaker registry event consumers.static CircuitBreakerRegistryofDefaults()Creates a CircuitBreakerRegistry with a default CircuitBreaker configuration.
-
-
-
Method Detail
-
of
static CircuitBreakerRegistry of(CircuitBreakerConfig circuitBreakerConfig)
Creates a CircuitBreakerRegistry with a custom default CircuitBreaker configuration.- Parameters:
circuitBreakerConfig- a custom default CircuitBreaker configuration- Returns:
- a CircuitBreakerRegistry with a custom CircuitBreaker configuration.
-
of
static CircuitBreakerRegistry of(CircuitBreakerConfig circuitBreakerConfig, io.github.resilience4j.core.registry.RegistryEventConsumer<CircuitBreaker> registryEventConsumer)
Creates a CircuitBreakerRegistry with a custom default CircuitBreaker configuration and a CircuitBreaker registry event consumer.- Parameters:
circuitBreakerConfig- a custom default CircuitBreaker configuration.registryEventConsumer- a CircuitBreaker registry event consumer.- Returns:
- a CircuitBreakerRegistry with a custom CircuitBreaker configuration and a CircuitBreaker registry event consumer.
-
of
static CircuitBreakerRegistry of(CircuitBreakerConfig circuitBreakerConfig, java.util.List<io.github.resilience4j.core.registry.RegistryEventConsumer<CircuitBreaker>> registryEventConsumers)
Creates a CircuitBreakerRegistry with a custom default CircuitBreaker configuration and a list of CircuitBreaker registry event consumers.- Parameters:
circuitBreakerConfig- a custom default CircuitBreaker configuration.registryEventConsumers- a list of CircuitBreaker registry event consumers.- Returns:
- a CircuitBreakerRegistry with a custom CircuitBreaker configuration and list of CircuitBreaker registry event consumers.
-
of
static CircuitBreakerRegistry of(java.util.Map<java.lang.String,CircuitBreakerConfig> configs)
Creates a CircuitBreakerRegistry with a Map of shared CircuitBreaker configurations.- Parameters:
configs- a Map of shared CircuitBreaker configurations- Returns:
- a CircuitBreakerRegistry with a Map of shared CircuitBreaker configurations.
-
of
static CircuitBreakerRegistry of(java.util.Map<java.lang.String,CircuitBreakerConfig> configs, io.vavr.collection.Map<java.lang.String,java.lang.String> tags)
Creates a CircuitBreakerRegistry with a Map of shared CircuitBreaker configurations.Tags added to the registry will be added to every instance created by this registry.
- Parameters:
configs- a Map of shared CircuitBreaker configurationstags- default tags to add to the registry- Returns:
- a CircuitBreakerRegistry with a Map of shared CircuitBreaker configurations.
-
of
static CircuitBreakerRegistry of(java.util.Map<java.lang.String,CircuitBreakerConfig> configs, io.github.resilience4j.core.registry.RegistryEventConsumer<CircuitBreaker> registryEventConsumer)
Creates a CircuitBreakerRegistry with a Map of shared CircuitBreaker configurations and a CircuitBreaker registry event consumer.- Parameters:
configs- a Map of shared CircuitBreaker configurations.registryEventConsumer- a CircuitBreaker registry event consumer.- Returns:
- a CircuitBreakerRegistry with a Map of shared CircuitBreaker configurations and a CircuitBreaker registry event consumer.
-
of
static CircuitBreakerRegistry of(java.util.Map<java.lang.String,CircuitBreakerConfig> configs, io.github.resilience4j.core.registry.RegistryEventConsumer<CircuitBreaker> registryEventConsumer, io.vavr.collection.Map<java.lang.String,java.lang.String> tags)
Creates a CircuitBreakerRegistry with a Map of shared CircuitBreaker configurations and a CircuitBreaker registry event consumer.- Parameters:
configs- a Map of shared CircuitBreaker configurations.registryEventConsumer- a CircuitBreaker registry event consumer.tags- default tags to add to the registry- Returns:
- a CircuitBreakerRegistry with a Map of shared CircuitBreaker configurations and a CircuitBreaker registry event consumer.
-
of
static CircuitBreakerRegistry of(java.util.Map<java.lang.String,CircuitBreakerConfig> configs, java.util.List<io.github.resilience4j.core.registry.RegistryEventConsumer<CircuitBreaker>> registryEventConsumers)
Creates a CircuitBreakerRegistry with a Map of shared CircuitBreaker configurations and a list of CircuitBreaker registry event consumers.- Parameters:
configs- a Map of shared CircuitBreaker configurations.registryEventConsumers- a list of CircuitBreaker registry event consumers.- Returns:
- a CircuitBreakerRegistry with a Map of shared CircuitBreaker configurations and a list of CircuitBreaker registry event consumers.
-
ofDefaults
static CircuitBreakerRegistry ofDefaults()
Creates a CircuitBreakerRegistry with a default CircuitBreaker configuration.- Returns:
- a CircuitBreakerRegistry with a default CircuitBreaker configuration.
-
getAllCircuitBreakers
io.vavr.collection.Seq<CircuitBreaker> getAllCircuitBreakers()
Returns all managedCircuitBreakerinstances.- Returns:
- all managed
CircuitBreakerinstances.
-
circuitBreaker
CircuitBreaker circuitBreaker(java.lang.String name)
Returns a managedCircuitBreakeror creates a new one with the default CircuitBreaker configuration.- Parameters:
name- the name of the CircuitBreaker- Returns:
- The
CircuitBreaker
-
circuitBreaker
CircuitBreaker circuitBreaker(java.lang.String name, io.vavr.collection.Map<java.lang.String,java.lang.String> tags)
Returns a managedCircuitBreakeror creates a new one with the default CircuitBreaker configuration.The
tagspassed will be appended to the tags already configured for the registry. When tags (keys) of the two collide the tags passed with this method will override the tags of the registry.- Parameters:
name- the name of the CircuitBreakertags- tags added to the CircuitBreaker- Returns:
- The
CircuitBreaker
-
circuitBreaker
CircuitBreaker circuitBreaker(java.lang.String name, CircuitBreakerConfig config)
Returns a managedCircuitBreakeror creates a new one with a custom CircuitBreaker configuration.- Parameters:
name- the name of the CircuitBreakerconfig- a custom CircuitBreaker configuration- Returns:
- The
CircuitBreaker
-
circuitBreaker
CircuitBreaker circuitBreaker(java.lang.String name, CircuitBreakerConfig config, io.vavr.collection.Map<java.lang.String,java.lang.String> tags)
Returns a managedCircuitBreakeror creates a new one with a custom CircuitBreaker configuration.The
tagspassed will be appended to the tags already configured for the registry. When tags (keys) of the two collide the tags passed with this method will override the tags of the registry.- Parameters:
name- the name of the CircuitBreakerconfig- a custom CircuitBreaker configurationtags- tags added to the CircuitBreaker- Returns:
- The
CircuitBreaker
-
circuitBreaker
CircuitBreaker circuitBreaker(java.lang.String name, java.lang.String configName)
Returns a managedCircuitBreakeror creates a new one. The configuration must have been added upfront viaRegistry.addConfiguration(String, Object).- Parameters:
name- the name of the CircuitBreakerconfigName- the name of the shared configuration- Returns:
- The
CircuitBreaker
-
circuitBreaker
CircuitBreaker circuitBreaker(java.lang.String name, java.lang.String configName, io.vavr.collection.Map<java.lang.String,java.lang.String> tags)
Returns a managedCircuitBreakeror creates a new one. The configuration must have been added upfront viaRegistry.addConfiguration(String, Object).The
tagspassed will be appended to the tags already configured for the registry. When tags (keys) of the two collide the tags passed with this method will override the tags of the registry.- Parameters:
name- the name of the CircuitBreakerconfigName- the name of the shared configurationtags- tags added to the CircuitBreaker- Returns:
- The
CircuitBreaker
-
circuitBreaker
CircuitBreaker circuitBreaker(java.lang.String name, java.util.function.Supplier<CircuitBreakerConfig> circuitBreakerConfigSupplier)
Returns a managedCircuitBreakeror creates a new one with a custom CircuitBreaker configuration.- Parameters:
name- the name of the CircuitBreakercircuitBreakerConfigSupplier- a supplier of a custom CircuitBreaker configuration- Returns:
- The
CircuitBreaker
-
circuitBreaker
CircuitBreaker circuitBreaker(java.lang.String name, java.util.function.Supplier<CircuitBreakerConfig> circuitBreakerConfigSupplier, io.vavr.collection.Map<java.lang.String,java.lang.String> tags)
Returns a managedCircuitBreakeror creates a new one with a custom CircuitBreaker configuration.The
tagspassed will be appended to the tags already configured for the registry. When tags (keys) of the two collide the tags passed with this method will override the tags of the registry.- Parameters:
name- the name of the CircuitBreakercircuitBreakerConfigSupplier- a supplier of a custom CircuitBreaker configurationtags- tags added to the CircuitBreaker- Returns:
- The
CircuitBreaker
-
custom
static CircuitBreakerRegistry.Builder custom()
Returns a builder to create a custom CircuitBreakerRegistry.- Returns:
- a
CircuitBreakerRegistry.Builder
-
-