Class FaultToleranceConfigurationProperties

  • All Implemented Interfaces:
    Closeable, AutoCloseable, org.apache.camel.spi.BootstrapCloseable

    @Configurer(bootstrap=true,
                extended=true)
    public class FaultToleranceConfigurationProperties
    extends Object
    implements org.apache.camel.spi.BootstrapCloseable
    Global configuration for MicroProfile Fault Tolerance EIP circuit breaker.
    • Method Detail

      • getCircuitBreaker

        public String getCircuitBreaker()
      • setCircuitBreaker

        public void setCircuitBreaker​(String circuitBreaker)
        Refers to an existing io.smallrye.faulttolerance.core.circuit.breaker.CircuitBreaker instance to lookup and use from the registry. When using this, then any other circuit breaker options are not in use.
      • getDelay

        public Long getDelay()
      • setDelay

        public void setDelay​(Long delay)
        Control how long the circuit breaker stays open. The value are in seconds and the default is 5 seconds.
      • getSuccessThreshold

        public Integer getSuccessThreshold()
      • setSuccessThreshold

        public void setSuccessThreshold​(Integer successThreshold)
        Controls the number of trial calls which are allowed when the circuit breaker is half-open Default value is 1.
      • getRequestVolumeThreshold

        public Integer getRequestVolumeThreshold()
      • setRequestVolumeThreshold

        public void setRequestVolumeThreshold​(Integer requestVolumeThreshold)
        Controls the size of the rolling window used when the circuit breaker is closed Default value is 20.
      • getFailureRatio

        public Integer getFailureRatio()
      • setFailureRatio

        public void setFailureRatio​(Integer failureRatio)
        Configures the failure rate threshold in percentage. If the failure rate is equal or greater than the threshold the CircuitBreaker transitions to open and starts short-circuiting calls.

        The threshold must be greater than 0 and not greater than 100. Default value is 50 percentage.

      • getTimeoutEnabled

        public Boolean getTimeoutEnabled()
      • setTimeoutEnabled

        public void setTimeoutEnabled​(Boolean timeoutEnabled)
        Whether timeout is enabled or not on the circuit breaker. Default is false.
      • getTimeoutDuration

        public Long getTimeoutDuration()
      • setTimeoutDuration

        public void setTimeoutDuration​(Long timeoutDuration)
        Configures the thread execution timeout. Default value is 1000 milliseconds.
      • getTimeoutPoolSize

        public Integer getTimeoutPoolSize()
      • setTimeoutPoolSize

        public void setTimeoutPoolSize​(Integer timeoutPoolSize)
        Configures the pool size of the thread pool when timeout is enabled. Default value is 10.
      • getTimeoutScheduledExecutorService

        public String getTimeoutScheduledExecutorService()
      • setTimeoutScheduledExecutorService

        public void setTimeoutScheduledExecutorService​(String timeoutScheduledExecutorService)
        References to a custom thread pool to use when timeout is enabled
      • getBulkheadEnabled

        public Boolean getBulkheadEnabled()
      • setBulkheadEnabled

        public void setBulkheadEnabled​(Boolean bulkheadEnabled)
        Whether bulkhead is enabled or not on the circuit breaker. Default is false.
      • getBulkheadMaxConcurrentCalls

        public Integer getBulkheadMaxConcurrentCalls()
      • setBulkheadMaxConcurrentCalls

        public void setBulkheadMaxConcurrentCalls​(Integer bulkheadMaxConcurrentCalls)
        Configures the max amount of concurrent calls the bulkhead will support. Default value is 10.
      • getBulkheadWaitingTaskQueue

        public Integer getBulkheadWaitingTaskQueue()
      • setBulkheadWaitingTaskQueue

        public void setBulkheadWaitingTaskQueue​(Integer bulkheadWaitingTaskQueue)
        Configures the task queue size for holding waiting tasks to be processed by the bulkhead. Default value is 10.
      • getBulkheadExecutorService

        public String getBulkheadExecutorService()
      • setBulkheadExecutorService

        public void setBulkheadExecutorService​(String bulkheadExecutorService)
        References to a custom thread pool to use when bulkhead is enabled.
      • withCircuitBreakerRef

        public FaultToleranceConfigurationProperties withCircuitBreakerRef​(String circuitBreakerRef)
        Refers to an existing io.smallrye.faulttolerance.core.circuit.breaker.CircuitBreaker instance to lookup and use from the registry. When using this, then any other circuit breaker options are not in use.
      • withSuccessThreshold

        public FaultToleranceConfigurationProperties withSuccessThreshold​(Integer successThreshold)
        Controls the number of trial calls which are allowed when the circuit breaker is half-open Default value is 1.
      • withRequestVolumeThreshold

        public FaultToleranceConfigurationProperties withRequestVolumeThreshold​(Integer requestVolumeThreshold)
        Controls the size of the rolling window used when the circuit breaker is closed Default value is 20.
      • withFailureRatio

        public FaultToleranceConfigurationProperties withFailureRatio​(Integer failureRatio)
        Configures the failure rate threshold in percentage. If the failure rate is equal or greater than the threshold the CircuitBreaker transitions to open and starts short-circuiting calls.

        The threshold must be greater than 0 and not greater than 100. Default value is 50 percentage.

      • withTimeoutScheduledExecutorServiceRef

        public FaultToleranceConfigurationProperties withTimeoutScheduledExecutorServiceRef​(String timeoutScheduledExecutorServiceRef)
        References to a custom thread pool to use when timeout is enabled
      • withBulkheadMaxConcurrentCalls

        public FaultToleranceConfigurationProperties withBulkheadMaxConcurrentCalls​(Integer bulkheadMaxConcurrentCalls)
        Configures the max amount of concurrent calls the bulkhead will support. Default value is 10.
      • withBulkheadWaitingTaskQueue

        public FaultToleranceConfigurationProperties withBulkheadWaitingTaskQueue​(Integer bulkheadWaitingTaskQueue)
        Configures the task queue size for holding waiting tasks to be processed by the bulkhead. Default value is 10.
      • withBulkheadExecutorServiceRef

        public FaultToleranceConfigurationProperties withBulkheadExecutorServiceRef​(String bulkheadExecutorServiceRef)
        References to a custom thread pool to use when bulkhead is enabled.