@Incubating(since="1.5.0") public interface Validated<T> extends java.lang.Iterable<Validated<T>>
MeterRegistryConfig
.Modifier and Type | Interface and Description |
---|---|
static class |
Validated.Either |
static class |
Validated.Invalid<T> |
static class |
Validated.None<T>
Indicates that no validation has occurred.
|
static class |
Validated.Secret
A specialization
Validated.Valid that won't print the secret in plain text if the validation is serialized. |
static class |
Validated.Valid<T>
A valid property value.
|
Modifier and Type | Method and Description |
---|---|
default Validated<?> |
and(Validated<?> validated) |
default java.util.List<Validated.Invalid<?>> |
failures() |
<U> Validated<U> |
flatMap(java.util.function.BiFunction<T,Validated.Valid<T>,Validated<U>> mapping) |
default <U> Validated<U> |
flatMap(java.util.function.Function<T,Validated<U>> mapping) |
T |
get() |
static <T> Validated.Invalid<T> |
invalid(java.lang.String property,
java.lang.Object value,
java.lang.String message,
InvalidReason reason) |
static <T> Validated.Invalid<T> |
invalid(java.lang.String property,
java.lang.Object value,
java.lang.String message,
InvalidReason reason,
java.lang.Throwable exception) |
default Validated<T> |
invalidateWhen(java.util.function.Predicate<T> condition,
java.lang.String message,
InvalidReason reason)
When the condition is met, turn a
Validated.Valid result into an Validated.Invalid result with the provided message. |
default boolean |
isInvalid() |
boolean |
isValid() |
<U> Validated<U> |
map(java.util.function.Function<T,U> mapping) |
default Validated<T> |
nonBlank() |
static <T> Validated.None<T> |
none() |
default T |
orElse(T t) |
T |
orElseGet(java.util.function.Supplier<T> t) |
void |
orThrow() |
default Validated<T> |
required() |
static <T> Validated.Valid<T> |
valid(java.lang.String property,
T value) |
static Validated.Secret |
validSecret(java.lang.String property,
java.lang.String value) |
boolean isValid()
default boolean isInvalid()
default java.util.List<Validated.Invalid<?>> failures()
static Validated.Secret validSecret(java.lang.String property, java.lang.String value)
static <T> Validated.None<T> none()
static <T> Validated.Valid<T> valid(java.lang.String property, @Nullable T value)
static <T> Validated.Invalid<T> invalid(java.lang.String property, @Nullable java.lang.Object value, java.lang.String message, InvalidReason reason)
static <T> Validated.Invalid<T> invalid(java.lang.String property, @Nullable java.lang.Object value, java.lang.String message, InvalidReason reason, @Nullable java.lang.Throwable exception)
<U> Validated<U> flatMap(java.util.function.BiFunction<T,Validated.Valid<T>,Validated<U>> mapping)
default Validated<T> invalidateWhen(java.util.function.Predicate<T> condition, java.lang.String message, InvalidReason reason)
Validated.Valid
result into an Validated.Invalid
result with the provided message.condition
- true
when the property should be considered invalid.message
- A message explaining the reason why the property is considered invalid.reason
- An invalid reason.Validated.Valid
, apply the test and either retain the valid decision or make it Validated.Invalid
.
When originally Validated.Invalid
or Validated.None
, don't apply the test at all, and pass through the original decision.T get() throws ValidationException
ValidationException
default T orElse(@Nullable T t) throws ValidationException
ValidationException
T orElseGet(java.util.function.Supplier<T> t) throws ValidationException
ValidationException
void orThrow() throws ValidationException
ValidationException