Modified User Auth and permission aaf services 81/60581/1
authorKishore Reddy, Gujja (kg811t) <kg811t@research.att.com>
Tue, 14 Aug 2018 16:50:20 +0000 (12:50 -0400)
committerKishore Reddy, Gujja (kg811t) <kg811t@research.att.com>
Tue, 14 Aug 2018 16:50:20 +0000 (12:50 -0400)
Issue-ID: PORTAL-334

Change-Id: If2f8a9d5be8a9710637b5e177fae1bb0c2ffa42b
Signed-off-by: Kishore Reddy, Gujja (kg811t) <kg811t@research.att.com>
ecomp-sdk/epsdk-aaf/src/main/java/org/onap/portalsdk/external/authorization/domain/ExternalAccessRole.java
ecomp-sdk/epsdk-aaf/src/main/java/org/onap/portalsdk/external/authorization/domain/ExternalAccessRoleDescription.java [moved from ecomp-sdk/epsdk-aaf/src/main/java/org/onap/portalsdk/external/authorization/domain/ExternalRoleDescription.java with 90% similarity]
ecomp-sdk/epsdk-aaf/src/main/java/org/onap/portalsdk/external/authorization/domain/ExternalAccessRolePerms.java [deleted file]
ecomp-sdk/epsdk-aaf/src/main/java/org/onap/portalsdk/external/authorization/domain/ExternalAccessUserRoleDetail.java
ecomp-sdk/epsdk-aaf/src/main/java/org/onap/portalsdk/external/authorization/service/UserApiServiceImpl.java
ecomp-sdk/epsdk-aaf/src/test/java/org/onap/portalsdk/external/authorization/domain/ExternalAccessRoleDescriptionTest.java [moved from ecomp-sdk/epsdk-aaf/src/test/java/org/onap/portalsdk/external/authorization/domain/ExternalRoleDescriptionTest.java with 72% similarity]
ecomp-sdk/epsdk-aaf/src/test/java/org/onap/portalsdk/external/authorization/domain/ExternalAccessRolePermsTest.java [deleted file]
ecomp-sdk/epsdk-aaf/src/test/java/org/onap/portalsdk/external/authorization/domain/ExternalAccessRoleTest.java
ecomp-sdk/epsdk-aaf/src/test/java/org/onap/portalsdk/external/authorization/domain/ExternalAccessUserRoleDetailTest.java
ecomp-sdk/epsdk-domain/src/main/java/org/onap/portalsdk/core/domain/UserApp.java

index 8c19118..2c6f3ff 100644 (file)
@@ -2,7 +2,7 @@
  * ============LICENSE_START==========================================
  * ONAP Portal SDK
  * ===================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * Copyright (C) 2017-2018 AT&T Intellectual Property. All rights reserved.
  * ===================================================================
  *
  * Unless otherwise specified, all software contained herein is licensed
 package org.onap.portalsdk.external.authorization.domain;
 
 import java.io.Serializable;
