Search in sources :

Example 1 with AdminPool

use of org.eclipse.persistence.testing.models.jpa.advanced.derivedid.AdminPool in project eclipselink by eclipse-ee4j.

the class AdvancedCompositePKJunitTest method testMapWithDerivedId.

public void testMapWithDerivedId() {
    EntityManagerFactory emf = getEntityManagerFactory();
    EntityManager em = createEntityManager();
    beginTransaction(em);
    try {
        Employee emp = new Employee();
        emp.setFirstName("George");
        em.persist(emp);
        Administrator adminEmp = new Administrator();
        adminEmp.setContractCompany("George's consulting");
        adminEmp.setEmployee(emp);
        em.persist(adminEmp);
        Department support = new Department();
        support.setLocation("Ottawa");
        support.setName("Support");
        support.setRole("Support Customers");
        em.persist(support);
        DepartmentAdminRole depAdmin = new DepartmentAdminRole();
        depAdmin.setAdmin(adminEmp);
        depAdmin.setDepartment(support);
        em.persist(depAdmin);
        AdminPool pool = new AdminPool();
        pool.setId(1);
        pool.addAdmin(depAdmin);
        depAdmin.setPool(pool);
        em.persist(pool);
        em.flush();
        em.clear();
        clearCache();
        pool = em.find(AdminPool.class, pool.getId());
        assertTrue("The AdminPool was not found.", pool != null);
        assertTrue("The map did not contain the correct elements.", pool.getAdmins().get(depAdmin.buildDepartmentAdminRolePK()) != null);
    } catch (Exception e) {
        fail("Exception caught while testing maps with derived ids." + e);
    } finally {
        rollbackTransaction(em);
        closeEntityManager(em);
    }
}
Also used : EntityManager(jakarta.persistence.EntityManager) Department(org.eclipse.persistence.testing.models.jpa.advanced.compositepk.Department) Employee(org.eclipse.persistence.testing.models.jpa.advanced.Employee) Administrator(org.eclipse.persistence.testing.models.jpa.advanced.derivedid.Administrator) DepartmentAdminRole(org.eclipse.persistence.testing.models.jpa.advanced.derivedid.DepartmentAdminRole) AdminPool(org.eclipse.persistence.testing.models.jpa.advanced.derivedid.AdminPool) EntityManagerFactory(jakarta.persistence.EntityManagerFactory) PersistenceException(jakarta.persistence.PersistenceException)

Aggregations

EntityManager (jakarta.persistence.EntityManager)1 EntityManagerFactory (jakarta.persistence.EntityManagerFactory)1 PersistenceException (jakarta.persistence.PersistenceException)1 Employee (org.eclipse.persistence.testing.models.jpa.advanced.Employee)1 Department (org.eclipse.persistence.testing.models.jpa.advanced.compositepk.Department)1 AdminPool (org.eclipse.persistence.testing.models.jpa.advanced.derivedid.AdminPool)1 Administrator (org.eclipse.persistence.testing.models.jpa.advanced.derivedid.Administrator)1 DepartmentAdminRole (org.eclipse.persistence.testing.models.jpa.advanced.derivedid.DepartmentAdminRole)1