Class ReliabilityPolicyEvaluator
java.lang.Object
org.j7m.middleware.reliability.ReliabilityPolicyEvaluator
Evaluates transport-neutral reliability policy for one invocation.
The evaluator is stateless and thread-safe. It does not perform durable storage, messaging, coordination, or consensus.
-
Constructor Summary
ConstructorsConstructorDescriptionCreates an evaluator with the default retry-safety resolver.ReliabilityPolicyEvaluator(RetrySafetyResolver retrySafetyResolver) Creates an evaluator. -
Method Summary
Modifier and TypeMethodDescriptionorg.j7m.middleware.api.reliability.ReliabilityDecisionbackpressureRejected(org.j7m.middleware.api.reliability.BackpressurePolicy policy) Returns the decision for a backpressure rejection.org.j7m.middleware.api.reliability.ReliabilityDecisionevaluateBeforeDispatch(Method method, org.j7m.middleware.api.reliability.InvocationReliabilityOptions options, long payloadBytes) Evaluates reliability policy before invocation dispatch.org.j7m.middleware.api.reliability.ReliabilityDecisionevaluateResult(org.j7m.middleware.api.reliability.InvocationReliabilityOptions options, long resultBytes) Evaluates result-size limits after method execution.
-
Constructor Details
-
ReliabilityPolicyEvaluator
public ReliabilityPolicyEvaluator()Creates an evaluator with the default retry-safety resolver. -
ReliabilityPolicyEvaluator
Creates an evaluator.- Parameters:
retrySafetyResolver- retry-safety resolver
-
-
Method Details
-
evaluateBeforeDispatch
public org.j7m.middleware.api.reliability.ReliabilityDecision evaluateBeforeDispatch(Method method, org.j7m.middleware.api.reliability.InvocationReliabilityOptions options, long payloadBytes) Evaluates reliability policy before invocation dispatch.- Parameters:
method- Java methodoptions- reliability optionspayloadBytes- estimated payload bytes- Returns:
- decision
-
evaluateResult
public org.j7m.middleware.api.reliability.ReliabilityDecision evaluateResult(org.j7m.middleware.api.reliability.InvocationReliabilityOptions options, long resultBytes) Evaluates result-size limits after method execution.- Parameters:
options- reliability optionsresultBytes- estimated result bytes- Returns:
- decision
-
backpressureRejected
public org.j7m.middleware.api.reliability.ReliabilityDecision backpressureRejected(org.j7m.middleware.api.reliability.BackpressurePolicy policy) Returns the decision for a backpressure rejection.- Parameters:
policy- backpressure policy- Returns:
- decision
-