+import java.util.List;
 
 public class ExternalAccessRole implements Serializable {
 
-       /**
-        * 
-        */
        private static final long serialVersionUID = 3439986826362436339L;
+       
        public String name;
-       public String description;
+       private List<ExternalAccessPerms> perms;
+       public ExternalAccessRoleDescription description;
        
-       public ExternalAccessRole() {
        
+       public ExternalAccessRole() {
+               super();
        }
-       
-       public ExternalAccessRole(String name, String description) {
+
+       public ExternalAccessRole(String name, List<ExternalAccessPerms> ecPerms, ExternalAccessRoleDescription description) {
                super();
                this.name = name;
+               this.perms = ecPerms;
                this.description = description;
        }
        
@@ -65,12 +67,58 @@ public class ExternalAccessRole implements Serializable {
        public void setName(String name) {
                this.name = name;
        }
+       
+       public List<ExternalAccessPerms> getPerms() {
+               return perms;
+       }
 
-       public String getDescription() {
+       public void setPerms(List<ExternalAccessPerms> perms) {
+               this.perms = perms;
+       }
+
+       public ExternalAccessRoleDescription getDescription() {
                return description;
        }
-       public void setDescription(String description) {
+       public void setDescription(ExternalAccessRoleDescription description) {
                this.description = description;
        }
+
+       @Override
+       public int hashCode() {
+               final int prime = 31;
+               int result = 1;
+               result = prime * result + ((description == null) ? 0 : description.hashCode());
+               result = prime * result + ((name == null) ? 0 : name.hashCode());
+               result = prime * result + ((perms == null) ? 0 : perms.hashCode());
+               return result;
+       }
+
+       @Override
+       public boolean equals(Object obj) {
+               if (this == obj)
+                       return true;
+               if (obj == null)
+                       return false;
+               if (getClass() != obj.getClass())
+                       return false;
+               ExternalAccessRole other = (ExternalAccessRole) obj;
+               if (description == null) {
+                       if (other.description != null)
+                               return false;
+               } else if (!description.equals(other.description))
+                       return false;
+               if (name == null) {
+                       if (other.name != null)
+                               return false;
+               } else if (!name.equals(other.name))
+                       return false;
+               if (perms == null) {
+                       if (other.perms != null)
+                               return false;
+               } else if (!perms.equals(other.perms))
+                       return false;
+               return true;
+       }
+       
        
 }
@@ -2,7 +2,7 @@
  * ============LICENSE_START==========================================
  * ONAP Portal SDK
  * ===================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * Copyright (C) 2017-2018 AT&T Intellectual Property. All rights reserved.
  * ===================================================================
  *
  * Unless otherwise specified, all software contained herein is licensed
@@ -37,9 +37,7 @@
  */
 package org.onap.portalsdk.external.authorization.domain;
 
-import java.util.List;
-
-public class ExternalRoleDescription {
+public class ExternalAccessRoleDescription {
 
        private String id;
        private String  name;
@@ -47,7 +45,6 @@ public class ExternalRoleDescription {
     private String priority;
     private String appId;
     private String appRoleId;
-    private List<ExternalAccessPerms> permissions;
     
        public String getId() {
                return id;
@@ -85,13 +82,6 @@ public class ExternalRoleDescription {
        public void setAppRoleId(String appRoleId) {
                this.appRoleId = appRoleId;
        }
-       
-       public List<ExternalAccessPerms> getPermissions() {
-               return permissions;
-       }
-       public void setPermissions(List<ExternalAccessPerms> permissions) {
-               this.permissions = permissions;
-       }
        @Override
        public int hashCode() {
                final int prime = 31;
@@ -112,7 +102,7 @@ public class ExternalRoleDescription {
                        return false;
                if (getClass() != obj.getClass())
                        return false;
-               ExternalRoleDescription other = (ExternalRoleDescription) obj;
+               ExternalAccessRoleDescription other = (ExternalAccessRoleDescription) obj;
                if (active == null) {
                        if (other.active != null)
                                return false;
@@ -146,5 +136,7 @@ public class ExternalRoleDescription {
                return true;
        }
     
+       
+    
     
 }
diff --git a/ecomp-sdk/epsdk-aaf/src/main/java/org/onap/portalsdk/external/authorization/domain/ExternalAccessRolePerms.java b/ecomp-sdk/epsdk-aaf/src/main/java/org/onap/portalsdk/external/authorization/domain/ExternalAccessRolePerms.java
deleted file mode 100644 (file)
index 95b4f0c..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-/*-
- * ============LICENSE_START==========================================
- * ONAP Portal SDK
- * ===================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ===================================================================
- *
- * Unless otherwise specified, all software contained herein is licensed
- * under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *             http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * Unless otherwise specified, all documentation contained herein is licensed
- * under the Creative Commons License, Attribution 4.0 Intl. (the "License");
- * you may not use this documentation except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *             https://creativecommons.org/licenses/by/4.0/
- *
- * Unless required by applicable law or agreed to in writing, documentation
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * ============LICENSE_END============================================
- *
- * 
- */
-package org.onap.portalsdk.external.authorization.domain;
-
-public class ExternalAccessRolePerms {
-       
-       private ExternalAccessPerms perm;       
-       private String role;
-       
-       
-       public ExternalAccessRolePerms(ExternalAccessPerms perm, String role) {
-               super();
-               this.perm = perm;
-               this.role = role;
-       }
-       
-       public ExternalAccessPerms getPerm() {
-               return perm;
-       }
-       public void setPerm(ExternalAccessPerms perm) {
-               this.perm = perm;
-       }
-       public String getRole() {
-               return role;
-       }
-       public void setRole(String role) {
-               this.role = role;
-       }
-       
-       
-}
index 929bd35..5e189e5 100644 (file)
@@ -2,7 +2,7 @@
  * ============LICENSE_START==========================================
  * ONAP Portal SDK
  * ===================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * Copyright (C) 2017-2018 AT&T Intellectual Property. All rights reserved.
  * ===================================================================
  *
  * Unless otherwise specified, all software contained herein is licensed
@@ -39,42 +39,30 @@ package org.onap.portalsdk.external.authorization.domain;
 
 public class ExternalAccessUserRoleDetail {
                
-       private String name;
-       private ExternalRoleDescription description;
-       
+       private ExternalAccessRole role;
+
+       public ExternalAccessRole getRole() {
+               return role;
+       }
+
+       public void setRole(ExternalAccessRole role) {
+               this.role = role;
+       }
        
-       /**
-        * 
-        */
        public ExternalAccessUserRoleDetail() {
                super();
-       }
+       }       
 
-       public ExternalAccessUserRoleDetail(String name, ExternalRoleDescription description) {
+       public ExternalAccessUserRoleDetail(ExternalAccessRole role) {
                super();
-               this.name = name;
-               this.description = description;
-       }
-       
-       public String getName() {
-               return name;
-       }
-       public void setName(String name) {
-               this.name = name;
-       }
-       public ExternalRoleDescription getDescription() {
-               return description;
-       }
-       public void setDescription(ExternalRoleDescription description) {
-               this.description = description;
+               this.role = role;
        }
 
        @Override
        public int hashCode() {
                final int prime = 31;
                int result = 1;
-               result = prime * result + ((description == null) ? 0 : description.hashCode());
-               result = prime * result + ((name == null) ? 0 : name.hashCode());
+               result = prime * result + ((role == null) ? 0 : role.hashCode());
                return result;
        }
 
@@ -87,15 +75,10 @@ public class ExternalAccessUserRoleDetail {
                if (getClass() != obj.getClass())
                        return false;
                ExternalAccessUserRoleDetail other = (ExternalAccessUserRoleDetail) obj;
-               if (description == null) {
-                       if (other.description != null)
-                               return false;
-               } else if (!description.equals(other.description))
-                       return false;
-               if (name == null) {
-                       if (other.name != null)
+               if (role == null) {
+                       if (other.role != null)
                                return false;
-               } else if (!name.equals(other.name))
+               } else if (!role.equals(other.role))
                        return false;
                return true;
        }
index 3eac97b..44404a6 100644 (file)
@@ -2,7 +2,7 @@
  * ============LICENSE_START==========================================
  * ONAP Portal SDK
  * ===================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * Copyright (C) 2017-2018 AT&T Intellectual Property. All rights reserved.
  * ===================================================================
  *
  * Unless otherwise specified, all software contained herein is licensed
@@ -61,8 +61,9 @@ import org.onap.portalsdk.core.service.DataAccessService;
 import org.onap.portalsdk.core.service.LdapService;
 import org.onap.portalsdk.core.service.PostSearchService;
 import org.onap.portalsdk.external.authorization.domain.ExternalAccessPerms;
+import org.onap.portalsdk.external.authorization.domain.ExternalAccessRole;
+import org.onap.portalsdk.external.authorization.domain.ExternalAccessRoleDescription;
 import org.onap.portalsdk.external.authorization.domain.ExternalAccessUserRoleDetail;
-import org.onap.portalsdk.external.authorization.domain.ExternalRoleDescription;
 import org.onap.portalsdk.external.authorization.exception.UserNotFoundException;
 import org.onap.portalsdk.external.authorization.util.EcompExternalAuthProperties;
 import org.onap.portalsdk.external.authorization.util.EcompExternalAuthUtils;
@@ -133,7 +134,7 @@ public class UserApiServiceImpl implements UserApiService {
                        }
                        String userRoles = getResponse.getBody();
                        ObjectMapper mapper = new ObjectMapper();
-                       List<ExternalAccessUserRoleDetail> userRoleDetailList = setExterbalAccessUserRoles(namespace, userRoles,
+                       List<ExternalAccessUserRoleDetail> userRoleDetailList = setExternalAccessUserRoles(namespace, userRoles,
                                        mapper);
 
                        if (userRoleDetailList.isEmpty()) {
@@ -148,7 +149,7 @@ public class UserApiServiceImpl implements UserApiService {
 
        }
 
-       private List<ExternalAccessUserRoleDetail> setExterbalAccessUserRoles(String namespace, String userRoles,
+       private List<ExternalAccessUserRoleDetail> setExternalAccessUserRoles(String namespace, String userRoles,
                        ObjectMapper mapper) throws IOException, JsonParseException, JsonMappingException, UserNotFoundException {
                JSONObject userJsonObj;
                JSONArray userJsonArray;
@@ -163,20 +164,21 @@ public class UserApiServiceImpl implements UserApiService {
                                                .endsWith(EcompExternalAuthUtils.EXT_ROLE_FIELD_ADMIN)
                                                && !role.getString(EcompExternalAuthUtils.EXT_ROLE_FIELD_NAME)
                                                                .endsWith(EcompExternalAuthUtils.EXT_ROLE_FIELD_OWNER)) {
-                                       ExternalRoleDescription desc = new ExternalRoleDescription();
+                                       ExternalAccessRoleDescription ecDesc = new ExternalAccessRoleDescription();
                                        if (role.has(EcompExternalAuthUtils.EXT_FIELD_DESCRIPTION) && EcompExternalAuthUtils
                                                        .isJSONValid(role.getString(EcompExternalAuthUtils.EXT_FIELD_DESCRIPTION))) {
-                                               desc = mapper.readValue(role.getString(EcompExternalAuthUtils.EXT_FIELD_DESCRIPTION),
-                                                               ExternalRoleDescription.class);
+                                               ecDesc = mapper.readValue(role.getString(EcompExternalAuthUtils.EXT_FIELD_DESCRIPTION),
+                                                               ExternalAccessRoleDescription.class);
                                        }
+                                       List<ExternalAccessPerms> ecPerms = new ArrayList<>();
                                        if (role.has(EcompExternalAuthUtils.EXT_FIELD_PERMS)) {
                                                JSONArray perms = role.getJSONArray(EcompExternalAuthUtils.EXT_FIELD_PERMS);
-                                               List<ExternalAccessPerms> permsList = mapper.readValue(perms.toString(), TypeFactory
-                                                               .defaultInstance().constructCollectionType(List.class, ExternalAccessPerms.class));
-                                               desc.setPermissions(permsList);
+                                               ecPerms = mapper.readValue(perms.toString(), TypeFactory.defaultInstance()
+                                                               .constructCollectionType(List.class, ExternalAccessPerms.class));
                                        }
-                                       userRoleDetail = new ExternalAccessUserRoleDetail(
-                                                       role.getString(EcompExternalAuthUtils.EXT_ROLE_FIELD_NAME), desc);
+                                       ExternalAccessRole ecRole = new ExternalAccessRole(
+                                                       role.getString(EcompExternalAuthUtils.EXT_ROLE_FIELD_NAME), ecPerms, ecDesc);
+                                       userRoleDetail = new ExternalAccessUserRoleDetail(ecRole);
                                        userRoleDetailList.add(userRoleDetail);
                                }
                        }
@@ -216,47 +218,43 @@ public class UserApiServiceImpl implements UserApiService {
                        App app) {
                Set userApps = new TreeSet();
                for (ExternalAccessUserRoleDetail userRoleDetail : userRoleDetailList) {
-                       ExternalRoleDescription roleDesc = userRoleDetail.getDescription();
+                       ExternalAccessRole ecRole = userRoleDetail.getRole();
+                       ExternalAccessRoleDescription roleDesc = ecRole.getDescription();
                        UserApp userApp = new UserApp();
                        Role role = new Role();
                        Set roleFunctions = new TreeSet<>();
-                       if (roleDesc != null) {
-                               if (roleDesc.getName() == null) {
-                                       role.setActive(true);
-                                       role.setName(userRoleDetail.getName());
-                               } else {
-                                       role.setActive(Boolean.valueOf(roleDesc.getActive()));
-                                       role.setId(Long.valueOf(roleDesc.getAppRoleId()));
-                                       role.setName(roleDesc.getName());
-                                       if (!roleDesc.getPriority().equals(EcompExternalAuthUtils.EXT_NULL_VALUE)) {
-                                               role.setPriority(Integer.valueOf(roleDesc.getPriority()));
-                                       }
+                       if (roleDesc.getName() == null) {
+                               role.setActive(true);
+                               role.setName(ecRole.getName());
+                       } else {
+                               role.setActive(Boolean.valueOf(roleDesc.getActive()));
+                               role.setId(Long.valueOf(roleDesc.getAppRoleId()));
+                               role.setName(roleDesc.getName());
+                               if (!roleDesc.getPriority().equals(EcompExternalAuthUtils.EXT_NULL_VALUE)) {
+                                       role.setPriority(Integer.valueOf(roleDesc.getPriority()));
                                }
-                               if (roleDesc.getPermissions() != null) {
-                                       for (ExternalAccessPerms extPerm : roleDesc.getPermissions()) {
-                                               RoleFunction roleFunction = new RoleFunction();
-                                               roleFunction.setCode(extPerm.getInstance());
-                                               roleFunction.setAction(extPerm.getAction());
-                                               if (extPerm.getDescription() != null
-                                                               && EcompExternalAuthUtils.checkNameSpaceMatching(extPerm.getType(), namespace)) {
-                                                       roleFunction.setName(extPerm.getDescription());
-                                               } else if (extPerm.getDescription() == null
-                                                               && EcompExternalAuthUtils.checkNameSpaceMatching(extPerm.getType(), namespace)) {
-                                                       roleFunction.setName(extPerm.getType().substring(namespace.length() + 1) + "|"
-                                                                       + extPerm.getInstance() + "|" + extPerm.getAction());
-                                               } else if (extPerm.getDescription() == null
-                                                               && !EcompExternalAuthUtils.checkNameSpaceMatching(extPerm.getType(), namespace)) {
-                                                       roleFunction.setName(
-                                                                       extPerm.getType() + "|" + extPerm.getInstance() + "|" + extPerm.getAction());
-                                               }
-                                               if (EcompExternalAuthUtils.checkNameSpaceMatching(extPerm.getType(), namespace)) {
-                                                       roleFunction.setType(extPerm.getType().substring(namespace.length() + 1));
-                                               } else {
-                                                       roleFunction.setType(extPerm.getType());
-                                               }
-                                               roleFunctions.add(roleFunction);
-                                       }
+                       }
+                       for (ExternalAccessPerms extPerm : ecRole.getPerms()) {
+                               RoleFunction roleFunction = new RoleFunction();
+                               roleFunction.setCode(extPerm.getInstance());
+                               roleFunction.setAction(extPerm.getAction());
+                               if (extPerm.getDescription() != null
+                                               && EcompExternalAuthUtils.checkNameSpaceMatching(extPerm.getType(), namespace)) {
+                                       roleFunction.setName(extPerm.getDescription());
+                               } else if (extPerm.getDescription() == null
+                                               && EcompExternalAuthUtils.checkNameSpaceMatching(extPerm.getType(), namespace)) {
+                                       roleFunction.setName(extPerm.getType().substring(namespace.length() + 1) + "|"
+                                                       + extPerm.getInstance() + "|" + extPerm.getAction());
+                               } else if (extPerm.getDescription() == null
+                                               && !EcompExternalAuthUtils.checkNameSpaceMatching(extPerm.getType(), namespace)) {
+                                       roleFunction.setName(extPerm.getType() + "|" + extPerm.getInstance() + "|" + extPerm.getAction());
+                               }
+                               if (EcompExternalAuthUtils.checkNameSpaceMatching(extPerm.getType(), namespace)) {
+                                       roleFunction.setType(extPerm.getType().substring(namespace.length() + 1));
+                               } else {
+                                       roleFunction.setType(extPerm.getType());
                                }
+                               roleFunctions.add(roleFunction);
                        }
                        role.setRoleFunctions(roleFunctions);
                        userApp.setApp(app);
@@ -377,9 +375,9 @@ public class UserApiServiceImpl implements UserApiService {
                HttpEntity<String> entity = new HttpEntity<>(credentials.toString(), headers);
                logger.debug(EELFLoggerDelegate.debugLogger, "checkUserExists: Connecting to external auth system for user {}",
                                username);
-               ResponseEntity<String> getResponse = template.exchange(EcompExternalAuthProperties
-                               .getProperty(EcompExternalAuthProperties.EXTERNAL_AUTH_URL)
-                               + EXTERNAL_AUTH_POST_CREDENTIALS_ENDPOINT, HttpMethod.POST, entity, String.class);
+               ResponseEntity<String> getResponse = template
+                               .exchange(EcompExternalAuthProperties.getProperty(EcompExternalAuthProperties.EXTERNAL_AUTH_URL)
+                                               + EXTERNAL_AUTH_POST_CREDENTIALS_ENDPOINT, HttpMethod.POST, entity, String.class);
                if (getResponse.getStatusCode().value() == 200) {
                        logger.debug(EELFLoggerDelegate.debugLogger,
                                        "checkUserExists: Finished POST from external auth system to validate credentials and status: {}",
@@ -390,8 +388,8 @@ public class UserApiServiceImpl implements UserApiService {
 
        private String changeIfUserDomainNotAppended(String username) {
                if (!EcompExternalAuthUtils.validate(username)) {
-                       username = username + EcompExternalAuthProperties
-                                       .getProperty(EcompExternalAuthProperties.EXTERNAL_AUTH_USER_DOMAIN);
+                       username = username
+                                       + EcompExternalAuthProperties.getProperty(EcompExternalAuthProperties.EXTERNAL_AUTH_USER_DOMAIN);
                }
                return username;
        }
@@ -39,48 +39,29 @@ package org.onap.portalsdk.external.authorization.domain;
 
 import static org.junit.Assert.assertEquals;
 
-import java.util.ArrayList;
-import java.util.List;
-
 import org.junit.Test;
 
-public class ExternalRoleDescriptionTest {
+public class ExternalAccessRoleDescriptionTest {
 
-       public ExternalRoleDescription mockExternalRoleDescriptionTest() {
-               List<ExternalAccessPerms> mockPerms = new ArrayList<>();
-               ExternalAccessPerms mockExtPermsTest = new ExternalAccessPerms();
-               mockExtPermsTest.setAction("*");
-               mockExtPermsTest.setDescription("test_name");
-               mockExtPermsTest.setType("test_type");
-               mockExtPermsTest.setInstance("test_instance");
-               mockPerms.add(mockExtPermsTest);
-               ExternalRoleDescription mockExtRoleDesc =  new ExternalRoleDescription();
+       public ExternalAccessRoleDescription mockExternalRoleDescriptionTest() {
+               ExternalAccessRoleDescription mockExtRoleDesc =  new ExternalAccessRoleDescription();
                mockExtRoleDesc.setActive("true");
                mockExtRoleDesc.setAppRoleId("1");
                mockExtRoleDesc.setAppId("1");
                mockExtRoleDesc.setId("1");
                mockExtRoleDesc.setName("test");
-               mockExtRoleDesc.setPermissions(mockPerms);
                mockExtRoleDesc.setPriority("1");
                return mockExtRoleDesc;
        }
 
        @Test
        public void externalRoleDescriptionTest() {
-               List<ExternalAccessPerms> perms = new ArrayList<>();
-               ExternalAccessPerms extPermsTest = new ExternalAccessPerms();
-               extPermsTest.setAction("*");
-               extPermsTest.setDescription("test_name");
-               extPermsTest.setType("test_type");
-               extPermsTest.setInstance("test_instance");
-               perms.add(extPermsTest);
-               ExternalRoleDescription extRoleDesc =  new ExternalRoleDescription();
+               ExternalAccessRoleDescription extRoleDesc =  new ExternalAccessRoleDescription();
                extRoleDesc.setActive("true");
                extRoleDesc.setAppRoleId("1");
                extRoleDesc.setAppId("1");
                extRoleDesc.setId("1");
                extRoleDesc.setName("test");
-               extRoleDesc.setPermissions(perms);
                extRoleDesc.setPriority("1");
                assertEquals(extRoleDesc.getActive(), mockExternalRoleDescriptionTest().getActive());
                assertEquals(extRoleDesc.getAppId(), mockExternalRoleDescriptionTest().getAppId());
@@ -88,7 +69,6 @@ public class ExternalRoleDescriptionTest {
                assertEquals(extRoleDesc.getId(), mockExternalRoleDescriptionTest().getId());
                assertEquals(extRoleDesc.getName(), mockExternalRoleDescriptionTest().getName());
                assertEquals(extRoleDesc.getPriority(), mockExternalRoleDescriptionTest().getPriority());
-               assertEquals(extRoleDesc.getPermissions(), mockExternalRoleDescriptionTest().getPermissions());
                assertEquals(true, extRoleDesc.equals(mockExternalRoleDescriptionTest()));
        }
 }
diff --git a/ecomp-sdk/epsdk-aaf/src/test/java/org/onap/portalsdk/external/authorization/domain/ExternalAccessRolePermsTest.java b/ecomp-sdk/epsdk-aaf/src/test/java/org/onap/portalsdk/external/authorization/domain/ExternalAccessRolePermsTest.java
deleted file mode 100644 (file)
index acb14c6..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-/*-
- * ============LICENSE_START==========================================
- * ONAP Portal SDK
- * ===================================================================
- * Copyright (C) 2018 AT&T Intellectual Property. All rights reserved.
- * ===================================================================
- *
- * Unless otherwise specified, all software contained herein is licensed
- * under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *             http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * Unless otherwise specified, all documentation contained herein is licensed
- * under the Creative Commons License, Attribution 4.0 Intl. (the "License");
- * you may not use this documentation except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *             https://creativecommons.org/licenses/by/4.0/
- *
- * Unless required by applicable law or agreed to in writing, documentation
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * ============LICENSE_END============================================
- *
- * 
- */
-package org.onap.portalsdk.external.authorization.domain;
-
-import static org.junit.Assert.assertEquals;
-
-import org.junit.Test;
-
-public class ExternalAccessRolePermsTest {
-
-       public ExternalAccessRolePerms mockExternalAccessRolePermsTest() {
-               ExternalAccessPerms mockPerm = new ExternalAccessPerms();
-               mockPerm.setAction("*");
-               mockPerm.setDescription("test_name");
-               mockPerm.setType("test_type");
-               mockPerm.setInstance("test_instance");
-               ExternalAccessRolePerms mockExtRolePermsTest = new ExternalAccessRolePerms(mockPerm, "test_role");
-               return mockExtRolePermsTest;
-       }
-
-       @Test
-       public void externalAccessRolePermsTest() {
-               ExternalAccessPerms perm = new ExternalAccessPerms();
-               perm.setAction("*");
-               perm.setDescription("test_name");
-               perm.setType("test_type");
-               perm.setInstance("test_instance");
-               ExternalAccessRolePerms mockExtRolePermsTest = new ExternalAccessRolePerms(perm, "test_role");
-               assertEquals(mockExtRolePermsTest.getRole(), mockExternalAccessRolePermsTest().getRole());
-               assertEquals(mockExtRolePermsTest.getPerm(), mockExternalAccessRolePermsTest().getPerm());
-       }
-
-}
index aa498aa..3fc5ae8 100644 (file)
@@ -39,21 +39,36 @@ package org.onap.portalsdk.external.authorization.domain;
 
 import static org.junit.Assert.assertEquals;
 
+import java.util.ArrayList;
+import java.util.List;
+
 import org.junit.Test;
 
 public class ExternalAccessRoleTest {
 
        public ExternalAccessRole mockExternalAccessRoleTest() {
                ExternalAccessRole mockRole = new ExternalAccessRole();
+               ExternalAccessRoleDescription roleDesc =  new ExternalAccessRoleDescription();
+               ExternalAccessPerms ecPerm =  new ExternalAccessPerms();
+               List<ExternalAccessPerms> ecPerms = new ArrayList<>();
+               ecPerm.setAction("test_action");
+               ecPerm.setType("test_type");
+               ecPerm.setInstance("test_instance");
+               ecPerm.setDescription("test_description");
+               roleDesc.setActive("true");
+               roleDesc.setAppId("1");
                mockRole.setName("test_role");
-               mockRole.setDescription("test_role_description");
+               mockRole.setPerms(ecPerms);
+               mockRole.setDescription(roleDesc);
                return mockRole;
        }
 
        @Test
        public void externalAccessRolePermsTest() {
-               ExternalAccessRole role = new ExternalAccessRole("test_role", "test_role_description");
+               ExternalAccessRole mockRole = mockExternalAccessRoleTest();
+               ExternalAccessRole role = new ExternalAccessRole(mockRole.getName(), mockRole.getPerms(), mockRole.getDescription());
                assertEquals(role.getName(), mockExternalAccessRoleTest().getName());
+               assertEquals(role.getPerms(), mockExternalAccessRoleTest().getPerms());
                assertEquals(role.getDescription(), mockExternalAccessRoleTest().getDescription());
        }
 }
index 5e75054..9d20e02 100644 (file)
@@ -47,6 +47,7 @@ import org.junit.Test;
 public class ExternalAccessUserRoleDetailTest {
 
        public ExternalAccessUserRoleDetail mockExternalAccessUserRoleDetailTest() {
+               ExternalAccessRole role = new ExternalAccessRole();
                List<ExternalAccessPerms> mockPerms = new ArrayList<>();
                ExternalAccessPerms mockExtPermsTest = new ExternalAccessPerms();
                mockExtPermsTest.setAction("*");
@@ -54,46 +55,27 @@ public class ExternalAccessUserRoleDetailTest {
                mockExtPermsTest.setType("test_type");
                mockExtPermsTest.setInstance("test_instance");
                mockPerms.add(mockExtPermsTest);
-               ExternalRoleDescription mockRoleDesc = new ExternalRoleDescription();
+               ExternalAccessRoleDescription mockRoleDesc = new ExternalAccessRoleDescription();
                mockRoleDesc.setActive("true");
                mockRoleDesc.setAppId("1");
                mockRoleDesc.setAppRoleId("1");
                mockRoleDesc.setId("1");
                mockRoleDesc.setPriority("1");
                mockRoleDesc.setName("test");
-               mockRoleDesc.setPermissions(mockPerms);
-               ExternalAccessUserRoleDetail mockExtUserRoleDetailTest = new ExternalAccessUserRoleDetail();
-               mockExtUserRoleDetailTest.setName("test");
-               mockExtUserRoleDetailTest.setDescription(mockRoleDesc);
+               mockRoleDesc.setName("com.test.app.rolename");
+               role.setPerms(mockPerms);
+               role.setDescription(mockRoleDesc);
+               ExternalAccessUserRoleDetail mockExtUserRoleDetailTest = new ExternalAccessUserRoleDetail(role);
                return mockExtUserRoleDetailTest;
        }
 
        @Test
        public void externalAccessPermsTest() {
-               List<ExternalAccessPerms> perms = new ArrayList<>();
-               ExternalAccessPerms extPermsTest = new ExternalAccessPerms();
-               extPermsTest.setAction("*");
-               extPermsTest.setDescription("test_name");
-               extPermsTest.setType("test_type");
-               extPermsTest.setInstance("test_instance");
-               perms.add(extPermsTest);
-               ExternalRoleDescription roleDesc = new ExternalRoleDescription();
-               roleDesc.setActive("true");
-               roleDesc.setAppId("1");
-               roleDesc.setAppRoleId("1");
-               roleDesc.setId("1");
-               roleDesc.setPriority("1");
-               roleDesc.setName("test");
-               roleDesc.setPermissions(perms);
-               ExternalAccessUserRoleDetail extUserRoleDetailTest = new ExternalAccessUserRoleDetail();
-               extUserRoleDetailTest.setName("test");
-               extUserRoleDetailTest.setDescription(roleDesc);
-               ExternalAccessUserRoleDetail extUserRoleDetailTest2 = new ExternalAccessUserRoleDetail("test", roleDesc);
-               assertEquals(extUserRoleDetailTest.getName(), mockExternalAccessUserRoleDetailTest().getName());
-               assertEquals(extUserRoleDetailTest.getDescription(), mockExternalAccessUserRoleDetailTest().getDescription());
-               assertEquals(extUserRoleDetailTest2.getName(), mockExternalAccessUserRoleDetailTest().getName());
-               assertEquals(extUserRoleDetailTest2.getDescription(), mockExternalAccessUserRoleDetailTest().getDescription());
-               assertEquals(true, new ExternalAccessUserRoleDetail("test",roleDesc)
-                               .equals(new ExternalAccessUserRoleDetail("test",roleDesc)));
+               ExternalAccessUserRoleDetail extUserRoleDetailTest2 = mockExternalAccessUserRoleDetailTest();
+               ExternalAccessRole role =  extUserRoleDetailTest2.getRole();
+               assertEquals(role.getName(), mockExternalAccessUserRoleDetailTest().getRole().getName());
+               assertEquals(role.getPerms(), mockExternalAccessUserRoleDetailTest().getRole().getPerms());
+               assertEquals(role.getDescription(), mockExternalAccessUserRoleDetailTest().getRole().getDescription());
+
        }
 }
index 4eebb02..aff5b1f 100644 (file)
@@ -2,7 +2,7 @@
  * ============LICENSE_START==========================================
  * ONAP Portal SDK
  * ===================================================================
- * Copyright © 2017 AT&T Intellectual Property. All rights reserved.
+ * Copyright © 2017-2018 AT&T Intellectual Property. All rights reserved.
  * ===================================================================
  *
  * Unless otherwise specified, all software contained herein is licensed
@@ -91,33 +91,26 @@ public class UserApp implements java.io.Serializable, Comparable {
 
                return (this.getUserId().equals(castOther.getUserId()))
                                && (this.getApp().getId().equals(castOther.getApp().getId()))
-                               && (this.getRole().getId().equals(castOther.getRole().getId()))
+                               && (this.getRole().getId() != null ? this.getRole().getId().equals(castOther.getRole().getId()) : this.getRole().getName().equals(castOther.getRole().getName()))
                                && ((this.priority == null && castOther.getPriority() == null)
                                                || this.getPriority().equals(castOther.getPriority()));
        }
 
        @Override
        public int hashCode() {
-               int result = 17;
-               result = 37 * result + (int) (this.getUserId() == null ? 0 : this.getUserId().intValue());
-               result = 37 * result + (int) (this.getApp().getId() == null ? 0 : this.getApp().getId().intValue());
-               result = 37 * result + (int) (this.getRole().getId() == null ? 0 : this.getRole().getId().intValue());
+               Long result = 17l;
+               result = 37 * result + (int) (this.getUserId() == null ? 0 : this.getUserId().hashCode());
+               result = 37 * result + (int) (this.getApp().getId() == null ? 0 : this.getApp().getId().hashCode());
+               result = 37 * result + (int) (this.getRole().getId() == null ? (this.getRole().getName() == null ? 0 : this.getRole().getName().hashCode() ) : this.getRole().getId().hashCode());
                result = 37 * result + (int) (this.priority == null ? 0 : this.priority);
-               return result;
+               return Long.hashCode(result);
        }
 
        @Override
        public int compareTo(Object other) {
                UserApp castOther = (UserApp) other;
-               Long c1 = (this.getUserId() == null ? 0 : this.getUserId())
-                               + (this.getApp() == null || this.getApp().getId() == null ? 0 : this.getApp().getId())
-                               + (this.getRole() == null || this.getRole().getId() == null ? 0 : this.getRole().getId())
-                               + (this.priority == null ? 0 : this.priority);
-               Long c2 = (castOther.getUserId() == null ? 0 : castOther.getUserId())
-                               + (castOther.getApp() == null || castOther.getApp().getId() == null ? 0 : castOther.getApp().getId())
-                               + (castOther.getRole() == null || castOther.getRole().getId() == null ? 0 : castOther.getRole().getId())
-                               + (castOther.priority == null ? 0 : castOther.priority);
-               return c1.compareTo(c2);
+               int c1 = this.hashCode() - castOther.hashCode();
+               return c1;
        }
 
 }