diff --git a/community/common/src/main/java/org/neo4j/function/Predicates.java b/community/common/src/main/java/org/neo4j/function/Predicates.java index f9f8033f44af7..6cd07f23100d7 100644 --- a/community/common/src/main/java/org/neo4j/function/Predicates.java +++ b/community/common/src/main/java/org/neo4j/function/Predicates.java @@ -41,33 +41,25 @@ */ public class Predicates { - private static final Predicate TRUE = item -> true; - - private static final Predicate FALSE = item -> false; - - private static final Predicate NOT_NULL = Objects::nonNull; private static final int DEFAULT_POLL_INTERVAL = 20; private Predicates() { } - @SuppressWarnings( "unchecked" ) public static Predicate alwaysTrue() { - return TRUE; + return x -> true; } - @SuppressWarnings( "unchecked" ) public static Predicate alwaysFalse() { - return FALSE; + return x -> false; } - @SuppressWarnings( "unchecked" ) public static Predicate notNull() { - return NOT_NULL; + return Objects::nonNull; } @SafeVarargs @@ -112,18 +104,18 @@ public static Predicate any( final Iterable> predicates ) }; } - public static Predicate instanceOf( @Nonnull final Class clazz ) + public static Predicate instanceOf( @Nonnull final Class clazz ) { return item -> item != null && clazz.isInstance( item ); } - public static Predicate instanceOfAny( final Class... classes ) + public static Predicate instanceOfAny( final Class... classes ) { return item -> { if ( item != null ) { - for ( Class clazz : classes ) + for ( Class clazz : classes ) { if ( clazz.isInstance( item ) ) { diff --git a/community/kernel/src/main/java/org/neo4j/helpers/TransactionTemplate.java b/community/kernel/src/main/java/org/neo4j/helpers/TransactionTemplate.java index be04e3cfa7306..d0b1ceb2176eb 100644 --- a/community/kernel/src/main/java/org/neo4j/helpers/TransactionTemplate.java +++ b/community/kernel/src/main/java/org/neo4j/helpers/TransactionTemplate.java @@ -132,8 +132,7 @@ public void execute( final Consumer txConsumer ) } ); } - public T execute( Function txFunction ) - throws TransactionFailureException + public T execute( Function txFunction ) throws TransactionFailureException { Throwable txEx = null; for ( int i = 0; i < retries; i++ ) @@ -163,28 +162,16 @@ public T execute( Function txFunction ) } catch ( InterruptedException e ) { - throw new TransactionFailureException( "Interrupted", e ); + TransactionFailureException interrupted = new TransactionFailureException( "Interrupted", e ); + monitor.failed( interrupted ); + throw interrupted; } monitor.retrying(); } } - if ( txEx instanceof TransactionFailureException ) - { - throw (TransactionFailureException) txEx; - } - else if ( txEx instanceof Error ) - { - throw (Error) txEx; - } - else if ( txEx instanceof RuntimeException ) - { - throw (RuntimeException) txEx; - } - else - { - throw new TransactionFailureException( "Failed", txEx ); - } + monitor.failed( txEx ); + throw new TransactionFailureException( "Failed", txEx ); } }