Repository: incubator-ranger
Updated Branches:
  refs/heads/master 3fa3de243 -> 7e08cd9f2


RANGER-255 : Email Address discrepancy fix

Signed-off-by: Gautam Borad <[email protected]>


Project: http://git-wip-us.apache.org/repos/asf/incubator-ranger/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ranger/commit/26f959fd
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ranger/tree/26f959fd
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ranger/diff/26f959fd

Branch: refs/heads/master
Commit: 26f959fd23d1967b535a1311e5500cfaca9706d4
Parents: 3fa3de2
Author: Pradeep Agrawal <[email protected]>
Authored: Mon Apr 18 21:08:07 2016 +0530
Committer: Gautam Borad <[email protected]>
Committed: Fri Apr 29 15:02:51 2016 +0530

----------------------------------------------------------------------
 .../src/main/java/org/apache/ranger/biz/UserMgr.java   | 13 ++++++++++++-
 .../test/java/org/apache/ranger/biz/TestUserMgr.java   |  4 ++--
 2 files changed, 14 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/26f959fd/security-admin/src/main/java/org/apache/ranger/biz/UserMgr.java
----------------------------------------------------------------------
diff --git a/security-admin/src/main/java/org/apache/ranger/biz/UserMgr.java 
b/security-admin/src/main/java/org/apache/ranger/biz/UserMgr.java
index 2d09591..d96aa05 100644
--- a/security-admin/src/main/java/org/apache/ranger/biz/UserMgr.java
+++ b/security-admin/src/main/java/org/apache/ranger/biz/UserMgr.java
@@ -1118,6 +1118,13 @@ public class UserMgr {
 
        public VXPortalUser createUser(VXPortalUser userProfile) {
                checkAdminAccess();
+               String emailAddress = userProfile.getEmailAddress();
+               if (!stringUtil.isEmpty(emailAddress)) {
+                       if(!stringUtil.validateEmail(emailAddress)){
+                               logger.info("Invalid email address:" + 
emailAddress);
+                               throw restErrorUtil.createRESTException("Please 
provide valid email address.",MessageEnums.INVALID_INPUT_DATA);
+                       }
+               }
                XXPortalUser xXPortalUser = this.createUser(userProfile,
                                RangerCommonEnums.STATUS_ENABLED);
                return mapXXPortalUserVXPortalUser(xXPortalUser);
@@ -1138,7 +1145,11 @@ public class UserMgr {
                if (loginId != null && !loginId.isEmpty()) {
                        xXPortalUser = this.findByLoginId(loginId);
                        if (xXPortalUser == null) {
-                               if (emailAddress != null && 
!emailAddress.isEmpty()) {
+                               if (!stringUtil.isEmpty(emailAddress)) {
+                                       
if(!stringUtil.validateEmail(emailAddress)){
+                                               logger.info("Invalid email 
address:" + emailAddress);
+                                               throw 
restErrorUtil.createRESTException("Please provide valid email 
address.",MessageEnums.INVALID_INPUT_DATA);
+                                       }
                                        xXPortalUser = 
this.findByEmailAddress(emailAddress);
                                        if (xXPortalUser == null) {
                                                xXPortalUser = 
this.createUser(userProfile,

http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/26f959fd/security-admin/src/test/java/org/apache/ranger/biz/TestUserMgr.java
----------------------------------------------------------------------
diff --git 
a/security-admin/src/test/java/org/apache/ranger/biz/TestUserMgr.java 
b/security-admin/src/test/java/org/apache/ranger/biz/TestUserMgr.java
index e617de6..2506c03 100644
--- a/security-admin/src/test/java/org/apache/ranger/biz/TestUserMgr.java
+++ b/security-admin/src/test/java/org/apache/ranger/biz/TestUserMgr.java
@@ -429,7 +429,7 @@ public class TestUserMgr {
                Mockito.when(
                                
xGroupPermissionDao.findbyVXPortalUserId(userProfile.getId()))
                                .thenReturn(xGroupPermissionList);
-
+               
Mockito.when(stringUtil.validateEmail(Mockito.anyString())).thenReturn(true);
                VXPortalUser dbVXPortalUser = userMgr.createUser(userProfile);
                Assert.assertNotNull(dbVXPortalUser);
                Assert.assertEquals(user.getId(), dbVXPortalUser.getId());
@@ -467,7 +467,7 @@ public class TestUserMgr {
                
Mockito.when(daoManager.getXXPortalUserRole()).thenReturn(roleDao);
                Mockito.when(roleDao.findByParentId(Mockito.anyLong()))
                                .thenReturn(list);
-
+               
Mockito.when(stringUtil.validateEmail(Mockito.anyString())).thenReturn(true);
                VXPortalUser dbVXPortalUser = userMgr
                                .createDefaultAccountUser(userProfile);
                Assert.assertNotNull(dbVXPortalUser);

Reply via email to