X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=ecomp-portal-BE-common%2Fsrc%2Fmain%2Fjava%2Forg%2Fonap%2Fportalapp%2Fportal%2Fservice%2FExternalAccessRolesServiceImpl.java;fp=ecomp-portal-BE-common%2Fsrc%2Fmain%2Fjava%2Forg%2Fonap%2Fportalapp%2Fportal%2Fservice%2FExternalAccessRolesServiceImpl.java;h=acc8351667ff3c35cadb84175d52bed4bcafde09;hb=9a58d8972ee93ea52a07b92330c3b437c2f09b8a;hp=ad06dd96bdd4a76da9da20ab7e934788640bb6db;hpb=1d0a5a4a3645271b72a685e4fe8ca33021cefee6;p=portal.git diff --git a/ecomp-portal-BE-common/src/main/java/org/onap/portalapp/portal/service/ExternalAccessRolesServiceImpl.java b/ecomp-portal-BE-common/src/main/java/org/onap/portalapp/portal/service/ExternalAccessRolesServiceImpl.java index ad06dd96..acc83516 100644 --- a/ecomp-portal-BE-common/src/main/java/org/onap/portalapp/portal/service/ExternalAccessRolesServiceImpl.java +++ b/ecomp-portal-BE-common/src/main/java/org/onap/portalapp/portal/service/ExternalAccessRolesServiceImpl.java @@ -2812,6 +2812,11 @@ public class ExternalAccessRolesServiceImpl implements ExternalAccessRolesServic EPRole updateRoleInactive = roleList.get(0); updateRoleInactive.setActive(false); dataAccessService.saveDomainObject(updateRoleInactive, null); + + /** + * Newly Added - Deleting User Role association as this role is not present in AAF and got removed from AAF directly + */ + deleteUserRoleAssociation(updateRoleInactive, app); } } } catch (Exception e) { @@ -2820,6 +2825,25 @@ public class ExternalAccessRolesServiceImpl implements ExternalAccessRolesServic } } } + + /** + * Delete User Role Association mapping in Portal DB - In case of particular role is already removed from AAF directly. + * @param epRole + */ + private void deleteUserRoleAssociation(EPRole epRole, EPApp app) { + Session localSession = sessionFactory.openSession(); + Query query = null; + try { + String sql = "DELETE FROM FN_USER_ROLE where role_id=" +epRole.getId() + " AND app_id=" +app.getId(); + logger.debug(EELFLoggerDelegate.debugLogger,"deleteUserRoleAssociation: sql :"+ sql); + query = localSession.createSQLQuery(sql); + query.executeUpdate(); + } catch (Exception e) { + logger.error(EELFLoggerDelegate.errorLogger, "deleteUserRoleAssociation: failed", e); + } finally { + localSession.close(); + } + } @Override @SuppressWarnings("unchecked")