org.hypergraphdb.peer.log
Class Log

java.lang.Object
  extended by org.hypergraphdb.peer.log.Log

public class Log
extends java.lang.Object

Author:
Cipri Costa Manages all log operations. Ensures serialization of events

Field Summary
static HGPersistentHandle LATEST_VERSION_HANDLE
           
 
Constructor Summary
Log(HyperGraph logDb, PeerInterface peerInterface)
           
 
Method Summary
 LogEntry addEntry(LogEntry entry, java.util.Iterator<java.lang.Object> targets)
          Adds an event to the log.
 void confirmFromPeer(java.lang.Object targetId, Timestamp timestamp)
           
 LogEntry createLogEntry(HGPersistentHandle handle, java.lang.Object value, StorageService.Operation operation)
           
 void finishRequest(java.lang.Object peerId, Timestamp last_version, Timestamp current_version)
           
 Timestamp getLastFrom(java.lang.Object peer)
           
 java.util.ArrayList<LogEntry> getLogEntries(Timestamp startingFrom, HGAtomPredicate interest)
           
 void purge()
           
 boolean registerRequest(java.lang.Object peerId, Timestamp last_version, Timestamp current_version)
          serializes messages from each peer.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

LATEST_VERSION_HANDLE

public static final HGPersistentHandle LATEST_VERSION_HANDLE
Constructor Detail

Log

public Log(HyperGraph logDb,
           PeerInterface peerInterface)
Method Detail

createLogEntry

public LogEntry createLogEntry(HGPersistentHandle handle,
                               java.lang.Object value,
                               StorageService.Operation operation)

addEntry

public LogEntry addEntry(LogEntry entry,
                         java.util.Iterator<java.lang.Object> targets)
Adds an event to the log.

Parameters:
value -
peerFilter -
Returns:

purge

public void purge()

confirmFromPeer

public void confirmFromPeer(java.lang.Object targetId,
                            Timestamp timestamp)

getLastFrom

public Timestamp getLastFrom(java.lang.Object peer)

registerRequest

public boolean registerRequest(java.lang.Object peerId,
                               Timestamp last_version,
                               Timestamp current_version)
serializes messages from each peer. initializes catchup phase if necessary.

Parameters:
current_version -
last_version -

finishRequest

public void finishRequest(java.lang.Object peerId,
                          Timestamp last_version,
                          Timestamp current_version)

getLogEntries

public java.util.ArrayList<LogEntry> getLogEntries(Timestamp startingFrom,
                                                   HGAtomPredicate interest)