Class FaultToleranceProcessor
java.lang.Object
org.apache.camel.support.service.BaseService
org.apache.camel.support.service.ServiceSupport
org.apache.camel.support.AsyncProcessorSupport
org.apache.camel.component.microprofile.faulttolerance.FaultToleranceProcessor
- All Implemented Interfaces:
AutoCloseable,org.apache.camel.AsyncProcessor,org.apache.camel.CamelContextAware,org.apache.camel.Navigate<org.apache.camel.Processor>,org.apache.camel.Processor,org.apache.camel.Service,org.apache.camel.ShutdownableService,org.apache.camel.spi.HasCamelContext,org.apache.camel.spi.HasId,org.apache.camel.spi.IdAware,org.apache.camel.spi.RouteIdAware,org.apache.camel.StatefulService,org.apache.camel.SuspendableService,org.apache.camel.Traceable
@ManagedResource(description="Managed FaultTolerance Processor")
public class FaultToleranceProcessor
extends org.apache.camel.support.AsyncProcessorSupport
implements org.apache.camel.CamelContextAware, org.apache.camel.Navigate<org.apache.camel.Processor>, org.apache.camel.Traceable, org.apache.camel.spi.IdAware, org.apache.camel.spi.RouteIdAware
Implementation of Circuit Breaker EIP using microprofile fault tolerance.
-
Field Summary
Fields inherited from class org.apache.camel.support.service.BaseService
BUILT, FAILED, INITIALIZED, INITIALIZING, lock, NEW, SHUTDOWN, SHUTTING_DOWN, STARTED, STARTING, status, STOPPED, STOPPING, SUSPENDED, SUSPENDING -
Constructor Summary
ConstructorsConstructorDescriptionFaultToleranceProcessor(FaultToleranceConfiguration config, org.apache.camel.Processor processor, org.apache.camel.Processor fallbackProcessor) -
Method Summary
Modifier and TypeMethodDescriptionprotected voiddoBuild()protected voiddoInit()protected voidprotected voiddoStart()protected voiddoStop()intintorg.apache.camel.CamelContextio.smallrye.faulttolerance.core.circuit.breaker.CircuitBreaker<?>longgetDelay()floatgetId()intintlongintbooleanhasNext()booleanbooleanbooleanList<org.apache.camel.Processor>next()booleanprocess(org.apache.camel.Exchange exchange, org.apache.camel.AsyncCallback callback) voidsetCamelContext(org.apache.camel.CamelContext camelContext) voidsetCircuitBreaker(io.smallrye.faulttolerance.core.circuit.breaker.CircuitBreaker<?> circuitBreaker) voidsetExecutorService(ExecutorService executorService) voidvoidsetRouteId(String routeId) voidsetShutdownExecutorService(boolean shutdownExecutorService) Methods inherited from class org.apache.camel.support.AsyncProcessorSupport
process, processAsyncMethods inherited from class org.apache.camel.support.service.BaseService
build, doFail, doLifecycleChange, doResume, doSuspend, fail, getStatus, init, isBuild, isInit, isNew, isRunAllowed, isShutdown, isStarted, isStarting, isStartingOrStarted, isStopped, isStopping, isStoppingOrStopped, isSuspended, isSuspending, isSuspendingOrSuspended, resume, shutdown, start, stop, suspendMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.camel.spi.IdAware
setGeneratedIdMethods inherited from interface org.apache.camel.Service
build, close, init, start, stopMethods inherited from interface org.apache.camel.ShutdownableService
shutdownMethods inherited from interface org.apache.camel.StatefulService
getStatus, isRunAllowed, isStarted, isStarting, isStopped, isStopping, isSuspendingMethods inherited from interface org.apache.camel.SuspendableService
isSuspended, resume, suspend
-
Constructor Details
-
FaultToleranceProcessor
public FaultToleranceProcessor(FaultToleranceConfiguration config, org.apache.camel.Processor processor, org.apache.camel.Processor fallbackProcessor)
-
-
Method Details
-
getCamelContext
public org.apache.camel.CamelContext getCamelContext()- Specified by:
getCamelContextin interfaceorg.apache.camel.spi.HasCamelContext
-
setCamelContext
public void setCamelContext(org.apache.camel.CamelContext camelContext) - Specified by:
setCamelContextin interfaceorg.apache.camel.CamelContextAware
-
getId
- Specified by:
getIdin interfaceorg.apache.camel.spi.HasId
-
setId
- Specified by:
setIdin interfaceorg.apache.camel.spi.IdAware
-
getRouteId
- Specified by:
getRouteIdin interfaceorg.apache.camel.spi.RouteIdAware
-
setRouteId
- Specified by:
setRouteIdin interfaceorg.apache.camel.spi.RouteIdAware
-
getCircuitBreaker
public io.smallrye.faulttolerance.core.circuit.breaker.CircuitBreaker<?> getCircuitBreaker() -
setCircuitBreaker
public void setCircuitBreaker(io.smallrye.faulttolerance.core.circuit.breaker.CircuitBreaker<?> circuitBreaker) -
isShutdownExecutorService
public boolean isShutdownExecutorService() -
setShutdownExecutorService
public void setShutdownExecutorService(boolean shutdownExecutorService) -
getExecutorService
-
setExecutorService
-
getTraceLabel
- Specified by:
getTraceLabelin interfaceorg.apache.camel.Traceable
-
getDelay
@ManagedAttribute(description="Returns the current delay in milliseconds.") public long getDelay() -
getFailureRate
@ManagedAttribute(description="Returns the current failure rate in percentage.") public float getFailureRate() -
getRequestVolumeThreshold
@ManagedAttribute(description="Returns the current request volume threshold.") public int getRequestVolumeThreshold() -
getSuccessThreshold
@ManagedAttribute(description="Returns the current success threshold.") public int getSuccessThreshold() -
isTimeoutEnabled
@ManagedAttribute(description="Is timeout enabled") public boolean isTimeoutEnabled() -
getTimeoutDuration
@ManagedAttribute(description="The timeout wait duration") public long getTimeoutDuration() -
getTimeoutPoolSize
@ManagedAttribute(description="The timeout pool size for the thread pool") public int getTimeoutPoolSize() -
isBulkheadEnabled
@ManagedAttribute(description="Is bulkhead enabled") public boolean isBulkheadEnabled() -
getBulkheadMaxConcurrentCalls
@ManagedAttribute(description="The max amount of concurrent calls the bulkhead will support.") public int getBulkheadMaxConcurrentCalls() -
getBulkheadWaitingTaskQueue
@ManagedAttribute(description="The task queue size for holding waiting tasks to be processed by the bulkhead") public int getBulkheadWaitingTaskQueue() -
getCircuitBreakerState
@ManagedAttribute(description="Returns the current state of the circuit breaker") public String getCircuitBreakerState() -
next
- Specified by:
nextin interfaceorg.apache.camel.Navigate<org.apache.camel.Processor>
-
hasNext
public boolean hasNext()- Specified by:
hasNextin interfaceorg.apache.camel.Navigate<org.apache.camel.Processor>
-
process
public boolean process(org.apache.camel.Exchange exchange, org.apache.camel.AsyncCallback callback) - Specified by:
processin interfaceorg.apache.camel.AsyncProcessor
-
doBuild
- Overrides:
doBuildin classorg.apache.camel.support.service.BaseService- Throws:
Exception
-
doInit
- Overrides:
doInitin classorg.apache.camel.support.service.BaseService- Throws:
Exception
-
doStart
- Overrides:
doStartin classorg.apache.camel.support.service.BaseService- Throws:
Exception
-
doStop
- Overrides:
doStopin classorg.apache.camel.support.service.BaseService- Throws:
Exception
-
doShutdown
- Overrides:
doShutdownin classorg.apache.camel.support.service.BaseService- Throws:
Exception
-