コード例 #1
0
ファイル: PersistenceManager.java プロジェクト: Chan93/neo4j
 public ResourceHolder getResource() {
   TransactionState txState = transactionManager.getTransactionState();
   ResourceHolder resource = txState.getNeoStoreTransaction();
   if (resource == null) {
     txState.setNeoStoreTransaction(resource = createResource(getCurrentTransaction()));
   }
   return resource;
 }
コード例 #2
0
ファイル: PersistenceManager.java プロジェクト: Chan93/neo4j
 @Override
 public void afterCompletion(int param) {
   releaseConnections(tx);
   if (param == Status.STATUS_COMMITTED) {
     state.commit();
   } else {
     state.rollback();
   }
   try {
     resourceHolder.resource.kernelTransaction().release();
   } catch (ReleaseLocksFailedKernelException e) {
     msgLog.error("Error releasing resources for " + tx, e);
   }
 }
コード例 #3
0
ファイル: PersistenceManager.java プロジェクト: Chan93/neo4j
 void releaseResourceConnectionsForTransaction(Transaction tx, TransactionState state)
     throws NotInTransactionException {
   ResourceHolder resource = state.getNeoStoreTransaction();
   if (resource != null) {
     resource.destroy();
   }
 }
コード例 #4
0
 public void updateFirstRelationships() {
   for (RecordProxy<Long, NodeRecord, Void> change : recordChangeSet.getNodeRecords().changes()) {
     NodeRecord record = change.forReadingLinkage();
     txState.setFirstIds(record.getId(), record.getNextRel(), record.getNextProp());
   }
 }
コード例 #5
0
 public void commitCows() {
   txState.commitCows();
 }
コード例 #6
0
 public void bind(TransactionState txState) {
   this.txState = txState;
   locker.setLockClient(txState.locks());
 }
コード例 #7
0
 public void grab(LockManager lockManager, TransactionState state, Object entity) {
   state.acquireWriteLock(entity);
 }