All Downloads are FREE. Search and download functionalities are using the official Maven repository.

usermanagementapis.UserGroupManagementAPI Maven / Gradle / Ivy

package usermanagementapis;

import dao.EposDataModelDAO;
import model.*;
import org.epos.eposdatamodel.EPOSDataModelEntity;

import java.sql.Timestamp;
import java.time.Instant;
import java.util.List;
import java.util.Optional;
import java.util.UUID;

public class UserGroupManagementAPI {

    public static void createUser(org.epos.eposdatamodel.User user){
        User user1 = new User();
        user1.setAuthIdentifier(user.getAuthIdentifier());
        user1.setEmail(user.getEmail());
        user1.setGivenname(user.getGivenname());
        user1.setFamilyname(user.getFamilyname());
        getDbaccess().createObject(user1);
    }

    public static User retrieveUser(org.epos.eposdatamodel.User user){
        return (User) getDbaccess().getOneFromDBByInstanceId(user.getAuthIdentifier(), User.class).get(0);
    }

    public static void deleteUser(String authIdentfier){
        List user1 = getDbaccess().getOneFromDBByInstanceId(authIdentfier,User.class);
        getDbaccess().deleteObject(user1.get(0));
    }

    public static void createGroup(org.epos.eposdatamodel.Group group){
        MetadataGroup group1 = new MetadataGroup();
        group1.setId(UUID.randomUUID().toString());
        group1.setName(group.getName());
        group1.setDescription(group.getDescription());
        getDbaccess().createObject(group1);
    }

    public static MetadataGroup retrieveGroup(org.epos.eposdatamodel.Group user){
        return (MetadataGroup) getDbaccess().getOneFromDBByInstanceId(user.getId(), MetadataGroup.class).get(0);
    }

    public static void deleteGroup(String groupId){
        List group = getDbaccess().getOneFromDBByInstanceId(groupId, MetadataGroup.class);
        getDbaccess().deleteObject(group.get(0));
    }

    public static void createUserGroup(org.epos.eposdatamodel.Group group, org.epos.eposdatamodel.User user, RoleType role, RequestStatusType requestStatusType){

        MetadataGroup metadataGroup = retrieveGroup(group);
        User user1 = retrieveUser(user);

        if(user1!=null && metadataGroup!=null) {
            MetadataGroupUser metadataGroupUser = new MetadataGroupUser();
            metadataGroupUser.setId(UUID.randomUUID().toString());
            metadataGroupUser.setMetadataGroupByGroupId(metadataGroup);
            metadataGroupUser.setGroupId(metadataGroup.getId());
            metadataGroupUser.setUserByAuthIdentifier(user1);
            metadataGroupUser.setAuthIdentifier(user1.getAuthIdentifier());
            metadataGroupUser.setRequestStatus(requestStatusType);
            metadataGroupUser.setRole(role);

            getDbaccess().createObject(metadataGroupUser);
        }
    }

    public static void addMetadataToGroup(String metaId, String groupId){

        AuthorizationGroup authorizationGroup = new AuthorizationGroup();
        authorizationGroup.setGroupId(groupId);
        authorizationGroup.setMetaId(metaId);
        authorizationGroup.setId(UUID.randomUUID().toString());
        getDbaccess().createObject(authorizationGroup);
    }

    private static EposDataModelDAO getDbaccess() {
        return new EposDataModelDAO();
    }


}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy