use of org.ovirt.engine.core.common.businessentities.Role in project ovirt-engine by oVirt.
the class EntityDaoImplTest method testGetEntityNameByIdAndTypeForRole.
@Test
public void testGetEntityNameByIdAndTypeForRole() {
Role role = roleDao.get(ROLE_ID);
assertNotNull(role);
String name = role.getName();
assertEquals(name, underTest.getEntityNameByIdAndType(ROLE_ID, VdcObjectType.Role));
}
use of org.ovirt.engine.core.common.businessentities.Role in project ovirt-engine by oVirt.
the class RoleDaoTest method testGetRoleByName.
/**
* Ensures that retrieving a role by name works as expected.
*/
@Test
public void testGetRoleByName() {
Role result = dao.getByName(existingEntity.getName());
assertNotNull(result);
assertEquals(existingEntity, result);
}
use of org.ovirt.engine.core.common.businessentities.Role in project ovirt-engine by oVirt.
the class PermissionListModel method onAdd.
private void onAdd() {
AdElementListModel model = (AdElementListModel) getWindow();
if (model.getProgress() != null) {
return;
}
if (model.getSearchType() != AdSearchType.EVERYONE && model.getSelectedItems() == null) {
cancel();
return;
}
ArrayList<DbUser> items = new ArrayList<>();
if (model.getSearchType() == AdSearchType.EVERYONE) {
DbUser tempVar = new DbUser();
tempVar.setId(ApplicationGuids.everyone.asGuid());
items.add(tempVar);
} else {
for (Object item : model.getItems()) {
EntityModel entityModel = (EntityModel) item;
if (entityModel.getIsSelected()) {
items.add((DbUser) entityModel.getEntity());
}
}
}
Role role = model.getRole().getSelectedItem();
// adGroup/user
ArrayList<ActionParametersBase> list = new ArrayList<>();
for (DbUser user : items) {
Permission perm = new Permission(user.getId(), role.getId(), getEntityGuid(), getObjectType());
if (user.isGroup()) {
DbGroup group = new DbGroup();
group.setId(user.getId());
group.setExternalId(user.getExternalId());
group.setName(user.getFirstName());
group.setDomain(user.getDomain());
group.setNamespace(user.getNamespace());
PermissionsOperationsParameters tempVar3 = new PermissionsOperationsParameters();
tempVar3.setPermission(perm);
tempVar3.setGroup(group);
list.add(tempVar3);
} else {
PermissionsOperationsParameters tempVar4 = new PermissionsOperationsParameters();
tempVar4.setPermission(perm);
tempVar4.setUser(user);
list.add(tempVar4);
}
}
model.startProgress();
Frontend.getInstance().runMultipleAction(ActionType.AddPermission, list, result -> {
AdElementListModel localModel = (AdElementListModel) result.getState();
localModel.stopProgress();
cancel();
}, model);
}
use of org.ovirt.engine.core.common.businessentities.Role in project ovirt-engine by oVirt.
the class SystemPermissionListModel method onAttach.
private void onAttach() {
AdElementListModel model = (AdElementListModel) getWindow();
if (model.getProgress() != null) {
return;
}
if (model.getSelectedItems() == null) {
cancel();
return;
}
ArrayList<DbUser> items = new ArrayList<>();
for (Object item : model.getItems()) {
EntityModel entityModel = (EntityModel) item;
if (entityModel.getIsSelected()) {
items.add((DbUser) entityModel.getEntity());
}
}
Role role = model.getRole().getSelectedItem();
ArrayList<ActionParametersBase> list = new ArrayList<>();
for (DbUser user : items) {
Permission perm = new Permission(user.getId(), role.getId(), null, null);
if (user.isGroup()) {
DbGroup group = new DbGroup();
group.setId(user.getId());
group.setName(user.getFirstName());
group.setDomain(user.getDomain());
group.setExternalId(user.getExternalId());
group.setNamespace(user.getNamespace());
PermissionsOperationsParameters tempVar2 = new PermissionsOperationsParameters();
tempVar2.setPermission(perm);
tempVar2.setGroup(group);
list.add(tempVar2);
} else {
PermissionsOperationsParameters tempVar3 = new PermissionsOperationsParameters();
tempVar3.setPermission(perm);
tempVar3.setUser(user);
list.add(tempVar3);
}
}
model.startProgress();
Frontend.getInstance().runMultipleAction(ActionType.AddSystemPermission, list, result -> {
AdElementListModel localModel = (AdElementListModel) result.getState();
localModel.stopProgress();
cancel();
}, model);
}
use of org.ovirt.engine.core.common.businessentities.Role in project ovirt-engine by oVirt.
the class RoleListModel method onSave.
public void onSave() {
RoleModel model = (RoleModel) getWindow();
if (model.getProgress() != null) {
return;
}
role = commandType != CommandType.Edit ? new Role() : getSelectedItem();
role.setType(model.getIsAdminRole().getEntity() ? RoleType.ADMIN : RoleType.USER);
if (!model.validate()) {
return;
}
role.setName(model.getName().getEntity());
role.setDescription(model.getDescription().getEntity());
ArrayList<ActionGroup> actions = new ArrayList<>();
HashMap<ActionGroup, ActionGroup> actionDistinctSet = new HashMap<>();
for (SelectionTreeNodeModel sm : model.getPermissionGroupModels()) {
for (SelectionTreeNodeModel smChild : sm.getChildren()) {
if (smChild.getIsSelectedNullable() == null || smChild.getIsSelectedNullable()) {
for (SelectionTreeNodeModel smGrandChild : smChild.getChildren()) {
if (smGrandChild.getIsSelectedNullable()) {
ActionGroup actionGroup = ActionGroup.valueOf(smGrandChild.getTitle());
if (actionDistinctSet.containsKey(actionGroup)) {
continue;
}
actionDistinctSet.put(actionGroup, actionGroup);
actions.add(actionGroup);
}
}
}
}
}
ActionReturnValue returnValue;
model.startProgress();
if (commandType != CommandType.Edit) {
// Add a new role.
RoleWithActionGroupsParameters tempVar = new RoleWithActionGroupsParameters();
tempVar.setRole(role);
tempVar.setActionGroups(actions);
Frontend.getInstance().runAction(ActionType.AddRoleWithActionGroups, tempVar, result -> {
RoleListModel localModel = (RoleListModel) result.getState();
localModel.postOnSaveNew(result.getReturnValue());
}, this);
} else {
detachActionGroup = new ArrayList<>(publicAttachedActions);
detachActionGroup.removeAll(actions);
attachActionGroup = actions;
attachActionGroup.removeAll(publicAttachedActions);
Frontend.getInstance().runAction(ActionType.UpdateRole, new RolesOperationsParameters(role), result -> {
RoleListModel roleListModel = (RoleListModel) result.getState();
ActionReturnValue retVal = result.getReturnValue();
if (retVal != null && retVal.getSucceeded()) {
if (roleListModel.detachActionGroup.size() > 0) {
ActionGroupsToRoleParameter tempVar2 = new ActionGroupsToRoleParameter();
tempVar2.setActionGroups(roleListModel.detachActionGroup);
tempVar2.setRoleId(roleListModel.role.getId());
Frontend.getInstance().runAction(ActionType.DetachActionGroupsFromRole, tempVar2);
}
if (roleListModel.attachActionGroup.size() > 0) {
ActionGroupsToRoleParameter tempVar3 = new ActionGroupsToRoleParameter();
tempVar3.setActionGroups(roleListModel.attachActionGroup);
tempVar3.setRoleId(roleListModel.role.getId());
Frontend.getInstance().runAction(ActionType.AttachActionGroupsToRole, tempVar3);
}
roleListModel.getWindow().stopProgress();
roleListModel.cancel();
} else {
roleListModel.getWindow().stopProgress();
}
}, this);
}
}
Aggregations