public class JaxRsCircuitBreakerImpl extends Object implements JaxRsCircuitBreaker
JaxRsCircuitBreaker is a specialized CircuitBreaker
for JaxRs client and preserves the same properties of
CircuitBreaker
such as thread safety
Constructor and Description |
---|
JaxRsCircuitBreakerImpl(CircuitBreakerConfiguration configuration)
Creates a
JaxRsCircuitBreakerImpl |
Modifier and Type | Method and Description |
---|---|
Function<javax.ws.rs.client.Invocation,javax.ws.rs.core.Response> |
decorateFunction(Function<javax.ws.rs.client.Invocation,javax.ws.rs.core.Response> function)
Returns a function which is decorated by the JaxRsCircuitBreaker.
|
Supplier<Future<javax.ws.rs.core.Response>> |
decorateFuture(Supplier<Future<javax.ws.rs.core.Response>> supplier)
Returns a supplier of type Future which is decorated by the JaxRsCircuitBreaker.
|
Supplier<javax.ws.rs.core.Response> |
decorateSupplier(Supplier<javax.ws.rs.core.Response> supplier)
Returns a supplier which is decorated by the JaxRsCircuitBreaker.
|
CircuitBreakerState |
getState()
Returns the state of this CircuitBreaker.
|
public JaxRsCircuitBreakerImpl(CircuitBreakerConfiguration configuration)
Creates a JaxRsCircuitBreakerImpl
configuration
- custom JaxRs CircuitBreaker configurationpublic Supplier<javax.ws.rs.core.Response> decorateSupplier(Supplier<javax.ws.rs.core.Response> supplier)
JaxRsCircuitBreaker
Returns a supplier which is decorated by the JaxRsCircuitBreaker.
decorateSupplier
in interface JaxRsCircuitBreaker
supplier
- the original supplierpublic Function<javax.ws.rs.client.Invocation,javax.ws.rs.core.Response> decorateFunction(Function<javax.ws.rs.client.Invocation,javax.ws.rs.core.Response> function)
JaxRsCircuitBreaker
Returns a function which is decorated by the JaxRsCircuitBreaker.
decorateFunction
in interface JaxRsCircuitBreaker
function
- the original functionpublic Supplier<Future<javax.ws.rs.core.Response>> decorateFuture(Supplier<Future<javax.ws.rs.core.Response>> supplier)
JaxRsCircuitBreaker
Returns a supplier of type Future which is decorated by the JaxRsCircuitBreaker. The elapsed time
includes Future.get()
evaluation time even if the underlying call took less time to
return. Any delays in evaluating Future by caller will add towards total time.
decorateFuture
in interface JaxRsCircuitBreaker
supplier
- the original supplierpublic CircuitBreakerState getState()
JaxRsCircuitBreaker
Returns the state of this CircuitBreaker.
getState
in interface JaxRsCircuitBreaker
Copyright © 2016–2022. All rights reserved.