Class CatchAndRethrowClosure<T>
java.lang.Object
org.apache.commons.collections4.functors.CatchAndRethrowClosure<T>
- Type Parameters:
T- the type of the input to the operation.
Closure that catches any checked exception and re-throws it as a
FunctorException runtime exception. Example usage:
// Create a catch and re-throw closure via anonymous subclass
CatchAndRethrowClosure<String> writer = new ThrowingClosure() {
private java.io.Writer out = // some writer
protected void executeAndThrow(String input) throws IOException {
out.write(input); // throwing of IOException allowed
}
};
// use catch and re-throw closure
java.util.List<String> strList = // some list
try {
CollectionUtils.forAllDo(strList, writer);
} catch (FunctorException ex) {
Throwable originalError = ex.getCause();
// handle error
}
- Since:
- 4.0
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidExecute this closure on the specified input object.protected abstract voidexecuteAndThrow(T input) Execute this closure on the specified input object.
-
Constructor Details
-
CatchAndRethrowClosure
public CatchAndRethrowClosure()Constructs a new instance.
-
-
Method Details
-
execute
-
executeAndThrow
Execute this closure on the specified input object.- Parameters:
input- the input to execute on- Throws:
Throwable- if the closure execution resulted in a checked exception.
-