@Override public synchronized void commit() { try { if (!openedCursors.isEmpty()) { closeOpenedCursors(); throw new BerkeleyDBPersistenceOpenedCursorsException(); } dbTransaction.commit(); getPersistenceManager().unregisterTransaction(this); super.commit(); } catch (DatabaseException e) { throw getPersistenceManager().convertDatabaseException(e); } }
@Override public void contextProved(Context context, Proof proof) { Transaction transaction = persistenceManager.beginTransaction(); try { try { proof.execute(transaction); cliJPanel.message("Context:" + context.identifier(transaction) + " proved!"); transaction.commit(); } catch (ExecutionException e) { logger.error("Error", e); cliJPanel.exception(e); } } catch (InterruptedException e) { logger.error("Error", e); } finally { transaction.abort(); } }