aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/apache/commons/lang3/Functions.java
diff options
context:
space:
mode:
authorPeter Verhas <peter@verhas.com>2019-10-12 21:12:17 +0200
committerGary Gregory <garydgregory@users.noreply.github.com>2019-10-12 15:12:17 -0400
commita32c188c32fd0c4a8149bcda524d704dd609da6e (patch)
treef4e4c5d0a6e7994e67b54ffadbbddd83239e31b8 /src/main/java/org/apache/commons/lang3/Functions.java
parentc42806cfa03979023e1a683edd0a221c51e6789c (diff)
downloadapache-commons-lang-a32c188c32fd0c4a8149bcda524d704dd609da6e.tar.gz
Code refactor to simplify Functions and new tests (#463)
* more tests * formatting change as per requested by checkstyle * DisplayName was added to the tests * throw on odd refactored to eliminate copy paste
Diffstat (limited to 'src/main/java/org/apache/commons/lang3/Functions.java')
-rw-r--r--src/main/java/org/apache/commons/lang3/Functions.java72
1 files changed, 9 insertions, 63 deletions
diff --git a/src/main/java/org/apache/commons/lang3/Functions.java b/src/main/java/org/apache/commons/lang3/Functions.java
index 058568c7f..74efd9bb8 100644
--- a/src/main/java/org/apache/commons/lang3/Functions.java
+++ b/src/main/java/org/apache/commons/lang3/Functions.java
@@ -158,13 +158,7 @@ public class Functions {
* @return a standard {@code Runnable}
*/
public static Runnable asRunnable(FailableRunnable<?> pRunnable) {
- return () -> {
- try {
- pRunnable.run();
- } catch (Throwable t) {
- throw rethrow(t);
- }
- };
+ return () -> run(pRunnable);
}
/**
@@ -175,13 +169,7 @@ public class Functions {
* @return a standard {@code Consumer}
*/
public static <I> Consumer<I> asConsumer(FailableConsumer<I, ?> pConsumer) {
- return (pInput) -> {
- try {
- pConsumer.accept(pInput);
- } catch (Throwable t) {
- throw rethrow(t);
- }
- };
+ return (pInput) -> accept(pConsumer, pInput);
}
/**
@@ -192,13 +180,7 @@ public class Functions {
* @return a standard {@code Callable}
*/
public static <O> Callable<O> asCallable(FailableCallable<O, ?> pCallable) {
- return () -> {
- try {
- return pCallable.call();
- } catch (Throwable t) {
- throw rethrow(t);
- }
- };
+ return () -> call(pCallable);
}
/**
@@ -210,13 +192,7 @@ public class Functions {
* @return a standard {@code BiConsumer}
*/
public static <I1, I2> BiConsumer<I1, I2> asBiConsumer(FailableBiConsumer<I1, I2, ?> pConsumer) {
- return (pInput1, pInput2) -> {
- try {
- pConsumer.accept(pInput1, pInput2);
- } catch (Throwable t) {
- throw rethrow(t);
- }
- };
+ return (pInput1, pInput2) -> accept(pConsumer, pInput1, pInput2);
}
/**
@@ -228,13 +204,7 @@ public class Functions {
* @return a standard {@code Function}
*/
public static <I, O> Function<I, O> asFunction(FailableFunction<I, O, ?> pFunction) {
- return (pInput) -> {
- try {
- return pFunction.apply(pInput);
- } catch (Throwable t) {
- throw rethrow(t);
- }
- };
+ return (pInput) -> apply(pFunction, pInput);
}
/**
@@ -247,13 +217,7 @@ public class Functions {
* @return a standard {@code BiFunction}
*/
public static <I1, I2, O> BiFunction<I1, I2, O> asBiFunction(FailableBiFunction<I1, I2, O, ?> pFunction) {
- return (pInput1, pInput2) -> {
- try {
- return pFunction.apply(pInput1, pInput2);
- } catch (Throwable t) {
- throw rethrow(t);
- }
- };
+ return (pInput1, pInput2) -> apply(pFunction, pInput1, pInput2);
}
/**
@@ -264,13 +228,7 @@ public class Functions {
* @return a standard {@code Predicate}
*/
public static <I> Predicate<I> asPredicate(FailablePredicate<I, ?> pPredicate) {
- return (pInput) -> {
- try {
- return pPredicate.test(pInput);
- } catch (Throwable t) {
- throw rethrow(t);
- }
- };
+ return (pInput) -> test(pPredicate, pInput);
}
/**
@@ -282,13 +240,7 @@ public class Functions {
* @return a standard {@code BiPredicate}
*/
public static <I1, I2> BiPredicate<I1, I2> asBiPredicate(FailableBiPredicate<I1, I2, ?> pPredicate) {
- return (pInput1, pInput2) -> {
- try {
- return pPredicate.test(pInput1, pInput2);
- } catch (Throwable t) {
- throw rethrow(t);
- }
- };
+ return (pInput1, pInput2) -> test(pPredicate, pInput1, pInput2);
}
/**
@@ -299,13 +251,7 @@ public class Functions {
* @return a standard {@code Supplier}
*/
public static <O> Supplier<O> asSupplier(FailableSupplier<O, ?> pSupplier) {
- return () -> {
- try {
- return pSupplier.get();
- } catch (Throwable t) {
- throw rethrow(t);
- }
- };
+ return () -> get(pSupplier);
}
/**