Interface ThrowingFunction<T,R>
- Type Parameters:
T
- the type of the input to the functionR
- the type of the result of the function
- All Superinterfaces:
Function<T,
R>
- Functional Interface:
- This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.
A
Function
that allows invocation of code that throws a checked
exception.- Since:
- 6.0
- Author:
- Stephane Nicoll, Phillip Webb
-
Method Summary
Modifier and TypeMethodDescriptiondefault R
DefaultFunction.apply(Object)
that wraps any thrown checked exceptions (by default in aRuntimeException
).default R
apply
(T t, BiFunction<String, Exception, RuntimeException> exceptionWrapper) Applies this function to the given argument, wrapping any thrown checked exceptions using the givenexceptionWrapper
.Applies this function to the given argument, possibly throwing a checked exception.static <T,
R> ThrowingFunction<T, R> of
(ThrowingFunction<T, R> function) Lambda friendly convenience method that can be used to createThrowingFunction
where theapply(Object)
method wraps any thrown checked exceptions using the givenexceptionWrapper
.static <T,
R> ThrowingFunction<T, R> of
(ThrowingFunction<T, R> function, BiFunction<String, Exception, RuntimeException> exceptionWrapper) Lambda friendly convenience method that can be used to createThrowingFunction
where theapply(Object)
method wraps any thrown checked exceptions using the givenexceptionWrapper
.default ThrowingFunction<T,
R> throwing
(BiFunction<String, Exception, RuntimeException> exceptionWrapper) Return a newThrowingFunction
where theapply(Object)
method wraps any thrown checked exceptions using the givenexceptionWrapper
.
-
Method Details
-
applyWithException
Applies this function to the given argument, possibly throwing a checked exception.- Parameters:
t
- the function argument- Returns:
- the function result
- Throws:
Exception
- on error
-
apply
DefaultFunction.apply(Object)
that wraps any thrown checked exceptions (by default in aRuntimeException
). -
apply
Applies this function to the given argument, wrapping any thrown checked exceptions using the givenexceptionWrapper
.- Parameters:
exceptionWrapper
-BiFunction
that wraps the given message and checked exception into a runtime exception- Returns:
- a result
-
throwing
default ThrowingFunction<T,R> throwing(BiFunction<String, Exception, RuntimeException> exceptionWrapper) Return a newThrowingFunction
where theapply(Object)
method wraps any thrown checked exceptions using the givenexceptionWrapper
.- Parameters:
exceptionWrapper
-BiFunction
that wraps the given message and checked exception into a runtime exception- Returns:
- the replacement
ThrowingFunction
instance
-
of
Lambda friendly convenience method that can be used to createThrowingFunction
where theapply(Object)
method wraps any thrown checked exceptions using the givenexceptionWrapper
.- Type Parameters:
T
- the type of the input to the functionR
- the type of the result of the function- Parameters:
function
- the source function- Returns:
- a new
ThrowingFunction
instance
-
of
static <T,R> ThrowingFunction<T,R> of(ThrowingFunction<T, R> function, BiFunction<String, Exception, RuntimeException> exceptionWrapper) Lambda friendly convenience method that can be used to createThrowingFunction
where theapply(Object)
method wraps any thrown checked exceptions using the givenexceptionWrapper
.- Type Parameters:
T
- the type of the input to the functionR
- the type of the result of the function- Parameters:
function
- the source functionexceptionWrapper
- the exception wrapper to use- Returns:
- a new
ThrowingFunction
instance
-