T
- Return type (success)X
- Base Error typepublic interface Try<T,X extends java.lang.Throwable> extends java.util.function.Supplier<T>, Value<T>, ToStream<T>, Applicativable<T>
Modifier and Type | Interface and Description |
---|---|
static interface |
Try.AndFinally<T,V,X extends java.lang.Throwable> |
static interface |
Try.CheckedConsumer<T,X extends java.lang.Throwable> |
static interface |
Try.CheckedFunction<T,R,X extends java.lang.Throwable> |
static interface |
Try.CheckedRunnable<X extends java.lang.Throwable> |
static interface |
Try.CheckedSupplier<T,X extends java.lang.Throwable> |
static class |
Try.Failure<T,X extends java.lang.Throwable>
Class that represents the Failure of a Try
|
static interface |
Try.Init<X extends java.lang.Throwable> |
static class |
Try.MyFinallyBlock<T,V,X extends java.lang.Throwable> |
static class |
Try.MyInit<X extends java.lang.Throwable> |
static class |
Try.MyTryCatch<V,X extends java.lang.Throwable> |
static class |
Try.Success<T,X extends java.lang.Throwable>
Class that represents a Successful Try
|
static interface |
Try.TryCatch<V,X extends java.lang.Throwable> |
ToStream.FromStreamable<T>
Applicativable.Applicatives, Applicativable.SemigroupApplyer<T>
Value.ValueImpl<T>
Matchable.AsMatchable, Matchable.AutoCloseableMatchableIterable<TYPE>, Matchable.CheckValue1<T,R>, Matchable.CheckValue2<T1,T2,R>, Matchable.CheckValue3<T1,T2,T3,R>, Matchable.CheckValue4<T1,T2,T3,T4,R>, Matchable.CheckValue5<T1,T2,T3,T4,T5,R>, Matchable.CheckValues<T,R>, Matchable.MatchableIterable<TYPE>, Matchable.MatchableTuple1<T1>, Matchable.MatchableTuple2<TYPE,T1 extends TYPE,T2 extends TYPE>, Matchable.MatchableTuple3<TYPE,T1 extends TYPE,T2 extends TYPE,T3 extends TYPE>, Matchable.MatchableTuple4<TYPE,T1 extends TYPE,T2 extends TYPE,T3 extends TYPE,T4 extends TYPE>, Matchable.MatchableTuple5<TYPE,T1 extends TYPE,T2 extends TYPE,T3 extends TYPE,T4 extends TYPE,T5 extends TYPE>, Matchable.MatchSelf<TYPE>, Matchable.MTuple1<T1>, Matchable.MTuple2<T1,T2>, Matchable.MTuple3<T1,T2,T3>, Matchable.MTuple4<T1,T2,T3,T4>, Matchable.MTuple5<T1,T2,T3,T4,T5>
Convertable.SupplierToConvertable<T>
Modifier and Type | Method and Description |
---|---|
AnyM<T> |
anyM() |
AnyM<X> |
anyMFailure() |
AnyM<T> |
anyMSuccess() |
static <X extends java.lang.Throwable> |
catchExceptions(java.lang.Class<? extends X>... classes)
Fluent step builder for Try / Catch / Finally and Try with resources equivalents.
|
static <T,X extends java.lang.Throwable> |
failure(X error)
Construct a Failure instance from a throwable
|
Maybe<T> |
filter(java.util.function.Predicate<? super T> p) |
<R> Try<R,X> |
flatMap(java.util.function.Function<? super T,? extends Try<R,X>> fn) |
Try<T,X> |
flatten()
Flatten a nested Try Structure
|
void |
forEach(java.util.function.Consumer<? super T> consumer) |
void |
forEachFailed(java.util.function.Consumer<? super X> consumer) |
T |
get() |
boolean |
isFailure() |
boolean |
isSuccess() |
default java.util.Iterator<T> |
iterator() |
<R> Try<R,X> |
map(java.util.function.Function<? super T,? extends R> fn) |
static <T,X extends java.lang.Throwable> |
of(T value,
java.lang.Class<? extends java.lang.Throwable>... classes)
Return a Try that will catch specified exceptions when map / flatMap called
For use with liftM / liftM2 and For Comprehensions (when Try is at the top level)
|
Try<T,X> |
onFail(java.lang.Class<? extends X> t,
java.util.function.Consumer<X> consumer) |
Try<T,X> |
onFail(java.util.function.Consumer<? super X> consumer) |
T |
orElse(T value)
Get the contained value or else the provided alternative
|
T |
orElseGet(java.util.function.Supplier<? extends T> value) |
default <R> Try<R,X> |
patternMatch(java.util.function.Function<Matchable.CheckValues<T,R>,Matchable.CheckValues<T,R>> case1,
java.util.function.Supplier<? extends R> otherwise)
Transform the elements of this Stream with a Pattern Matching case and default value
|
default Try<T,X> |
peek(java.util.function.Consumer<? super T> consumer) |
default Try<T,X> |
peekFailed(java.util.function.Consumer<? super X> consumer) |
Try.Success<T,X> |
recover(java.util.function.Function<? super X,? extends T> fn) |
Try<T,X> |
recoverFor(java.lang.Class<? extends X> t,
java.util.function.Function<? super X,? extends T> fn)
Recover if exception is of specified type
|
Try.Success<T,X> |
recoverWith(java.util.function.Function<? super X,? extends Try.Success<T,X>> fn)
flatMap recovery
|
Try<T,X> |
recoverWithFor(java.lang.Class<? extends X> t,
java.util.function.Function<? super X,? extends Try.Success<T,X>> fn)
FlatMap recovery function if exception is of specified type
|
static <X extends java.lang.Throwable> |
runWithCatch(Try.CheckedRunnable<X> cf,
java.lang.Class<? extends X>... classes)
Try to execute supplied Runnable and will Catch specified Excpetions or java.lang.Exception
if none specified.
|
ReactiveSeq<T> |
stream() |
static <T,X extends java.lang.Throwable> |
success(T value) |
void |
throwException()
Throw exception if Failure, do nothing if success
|
java.util.Optional<X> |
toFailedOptional() |
java.util.stream.Stream<X> |
toFailedStream() |
java.util.Optional<T> |
toOptional() |
default Xor<X,T> |
toXorWithError() |
default <T> Try<T,?> |
unit(T value) |
<R> R |
visit(java.util.function.Function<? super T,? extends R> success,
java.util.function.Function<? super X,? extends R> failure) |
static <T,X extends java.lang.Throwable> |
withCatch(Try.CheckedSupplier<T,X> cf,
java.lang.Class<? extends X>... classes)
Try to execute supplied Supplier and will Catch specified Excpetions or java.lang.Exception
if none specified.
|
getStreamable, isEmpty, reactiveSeq, reveresedSequenceM, reveresedStream
ap, ap, ap1, ap2, ap3, ap4, ap5
convertTo, convertToAsync, fold, fold, generate, iterate, mkString, toDequeX, toEvalAlways, toEvalLater, toEvalNow, toFutureStream, toFutureStream, toIor, toIorSecondary, toLazyImmutable, toListX, toMaybe, toMutable, toPBagX, toPOrderedSetX, toPQueueX, toPSetX, toPStackX, toPVectorX, toQueueX, toSetX, toSimpleReact, toSimpleReact, toSortedSetX, toTry, toTry, toXor, toXorSecondary, unapply
foldRight, foldRight, foldRightMapToType, join, join, join, mapReduce, print, print, printErr, printOut, reduce, reduce, reduce, reduce, reduce, reduce
from, from, from, from, from, from, from, from, from, from, fromCharSequence, fromIterable, fromOptional, fromValue, listOfValues, matches, mayMatch, ofDecomposable, ofIterable, otherwise, otherwise, then, then, when, when, when, when, when, when, when, when, when, when, when, when, when, when, when, whenGuard
fromSupplier, orElseThrow, toAtomicReference, toCompletableFuture, toCompletableFutureAsync, toCompletableFutureAsync, toFutureW, toList, toOptionalAtomicReference, toStream, visit
cast, trampoline
static <T,X extends java.lang.Throwable> Try.Failure<T,X> failure(X error)
error
- for Failurestatic <T,X extends java.lang.Throwable> Try.Success<T,X> success(T value)
value
- Successful valuedefault <R> Try<R,X> patternMatch(java.util.function.Function<Matchable.CheckValues<T,R>,Matchable.CheckValues<T,R>> case1, java.util.function.Supplier<? extends R> otherwise)
Functor
List<String> result = CollectionX.of(1,2,3,4)
.patternMatch(
c->c.valuesWhere(i->"even", (Integer i)->i%2==0 )
)
// CollectionX["odd","even","odd","even"]
patternMatch
in interface Functor<T>
case1
- Function to generate a case (or chain of cases as a single case)otherwise
- Value if supplied case doesn't match<R> R visit(java.util.function.Function<? super T,? extends R> success, java.util.function.Function<? super X,? extends R> failure)
T get()
get
in interface Convertable<T>
get
in interface java.util.function.Supplier<T>
void throwException()
T orElse(T value)
Convertable
orElse
in interface Convertable<T>
value
- Return value supplied if Failure, otherwise return Success valueT orElseGet(java.util.function.Supplier<? extends T> value)
orElseGet
in interface Convertable<T>
value
- from supplied Supplier if Failure otherwise return Success value<R> Try<R,X> flatMap(java.util.function.Function<? super T,? extends Try<R,X>> fn)
fn
- FlatMap success value or Do nothing if Failure (return this)Maybe<T> filter(java.util.function.Predicate<? super T> p)
p
- Convert a Success to a Failure (with a null value for Exception) if predicate does not hold.
Do nothing to a FailureTry<T,X> onFail(java.util.function.Consumer<? super X> consumer)
consumer
- Accept Exception if present (Failure)Try<T,X> onFail(java.lang.Class<? extends X> t, java.util.function.Consumer<X> consumer)
t
- Class type of match Exception againstconsumer
- Accept Exception if present (Failure) and if class types matchTry.Success<T,X> recover(java.util.function.Function<? super X,? extends T> fn)
fn
- Recovery function - map from a failure to a Success.Try.Success<T,X> recoverWith(java.util.function.Function<? super X,? extends Try.Success<T,X>> fn)
fn
- Recovery FlatMap function. Map from a failure to a SuccessTry<T,X> recoverFor(java.lang.Class<? extends X> t, java.util.function.Function<? super X,? extends T> fn)
t
- Type of exception to match againstfn
- Recovery functionTry<T,X> recoverWithFor(java.lang.Class<? extends X> t, java.util.function.Function<? super X,? extends Try.Success<T,X>> fn)
t
- Type of exception to match againstfn
- Recovery FlatMap function. Map from a failure to a Successjava.util.Optional<T> toOptional()
toOptional
in interface Convertable<T>
ReactiveSeq<T> stream()
java.util.Optional<X> toFailedOptional()
java.util.stream.Stream<X> toFailedStream()
boolean isSuccess()
boolean isFailure()
void forEach(java.util.function.Consumer<? super T> consumer)
forEach
in interface java.lang.Iterable<T>
consumer
- Accept value if Success / not called on Failurevoid forEachFailed(java.util.function.Consumer<? super X> consumer)
consumer
- Accept value if Failure / not called on Failuredefault Try<T,X> peekFailed(java.util.function.Consumer<? super X> consumer)
consumer
- Accept Exception if Failuredefault java.util.Iterator<T> iterator()
@SafeVarargs static <T,X extends java.lang.Throwable> Try<T,X> of(T value, java.lang.Class<? extends java.lang.Throwable>... classes)
value
- Initial valueclasses
- Exceptions to catch during map / flatMap@SafeVarargs static <T,X extends java.lang.Throwable> Try<T,X> withCatch(Try.CheckedSupplier<T,X> cf, java.lang.Class<? extends X>... classes)
cf
- CheckedSupplier to attempt to executeclasses
- Exception types to catch (or java.lang.Exception if none specified)@SafeVarargs static <X extends java.lang.Throwable> Try<java.lang.Void,X> runWithCatch(Try.CheckedRunnable<X> cf, java.lang.Class<? extends X>... classes)
cf
- CheckedRunnable to attempt to executeclasses
- Exception types to catch (or java.lang.Exception if none specified)@SafeVarargs static <X extends java.lang.Throwable> Try.Init<X> catchExceptions(java.lang.Class<? extends X>... classes)
classes
- Exception types to catch