io.smallrye.faulttolerance.api.FaultToleranceSpi Maven / Gradle / Ivy
package io.smallrye.faulttolerance.api;
import java.util.function.Function;
import io.smallrye.common.annotation.Experimental;
/**
* This is an internal API. It may change incompatibly without notice.
* It should not be used or implemented outside SmallRye Fault Tolerance.
*/
@Experimental("first attempt at providing programmatic API")
public interface FaultToleranceSpi {
boolean applies();
int priority();
FaultTolerance.Builder newBuilder(Function, R> finisher);
FaultTolerance.Builder newAsyncBuilder(Class> asyncType, Function, R> finisher);
CircuitBreakerMaintenance circuitBreakerMaintenance();
}