Search in sources :

Example 36 with Group

use of com.haulmont.cuba.security.entity.Group in project cuba by cuba-platform.

the class GroupLookup method init.

@Override
public void init(Map<String, Object> params) {
    groupsDs.refresh();
    groups.expandTree();
    if (params.containsKey("exclude")) {
        boolean excludeChildren = (boolean) params.getOrDefault("excludeChildren", true);
        excludeItem((Group) params.get("exclude"), excludeChildren);
    }
    if (groupsDs.size() > 1 && selectedGroup != null) {
        groups.setSelected(selectedGroup);
    } else {
        Collection<UUID> rootItemIds = groupsDs.getRootItemIds();
        if ((rootItemIds != null) && (!rootItemIds.isEmpty())) {
            UUID firstId = rootItemIds.iterator().next();
            Group item = groupsDs.getItem(firstId);
            groups.setSelected(item);
        }
    }
}
Also used : Group(com.haulmont.cuba.security.entity.Group) UUID(java.util.UUID)

Example 37 with Group

use of com.haulmont.cuba.security.entity.Group in project cuba by cuba-platform.

the class EntityManagerTest method setUp.

@Before
public void setUp() throws Exception {
    userId = UUID.fromString("60885987-1b61-4247-94c7-dff348347f93");
    Transaction tx = cont.persistence().createTransaction();
    try {
        EntityManager em = cont.persistence().getEntityManager();
        Group group = em.find(Group.class, UUID.fromString("0fa2b1a5-1d68-4d69-9fbd-dff348347f93"));
        User user = new User();
        userId = user.getId();
        user.setName("testUser");
        user.setLogin("login" + userId);
        user.setPassword("000");
        user.setGroup(group);
        em.persist(user);
        group = new Group();
        groupId = group.getId();
        group.setName("testGroup1");
        em.persist(group);
        user = new User();
        user2Id = user.getId();
        user.setName("testUser2");
        user.setLogin("login" + user2Id);
        user.setPassword("222");
        user.setGroup(group);
        em.persist(user);
        tx.commit();
    } finally {
        tx.end();
    }
    cont.metadata().getViewRepository().getView(User.class, View.MINIMAL);
}
Also used : Group(com.haulmont.cuba.security.entity.Group) EntityManager(com.haulmont.cuba.core.EntityManager) User(com.haulmont.cuba.security.entity.User) Transaction(com.haulmont.cuba.core.Transaction) Before(org.junit.Before)

Example 38 with Group

use of com.haulmont.cuba.security.entity.Group in project cuba by cuba-platform.

the class LoginTest method setUp.

@Before
public void setUp() throws Exception {
    passwordEncryption = AppBeans.get(PasswordEncryption.NAME);
    loginWorker = AppBeans.get(LoginWorker.NAME);
    userSessionSource = AppBeans.get(UserSessionSource.NAME);
    standardTestUserSession = userSessionSource.getUserSession();
    Transaction tx = cont.persistence().createTransaction();
    try {
        EntityManager em = cont.persistence().getEntityManager();
        Group group = em.getReference(Group.class, UUID.fromString("0fa2b1a5-1d68-4d69-9fbd-dff348347f93"));
        User user1 = new User();
        user1Id = user1.getId();
        user1.setGroup(group);
        user1.setLogin("user1");
        user1.setPassword(passwordEncryption.getPasswordHash(user1.getId(), "1"));
        em.persist(user1);
        User user2 = new User();
        user2Id = user2.getId();
        user2.setGroup(group);
        user2.setLogin("user2");
        user2.setPassword(passwordEncryption.getPasswordHash(user2.getId(), "2"));
        em.persist(user2);
        tx.commit();
    } finally {
        tx.end();
    }
}
Also used : Group(com.haulmont.cuba.security.entity.Group) EntityManager(com.haulmont.cuba.core.EntityManager) User(com.haulmont.cuba.security.entity.User) Transaction(com.haulmont.cuba.core.Transaction) Before(org.junit.Before)

