use of com.haulmont.cuba.security.entity.Group in project cuba by cuba-platform.
the class PersistenceAttributeLoadedCheckTest method setUp.
@Before
public void setUp() throws Exception {
dataManager = AppBeans.get(DataManager.class);
persistence = AppBeans.get(Persistence.class);
try (Transaction tx = persistence.createTransaction()) {
EntityManager em = persistence.getEntityManager();
ScheduledTask task = new ScheduledTask();
task.setBeanName("BeanName");
task.setMethodName("MethodName");
taskId = task.getId();
User user = new User();
userId = user.getId();
user.setName("testUser");
user.setLogin("login" + userId);
user.setPassword("000");
user.setGroup(em.find(Group.class, groupId));
em.persist(user);
em.persist(task);
em.persist(user);
tx.commit();
}
taskView = new View(ScheduledTask.class, true).addProperty("beanName");
userView = new View(User.class, true).addProperty("login").addProperty("loginLowerCase").addProperty("name").addProperty("password").addProperty("group", new View(Group.class).addProperty("name")).addProperty("userRoles", new View(UserRole.class));
}
use of com.haulmont.cuba.security.entity.Group in project cuba by cuba-platform.
the class QueryResultTest method test.
@Test
public void test() {
Transaction tx;
javax.persistence.EntityManager emDelegate;
EntityManager em;
Query query;
UUID sessionId = UUID.randomUUID();
int queryKey = 1;
tx = cont.persistence().createTransaction();
try {
emDelegate = cont.persistence().getEntityManager().getDelegate();
QueryResult queryResult = new QueryResult();
queryResult.setSessionId(sessionId);
queryResult.setQueryKey(queryKey);
queryResult.setEntityId(UUID.fromString("60885987-1b61-4247-94c7-dff348347f93"));
emDelegate.persist(queryResult);
tx.commitRetaining();
em = cont.persistence().getEntityManager();
query = em.createQuery("select u from sec$User u, sys$QueryResult qr " + "where qr.entityId = u.id and qr.sessionId = ?1 and qr.queryKey = ?2");
query.setParameter(1, sessionId);
query.setParameter(2, queryKey);
query.setView(new View(User.class).addProperty("login").addProperty("name").addProperty("group", new View(Group.class).addProperty("name")));
// OpenJPAQuery openJPAQuery = (OpenJPAQuery) query.getDelegate();
// Map params = new HashMap();
// params.put(1, sessionId);
// params.put(2, queryKey);
// String[] dataStoreActions = openJPAQuery.getDataStoreActions(params);
//
// System.out.println(dataStoreActions);
List<User> list = query.getResultList();
assertEquals(1, list.size());
User user = list.get(0);
assertEquals("admin", user.getLogin());
tx.commit();
} finally {
tx.end();
}
}
use of com.haulmont.cuba.security.entity.Group in project cuba by cuba-platform.
the class QueryTest method setUp.
@Before
public void setUp() throws Exception {
try (Transaction tx = cont.persistence().createTransaction()) {
EntityManager em = cont.persistence().getEntityManager();
User user = new User();
userId = user.getId();
user.setName("testUser");
user.setLogin("testLogin");
user.setGroup(em.find(Group.class, UUID.fromString("0fa2b1a5-1d68-4d69-9fbd-dff348347f93")));
em.persist(user);
user = new User();
user2Id = user.getId();
user.setName("testUser2");
user.setLogin("testLogin2");
user.setGroup(em.find(Group.class, UUID.fromString("0fa2b1a5-1d68-4d69-9fbd-dff348347f93")));
em.persist(user);
Group group = new Group();
groupId = group.getId();
group.setName("testGroup");
em.persist(group);
tx.commit();
}
}
use of com.haulmont.cuba.security.entity.Group in project cuba by cuba-platform.
the class QueryTest method testUpdate.
@Test
public void testUpdate() {
Transaction tx = cont.persistence().createTransaction();
try {
EntityManager em = cont.persistence().getEntityManager();
Group group = em.find(Group.class, groupId);
Query query = em.createQuery("update sec$User u set u.group = :group where u.id = :userId");
query.setParameter("userId", userId);
query.setParameter("group", group, false);
query.executeUpdate();
tx.commit();
} finally {
tx.end();
}
}
use of com.haulmont.cuba.security.entity.Group in project cuba by cuba-platform.
the class QueryTest method testNativeQueryFlushBeforeUpdate.
@Test
public void testNativeQueryFlushBeforeUpdate() {
Transaction tx = cont.persistence().createTransaction();
try {
EntityManager em = cont.persistence().getEntityManager();
Group group = em.find(Group.class, groupId);
User user = em.find(User.class, userId);
assertNotNull(user);
user.setName("newName");
Query query = em.createNativeQuery("update SEC_USER set GROUP_ID = ?1 where ID = ?2");
query.setParameter(1, group.getId().toString());
query.setParameter(2, userId.toString());
query.executeUpdate();
tx.commit();
} finally {
tx.end();
}
tx = cont.persistence().createTransaction();
try {
EntityManager em = cont.persistence().getEntityManager();
User user = em.find(User.class, userId);
assertNotNull(user);
assertEquals(groupId, user.getGroup().getId());
assertEquals("newName", user.getName());
tx.commit();
} finally {
tx.end();
}
}
Aggregations