AsyncFormValidator

class AsyncFormValidator<T> @JvmOverloads constructor(formSchema: Schema<T>, externalValidations: ExternalValidations = emptyMap(), coroutineScope: CoroutineScope = GlobalScope)

This class is a simple FormValidator wrapper for usage from Java, providing methods returning completable futures instead of using suspend functions or Kotlin flows.

Use this class to validate form values. Form values are of type T and represent the content of a form with the provided form schema.

External validations may be provided to further validate the form against validations not present in the schema.

Once instantiated with a given form schema, the validator can be used to validate values according to all validations of said schema, as well as the validator's external validations.

Constructors

Link copied to clipboard
constructor(formSchema: Schema<T>, externalValidations: ExternalValidations = emptyMap(), coroutineScope: CoroutineScope = GlobalScope)

Functions

Link copied to clipboard
fun isValid(formValue: T, externalContexts: ExternalContexts? = null, runCriteria: ValidateRunCriteria = ValidateRunCriteria.ExternalIfInternalValid): CompletableFuture<Boolean>

Returns a future that completes with whether all parts of the form value formValue are valid according to the validator's schema.

fun isValid(formValue: T, path: String, externalContexts: ExternalContexts? = null, runCriteria: ValidateRunCriteria = ValidateRunCriteria.ExternalIfInternalValid): CompletableFuture<Boolean>
fun isValid(formValue: T, path: Path, externalContexts: ExternalContexts? = null, runCriteria: ValidateRunCriteria = ValidateRunCriteria.ExternalIfInternalValid): CompletableFuture<Boolean>

Returns a future that completes with whether the parts of the form value formValue matching path are valid according to the validator's schema.

Link copied to clipboard
fun validate(formValue: T, externalContexts: ExternalContexts? = null, runCriteria: ValidateRunCriteria = ValidateRunCriteria.ExternalIfInternalValid): CompletableFuture<List<LocatedValidationIssue>>

Validates all parts of the form value formValue against the validator's schema. Returns a future that completes with a list of found validation issues.

fun validate(formValue: T, path: String, externalContexts: ExternalContexts? = null, runCriteria: ValidateRunCriteria = ValidateRunCriteria.ExternalIfInternalValid): CompletableFuture<List<LocatedValidationIssue>>
fun validate(formValue: T, path: Path, externalContexts: ExternalContexts? = null, runCriteria: ValidateRunCriteria = ValidateRunCriteria.ExternalIfInternalValid): CompletableFuture<List<LocatedValidationIssue>>

Validates the parts of the form value formValue matching path against the validator's schema. Returns a future that completes with a list of found validation issues.