Example 39 with Group

use of com.haulmont.cuba.security.entity.Group in project cuba by cuba-platform.

the class GroupEntityListener method onBeforeUpdate.

@Override
public void onBeforeUpdate(Group entity, EntityManager entityManager) {
    if (!persistence.getTools().getDirtyFields(entity).contains("parent"))
        return;
    EntityManager em = persistence.getEntityManager();
    for (GroupHierarchy oldHierarchy : entity.getHierarchyList()) {
        em.remove(oldHierarchy);
    }
    createNewHierarchy(entity, entity.getParent());
    TypedQuery<GroupHierarchy> q = em.createQuery("select h from sec$GroupHierarchy h join fetch h.group " + "where h.parent.id = ?1", GroupHierarchy.class);
    q.setParameter(1, entity);
    List<GroupHierarchy> list = q.getResultList();
    for (GroupHierarchy hierarchy : list) {
        Group dependentGroup = hierarchy.getGroup();
        for (GroupHierarchy depHierarchy : dependentGroup.getHierarchyList()) {
            em.remove(depHierarchy);
        }
        em.remove(hierarchy);
        createNewHierarchy(dependentGroup, dependentGroup.getParent());
    }
}
Also used : Group(com.haulmont.cuba.security.entity.Group) EntityManager(com.haulmont.cuba.core.EntityManager) GroupHierarchy(com.haulmont.cuba.security.entity.GroupHierarchy)

Example 40 with Group

use of com.haulmont.cuba.security.entity.Group in project cuba by cuba-platform.

the class DataManagerCommit2Test method testViewAfterCommitNew.

@Test
public void testViewAfterCommitNew() throws Exception {
    Group group = dataManager.load(LoadContext.create(Group.class).setId(TestSupport.COMPANY_GROUP_ID).setView(View.MINIMAL));
    assertFalse(PersistenceHelper.isLoaded(group, "createTs"));
    User user = metadata.create(User.class);
    try {
        user.setName("testUser");
        user.setLogin("login" + user.getId());
        user.setGroup(group);
        View userView = new View(User.class, true).addProperty("login").addProperty("name").addProperty("group", new View(Group.class, false).addProperty("name").addProperty("createTs"));
        User committedUser = dataManager.commit(user, userView);
        assertTrue(PersistenceHelper.isLoaded(committedUser.getGroup(), "createTs"));
    } finally {
        cont.deleteRecord(user);
    }
}
Also used : Group(com.haulmont.cuba.security.entity.Group) User(com.haulmont.cuba.security.entity.User) Test(org.junit.Test)

Aggregations

Group (com.haulmont.cuba.security.entity.Group)79 User (com.haulmont.cuba.security.entity.User)65 Test (org.junit.Test)60 UUID (java.util.UUID)30 Datasource (com.haulmont.cuba.gui.data.Datasource)29 Ignore (org.junit.Ignore)29 Component (com.haulmont.cuba.gui.components.Component)24 ArrayList (java.util.ArrayList)24 Assert.assertEquals (org.junit.Assert.assertEquals)24 Assert.assertTrue (org.junit.Assert.assertTrue)24 CollectionDatasource (com.haulmont.cuba.gui.data.CollectionDatasource)23 List (java.util.List)20 View (com.haulmont.cuba.core.global.View)15 Assert.assertNotNull (org.junit.Assert.assertNotNull)12 DsBuilder (com.haulmont.cuba.gui.data.DsBuilder)11 DatasourceImpl (com.haulmont.cuba.gui.data.impl.DatasourceImpl)10 Before (org.junit.Before)10 LookupPickerField (com.haulmont.cuba.gui.components.LookupPickerField)9 EntityManager (com.haulmont.cuba.core.EntityManager)8 Transaction (com.haulmont.cuba.core.Transaction)7