Validator Class
This section describes how to perform validation checks using Validator class
Basic Concepts
The EasyValidation
library performs all the validation checks based on the Validator
class. You can easily perform validations on any String
using this class.
The easiest way to validate any string is to create an Object
of Validator
class and pass any String
in it and then you can perform validation checks.
var myStr = "test.email@domain.com"
var validator = Validator(myStr)
var isValid = validator.validEmail()
Now, the Validator
class contains a lot of built-in rules in form of methods. For example, to check valid email, you can use validEmail()
method, or check non-empty String
, you can use nonEmpty()
method and so on. Each method returns a Boolean
value, where true
means String
is valid and false
means String
is not valid. For example:
var myStr = "hello my string"
var validator = Validator(myStr)
var isValidStr = validator.nonEmpty()
Also, each method has an optional error callback method. This will be called in case on non-valid String
. For example:
var myNumber = "1234567"
var validator = Validator(myNumber)
// Normal Way
var isValid = validator.minLength(6, { msg ->
// This method will be called when myNumber is less than 6 characters.
Log.e("EasyValidation", msg)
})
// Kotlin Way
var isValid = validator.minLength(6)
{
// This method will be called when myNumber is less than 6 characters.
Log.e("EasyValidation", it)
}
// Or you can skip the returned Boolean value
validator.minLength(6)
{
// This method will be called when myNumber is less than 6 characters.
Log.e("EasyValidation", it)
}
Error and Success Callbacks
The Validator
class provides callback methods with addErrorCallback()
and addSuccessCallback()
methods. For example:
var myNumber = "1234567"
var validator = Validator(myNumber)
validator.startsWithNumber()
.addErrorCallback( { msg ->
// Do something here with the error.
// The msg variable contains the error message
})
.addSuccessCallback( {
// Validation checks are passed. The text is valid.
// Do anything with success case here.
})
.check()
Validator Extensions
You can access the Validator object by using Kotlin extension methods on String
, EditText
, TextView
, AutoCompleteTextView
, TextInputLayout
, and Spinner
using validator()
method. For example:
var strValidator = myStr.validator()
var txtViewValidator = myTextView.validator()
// Then all usage is same
strValidator.nonEmpty()
{
// Invalid error here
}
// Or in simple way
myStr.validator().nonEmpty()
{
// Invalid error
}
myTextView.validator().nonEmpty()
{
// invalid error
}
Adding Rules Manually
You can add built-in rules or custom rules by calling addRule()
method of the Validator
class.
var validator = myTextView.validator()
var isValid = validator.addRule(EmailRule()).check()
Last updated