private BasicDataSource getBasicDataSource() { // Get the BasicDataSource object; it could be wrapped in a DecoratingDataSource // It might also not be a BasicDataSource if the user configured something different BasicDataSource basicDataSource = null; final OpenJPAEntityManagerFactorySPI spi = (OpenJPAEntityManagerFactorySPI) factory; final Object connectionFactory = spi.getConfiguration().getConnectionFactory(); if (connectionFactory instanceof DecoratingDataSource) { final DecoratingDataSource decoratingDataSource = (DecoratingDataSource) connectionFactory; basicDataSource = (BasicDataSource) decoratingDataSource.getInnermostDelegate(); } else if (connectionFactory instanceof BasicDataSource) { basicDataSource = (BasicDataSource) connectionFactory; } return basicDataSource; }
private synchronized void registerListener(final EntityManager entityManager) { if (entityManager instanceof OpenJPAEntityManagerSPI) { final OpenJPAEntityManagerSPI openjpaEM = (OpenJPAEntityManagerSPI) entityManager; final OpenJPAEntityManagerFactorySPI openjpaEMF = (OpenJPAEntityManagerFactorySPI) openjpaEM.getEntityManagerFactory(); if (entityManagerListener == null) { entityManagerListener = new OpenJPALifecycleListener(); } openjpaEMF.addLifecycleListener(entityManagerListener, (Class[]) null); return; } final Object delegate = entityManager.getDelegate(); if (delegate != entityManager && delegate instanceof EntityManager) { registerListener((EntityManager) delegate); } }
private BasicDataSource getBasicDataSource() { // Get the BasicDataSource object; it could be wrapped in a DecoratingDataSource // It might also not be a BasicDataSource if the user configured something different BasicDataSource basicDataSource = null; final OpenJPAEntityManagerFactorySPI spi = (OpenJPAEntityManagerFactorySPI) factory; final Object connectionFactory = spi.getConfiguration().getConnectionFactory(); if (connectionFactory instanceof DecoratingDataSource) { final DecoratingDataSource decoratingDataSource = (DecoratingDataSource) connectionFactory; basicDataSource = (BasicDataSource) decoratingDataSource.getInnermostDelegate(); } else if (connectionFactory instanceof BasicDataSource) { basicDataSource = (BasicDataSource) connectionFactory; } return basicDataSource; }
private synchronized void registerListener(final EntityManager entityManager) { if (entityManager instanceof OpenJPAEntityManagerSPI) { final OpenJPAEntityManagerSPI openjpaEM = (OpenJPAEntityManagerSPI) entityManager; final OpenJPAEntityManagerFactorySPI openjpaEMF = (OpenJPAEntityManagerFactorySPI) openjpaEM.getEntityManagerFactory(); if (entityManagerListener == null) { entityManagerListener = new OpenJPALifecycleListener(); } openjpaEMF.addLifecycleListener(entityManagerListener, (Class[]) null); return; } final Object delegate = entityManager.getDelegate(); if (delegate != entityManager && delegate instanceof EntityManager) { registerListener((EntityManager) delegate); } }
/** * * @see org.seasar.framework.jpa.metadata.AttributeDesc#getSqlType() */ public int getSqlType() { if (mappingInfo != null) { @SuppressWarnings("unchecked") List cols = mappingInfo.getColumns(); if (cols != null && cols.size() == 1) { Column col = (Column) cols.get(0); return col.getType(); } } OpenJPAConfiguration oConf = openJPAEntityManagerFactory.getConfiguration(); if (oConf instanceof JDBCConfiguration) { JDBCConfiguration conf = JDBCConfiguration.class.cast(oConf); int typeCode = fieldMetaData.getTypeCode(); return conf.getDBDictionaryInstance().getJDBCType(typeCode, false); } return Types.OTHER; }
private synchronized void registerListener(EntityManager entityManager) { if (entityManager instanceof OpenJPAEntityManagerSPI) { OpenJPAEntityManagerSPI openjpaEM = (OpenJPAEntityManagerSPI) entityManager; OpenJPAEntityManagerFactorySPI openjpaEMF = (OpenJPAEntityManagerFactorySPI) openjpaEM.getEntityManagerFactory(); if (entityManagerListener == null) { entityManagerListener = new OpenJPALifecycleListener(); } openjpaEMF.addLifecycleListener(entityManagerListener, (Class[])null); return; } Object delegate = entityManager.getDelegate(); if (delegate != entityManager && delegate instanceof EntityManager) { registerListener((EntityManager) delegate); } }
/** * Returns the {@link org.apache.openjpa.meta.ClassMetaData} associated * with the persistent type <code>cls</code>. */ public static ClassMetaData getMetaData(EntityManagerFactory emf, Class cls) { if (emf == null) throw new NullPointerException("emf == null"); OpenJPAEntityManagerFactorySPI emfSPI = (OpenJPAEntityManagerFactorySPI) OpenJPAPersistence.cast(emf); try { return emfSPI.getConfiguration().getMetaDataRepositoryInstance(). getMetaData(cls, null, false); } catch (Exception e) { throw PersistenceExceptions.toPersistenceException(e); } }
/** * Returns the {@link org.apache.openjpa.meta.ClassMetaData} associated * with the persistent type <code>cls</code>. */ public static ClassMetaData getMetaData(EntityManagerFactory emf, Class cls) { if (emf == null) throw new NullPointerException("emf == null"); OpenJPAEntityManagerFactorySPI emfSPI = (OpenJPAEntityManagerFactorySPI) OpenJPAPersistence.cast(emf); try { return emfSPI.getConfiguration().getMetaDataRepositoryInstance(). getMetaData(cls, null, false); } catch (Exception e) { throw PersistenceExceptions.toPersistenceException(e); } }
/** * Returns the {@link org.apache.openjpa.meta.ClassMetaData} associated * with the persistent type <code>cls</code>. */ public static ClassMetaData getMetaData(EntityManagerFactory emf, Class cls) { if (emf == null) throw new NullPointerException("emf == null"); OpenJPAEntityManagerFactorySPI emfSPI = (OpenJPAEntityManagerFactorySPI) OpenJPAPersistence.cast(emf); try { return emfSPI.getConfiguration().getMetaDataRepositoryInstance(). getMetaData(cls, null, false); } catch (Exception e) { throw PersistenceExceptions.toPersistenceException(e); } }
/** * Returns the {@link org.apache.openjpa.meta.ClassMetaData} associated * with the persistent type <code>cls</code>. */ public static ClassMetaData getMetaData(EntityManagerFactory emf, Class cls) { if (emf == null) throw new NullPointerException("emf == null"); OpenJPAEntityManagerFactorySPI emfSPI = (OpenJPAEntityManagerFactorySPI) OpenJPAPersistence.cast(emf); try { return emfSPI.getConfiguration().getMetaDataRepositoryInstance(). getMetaData(cls, null, false); } catch (Exception e) { throw PersistenceExceptions.toPersistenceException(e); } }
/** * Returns the {@link org.apache.openjpa.meta.ClassMetaData} associated * with the persistent type <code>cls</code>. */ public static ClassMetaData getMetaData(EntityManagerFactory emf, Class cls) { if (emf == null) throw new NullPointerException("emf == null"); OpenJPAEntityManagerFactorySPI emfSPI = (OpenJPAEntityManagerFactorySPI) OpenJPAPersistence.cast(emf); try { return emfSPI.getConfiguration().getMetaDataRepositoryInstance(). getMetaData(cls, null, false); } catch (Exception e) { throw PersistenceExceptions.toPersistenceException(e); } }
public String toJPQL(QueryDefinition query) { MetaDataRepository repos = _emf.getConfiguration() .getMetaDataRepositoryInstance(); AliasContext ctx = new AliasContext(repos); if (query instanceof AbstractDomainObject) return ((AbstractDomainObject)query).getOwner().asExpression(ctx); return ((QueryDefinitionImpl)query).asExpression(ctx); }
public String toJPQL(QueryDefinition query) { MetaDataRepository repos = _emf.getConfiguration() .getMetaDataRepositoryInstance(); AliasContext ctx = new AliasContext(repos); if (query instanceof AbstractDomainObject) return ((AbstractDomainObject)query).getOwner().asExpression(ctx); return ((QueryDefinitionImpl)query).asExpression(ctx); }
public String toJPQL(QueryDefinition query) { MetaDataRepository repos = _emf.getConfiguration() .getMetaDataRepositoryInstance(); AliasContext ctx = new AliasContext(repos); if (query instanceof AbstractDomainObject) return ((AbstractDomainObject)query).getOwner().asExpression(ctx); return ((QueryDefinitionImpl)query).asExpression(ctx); }
public String toJPQL(QueryDefinition query) { MetaDataRepository repos = _emf.getConfiguration() .getMetaDataRepositoryInstance(); AliasContext ctx = new AliasContext(repos); if (query instanceof AbstractDomainObject) return ((AbstractDomainObject)query).getOwner().asExpression(ctx); return ((QueryDefinitionImpl)query).asExpression(ctx); }
final OpenJPAEntityManagerFactorySPI spi = (OpenJPAEntityManagerFactorySPI) factory; final String logMsg = spi.getConfiguration().getConnectionProperties().replaceAll("Password=.*?,", "Password=***,"); LOG.info("JPA configuration: {0}", logMsg); entityManager.getTransaction().commit();
final OpenJPAEntityManagerFactorySPI spi = (OpenJPAEntityManagerFactorySPI) factory; final String logMsg = spi.getConfiguration().getConnectionProperties().replaceAll("Password=.*?,", "Password=***,"); LOG.info("JPA configuration: {0}", logMsg); entityManager.getTransaction().commit();
@Test public void entity() { final EntityManagerFactory emf = Persistence.createEntityManagerFactory("test-jcache", props); final OpenJPAConfiguration conf = OpenJPAEntityManagerFactorySPI.class.cast(emf).getConfiguration(); final EntityManager em = emf.createEntityManager(); final MyEntity entity = new MyEntity(); entity.setName("cacheMe1"); em.getTransaction().begin(); em.persist(entity); em.getTransaction().commit(); assertNotNull(conf.getDataCacheManagerInstance().getDataCache("default")); assertThat(conf.getDataCacheManagerInstance(), instanceOf(OpenJPAJCacheDataCacheManager.class)); assertThat(conf.getDataCacheManagerInstance().getDataCache("default"), instanceOf(OpenJPAJCacheDataCache.class)); assertTrue(conf.getDataCacheManagerInstance().getDataCache("default").contains(JPAFacadeHelper.toOpenJPAObjectId(conf.getMetaDataRepositoryInstance().getCachedMetaData(MyEntity.class), entity.getId()))); em.close(); emf.close(); }
@Test public void query() { final EntityManagerFactory emf = Persistence.createEntityManagerFactory("test-jcache", props); final OpenJPAConfiguration conf = OpenJPAEntityManagerFactorySPI.class.cast(emf).getConfiguration(); final EntityManager em = emf.createEntityManager(); final MyEntity entity = new MyEntity(); entity.setName("cacheMe1"); em.getTransaction().begin(); em.persist(entity); em.getTransaction().commit(); final Query query = em.createQuery("select e from OpenJPAJCacheDataCacheTest$MyEntity e where e.id = :id"); assertEquals(1, query.setParameter("id", entity.getId()).getResultList().size()); assertNotNull(conf.getDataCacheManagerInstance().getDataCache("default")); assertThat(conf.getDataCacheManagerInstance(), instanceOf(OpenJPAJCacheDataCacheManager.class)); assertThat(conf.getDataCacheManagerInstance().getDataCache("default"), instanceOf(OpenJPAJCacheDataCache.class)); assertTrue(conf.getDataCacheManagerInstance().getDataCache("default").contains(JPAFacadeHelper.toOpenJPAObjectId(conf.getMetaDataRepositoryInstance().getCachedMetaData(MyEntity.class), entity.getId()))); final Map<Object, Object> args = new HashMap<Object, Object>() {{ put("id", entity.getId()); }}; final QueryKey qk = QueryKey.newInstance(query.unwrap(org.apache.openjpa.kernel.Query.class), args); assertNotNull(conf.getDataCacheManagerInstance().getSystemQueryCache().get(qk)); em.close(); emf.close(); }