@Override public void afterCompletion(boolean successful, boolean delayed) { afterTransactionCompletion( successful, delayed ); if ( !isClosed() && autoClose ) { managedClose(); } } };
@Override public String toString() { StringBuilder buf = new StringBuilder( 500 ) .append( "SessionImpl(" ).append( System.identityHashCode( this ) ); if ( !isClosed() ) { if ( TRACE_ENABLED ) { buf.append( persistenceContext ) .append( ";" ) .append( actionQueue ); } else { buf.append( "<open>" ); } } else { buf.append( "<closed>" ); } return buf.append( ')' ).toString(); }
@Override public boolean shouldAutoClose() { if ( waitingForAutoClose ) { return true; } else if ( isClosed() ) { return false; } else if ( sessionOwner != null ) { return sessionOwner.shouldAutoCloseSession(); } else { // JPA technically requires that this be a PersistentUnityTransactionType#JTA to work, // but we do not assert that here... //return isAutoCloseSessionEnabled() && getTransactionCoordinator().getTransactionCoordinatorBuilder().isJta(); return isAutoCloseSessionEnabled(); } }
@Override public boolean isOpen() { checkSessionFactoryOpen(); checkTransactionSynchStatus(); try { return !isClosed(); } catch (HibernateException he) { throw exceptionConverter.convert( he ); } }
private void managedFlush() { if ( isClosed() && !waitingForAutoClose ) { log.trace( "Skipping auto-flush due to session closed" ); return; } log.trace( "Automatically flushing session" ); doFlush(); }
@Override @SuppressWarnings("StatementWithEmptyBody") public void close() throws HibernateException { if ( isClosed() ) { if ( getFactory().getSessionFactoryOptions().getJpaCompliance().isJpaClosedComplianceEnabled() ) { throw new IllegalStateException( "Illegal call to #close() on already closed Session/EntityManager" ); } log.trace( "Already closed" ); return; } closeWithoutOpenChecks(); }
private boolean isTransactionInProgress(boolean isMarkedRollbackConsideredActive) { if ( waitingForAutoClose ) { return getSessionFactory().isOpen() && getTransactionCoordinator().isTransactionActive( isMarkedRollbackConsideredActive ); } return !isClosed() && getTransactionCoordinator().isTransactionActive( isMarkedRollbackConsideredActive ); }
@Override public void afterTransactionCompletion(boolean successful, boolean delayed) { log.tracef( "SessionImpl#afterTransactionCompletion(successful=%s, delayed=%s)", successful, delayed ); if ( !isClosed() || waitingForAutoClose ) { if ( autoClear ||!successful ) { internalClear(); } } persistenceContext.afterTransactionCompletion(); actionQueue.afterTransactionCompletion( successful ); getEventListenerManager().transactionCompletion( successful ); if ( getFactory().getStatistics().isStatisticsEnabled() ) { getFactory().getStatistics().endTransaction( successful ); } try { getInterceptor().afterTransactionCompletion( getCurrentTransaction() ); } catch (Throwable t) { log.exceptionInAfterTransactionCompletionInterceptor( t ); } if ( !delayed ) { if ( shouldAutoClose() && (!isClosed() || waitingForAutoClose) ) { managedClose(); } } super.afterTransactionCompletion( successful, delayed ); }
public String toString() { StringBuffer buf = new StringBuffer(500) .append( "SessionImpl(" ); if ( !isClosed() ) { buf.append(persistenceContext) .append(";") .append(actionQueue); } else { buf.append("<closed>"); } return buf.append(')').toString(); }
private void checkTransactionSynchStatus() { if ( !isClosed() ) { transactionCoordinator.pulse(); } }
@Override public void afterCompletion(boolean successful, boolean delayed) { afterTransactionCompletion( successful, delayed ); if ( !isClosed() && autoClose ) { managedClose(); } } };
private void checkTransactionSynchStatus() { if ( !isClosed() ) { transactionCoordinator.pulse(); } }
public boolean isOpen() { checkTransactionSynchStatus(); return !isClosed(); }
public boolean isTransactionInProgress() { checkTransactionSynchStatus(); return !isClosed() && transactionCoordinator.isTransactionInProgress(); }
private void managedFlush() { if ( isClosed() && !waitingForAutoClose ) { log.trace( "Skipping auto-flush due to session closed" ); return; } log.trace( "Automatically flushing session" ); doFlush(); }
public void managedFlush() { if ( isClosed() ) { LOG.trace( "Skipping auto-flush due to session closed" ); return; } LOG.trace( "Automatically flushing session" ); flush(); }
public void managedFlush() { if ( isClosed() ) { LOG.trace( "Skipping auto-flush due to session closed" ); return; } LOG.trace( "Automatically flushing session" ); flush(); }
@Override public boolean isOpen() { checkSessionFactoryOpen(); checkTransactionSynchStatus(); try { return !isClosed(); } catch (HibernateException he) { throw exceptionConverter.convert( he ); } }
@Override @SuppressWarnings("StatementWithEmptyBody") public void close() throws HibernateException { if ( isClosed() ) { if ( getFactory().getSessionFactoryOptions().getJpaCompliance().isJpaClosedComplianceEnabled() ) { throw new IllegalStateException( "Illegal call to #close() on already closed Session/EntityManager" ); } log.trace( "Already closed" ); return; } closeWithoutOpenChecks(); }
private boolean isTransactionInProgress(boolean isMarkedRollbackConsideredActive) { if ( waitingForAutoClose ) { return getSessionFactory().isOpen() && getTransactionCoordinator().isTransactionActive( isMarkedRollbackConsideredActive ); } return !isClosed() && getTransactionCoordinator().isTransactionActive( isMarkedRollbackConsideredActive ); }