/** * Returns whether the {@code result} is a success according to the policy. If the {code result} has no result, it is * not a failure. */ protected boolean isFailure(ExecutionResult result) { if (result.isNonResult()) return false; else if (policy instanceof FailurePolicy) return ((FailurePolicy) policy).isFailure(result); else return result.getFailure() != null; }
/** * Returns whether an execution result can be retried given the configured failure conditions. * * @see #handle(Class...) * @see #handle(List) * @see #handleIf(BiPredicate) * @see #handleIf(Predicate) * @see #handleResult(R) * @see #handleResultIf(Predicate) */ boolean isFailure(ExecutionResult result) { return failureConditions.isEmpty() ? result.getFailure() != null : isFailure((R) result.getResult(), result.getFailure()); }