@Test public void testCanCastSharedEntityManagerProxyToEclipseLinkEntityManager() { assertTrue(sharedEntityManager instanceof JpaEntityManager); JpaEntityManager eclipselinkEntityManager = (JpaEntityManager) sharedEntityManager; assertNotNull(eclipselinkEntityManager.getActiveSession()); }
@Override public boolean containsEntity(EntityManager em, Class<?> entityClass, Object id) { return em.unwrap(JpaEntityManager.class).getActiveSession().getIdentityMapAccessor().getFromIdentityMap(id, entityClass) != null; }
@Override public boolean containsEntity(EntityManager em, Class<?> entityClass, Object id) { return em.unwrap(JpaEntityManager.class).getActiveSession().getIdentityMapAccessor().getFromIdentityMap(id, entityClass) != null; }
@Override public String getQueryStringOfNamedQuery(String queryName) { JpaEntityManager jpaEntityManager = (JpaEntityManager) getEntityManager().getDelegate(); return jpaEntityManager.getActiveSession().getQuery(queryName).getJPQLString(); }
StoredProcedureCall storedProcedureCall = new StoredProcedureCall(); storedProcedureCall.setProcedureName("mypackage.myprocedure"); storedProcedureCall.addNamedArgument("i_input_1"); // Add input argument name. storedProcedureCall.addNamedOutputArgument("o_output_1"); // Add output parameter name. DataReadQuery query = new DataReadQuery(); query.setCall(storedProcedureCall); query.addArgument("i_input_1"); // Add input argument names (again); List<Object> argumentValues = new ArrayList<Object>(); argumentValues.add("valueOf_i_input_1"); // Add input argument values. JpaEntityManager jpaEntityManager = (JpaEntityManager) getEntityManager(); Session session = jpaEntityManager.getActiveSession(); List<?> results = (List<?>) session.executeQuery(query, argumentValues); DatabaseRecord record = (DatabaseRecord) results.get(0); String result = String.valueOf(record.get("o_output_1")); // Get output parameter
/** * Convert the given object to the class represented by the given temporal * type. * * @return an object representing the given TemporalType. */ protected Object convertTemporalType(Object value, TemporalType type) { ConversionManager conversionManager = ((org.eclipse.persistence.internal.sessions.AbstractSession) getEntityManager().getActiveSession()).getDatasourcePlatform().getConversionManager(); if (type == TemporalType.TIME) { return conversionManager.convertObject(value, ClassConstants.TIME); } else if (type == TemporalType.TIMESTAMP) { return conversionManager.convertObject(value, ClassConstants.TIMESTAMP); } else if (type == TemporalType.DATE) { return conversionManager.convertObject(value, ClassConstants.SQLDATE); } return value; }