- Common ways to obtain SessionImplementor
private void myMethod () {SessionImplementor s =
EntityManager entityManager;entityManager.unwrap(SessionImplementor.class)
FlushEntityEvent flushEntityEvent;flushEntityEvent.getSession()
LazyInitializer lazyInitializer;lazyInitializer.getSession()
- Smart code suggestions by Codota
}
@Override public Map<String, Object> getProperties() { return delegate.getProperties(); }
@Override public Map<String, Object> getProperties() { return delegate.getProperties(); }
@Override public void end() { TransientReference<HibernateOrmSearchManager> reference = (TransientReference<HibernateOrmSearchManager>) sessionImplementor.getProperties().get( SEARCH_MANAGER_KEY ); HibernateOrmSearchManager searchManager = reference == null ? null : reference.get(); if ( searchManager != null ) { searchManager.close(); } } }
final Transaction transactionIdentifier = sessionImplementor.accessTransaction(); TransientReference<Map<Transaction, PojoWorkPlan>> reference = (TransientReference<Map<Transaction, PojoWorkPlan>>) sessionImplementor.getProperties() .get( WORK_PLAN_PER_TRANSACTION_MAP_KEY ); Map<Transaction, PojoWorkPlan> workPlanPerTransaction = reference == null ? null : reference.get();
/** * @param sessionImplementor A Hibernate session * * @return The {@link HibernateOrmSearchManager} to use within the context of the given session. */ @SuppressWarnings("unchecked") public HibernateOrmSearchManager getSearchManager(SessionImplementor sessionImplementor) { TransientReference<HibernateOrmSearchManager> reference = (TransientReference<HibernateOrmSearchManager>) sessionImplementor.getProperties().get( SEARCH_MANAGER_KEY ); HibernateOrmSearchManager searchManager = reference == null ? null : reference.get(); if ( searchManager == null ) { searchManager = getMapping().createSearchManager( sessionImplementor ); reference = new TransientReference<>( searchManager ); sessionImplementor.setProperty( SEARCH_MANAGER_KEY, reference ); // Make sure we will ultimately close the query manager sessionImplementor.getEventListenerManager().addListener( new SearchManagerClosingListener( sessionImplementor ) ); } return searchManager; }