in torque/src/java/org/apache/fulcrum/security/torque/dynamic/TorqueDynamicModelManagerImpl.java [62:98]
public synchronized void revoke(Group group, Role role) throws DataBackendException, UnknownEntityException {
boolean groupExists = getGroupManager().checkExists(group);
boolean roleExists = getRoleManager().checkExists(role);
if (groupExists && roleExists) {
((DynamicGroup) group).removeRole(role);
((DynamicRole) role).removeGroup(group);
Connection con = null;
try {
con = Transaction.begin();
((TorqueAbstractSecurityEntity) role).update(con);
((TorqueAbstractSecurityEntity) group).update(con);
Transaction.commit(con);
con = null;
} catch (TorqueException e) {
throw new DataBackendException("revoke('" + group.getName() + "', '" + role.getName() + "') failed", e);
} finally {
if (con != null) {
Transaction.safeRollback(con);
}
}
return;
}
if (!groupExists) {
throw new UnknownEntityException("Unknown group '" + group.getName() + "'");
}
if (!roleExists) {
throw new UnknownEntityException("Unknown role '" + role.getName() + "'");
}
}