Interface DataResult<R>
- All Superinterfaces:
App<DataResult.Mu, R>
- All Known Implementing Classes:
DataResult.Error, DataResult.Success
public sealed interface DataResult<R>
extends App<DataResult.Mu, R>
permits DataResult.Success<R>, DataResult.Error<R>
Represents either a successful operation, or a partial operation with an error message and a partial result (if available)
Also stores an additional lifecycle marker (monoidal)
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic final recordstatic enumstatic final classstatic final record -
Method Summary
Modifier and TypeMethodDescriptiondefault DataResult<R> addLifecycle(Lifecycle lifecycle) <R2> DataResult<R2> ap(DataResult<Function<R, R2>> functionResult) static StringappendMessages(String first, String second) default <R2,S> DataResult <S> apply2(BiFunction<R, R2, S> function, DataResult<R2> second) default <R2,S> DataResult <S> apply2stable(BiFunction<R, R2, S> function, DataResult<R2> second) default <R2,R3, S> DataResult <S> apply3(Function3<R, R2, R3, S> function, DataResult<R2> second, DataResult<R3> third) error()static <R> DataResult<R> static <R> DataResult<R> static <R> DataResult<R> static <R> DataResult<R> <R2> DataResult<R2> flatMap(Function<? super R, ? extends DataResult<R2>> function) Applies the function to either full or partial result, in case of partial concatenates errors.default RgetOrThrow(Function<String, E> exceptionSupplier) default RgetPartialOrThrow(Function<String, E> exceptionSupplier) booleanifError(Consumer<? super DataResult.Error<R>> ifError) static DataResult.Instanceinstance()default booleanisError()boolean<T> DataResult<T> mapError(UnaryOperator<String> function) <T> TmapOrElse(Function<? super R, ? extends T> successFunction, Function<? super DataResult.Error<R>, ? extends T> errorFunction) static <K,V> Function <K, DataResult<V>> partialGet(Function<K, V> partialGet, Supplier<String> errorPrefix) promotePartial(Consumer<String> onError) result()resultOrPartial(Consumer<String> onError) setLifecycle(Lifecycle lifecycle) setPartial(Supplier<R> partial) setPartial(R partial) static <R> DataResult<R> success(R result) static <R> DataResult<R> static <R> DataResult<R> unbox(App<DataResult.Mu, R> box)
-
Method Details
-
unbox
-
success
-
error
-
error
-
success
-
error
-
error
-
partialGet
static <K,V> Function<K, DataResult<V>> partialGet(Function<K, V> partialGet, Supplier<String> errorPrefix) -
instance
-
appendMessages
-
result
-
error
Optional<DataResult.Error<R>> error() -
lifecycle
Lifecycle lifecycle() -
hasResultOrPartial
boolean hasResultOrPartial() -
resultOrPartial
-
resultOrPartial
-
getOrThrow
-
getPartialOrThrow
-
getOrThrow
-
getPartialOrThrow
-
map
-
mapOrElse
<T> T mapOrElse(Function<? super R, ? extends T> successFunction, Function<? super DataResult.Error<R>, ? extends T> errorFunction) -
ifSuccess
-
ifError
-
promotePartial
-
flatMap
Applies the function to either full or partial result, in case of partial concatenates errors. -
ap
-
apply2
-
apply2stable
-
apply3
default <R2,R3, DataResult<S> apply3S> (Function3<R, R2, R3, S> function, DataResult<R2> second, DataResult<R3> third) -
setPartial
-
setPartial
-
mapError
-
setLifecycle
-
addLifecycle
-
isSuccess
boolean isSuccess() -
isError
default boolean isError()
-