org.mpisws.p2p.transport.peerreview
Class Verifier<Identifier>
java.lang.Object
org.mpisws.p2p.transport.peerreview.Verifier<Identifier>
- All Implemented Interfaces:
- PeerReviewEvents
- Direct Known Subclasses:
- ReplayLayer
public abstract class Verifier<Identifier>
- extends java.lang.Object
- implements PeerReviewEvents
Fields inherited from interface org.mpisws.p2p.transport.peerreview.PeerReviewEvents |
EVT_ACK, EVT_CHECKPOINT, EVT_INIT, EVT_RECV, EVT_SEND, EVT_SENDSIGN, EVT_SIGN, EVT_SOCKET_CAN_READ, EVT_SOCKET_CAN_RW, EVT_SOCKET_CAN_WRITE, EVT_SOCKET_CLOSE, EVT_SOCKET_CLOSED, EVT_SOCKET_EXCEPTION, EVT_SOCKET_OPEN_INCOMING, EVT_SOCKET_OPEN_OUTGOING, EVT_SOCKET_OPENED_OUTGOING, EVT_SOCKET_READ, EVT_SOCKET_WRITE |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
localHandle
protected Identifier localHandle
history
protected SecureHistory history
logger
protected Logger logger
serializer
protected IdentifierSerializer<Identifier> serializer
hashProv
protected HashProvider hashProv
Verifier
public Verifier(IdentifierSerializer<Identifier> serializer,
HashProvider hashProv,
SecureHistory history,
Identifier localHandle,
short signatureSizeBytes,
short hashSizeBytes,
int firstEntryToReplay,
Logger logger)
throws java.io.IOException
- Throws:
java.io.IOException
verifiedOK
public boolean verifiedOK()
getNextEvent
public IndexEntry getNextEvent()
receive
protected abstract void receive(Identifier from,
java.nio.ByteBuffer msg,
long timeToDeliver)
fetchNextEvent
protected void fetchNextEvent()
throws java.io.IOException
- Fetch the next log entry, or set the EOF flag
- Throws:
java.io.IOException
send
protected void send(Identifier target,
java.nio.ByteBuffer message,
int relevantLen)
throws java.io.IOException
- Called by the state machine when it wants to send a message
- Throws:
java.io.IOException
registerEvent
public void registerEvent(EventCallback callback,
short... eventType)
- This binds specific event types to one of the handlers
registerEvent
public void registerEvent(EventCallback callback,
short eventType)
makeProgress
public boolean makeProgress()
throws java.io.IOException
- This is called by the Audit protocol to make another replay step; it returns true
if further calls are necessary, and false if the replay has finished. The idea
is that we can stop calling this if there is more important work to do, e.g.
handle foreground requests
- Throws:
java.io.IOException
getNextEventTime
public long getNextEventTime()
Copyright © 2001-2005 - Rice Pastry.