public void updateRole(String roleName){
final String logp = CN + " :: updateRole - ";
LOGGER.debug(logp + "START");
//get role manager service
RoleManager roleManager = Platform.getService(RoleManager.class);
//get Role from OIM for the given Role Name
Role role = getRole(roleName, roleManager);
try{
//Set Display Name
role.setDisplayName("Role Display Name");
//Set Description
role.setDescription("Role Description");
//Update Role Details
roleManager.modify(role);
LOGGER.info(logp + "Successfully updated role details for - " + role);
}catch(Exception e){
LOGGER.error(logp + "Exception while updating Role in OIM - " + e, e);
}
LOGGER.debug(logp + "END");
}
public Role getRole(String roleName, RoleManager roleManager){
final String logp = CN + " :: getRole - ";
LOGGER.debug(logp + "START");
if (null == roleName || roleName.trim().length() == 0) {
return null;
}
roleName = roleName.trim();
Role role = null;
try {
SearchCriteria criteria = new SearchCriteria(RoleAttributeName.NAME.getId(), roleName, SearchCriteria.Operator.EQUAL);
List<Role> roleList = roleManager.search(criteria, null, null);
if(null == roleList || roleList.size() == 0){
LOGGER.error(logp + "Role not found in OIM for role name - " + roleName);
}else if(roleList.size() > 1){
LOGGER.error(logp + "More than 1 role found in OIM for role name - " + roleName);
} else {
role = roleList.get(0);
LOGGER.info(logp + "Successfully obtained role for role name " + roleName);
}
}catch(Exception e){
LOGGER.error(logp + "Exception while fetching role " + roleName + " - " + e, e);
}
LOGGER.debug(logp + "END");
return role;
}
Happy Learning!!!
final String logp = CN + " :: updateRole - ";
LOGGER.debug(logp + "START");
//get role manager service
RoleManager roleManager = Platform.getService(RoleManager.class);
//get Role from OIM for the given Role Name
Role role = getRole(roleName, roleManager);
try{
//Set Display Name
role.setDisplayName("Role Display Name");
//Set Description
role.setDescription("Role Description");
//Update Role Details
roleManager.modify(role);
LOGGER.info(logp + "Successfully updated role details for - " + role);
}catch(Exception e){
LOGGER.error(logp + "Exception while updating Role in OIM - " + e, e);
}
LOGGER.debug(logp + "END");
}
public Role getRole(String roleName, RoleManager roleManager){
final String logp = CN + " :: getRole - ";
LOGGER.debug(logp + "START");
if (null == roleName || roleName.trim().length() == 0) {
return null;
}
roleName = roleName.trim();
Role role = null;
try {
SearchCriteria criteria = new SearchCriteria(RoleAttributeName.NAME.getId(), roleName, SearchCriteria.Operator.EQUAL);
List<Role> roleList = roleManager.search(criteria, null, null);
if(null == roleList || roleList.size() == 0){
LOGGER.error(logp + "Role not found in OIM for role name - " + roleName);
}else if(roleList.size() > 1){
LOGGER.error(logp + "More than 1 role found in OIM for role name - " + roleName);
} else {
role = roleList.get(0);
LOGGER.info(logp + "Successfully obtained role for role name " + roleName);
}
}catch(Exception e){
LOGGER.error(logp + "Exception while fetching role " + roleName + " - " + e, e);
}
LOGGER.debug(logp + "END");
return role;
}
Happy Learning!!!
No comments:
Post a Comment