org.mpisws.p2p.transport.peerreview.history
Class SecureHistoryFactoryImpl
java.lang.Object
org.mpisws.p2p.transport.peerreview.history.SecureHistoryFactoryImpl
- All Implemented Interfaces:
- IndexEntryFactory, SecureHistoryFactory, PeerReviewConstants, StatusConstants
public class SecureHistoryFactoryImpl
- extends java.lang.Object
- implements SecureHistoryFactory, IndexEntryFactory, PeerReviewConstants
Fields inherited from interface org.mpisws.p2p.transport.peerreview.PeerReviewConstants |
AUTH_CACHE_INTERVAL, CERT_MISSING, CHAL_AUDIT, CHAL_SEND, DEFAULT_AUDIT_INTERVAL_MILLIS, DEFAULT_AUTH_PUSH_INTERVAL_MILLIS, DEFAULT_CHECKPOINT_INTERVAL_MILLIS, DEFAULT_LOG_DOWNLOAD_TIMEOUT, DEFAULT_TIME_TOLERANCE_MILLIS, EVT_ACK, EVT_CHECKPOINT, EVT_CHOOSE_Q, EVT_CHOOSE_RAND, EVT_INIT, EVT_MAX_RESERVED, EVT_MAX_SOCKET_EVT, EVT_MIN_SOCKET_EVT, 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_SHUTDOWN_OUTPUT, EVT_SOCKET_WRITE, EVT_VRF, EX_TYPE_ClosedChannel, EX_TYPE_IO, EX_TYPE_Unknown, FLAG_FULL_MESSAGES_ALL, FLAG_FULL_MESSAGES_SENDER, FLAG_INCLUDE_CHECKPOINT, INVALID, INVESTIGATION_INTERVAL_MILLIS, MAINTENANCE_INTERVAL_MILLIS, MAX_ACTIVE_AUDITS, MAX_ACTIVE_INVESTIGATIONS, MAX_ENTRIES_BETWEEN_CHECKPOINTS, MAX_STATUS_INFO, MAX_WITNESSED_NODES, MSG_ACCUSATION, MSG_ACK, MSG_AUTHPUSH, MSG_AUTHREQ, MSG_AUTHRESP, MSG_CHALLENGE, MSG_RESPONSE, MSG_USERDATA, MSG_USERDGRAM, NO_CERTIFICATE, PROGRESS_INTERVAL_MILLIS, PROOF_INCONSISTENT, PROOF_NONCONFORMANT, RESP_AUDIT, RESP_SEND, SIGNATURE_BAD, SIGNATURE_OK, STATE_SEND_AUDIT, STATE_WAIT_FOR_LOG, TI_AUTH_PUSH, TI_CHECKPOINT, TI_MAINTENANCE, TI_MAKE_PROGRESS, TI_MAX_RESERVED, TI_START_AUDITS, TI_STATUS_INFO, VALID |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
SecureHistoryFactoryImpl
public SecureHistoryFactoryImpl(HashProvider hashProv,
Environment env)
create
public SecureHistory create(java.lang.String name,
long baseSeq,
byte[] baseHash)
throws java.io.IOException
- Creates a new history (aka log). Histories are stored as two files: The 'index' file has a
fixed-size record for each entry, which contains the sequence number, content and node
hashes, as well as an index into the data file. The 'data' file just contains the raw
bytes for each entry. Note that the caller must specify the node hash and the sequence
number of the first log entry, which forms the base of the hash chain.
- Specified by:
create
in interface SecureHistoryFactory
- Throws:
java.io.IOException
makeSecureHistory
protected SecureHistoryImpl makeSecureHistory(RandomAccessFileIOBuffer indexFile,
RandomAccessFileIOBuffer dataFile,
boolean readOnly,
HashProvider hashProv,
IndexEntryFactory indexFactory,
Logger logger)
throws java.io.IOException
- Throws:
java.io.IOException
open
public SecureHistory open(java.lang.String name,
java.lang.String mode)
throws java.io.IOException
- Opens an existing history (aka log). The 'mode' can either be 'r' (read-only) or
'w' (read/write).
- Specified by:
open
in interface SecureHistoryFactory
- Throws:
java.io.IOException
build
public IndexEntry build(InputBuffer buf)
throws java.io.IOException
- Specified by:
build
in interface IndexEntryFactory
- Throws:
java.io.IOException
getSerializedSize
public int getSerializedSize()
- Specified by:
getSerializedSize
in interface IndexEntryFactory
createTemp
public SecureHistory createTemp(long baseSeq,
byte[] baseHash)
throws java.io.IOException
- Specified by:
createTemp
in interface SecureHistoryFactory
- Throws:
java.io.IOException
Copyright © 2001-2005 - Rice Pastry.