59 lines
2.0 KiB
Java
59 lines
2.0 KiB
Java
package org.gcube.portal.removeaccount.thread;
|
|
|
|
import com.liferay.portal.kernel.log.Log;
|
|
import com.liferay.portal.kernel.log.LogFactoryUtil;
|
|
|
|
/**
|
|
*
|
|
* @author Massimiliano Assante ISTI-CNR
|
|
*
|
|
*/
|
|
public class RemoveUserFromJCR {
|
|
private static Log _log = LogFactoryUtil.getLog(RemoveUserFromJCR.class);
|
|
|
|
// private String username2Delete;
|
|
// private GroupManager gm;
|
|
// private UserManager uMan;
|
|
//
|
|
// public RemoveUserFromJCR(String username2Delete, GroupManager gm, UserManager uMan) {
|
|
// this.username2Delete = username2Delete;
|
|
// this.gm = gm;
|
|
// this.uMan = uMan;
|
|
// }
|
|
//
|
|
// public boolean remove() {
|
|
// try {
|
|
// //get the super user
|
|
// String infraContext = "/"+PortalContext.getConfiguration().getInfrastructureName();
|
|
// long groupId = gm.getGroupIdFromInfrastructureScope(infraContext);
|
|
// RoleManager rm = new LiferayRoleManager();
|
|
// long roleId = rm.getRoleId(Constants.AUTORISED_INFRA_ROLE, groupId);
|
|
// List<GCubeUser> users = uMan.listUsersByGroupAndRole(groupId, roleId);
|
|
// if (users.isEmpty()) {
|
|
// _log.error("Cannot delete the user: there is no user having role " + Constants.AUTORISED_INFRA_ROLE + " on context: " + infraContext);
|
|
// return false;
|
|
// }
|
|
// else {
|
|
// GCubeUser theAdmin = users.get(0);
|
|
// String adminUsername = theAdmin.getUsername();
|
|
// String theAdminToken = PortalContext.getConfiguration().getCurrentUserToken(infraContext, adminUsername);
|
|
// List<GCubeRole> theAdminRoles = rm.listRolesByUserAndGroup(theAdmin.getUserId(), groupId);
|
|
// List<String> rolesString = new ArrayList<String>();
|
|
// for (GCubeRole gCubeRole : theAdminRoles) {
|
|
// rolesString.add(gCubeRole.getRoleName());
|
|
// }
|
|
// authorizationService().setTokenRoles(theAdminToken, rolesString);
|
|
// SecurityTokenProvider.instance.set(theAdminToken);
|
|
// UserManagerClient userClient = AbstractPlugin.users().build();
|
|
// userClient.removeUser(username2Delete);
|
|
// return true;
|
|
// }
|
|
// } catch (Exception e) {
|
|
// _log.error("Could not delete " + username2Delete + " from JCR ", e);
|
|
// return false;
|
|
// }
|
|
// }
|
|
|
|
|
|
}
|