diff --git a/.gitignore b/.gitignore index a01406182ebef5b2bf1edadd2058b5fdafc0e9a9..d9c9e9cfe717ed7f22fd301cd50533aa4a66add5 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,8 @@ /target/ /.project /.classpath -/.settings/ \ No newline at end of file +/.settings/ + +### Intellij ### +.idea/ +*.iml \ No newline at end of file diff --git a/pom.xml b/pom.xml index c1e21059621526c95e607c47acec3db44503ac5f..e718188e1cce23201f392f302e3e9a49e91edb56 100644 --- a/pom.xml +++ b/pom.xml @@ -76,6 +76,20 @@ <version>[1.7,)</version> </dependency> + + <dependency> + <groupId>com.sun.mail</groupId> + <artifactId>jakarta.mail</artifactId> + <exclusions> + <exclusion> + <groupId>com.sun.activation</groupId> + <artifactId>jakarta.activation</artifactId> + </exclusion> + </exclusions> + <version>[1.6.3,1.6.7]</version> + <scope>provided</scope> + </dependency> + <dependency> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpclient</artifactId> diff --git a/src/main/java/com/floragunn/codova/validation/Validators.java b/src/main/java/com/floragunn/codova/validation/Validators.java index bfda3a1b8141087e12229d51aeff5272935fbc91..84eddec9b3103fc5f32749909d74a763048d80a9 100644 --- a/src/main/java/com/floragunn/codova/validation/Validators.java +++ b/src/main/java/com/floragunn/codova/validation/Validators.java @@ -21,6 +21,17 @@ import java.util.function.Predicate; import org.apache.commons.validator.routines.EmailValidator; +import javax.mail.internet.AddressException; +import javax.mail.internet.InternetAddress; + public class Validators { public static final Predicate<String> EMAIL = (value) -> EmailValidator.getInstance(true, true).isValid(value); + public static final Predicate<String> EMAIL_WITH_DISPLAY_NAME = (value) -> { + try { + new InternetAddress(value, true); + return true; + } catch (AddressException e) { + return false; + } + }; }