Package no.gorandalum.fluentresult
Class BooleanResult<E>
java.lang.Object
no.gorandalum.fluentresult.BooleanResult<E>
- Type Parameters:
E
- the type of the error value
A result object which either is in success state containing a
non-
null
boolean value, or in error state containing a
non-null
error value.
A variable whose type is BooleanResult
should never itself be
null
, it should always point to an BooleanResult
instance.
-
Method Summary
Modifier and TypeMethodDescriptionIf in success state, applies the boolean success value to the given consumer, otherwise does nothing.consumeEither
(Runnable trueRunnable, Runnable falseRunnable, Consumer<? super E> errorConsumer) If in success state with a success value oftrue
, runs the given true-runnable.consumeEither
(Consumer<Boolean> valueConsumer, Consumer<? super E> errorConsumer) If in success state, applies the boolean success value to the given value consumer.consumeError
(Consumer<? super E> errorConsumer) If in error state, applies the error value to the given consumer, otherwise does nothing.boolean
static <E> BooleanResult<E>
error
(E value) Returns aBooleanResult
in error state containing the given non-null
value as error value.flatConsume
(Function<Boolean, ? extends VoidResult<? extends E>> function) If in success state, applies the boolean success value to the given function.If in success state, returns theResult
from applying the given mapping function to the boolean success value, otherwise returns aResult
containing the error value of thisBooleanResult
.flatMapToBooleanResult
(Function<Boolean, BooleanResult<? extends E>> function) If in success state, returns theBooleanResult
from applying the given mapping function to the boolean success value, otherwise returns the unalteredBooleanResult
in error state.<N> OptionalResult<N,
E> flatMapToOptionalResult
(Function<Boolean, OptionalResult<? extends N, ? extends E>> function) If in success state, returns theOptionalResult
from applying the given mapping function to the boolean success value, otherwise returns aOptionalResult
containing the error value of thisBooleanResult
.flatMapToVoidResult
(Function<Boolean, VoidResult<? extends E>> function) If in success state, returns theVoidResult
from applying the given mapping function to the boolean success value, otherwise returns aVoidResult
containing the error value of thisBooleanResult
.flatRecover
(Function<E, BooleanResult<? extends E>> function) If in error state, returns theBooleanResult
from applying the given mapping function to the error value, otherwise returns the unalteredBooleanResult
in success state.flatRunIfSuccess
(Supplier<? extends VoidResult<? extends E>> supplier) If in success state, runs the given supplier.<N> N
Retrieve a value from thisBooleanResult
by folding the states.<N> N
fold
(Supplier<? extends N> trueSupplier, Supplier<? extends N> falseSupplier, Function<? super E, ? extends N> errorFunction) Retrieve a value from thisBooleanResult
by folding the states.static BooleanResult<Exception>
Handle the givenCallable
.static <E> BooleanResult<E>
Handle the givenCallable
.int
hashCode()
If in success state, returns aResult
containing the result of applying the given mapping function to the boolean success value, otherwise returns aResult
containing the error value of thisBooleanResult
.<N> BooleanResult<N>
If in error state, returns aBooleanResult
containing the result of applying the given mapping function to the error value, otherwise returns the unalteredBooleanResult
in success state.mapToBoolean
(Function<Boolean, Boolean> function) If in success state, returns aBooleanResult
containing the result of applying the given mapping function to the success value, otherwise returns the unalteredBooleanResult
in error state.<N> OptionalResult<N,
E> mapToOptional
(Function<Boolean, ? extends Optional<? extends N>> function) If in success state, returns aOptionalResult
containing the result of applying the given mapping function to the boolean success value, otherwise returns aOptionalResult
containing the error value of thisBooleanResult
.If in success state, returns the boolean success value, otherwise returnsother
.boolean
If in success state, returns the boolean success value, otherwise returnsfalse
.If in success state, returns the boolean success value, otherwise returns the value returned from the given function.orElseThrow
(Function<? super E, ? extends X> function) If in success state, returns the boolean success value, otherwise throws the exception returned by the given function.boolean
If in success state, returns the boolean success value, otherwise returnstrue
.If in error state, returns aBooleanResult
with the success value from applying the given mapping function to the error value, otherwise returns the unalteredBooleanResult
in success state.Deprecated.Runs the given runnable, no matter the state.If in success state, runs the given success runnable.If in success state with a success value oftrue
, runs the given true-runnable.runIfError
(Runnable runnable) If in error state, runs the given runnable, otherwise does nothing.runIfFalse
(Runnable runnable) If in success state with a success value offalse
, runs the given runnable, otherwise does nothing.runIfSuccess
(Runnable runnable) If in success state, runs the given runnable, otherwise does nothing.If in success state with a success value oftrue
, runs the given runnable, otherwise does nothing.static <E> BooleanResult<E>
success
(boolean value) Returns aBooleanResult
in success state containing the given non-null
boolean value as success value.static <E> BooleanResult<E>
Returns aBooleanResult
in success state containingfalse
as the boolean success value.static <E> BooleanResult<E>
Returns aBooleanResult
in success state containingtrue
as the boolean success value.Transforms thisBooleanResult
to anOptionalResult
.toString()
Transforms thisBooleanResult
to aVoidResult
.verify
(Function<Boolean, ? extends VoidResult<? extends E>> function) If in success state, verifies the success value of thisBooleanResult
by mapping it to aVoidResult
.If in success state, verifies the boolean success value of thisBooleanResult
by testing it with the given predicate.
-
Method Details
-
success
Returns aBooleanResult
in success state containing the given non-null
boolean value as success value.- Type Parameters:
E
- the type of the error value- Parameters:
value
- the boolean success value, which must be non-null
- Returns:
- a
BooleanResult
in success state containing the given boolean success value - Throws:
NullPointerException
- if given success value isnull
-
successTrue
Returns aBooleanResult
in success state containingtrue
as the boolean success value.- Type Parameters:
E
- the type of the error value- Returns:
- a
BooleanResult
in success state containingtrue
as the boolean success value.
-
successFalse
Returns aBooleanResult
in success state containingfalse
as the boolean success value.- Type Parameters:
E
- the type of the error value- Returns:
- a
BooleanResult
in success state containingfalse
as the boolean success value.
-
error
Returns aBooleanResult
in error state containing the given non-null
value as error value.- Type Parameters:
E
- the type of the error value- Parameters:
value
- the error value, which must be non-null
- Returns:
- a
BooleanResult
in error state containing the given error value - Throws:
NullPointerException
- if given error value isnull
-
map
If in success state, returns aResult
containing the result of applying the given mapping function to the boolean success value, otherwise returns aResult
containing the error value of thisBooleanResult
.- Type Parameters:
N
- the type of the value returned from the mapping function- Parameters:
function
- the mapping function to apply to the boolean success value, if success state- Returns:
- a
Result
containing the result of applying the mapping function to the boolean success value of thisBooleanResult
, if in success state, otherwise aResult
containing the error value of thisBooleanResult
- Throws:
NullPointerException
- if the given mapping function isnull
or returnsnull
-
mapToOptional
public <N> OptionalResult<N,E> mapToOptional(Function<Boolean, ? extends Optional<? extends N>> function) If in success state, returns aOptionalResult
containing the result of applying the given mapping function to the boolean success value, otherwise returns aOptionalResult
containing the error value of thisBooleanResult
.- Type Parameters:
N
- the type of the success value which may be present in theOptional
returned from the mapping function- Parameters:
function
- the mapping function to apply to the boolean success value, if success state- Returns:
- a
OptionalResult
containing the result of applying the mapping function to the boolean success value of thisBooleanResult
, if in success state, otherwise aOptionalResult
containing the error value of thisBooleanResult
- Throws:
NullPointerException
- if the given mapping function isnull
or returnsnull
-
mapToBoolean
If in success state, returns aBooleanResult
containing the result of applying the given mapping function to the success value, otherwise returns the unalteredBooleanResult
in error state.- Parameters:
function
- the mapping function to apply to the boolean success value, if success state- Returns:
- a
BooleanResult
containing the result of applying the mapping function to the boolean success value of thisBooleanResult
, if in success state, otherwise the unalteredBooleanResult
in error state - Throws:
NullPointerException
- if the given mapping function isnull
or returnsnull
-
mapError
If in error state, returns aBooleanResult
containing the result of applying the given mapping function to the error value, otherwise returns the unalteredBooleanResult
in success state.- Type Parameters:
N
- the type of the value returned from the mapping function- Parameters:
function
- the mapping function to apply to the error value, if error state- Returns:
- a
BooleanResult
containing the result of applying the mapping function to the error value of thisBooleanResult
, if in error state, otherwise the unalteredBooleanResult
in success state - Throws:
NullPointerException
- if the given mapping function isnull
or returnsnull
-
flatMap
If in success state, returns theResult
from applying the given mapping function to the boolean success value, otherwise returns aResult
containing the error value of thisBooleanResult
.- Type Parameters:
N
- the type of success value which may be present in theResult
returned by the mapping function- Parameters:
function
- the mapping function to apply to the boolean success value, if success state- Returns:
- the
Result
returned from the mapping function, if in success state, otherwise aResult
containing the error value of thisBooleanResult
- Throws:
NullPointerException
- if the given mapping function isnull
or returnsnull
-
flatMapToOptionalResult
public <N> OptionalResult<N,E> flatMapToOptionalResult(Function<Boolean, OptionalResult<? extends N, ? extends E>> function) If in success state, returns theOptionalResult
from applying the given mapping function to the boolean success value, otherwise returns aOptionalResult
containing the error value of thisBooleanResult
.- Type Parameters:
N
- the type of success value which may be present in theOptionalResult
returned by the mapping function- Parameters:
function
- the mapping function to apply to the boolean success value, if success state- Returns:
- the
OptionalResult
returned from the mapping function, if in success state, otherwise aOptionalResult
containing the error value of thisBooleanResult
- Throws:
NullPointerException
- if the given mapping function isnull
or returnsnull
-
flatMapToBooleanResult
public BooleanResult<E> flatMapToBooleanResult(Function<Boolean, BooleanResult<? extends E>> function) If in success state, returns theBooleanResult
from applying the given mapping function to the boolean success value, otherwise returns the unalteredBooleanResult
in error state.- Parameters:
function
- the mapping function to apply to the boolean success value, if success state- Returns:
- the
BooleanResult
returned from the mapping function, if in success state, otherwise the unalteredBooleanResult
in error state - Throws:
NullPointerException
- if the given mapping function isnull
or returnsnull
-
flatMapToVoidResult
If in success state, returns theVoidResult
from applying the given mapping function to the boolean success value, otherwise returns aVoidResult
containing the error value of thisBooleanResult
.- Parameters:
function
- the mapping function to apply to the boolean success value, if success state- Returns:
- the
VoidResult
returned from the mapping function, if in success state, otherwise aVoidResult
containing the error value of thisBooleanResult
- Throws:
NullPointerException
- if the given mapping function isnull
or returnsnull
-
recover
If in error state, returns aBooleanResult
with the success value from applying the given mapping function to the error value, otherwise returns the unalteredBooleanResult
in success state.- Parameters:
function
- the mapping function to apply to the error value to convert to a new success value, if error state- Returns:
- A
BooleanResult
containing the value from the mapping function, if in error state, otherwise the unalteredBooleanResult
in success state
-
flatRecover
If in error state, returns theBooleanResult
from applying the given mapping function to the error value, otherwise returns the unalteredBooleanResult
in success state.- Parameters:
function
- the mapping function to apply to the error value to convert to a newBooleanResult
, if error stateBooleanResult
returned by the mapping function- Returns:
- the
BooleanResult
returned from the mapping function, if in error state, otherwise the unalteredBooleanResult
in success state
-
consume
If in success state, applies the boolean success value to the given consumer, otherwise does nothing.- Parameters:
consumer
- the consumer which accepts the boolean success value- Returns:
- the original
BooleanResult
unaltered - Throws:
NullPointerException
- if the given consumer isnull
-
consumeError
If in error state, applies the error value to the given consumer, otherwise does nothing.- Parameters:
errorConsumer
- the consumer which accepts the error value- Returns:
- the original
BooleanResult
unaltered - Throws:
NullPointerException
- if the given consumer isnull
-
consumeEither
public BooleanResult<E> consumeEither(Consumer<Boolean> valueConsumer, Consumer<? super E> errorConsumer) If in success state, applies the boolean success value to the given value consumer. If in error state, applies the error value to the given error consumer.- Parameters:
valueConsumer
- the consumer which accepts the boolean success valueerrorConsumer
- the consumer which accepts the error value- Returns:
- the original
BooleanResult
unaltered - Throws:
NullPointerException
- if one of the given consumers isnull
-
consumeEither
public BooleanResult<E> consumeEither(Runnable trueRunnable, Runnable falseRunnable, Consumer<? super E> errorConsumer) If in success state with a success value oftrue
, runs the given true-runnable. If in success state with a success value offalse
, runs the given false-runnable. If in error state, applies the error value to the given error consumer.- Parameters:
trueRunnable
- the runnable to run if a success value oftrue
falseRunnable
- the runnable to run if a success value offalse
errorConsumer
- the consumer which accepts the error value- Returns:
- the original
BooleanResult
unaltered - Throws:
NullPointerException
- if one of the given runnables or consumer isnull
-
flatConsume
If in success state, applies the boolean success value to the given function. If the function returns aVoidResult
in success state, the originalBooleanResult
is returned unaltered. If the function returns aVoidResult
in error state, aBooleanResult
containing the error value is returned. If in error state, the originalBooleanResult
is returned unaltered.- Parameters:
function
- the function which accepts the boolean success value- Returns:
- the original
BooleanResult
unaltered if the given function returns success or the originalBooleanResult
is in error state, otherwise aBooleanResult
containing the error value from the function result - Throws:
NullPointerException
- if the given function isnull
or returnsnull
-
runIfSuccess
If in success state, runs the given runnable, otherwise does nothing.- Parameters:
runnable
- the runnable to run if success state- Returns:
- the original
BooleanResult
unaltered - Throws:
NullPointerException
- if the given runnable isnull
-
runIfTrue
If in success state with a success value oftrue
, runs the given runnable, otherwise does nothing.- Parameters:
runnable
- the runnable to run if a success value oftrue
- Returns:
- the original
BooleanResult
unaltered - Throws:
NullPointerException
- if the given runnable isnull
-
runIfFalse
If in success state with a success value offalse
, runs the given runnable, otherwise does nothing.- Parameters:
runnable
- the runnable to run if a success value offalse
- Returns:
- the original
BooleanResult
unaltered - Throws:
NullPointerException
- if the given runnable isnull
-
runIfError
If in error state, runs the given runnable, otherwise does nothing.- Parameters:
runnable
- the runnable to run if error state- Returns:
- the original
BooleanResult
unaltered - Throws:
NullPointerException
- if the given runnable isnull
-
runEither
If in success state, runs the given success runnable. If in error state, runs the given error runnable.- Parameters:
successRunnable
- the runnable to run if success stateerrorRunnable
- the runnable to run if error state- Returns:
- the original
BooleanResult
unaltered - Throws:
NullPointerException
- if one of the given runnables isnull
-
runEither
public BooleanResult<E> runEither(Runnable trueRunnable, Runnable falseRunnable, Runnable errorRunnable) If in success state with a success value oftrue
, runs the given true-runnable. If in success state with a success value offalse
, runs the given false-runnable. If in error state, runs the given error-runnable.- Parameters:
trueRunnable
- the runnable to run if a success value oftrue
falseRunnable
- the runnable to run if a success value offalse
errorRunnable
- the runnable to run if error state- Returns:
- the original
BooleanResult
unaltered - Throws:
NullPointerException
- if one of the given runnables isnull
-
run
Deprecated.userunAlways(java.lang.Runnable)
instead for clarityRuns the given runnable, no matter the state.- Parameters:
runnable
- the runnable to run- Returns:
- the original
BooleanResult
unaltered - Throws:
NullPointerException
- if the given runnable isnull
-
runAlways
Runs the given runnable, no matter the state.- Parameters:
runnable
- the runnable to run- Returns:
- the original
BooleanResult
unaltered - Throws:
NullPointerException
- if the given runnable isnull
-
flatRunIfSuccess
If in success state, runs the given supplier. If the supplier returns aVoidResult
in success state, the originalBooleanResult
is returned unaltered. If the supplier returns aVoidResult
in error state, aBooleanResult
containing the error value is returned. If in error state, the originalBooleanResult
is returned unaltered.- Parameters:
supplier
- the supplier to run- Returns:
- the original
BooleanResult
unaltered if the given supplier returns success or the originalBooleanResult
is in error state, otherwise aBooleanResult
containing the error value from the supplier result - Throws:
NullPointerException
- if the given supplier isnull
or returnsnull
-
verify
If in success state, verifies the boolean success value of thisBooleanResult
by testing it with the given predicate. If the predicate evaluates to false, a newBooleanResult
is returned containing the error value provided by the given error supplier. If the predicate evaluates to true, or theBooleanResult
already was in error state, the originalBooleanResult
is returned unaltered.- Parameters:
predicate
- the predicate used to verify the boolean success value, if success stateerrorSupplier
- supplier providing the error if predicate evaluates to false- Returns:
- the original
BooleanResult
unaltered, unless the predicate evaluates to false, then a newBooleanResult
in error state is returned containing the supplied error value - Throws:
NullPointerException
- if the given predicate isnull
or returnsnull
, or the given error supplier isnull
or returnsnull
-
verify
If in success state, verifies the success value of thisBooleanResult
by mapping it to aVoidResult
. If the returnedVoidResult
is in error state, a newBooleanResult
is returned containing the error value of theVoidResult
. If theVoidResult
is in success state, or theBooleanResult
already was in error state, the originalBooleanResult
is returned unaltered.- Parameters:
function
- the function applied to the success value, if success state- Returns:
- the original
BooleanResult
unaltered, unless theVoidResult
returned by the mapping function is in error state, then a newBooleanResult
in error state is returned containing the error value from theVoidResult
- Throws:
NullPointerException
- if the given function isnull
or returnsnull
-
fold
public <N> N fold(Function<Boolean, ? extends N> valueFunction, Function<? super E, ? extends N> errorFunction) Retrieve a value from thisBooleanResult
by folding the states. If in success state, return the value of applying the value function to the boolean success value. If in error state, return the value of applying the error function to the error value.- Type Parameters:
N
- the type of the retrieved value- Parameters:
valueFunction
- the mapping function to apply to the boolean success value, if success state, may returnnull
errorFunction
- the mapping function to apply to the error value, if error state, may returnnull
- Returns:
- the folded value mapped from either the success value or error
value, may be
null
- Throws:
NullPointerException
- if one of the given functions isnull
-
fold
public <N> N fold(Supplier<? extends N> trueSupplier, Supplier<? extends N> falseSupplier, Function<? super E, ? extends N> errorFunction) Retrieve a value from thisBooleanResult
by folding the states. If in success state with a success value oftrue
, return the value provided by the true-supplier. If in success state with a success value offalse
, return the value provided by the false-supplier. If in error state, return the value of applying the error function to the error value.- Type Parameters:
N
- the type of the retrieved value- Parameters:
trueSupplier
- the supplier to provide the value if a success value oftrue
, may returnnull
falseSupplier
- the supplier to provide the value if a success value offalse
, may returnnull
errorFunction
- the mapping function to apply to the error value, if error state, may returnnull
- Returns:
- the folded value mapped from either the success value or error
value, may be
null
- Throws:
NullPointerException
- if one of the given functions or the supplier isnull
-
orElse
If in success state, returns the boolean success value, otherwise returnsother
.- Parameters:
other
- the value to be returned, if not in success state, may benull
- Returns:
- the boolean success value, if success state, otherwise
other
-
orElseTrue
public boolean orElseTrue()If in success state, returns the boolean success value, otherwise returnstrue
.- Returns:
- the boolean success value, if success state, otherwise
true
-
orElseFalse
public boolean orElseFalse()If in success state, returns the boolean success value, otherwise returnsfalse
.- Returns:
- the boolean success value, if success state, otherwise
false
-
orElseGet
If in success state, returns the boolean success value, otherwise returns the value returned from the given function.- Parameters:
function
- the mapping function to apply to the error value, if not in success state, it may returnnull
- Returns:
- the boolean success value, if success state, otherwise the result returned from the given function
- Throws:
NullPointerException
- if the given function isnull
-
orElseThrow
If in success state, returns the boolean success value, otherwise throws the exception returned by the given function.- Type Parameters:
X
- type of the exception to be thrown- Parameters:
function
- the mapping function producing an exception by applying the error value, if not in success state- Returns:
- the boolean success value, if success state
- Throws:
X
- if in error stateNullPointerException
- if the given function isnull
or returnsnull
-
toOptionalResult
Transforms thisBooleanResult
to anOptionalResult
. If in success state, theOptionalResult
will be in success state containing the boolean success value from thisBooleanResult
. If in error state, theOptionalResult
will be in error state containing the error value from thisBooleanResult
.The returned
OptionalResult
will never be empty.- Returns:
- an
OptionalResult
in success state containing the boolean success value from thisBooleanResult
or in error state containing the error value from thisBooleanResult
-
toVoidResult
Transforms thisBooleanResult
to aVoidResult
. If in success state, theVoidResult
will be in success state. If in error state, theVoidResult
will be in error state containing the error value from thisBooleanResult
.- Returns:
- a
VoidResult
either in success state or in error state containing the error value from thisBooleanResult
-
handle
Handle the givenCallable
. If theCallable
executes successfully, theBooleanResult
will be in success state containing the returned value. If theCallable
throws an exception, theBooleanResult
will be in error state containing the thrown exception.- Parameters:
callable
- theCallable
to handle- Returns:
- a
BooleanResult
either in success state containing the value from theCallable
, or in error state containing the exception thrown by theCallable
- Throws:
NullPointerException
- if the given callable isnull
or returnsnull
-
handle
public static <E> BooleanResult<E> handle(Callable<Boolean> callable, Function<Exception, E> exceptionMapper) Handle the givenCallable
. If theCallable
executes successfully, theBooleanResult
will be in success state containing the returned value. If theCallable
throws an exception, theBooleanResult
will be in error state containing the result after mapping the exception with the given exception mapper function.- Type Parameters:
E
- type of the error value after mapping a thrown exception- Parameters:
callable
- theCallable
to handle- Returns:
- a
BooleanResult
either in success state containing the value from theCallable
, or in error state containing the result after mapping the exception thrown by theCallable
- Throws:
NullPointerException
- if the given callable isnull
or returnsnull
, or if the given exception mapper function isnull
or returnsnull
-
equals
-
hashCode
public int hashCode() -
toString
-
runAlways(java.lang.Runnable)
instead for clarity