code: public <T> T execute(Callable<T> statements) throws Exception
  	{
  		try (HibernateTransaction tx = start().withAutoRollback())
  		{
  			final T ret = statements.call();
  
  			// Success, perform a TX commit
  			tx.commit();
  
  			return ret;
  		}
  	}
docs: Execute the provided {@link Callable} within a transaction, committing if no exceptions are thrown and returning the result
  of the Callable
  
  @param statements
  @param <T>
  
  @return
  
  @throws Exception