for (Class<? extends Exception> rollBackOn : transactional.rollbackOn()) {
for (Class<? extends Exception> rollBackOn : transactional.rollbackOn())
for (Class<? extends Exception> rollBackOn : transactional.rollbackOn()) {
private boolean rollbackNecessary(Exception cause, Transactional transactional) { return has(transactional.rollbackOn(), cause) && !has(transactional.ignore(), cause); }
/** * Build transaction config for type. * * @param type type to analyze * @param method method to analyze * @param useDefaults true to build default config if annotation not found * @return tx config for found annotation, null if useDefaults false and default config otherwise */ public static TxConfig buildConfig(final Class<?> type, final Method method, final boolean useDefaults) { final Transactional transactional = findAnnotation(type, method, Transactional.class, useDefaults); TxConfig res = null; if (transactional != null) { final TxType txType = findAnnotation(type, method, TxType.class, true); res = new TxConfig(wrapExceptions(transactional.rollbackOn()), wrapExceptions(transactional.ignore()), txType.value()); } return res; }