Onboarding Page Account Admin Change
[portal.git] / ecomp-portal-BE-common / src / main / java / org / onap / portalapp / portal / service / ExternalAccessRolesService.java
index bcf806b..53a7a5f 100644 (file)
  *
  * ============LICENSE_END============================================
  *
- * ECOMP is a trademark and service mark of AT&T Intellectual Property.
+ * 
  */
 package org.onap.portalapp.portal.service;
 
 import java.io.IOException;
 import java.util.List;
 import java.util.Map;
+import java.util.Set;
 
 import org.hibernate.Session;
 import org.json.JSONArray;
@@ -49,14 +50,18 @@ import org.onap.portalapp.portal.domain.EPApp;
 import org.onap.portalapp.portal.domain.EPRole;
 import org.onap.portalapp.portal.domain.EPUser;
 import org.onap.portalapp.portal.domain.ExternalRoleDetails;
+import org.onap.portalapp.portal.ecomp.model.UploadRoleFunctionExtSystem;
 import org.onap.portalapp.portal.exceptions.InvalidUserException;
+import org.onap.portalapp.portal.exceptions.RoleFunctionException;
 import org.onap.portalapp.portal.transport.CentralRole;
+import org.onap.portalapp.portal.transport.CentralRoleFunction;
 import org.onap.portalapp.portal.transport.CentralUser;
 import org.onap.portalapp.portal.transport.CentralV2Role;
 import org.onap.portalapp.portal.transport.ExternalRequestFieldsValidator;
 import org.onap.portalsdk.core.domain.Role;
-import org.onap.portalsdk.core.domain.RoleFunction;
+import org.onap.portalsdk.core.restful.domain.EcompRole;
 import org.onap.portalsdk.core.restful.domain.EcompUser;
+import org.springframework.http.HttpEntity;
 import org.springframework.http.ResponseEntity;
 import org.springframework.web.client.HttpClientErrorException;
 
@@ -132,11 +137,11 @@ public interface ExternalAccessRolesService {
        CentralV2Role getRoleInfo(Long roleId, String uebkey) throws Exception;
        
        /**
-        *  It returns the CentralRoleFunction object 
+        *  It returns the CentralV2RoleFunction object 
         *   
         * @param functionCode
         * @param uebkey 
-        * @return CentralRoleFunction
+        * @return CentralV2RoleFunction
         * @throws Exception 
         */
        public CentralV2RoleFunction getRoleFunction(String functionCode, String uebkey) throws Exception;
@@ -150,7 +155,7 @@ public interface ExternalAccessRolesService {
         * @throws Exception 
         */
        public boolean saveCentralRoleFunction(CentralV2RoleFunction domainCentralRoleFunction, EPApp requestedApp) throws Exception;
-
+       
        /**
         * It deletes role function in the DB
         * 
@@ -239,7 +244,7 @@ public interface ExternalAccessRolesService {
         * @param upload
         * @throws Exception
         */
-       public void bulkUploadPartnerFunctions(String uebkey, List<RoleFunction> upload) throws Exception;
+       public Integer bulkUploadPartnerFunctions(String uebkey) throws Exception;
 
        /** 
         * It uploads partner application role functions into external auth system
@@ -259,7 +264,7 @@ public interface ExternalAccessRolesService {
        Integer bulkUploadRolesFunctions(String uebkey) throws Exception;
        
        /**
-        *  It syncs the roles and rolefunctions to the ecomp DB from AAF
+        *  It syncs the roles and rolefunctions to the ONAP DB from AAF
         * @param app
         * @throws Exception
         */
@@ -281,7 +286,7 @@ public interface ExternalAccessRolesService {
         * @param roleList
         * @throws Exception
         */
-       void bulkUploadPartnerRoleFunctions(String uebkey, List<Role> roleList) throws Exception;
+       Integer bulkUploadPartnerRoleFunctions(String uebkey) throws Exception;
 
        /**
         * it deletes all dependency role records 
@@ -335,11 +340,11 @@ public interface ExternalAccessRolesService {
        public  List<EPRole> getGlobalRolesOfPortal();
        
        /**
-        * It converts list of CentralRoleFunction objects to RoleFunction objects
+        * It converts list of CentralV2RoleFunction objects to older version of CentralRoleFunction objects
         * @param answer contains list of CentralRoleFunction objects
-        * @return List of RoleFunction objects
+        * @return List of CentralRoleFunction objects
         */
-       public List<RoleFunction> convertCentralRoleFunctionToRoleFunctionObject(List<CentralV2RoleFunction> answer);
+       public List<CentralRoleFunction> convertCentralRoleFunctionToRoleFunctionObject(List<CentralV2RoleFunction> answer);
        
        /**
         * 
@@ -385,7 +390,7 @@ public interface ExternalAccessRolesService {
         * @param app
         * @return List of EPRole objects
         */
-       Map<String, EPRole> getCurrentRolesInDB(EPApp app);
+       Map<String, EPRole> getAppRoleNamesWithUnderscoreMap(EPApp app);
     
        
        /**
@@ -410,13 +415,6 @@ public interface ExternalAccessRolesService {
         */
        public JSONArray getAppRolesJSONFromExtAuthSystem(EPApp app) throws Exception;
        
-       /**
-        * It encodes the function code  based on Hex encoding
-        * @param funCode
-        * 
-        */
-       public String encodeFunctionCode(String funCode);
-       
        /**
         * 
         * It returns list of ExternalRoleDetails which is converted from JSON array of roles
@@ -451,5 +449,66 @@ public interface ExternalAccessRolesService {
         * @return String action
         */
        String getFunctionCodeAction(String roleFuncItem);
+       
+       /**
+        * 
+        * Adds function to role in external auth system
+        * 
+        * @param data
+        * @param app
+        */
+       void bulkUploadRoleFunc(UploadRoleFunctionExtSystem data, EPApp app) throws Exception;
+
+       /**
+        * 
+        * Syncs user roles from external auth system to ecomp portal 
+        * 
+        * @param orgUserId
+        * @throws Exception 
+        */
+       public void syncApplicationUserRolesFromExtAuthSystem(String orgUserId) throws Exception;
+
+       /**
+        * 
+        * Gets all user roles from external auth system
+        * 
+        * @param orgUserId
+        * @param getUserRolesEntity
+        * @return user roles from external auth system 
+        */
+       ResponseEntity<String> getUserRolesFromExtAuthSystem(String orgUserId, HttpEntity<String> getUserRolesEntity) throws Exception;
+
+       /**
+        * 
+        * Updates app role description in external auth system
+        * 
+        * @param uebkey
+        * @return number of updates
+        */
+       public Integer updateAppRoleDescription(String uebkey);
+
+       /**
+        * Creates centralRoleObject
+        * @param app
+        * @param roleInfo
+        * @param roleList
+        * @param params
+        * @return returns List<CentralV2Role>
+        * @throws RoleFunctionException
+        */
+       public List<CentralV2Role> createCentralRoleObject(List<EPApp> app, List<EPRole> roleInfo,
+                       List<CentralV2Role> roleList, Map<String, Long> params) throws RoleFunctionException;
+       
+       /**
+        * 
+        * @param uebkey
+        * @param loginId
+        * @param CurrentUserRoles
+        * @return returns list of user roles
+        * @throws Exception
+        */
+       public List<EcompRole> missingUserApplicationRoles(String uebkey, String loginId, Set<EcompRole> CurrentUserRoles) throws Exception;
+
+       List<EPRole> getPortalAppRoleInfo(Long roleId);
 
 }