List of usage examples for org.hibernate.engine.spi SessionFactoryImplementor getCollectionPersisters
@Deprecated
default Map<String, CollectionPersister> getCollectionPersisters()
From source file:com.blazebit.persistence.integration.hibernate.Hibernate42EntityManagerFactoryIntegrator.java
License:Apache License
@Override public JpaProviderFactory getJpaProviderFactory(final EntityManagerFactory entityManagerFactory) { return new JpaProviderFactory() { @Override/*from w ww . j a va 2 s . co m*/ public JpaProvider createJpaProvider(EntityManager em) { SessionFactoryImplementor factory = null; PersistenceUnitUtil persistenceUnitUtil = entityManagerFactory == null ? null : entityManagerFactory.getPersistenceUnitUtil(); if (persistenceUnitUtil == null && em != null) { persistenceUnitUtil = em.getEntityManagerFactory().getPersistenceUnitUtil(); } if (em == null) { if (entityManagerFactory instanceof SessionFactoryImplementor) { factory = (SessionFactoryImplementor) entityManagerFactory; } else if (entityManagerFactory instanceof HibernateEntityManagerFactory) { factory = (SessionFactoryImplementor) ((HibernateEntityManagerFactory) entityManagerFactory) .getSessionFactory(); } if (entityManagerFactory instanceof HibernateEntityManagerFactory) { return new HibernateJpaProvider(persistenceUnitUtil, getDbmsName(factory.getDialect()), factory.getEntityPersisters(), factory.getCollectionPersisters(), MAJOR, MINOR, FIX, TYPE); } } return new HibernateJpaProvider(persistenceUnitUtil, getDbms(em), getEntityPersisters(em), getCollectionPersisters(em), MAJOR, MINOR, FIX, TYPE); } }; }
From source file:com.blazebit.persistence.integration.hibernate.Hibernate43EntityManagerFactoryIntegrator.java
License:Apache License
@Override public JpaProviderFactory getJpaProviderFactory(final EntityManagerFactory entityManagerFactory) { return new JpaProviderFactory() { @Override//w w w . ja v a2 s . co m public JpaProvider createJpaProvider(EntityManager em) { SessionFactoryImplementor factory = null; PersistenceUnitUtil persistenceUnitUtil = entityManagerFactory == null ? null : entityManagerFactory.getPersistenceUnitUtil(); if (persistenceUnitUtil == null && em != null) { persistenceUnitUtil = em.getEntityManagerFactory().getPersistenceUnitUtil(); } if (em == null) { if (entityManagerFactory instanceof SessionFactoryImplementor) { factory = (SessionFactoryImplementor) entityManagerFactory; } else if (entityManagerFactory instanceof HibernateEntityManagerFactory) { factory = (SessionFactoryImplementor) ((HibernateEntityManagerFactory) entityManagerFactory) .getSessionFactory(); } if (factory == null && entityManagerFactory != null) { factory = entityManagerFactory.unwrap(SessionFactoryImplementor.class); } if (factory != null) { return new HibernateJpa21Provider(persistenceUnitUtil, getDbmsName(factory.getDialect()), factory.getEntityPersisters(), factory.getCollectionPersisters(), MAJOR, MINOR, FIX, TYPE); } } return new HibernateJpa21Provider(persistenceUnitUtil, getDbms(em), getEntityPersisters(em), getCollectionPersisters(em), MAJOR, MINOR, FIX, TYPE); } }; }
From source file:org.jbpm.services.task.query.DistincVsJoinPerformanceTest.java
License:Apache License
private void copyCollectionPersisterKeys(Attribute embeddedAttr, PluralAttribute listAttr, EntityManager em) { String[] keys = createOriginalAndExpectedKeys(embeddedAttr, listAttr); try {/* ww w. j ava 2 s . c om*/ SessionImpl session = (SessionImpl) em.getDelegate(); SessionFactoryImplementor sessionFactory = session.getSessionFactory(); CollectionPersister persister = sessionFactory.getCollectionPersister(keys[0]); sessionFactory.getCollectionPersisters().put(keys[1], persister); } catch (Exception e) { throw new RuntimeException(e); } }