Package com.codesseur.validation
Class Checker<C extends Checker<C,T>,T>
- java.lang.Object
-
- com.codesseur.validation.Checker<C,T>
-
- Direct Known Subclasses:
AbstractComparableChecker,AbstractContainerChecker,AbstractDictionaryChecker,BooleanChecker,ObjectChecker,OptionalChecker,StringChecker
public abstract class Checker<C extends Checker<C,T>,T> extends Object
-
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description <T1,C1 extends Checker<C1,T1>,T2,C2 extends Checker<C2,T2>>
CheckersJoiner.Joiner2<T1,C1,T2,C2>destruct(Function<T,C1> checker1, Function<T,C2> checker2)<T1,C1 extends Checker<C1,T1>,T2,C2 extends Checker<C2,T2>,T3,C3 extends Checker<C3,T3>>
CheckersJoiner.Joiner3<T1,C1,T2,C2,T3,C3>destruct(Function<T,C1> checker1, Function<T,C2> checker2, Function<T,C3> checker3)<T1,C1 extends Checker<C1,T1>,T2,C2 extends Checker<C2,T2>,T3,C3 extends Checker<C3,T3>,T4,C4 extends Checker<C4,T4>>
CheckersJoiner.Joiner4<T1,C1,T2,C2,T3,C3,T4,C4>destruct(Function<T,C1> checker1, Function<T,C2> checker2, Function<T,C3> checker3, Function<T,C4> checker4)<T1,C1 extends Checker<C1,T1>,T2,C2 extends Checker<C2,T2>,T3,C3 extends Checker<C3,T3>,T4,C4 extends Checker<C4,T4>,T5,C5 extends Checker<C5,T5>>
CheckersJoiner.Joiner5<T1,C1,T2,C2,T3,C3,T4,C4,T5,C5>destruct(Function<T,C1> checker1, Function<T,C2> checker2, Function<T,C3> checker3, Function<T,C4> checker4, Function<T,C5> checker5)<T1,C1 extends Checker<C1,T1>,T2,C2 extends Checker<C2,T2>,T3,C3 extends Checker<C3,T3>,T4,C4 extends Checker<C4,T4>,T5,C5 extends Checker<C5,T5>,T6,C6 extends Checker<C6,T6>>
CheckersJoiner.Joiner6<T1,C1,T2,C2,T3,C3,T4,C4,T5,C5,T6,C6>destruct(Function<T,C1> checker1, Function<T,C2> checker2, Function<T,C3> checker3, Function<T,C4> checker4, Function<T,C5> checker5, Function<T,C6> checker6)<T1,C1 extends Checker<C1,T1>,T2,C2 extends Checker<C2,T2>,T3,C3 extends Checker<C3,T3>,T4,C4 extends Checker<C4,T4>,T5,C5 extends Checker<C5,T5>,T6,C6 extends Checker<C6,T6>,T7,C7 extends Checker<C7,T7>>
CheckersJoiner.Joiner7<T1,C1,T2,C2,T3,C3,T4,C4,T5,C5,T6,C6,T7,C7>destruct(Function<T,C1> checker1, Function<T,C2> checker2, Function<T,C3> checker3, Function<T,C4> checker4, Function<T,C5> checker5, Function<T,C6> checker6, Function<T,C7> checker7)<T1,C1 extends Checker<C1,T1>,T2,C2 extends Checker<C2,T2>,T3,C3 extends Checker<C3,T3>,T4,C4 extends Checker<C4,T4>,T5,C5 extends Checker<C5,T5>,T6,C6 extends Checker<C6,T6>,T7,C7 extends Checker<C7,T7>,T8,C8 extends Checker<C8,T8>>
CheckersJoiner.Joiner8<T1,C1,T2,C2,T3,C3,T4,C4,T5,C5,T6,C6,T7,C7,T8,C8>destruct(Function<T,C1> checker1, Function<T,C2> checker2, Function<T,C3> checker3, Function<T,C4> checker4, Function<T,C5> checker5, Function<T,C6> checker6, Function<T,C7> checker7, Function<T,C8> checker8)CheckersJoinerdestruct(Function<T,Checker<?,?>>... verifiers)<TT,CC extends Checker<CC,TT>>
CCflatMap(Function<? super io.vavr.control.Either<Failures,T>,? extends CC> mapper)<TT,CC extends Checker<CC,TT>>
CCflatMap(Function<? super T,? extends TT> mapper, Function<? super io.vavr.control.Either<Failures,TT>,? extends CC> as)io.vavr.control.Either<Failures,T>get()CisEqualTo(T value)CisIn(Iterable<? extends T> values)CisIn(T... values)<TT> ObjectChecker<TT>isInstanceOf(com.codesseur.reflect.Type<TT> type)<TT,SS extends Checker<SS,TT>>
SSisInstanceOf(com.codesseur.reflect.Type<TT> type, Function<? super io.vavr.control.Either<Failures,TT>,? extends SS> as)CisNotEqualTo(T value)CisNotNull()CisNull()<TT> ObjectChecker<TT>map(Function<? super T,? extends TT> mapper)CnotIn(Iterable<? extends T> values)CnotIn(T... values)CorElse(T other)CorElseFail(String code)CorElseFail(BiFunction<? super T,? super Failure,Failure> failureMapper)CorElseFail(Function<? super T,String> code)CorElseGet(Function<? super Failure,? extends T> other)CorElseGet(Supplier<T> other)CorElseThrow()CorElseThrow(Function<? super Failures,? extends RuntimeException> otherwise)CorElseThrow(Supplier<? extends RuntimeException> otherwise)CorElseThrowLast(Function<Failure,? extends RuntimeException> otherwise)Csatisfies(Function<T,io.vavr.control.Either<Failure,T>> condition)Csatisfies(Predicate<? super T> condition, Supplier<Failure> failure)Cthen()Cviolates(Predicate<? super T> condition, Supplier<Failure> failure)protected Cwith(io.vavr.control.Either<Failures,T> value)protected abstract Cwith(io.vavr.control.Either<Failures,T> value, Function<T,io.vavr.control.Either<Failure,T>> lastCheck)protected Cwith(Function<T,io.vavr.control.Either<Failure,T>> lastCheck)
-
-
-
Method Detail
-
isNull
public C isNull()
-
isNotNull
public C isNotNull()
-
isInstanceOf
public <TT> ObjectChecker<TT> isInstanceOf(com.codesseur.reflect.Type<TT> type)
-
isInstanceOf
public <TT,SS extends Checker<SS,TT>> SS isInstanceOf(com.codesseur.reflect.Type<TT> type, Function<? super io.vavr.control.Either<Failures,TT>,? extends SS> as)
-
isIn
@SafeVarargs public final C isIn(T... values)
-
notIn
@SafeVarargs public final C notIn(T... values)
-
then
public C then()
-
map
public <TT> ObjectChecker<TT> map(Function<? super T,? extends TT> mapper)
-
flatMap
public <TT,CC extends Checker<CC,TT>> CC flatMap(Function<? super T,? extends TT> mapper, Function<? super io.vavr.control.Either<Failures,TT>,? extends CC> as)
-
flatMap
public <TT,CC extends Checker<CC,TT>> CC flatMap(Function<? super io.vavr.control.Either<Failures,T>,? extends CC> mapper)
-
orElseFail
public C orElseFail(BiFunction<? super T,? super Failure,Failure> failureMapper)
-
orElseThrowLast
public C orElseThrowLast(Function<Failure,? extends RuntimeException> otherwise)
-
orElseThrow
public C orElseThrow()
-
orElseThrow
public C orElseThrow(Supplier<? extends RuntimeException> otherwise)
-
orElseThrow
public C orElseThrow(Function<? super Failures,? extends RuntimeException> otherwise)
-
destruct
@SafeVarargs public final CheckersJoiner destruct(Function<T,Checker<?,?>>... verifiers)
-
destruct
public <T1,C1 extends Checker<C1,T1>,T2,C2 extends Checker<C2,T2>> CheckersJoiner.Joiner2<T1,C1,T2,C2> destruct(Function<T,C1> checker1, Function<T,C2> checker2)
-
destruct
public <T1,C1 extends Checker<C1,T1>,T2,C2 extends Checker<C2,T2>,T3,C3 extends Checker<C3,T3>> CheckersJoiner.Joiner3<T1,C1,T2,C2,T3,C3> destruct(Function<T,C1> checker1, Function<T,C2> checker2, Function<T,C3> checker3)
-
destruct
public <T1,C1 extends Checker<C1,T1>,T2,C2 extends Checker<C2,T2>,T3,C3 extends Checker<C3,T3>,T4,C4 extends Checker<C4,T4>> CheckersJoiner.Joiner4<T1,C1,T2,C2,T3,C3,T4,C4> destruct(Function<T,C1> checker1, Function<T,C2> checker2, Function<T,C3> checker3, Function<T,C4> checker4)
-
destruct
public <T1,C1 extends Checker<C1,T1>,T2,C2 extends Checker<C2,T2>,T3,C3 extends Checker<C3,T3>,T4,C4 extends Checker<C4,T4>,T5,C5 extends Checker<C5,T5>> CheckersJoiner.Joiner5<T1,C1,T2,C2,T3,C3,T4,C4,T5,C5> destruct(Function<T,C1> checker1, Function<T,C2> checker2, Function<T,C3> checker3, Function<T,C4> checker4, Function<T,C5> checker5)
-
destruct
public <T1,C1 extends Checker<C1,T1>,T2,C2 extends Checker<C2,T2>,T3,C3 extends Checker<C3,T3>,T4,C4 extends Checker<C4,T4>,T5,C5 extends Checker<C5,T5>,T6,C6 extends Checker<C6,T6>> CheckersJoiner.Joiner6<T1,C1,T2,C2,T3,C3,T4,C4,T5,C5,T6,C6> destruct(Function<T,C1> checker1, Function<T,C2> checker2, Function<T,C3> checker3, Function<T,C4> checker4, Function<T,C5> checker5, Function<T,C6> checker6)
-
destruct
public <T1,C1 extends Checker<C1,T1>,T2,C2 extends Checker<C2,T2>,T3,C3 extends Checker<C3,T3>,T4,C4 extends Checker<C4,T4>,T5,C5 extends Checker<C5,T5>,T6,C6 extends Checker<C6,T6>,T7,C7 extends Checker<C7,T7>> CheckersJoiner.Joiner7<T1,C1,T2,C2,T3,C3,T4,C4,T5,C5,T6,C6,T7,C7> destruct(Function<T,C1> checker1, Function<T,C2> checker2, Function<T,C3> checker3, Function<T,C4> checker4, Function<T,C5> checker5, Function<T,C6> checker6, Function<T,C7> checker7)
-
destruct
public <T1,C1 extends Checker<C1,T1>,T2,C2 extends Checker<C2,T2>,T3,C3 extends Checker<C3,T3>,T4,C4 extends Checker<C4,T4>,T5,C5 extends Checker<C5,T5>,T6,C6 extends Checker<C6,T6>,T7,C7 extends Checker<C7,T7>,T8,C8 extends Checker<C8,T8>> CheckersJoiner.Joiner8<T1,C1,T2,C2,T3,C3,T4,C4,T5,C5,T6,C6,T7,C7,T8,C8> destruct(Function<T,C1> checker1, Function<T,C2> checker2, Function<T,C3> checker3, Function<T,C4> checker4, Function<T,C5> checker5, Function<T,C6> checker6, Function<T,C7> checker7, Function<T,C8> checker8)
-
-