org.neo4j.kernel.ha
Class MasterImpl

java.lang.Object
  extended by org.neo4j.kernel.ha.MasterImpl
All Implemented Interfaces:
Master

public class MasterImpl
extends Object
implements Master

This is the real master code that executes on a master. The actual communication over network happens in MasterClient and MasterServer.


Constructor Summary
MasterImpl(GraphDatabaseService db)
           
 
Method Summary
 Response<LockResult> acquireNodeReadLock(SlaveContext context, long... nodes)
           
 Response<LockResult> acquireNodeWriteLock(SlaveContext context, long... nodes)
           
 Response<LockResult> acquireRelationshipReadLock(SlaveContext context, long... relationships)
           
 Response<LockResult> acquireRelationshipWriteLock(SlaveContext context, long... relationships)
           
 IdAllocation allocateIds(IdType idType)
           
 Response<Long> commitSingleResourceTransaction(SlaveContext context, String resource, TransactionStream transactionStream)
           
 Response<Integer> createRelationshipType(SlaveContext context, String name)
           
 Response<Void> finishTransaction(SlaveContext context)
           
 GraphDatabaseService getGraphDb()
           
 int getMasterIdForCommittedTx(long txId)
           
 Map<Integer,Collection<SlaveContext>> getOngoingTransactions()
           
 Response<Void> pullUpdates(SlaveContext context)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MasterImpl

public MasterImpl(GraphDatabaseService db)
Method Detail

getGraphDb

public GraphDatabaseService getGraphDb()

acquireNodeReadLock

public Response<LockResult> acquireNodeReadLock(SlaveContext context,
                                                long... nodes)
Specified by:
acquireNodeReadLock in interface Master

acquireNodeWriteLock

public Response<LockResult> acquireNodeWriteLock(SlaveContext context,
                                                 long... nodes)
Specified by:
acquireNodeWriteLock in interface Master

acquireRelationshipReadLock

public Response<LockResult> acquireRelationshipReadLock(SlaveContext context,
                                                        long... relationships)
Specified by:
acquireRelationshipReadLock in interface Master

acquireRelationshipWriteLock

public Response<LockResult> acquireRelationshipWriteLock(SlaveContext context,
                                                         long... relationships)
Specified by:
acquireRelationshipWriteLock in interface Master

allocateIds

public IdAllocation allocateIds(IdType idType)
Specified by:
allocateIds in interface Master

commitSingleResourceTransaction

public Response<Long> commitSingleResourceTransaction(SlaveContext context,
                                                      String resource,
                                                      TransactionStream transactionStream)
Specified by:
commitSingleResourceTransaction in interface Master

finishTransaction

public Response<Void> finishTransaction(SlaveContext context)
Specified by:
finishTransaction in interface Master

createRelationshipType

public Response<Integer> createRelationshipType(SlaveContext context,
                                                String name)
Specified by:
createRelationshipType in interface Master

pullUpdates

public Response<Void> pullUpdates(SlaveContext context)
Specified by:
pullUpdates in interface Master

getMasterIdForCommittedTx

public int getMasterIdForCommittedTx(long txId)
Specified by:
getMasterIdForCommittedTx in interface Master

getOngoingTransactions

public Map<Integer,Collection<SlaveContext>> getOngoingTransactions()


Copyright © 2010 The Neo4j Graph Database Project. All Rights Reserved.