use of com.haulmont.cuba.core.model.common.FileDescriptor in project jmix by jmix-framework.
the class EntityListenerTest method testEntityManager.
@Test
public void testEntityManager() throws Exception {
Server server;
UUID serverId;
Transaction tx = persistence.createTransaction();
try {
// create
server = new Server();
server.setName("server1");
serverId = server.getId();
persistence.getEntityManager().persist(server);
tx.commitRetaining();
assertNotNull(server.getData());
UUID relatedId = UUID.fromString(server.getData());
FileDescriptor related = persistence.getEntityManager().find(FileDescriptor.class, relatedId);
assertNotNull(related);
assertEquals("Related", related.getName());
tx.commitRetaining();
// update
server = persistence.getEntityManager().find(Server.class, serverId);
assertNotNull(server);
server.setName("server1 updated");
tx.commitRetaining();
related = persistence.getEntityManager().find(FileDescriptor.class, relatedId);
assertNotNull(related);
assertEquals("Related updated", related.getName());
tx.commitRetaining();
// remove
server = persistence.getEntityManager().find(Server.class, serverId);
assertNotNull(server);
persistence.getEntityManager().remove(server);
tx.commitRetaining();
related = persistence.getEntityManager().find(FileDescriptor.class, relatedId);
assertNull(related);
tx.commit();
} finally {
tx.end();
}
}
use of com.haulmont.cuba.core.model.common.FileDescriptor in project jmix by jmix-framework.
the class TestListenerUsingEntityManager method onBeforeInsert.
@Override
public void onBeforeInsert(Server entity, EntityManager entityManager) {
EntityManager em = persistence.getEntityManager();
FileDescriptor related = new FileDescriptor();
related.setName("Related");
System.out.println(">>>>> persist related: " + related.getId());
em.persist(related);
entity.setData(related.getId().toString());
}
use of com.haulmont.cuba.core.model.common.FileDescriptor in project jmix by jmix-framework.
the class TestListenerUsingEntityManager method onBeforeUpdate.
@Override
public void onBeforeUpdate(Server entity, EntityManager entityManager) {
EntityManager em = persistence.getEntityManager();
UUID relatedId = UUID.fromString(entity.getData());
FileDescriptor related = em.find(FileDescriptor.class, relatedId);
if (related != null) {
related.setName("Related updated");
System.out.println(">>>>> update related: " + relatedId);
} else
throw new RuntimeException("Related not found: " + relatedId);
}
use of com.haulmont.cuba.core.model.common.FileDescriptor in project jmix by jmix-framework.
the class TestListenerUsingEntityManager method onBeforeDelete.
@Override
public void onBeforeDelete(Server entity, EntityManager entityManager) {
EntityManager em = persistence.getEntityManager();
UUID relatedId = UUID.fromString(entity.getData());
FileDescriptor related = em.find(FileDescriptor.class, relatedId);
if (related != null) {
System.out.println(">>>>> remove related: " + relatedId);
em.remove(related);
} else
throw new RuntimeException("Related entity not found" + relatedId);
}
Aggregations