Class that may be used to determine if a given e-mail address is valid. It features:
- Simple validation just by looking at the e-mail address string
- Validation of the domain against a list of known domains that are often misspelled (typos) like those of Gmail.com, Hotmail.com, Mail.ru, Ntlworld.com, Rediffmail.com, Rocketmail.com, Yahoo.com, Yandex.com, etc.
- Provides did you mean like suggestions for email addresses that were entered with typos
- Validation of domain against a list of typical fake domains like test.com, testtest.com, asd.com, asdf.com, etc..
- Validation of the email address domain against a list of of known domains for being used as disposable email addresses or temporary domains
- Manual whitelisting of domains to avoid trigger false positives of invalid domains
- Validation of the e-mail address domain checking the DNS MX record (mail exchange)
- Validation of a e-mail address by connecting to the mail host server to determine if there is really a deliverable mail box by simulating part of the message delivery process.