Search in sources :

Example 11 with Group

use of org.ovirt.engine.api.model.Group in project ovirt-engine by oVirt.

the class BackendAssignedPermissionsResource method map.

/**
 * injects user/group base on permission owner type
 * @param entity the permission to map
 * @param user the permission owner
 * @return permission
 */
public Permission map(org.ovirt.engine.core.common.businessentities.Permission entity, DbUser user) {
    Permission template = new Permission();
    if (entity.getAdElementId() != null) {
        if (isUser(user)) {
            template.setUser(new User());
            template.getUser().setId(entity.getAdElementId().toString());
        } else {
            template.setGroup(new Group());
            template.getGroup().setId(entity.getAdElementId().toString());
        }
    }
    return map(entity, template);
}
Also used : Group(org.ovirt.engine.api.model.Group) DbGroup(org.ovirt.engine.core.common.businessentities.aaa.DbGroup) User(org.ovirt.engine.api.model.User) DbUser(org.ovirt.engine.core.common.businessentities.aaa.DbUser) Permission(org.ovirt.engine.api.model.Permission)

Example 12 with Group

use of org.ovirt.engine.api.model.Group in project ovirt-engine by oVirt.

the class BackendAssignedPermissionsResource method getPrincipal.

/**
 * Find the user or group that the permissions applies to.
 *
 * @param permission the incoming permission model
 * @return the user or group that the permission applies to
 */
private Object getPrincipal(Permission permission) {
    if (isUserSubCollection()) {
        DbUser dbUser = new DbUser();
        dbUser.setId(targetId);
        return dbUser;
    }
    if (isGroupSubCollection()) {
        DbGroup dbGroup = new DbGroup();
        dbGroup.setId(targetId);
        return dbGroup;
    }
    if (permission.isSetUser()) {
        User user = permission.getUser();
        DbUser dbUser = UserMapper.map(user, null);
        if (dbUser.getDomain() == null) {
            dbUser.setDomain(getCurrent().getUser().getDomain());
        }
        return dbUser;
    }
    if (permission.isSetGroup()) {
        Group group = permission.getGroup();
        DbGroup dbGroup = GroupMapper.map(group, null);
        if (dbGroup.getDomain() == null) {
            dbGroup.setDomain(getCurrent().getUser().getDomain());
        }
        return dbGroup;
    }
    return null;
}
Also used : DbGroup(org.ovirt.engine.core.common.businessentities.aaa.DbGroup) Group(org.ovirt.engine.api.model.Group) DbGroup(org.ovirt.engine.core.common.businessentities.aaa.DbGroup) User(org.ovirt.engine.api.model.User) DbUser(org.ovirt.engine.core.common.businessentities.aaa.DbUser) DbUser(org.ovirt.engine.core.common.businessentities.aaa.DbUser)

Example 13 with Group

use of org.ovirt.engine.api.model.Group in project ovirt-engine by oVirt.

the class BackendAssignedPermissionsResource method addParents.

@Override
public Permission addParents(Permission permission) {
    // between the user and group cases
    if (isGroupSubCollection() && permission.isSetUser() && permission.getUser().isSetId()) {
        permission.setGroup(new Group());
        permission.getGroup().setId(permission.getUser().getId());
        permission.setUser(null);
    }
    return permission;
}
Also used : Group(org.ovirt.engine.api.model.Group) DbGroup(org.ovirt.engine.core.common.businessentities.aaa.DbGroup)

Example 14 with Group

use of org.ovirt.engine.api.model.Group in project ovirt-engine by oVirt.

the class UserMapper method map.

@Mapping(from = DirectoryUser.class, to = User.class)
public static User map(DirectoryUser entity, User template) {
    User model = template != null ? template : new User();
    model.setName(entity.getFirstName());
    model.setUserName(entity.getName() + "@" + entity.getDirectoryName());
    model.setId(DirectoryEntryIdUtils.encode(entity.getId()));
    model.setLastName(entity.getLastName());
    model.setEmail(entity.getEmail());
    model.setDepartment(entity.getDepartment());
    model.setPrincipal(entity.getPrincipal());
    model.setNamespace(entity.getNamespace());
    if (entity.getGroups() != null) {
        model.setGroups(new Groups());
        for (DirectoryGroup directoryGroup : entity.getGroups()) {
            Group group = new Group();
            group.setName(directoryGroup.getName());
            model.getGroups().getGroups().add(group);
        }
    }
    if (!StringUtils.isEmpty(entity.getDirectoryName())) {
        Domain dom = new Domain();
        dom.setName(entity.getDirectoryName());
        dom.setId(DirectoryEntryIdUtils.encode(dom.getName()));
        model.setDomain(dom);
    }
    return model;
}
Also used : Group(org.ovirt.engine.api.model.Group) DirectoryGroup(org.ovirt.engine.core.aaa.DirectoryGroup) DirectoryUser(org.ovirt.engine.core.aaa.DirectoryUser) DbUser(org.ovirt.engine.core.common.businessentities.aaa.DbUser) User(org.ovirt.engine.api.model.User) DirectoryGroup(org.ovirt.engine.core.aaa.DirectoryGroup) Groups(org.ovirt.engine.api.model.Groups) Domain(org.ovirt.engine.api.model.Domain)

Example 15 with Group

use of org.ovirt.engine.api.model.Group in project ovirt-engine by oVirt.

the class BackendDomainGroupsResource method mapGroups.

private Groups mapGroups(List<DirectoryGroup> entities) {
    Groups collection = new Groups();
    for (DirectoryGroup entity : entities) {
        Group group = map(entity);
        group = populate(group, entity);
        group = addLinks(group, true);
        collection.getGroups().add(group);
    }
    return collection;
}
Also used : Group(org.ovirt.engine.api.model.Group) DirectoryGroup(org.ovirt.engine.core.aaa.DirectoryGroup) DirectoryGroup(org.ovirt.engine.core.aaa.DirectoryGroup) Groups(org.ovirt.engine.api.model.Groups)

Aggregations

Group (org.ovirt.engine.api.model.Group)19 DbGroup (org.ovirt.engine.core.common.businessentities.aaa.DbGroup)12 DirectoryGroup (org.ovirt.engine.core.aaa.DirectoryGroup)11 Test (org.junit.Test)8 Domain (org.ovirt.engine.api.model.Domain)5 AbstractBackendCollectionResourceTest (org.ovirt.engine.api.restapi.resource.AbstractBackendCollectionResourceTest)5 Response (javax.ws.rs.core.Response)4 WebApplicationException (javax.ws.rs.WebApplicationException)3 Groups (org.ovirt.engine.api.model.Groups)3 Permission (org.ovirt.engine.api.model.Permission)3 User (org.ovirt.engine.api.model.User)3 AuthzGroup (org.ovirt.engine.core.common.businessentities.aaa.AuthzGroup)3 DbUser (org.ovirt.engine.core.common.businessentities.aaa.DbUser)3 Role (org.ovirt.engine.api.model.Role)2 BaseResource (org.ovirt.engine.api.model.BaseResource)1 Roles (org.ovirt.engine.api.model.Roles)1 V3Group (org.ovirt.engine.api.v3.types.V3Group)1 DirectoryUser (org.ovirt.engine.core.aaa.DirectoryUser)1