Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Rice Pastry API
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.mpisws.p2p.transport.peerreview.commitment
Interface CommitmentProtocol<Handle extends RawSerializable,Identifier extends RawSerializable>

All Superinterfaces:
  StatusChangeListener<Identifier>, StatusConstants

All Known Implementing Classes:
  CommitmentProtocolImpl

    public interface CommitmentProtocol<Handle extends RawSerializable,Identifier extends RawSerializable>

extends StatusChangeListener<Identifier>

This protocol attaches signatures to outgoing messages and acknowledges incoming messages. It also has transmit and receive queues where messages can be held while acknowledgments are pending, and it can retransmit messages a few times when an acknowledgment is not received.

Field Summary

Fields inherited from interface org.mpisws.p2p.transport.peerreview.StatusConstants
`STATUS_EXPOSED, STATUS_SUSPECTED, STATUS_TRUSTED`

Method Summary
`void` | `handleIncomingAck(Handle source, AckMessage<Identifier> ackMessage, java.util.Map<java.lang.String,java.lang.Object> options)`
`void` | `handleIncomingMessage(Handle source, UserDataMessage<Handle> msg, java.util.Map<java.lang.String,java.lang.Object> options)`
`MessageRequestHandle<Handle,java.nio.ByteBuffer>` | `handleOutgoingMessage(Handle target, java.nio.ByteBuffer message, MessageCallback<Handle,java.nio.ByteBuffer> deliverAckToMe, java.util.Map<java.lang.String,java.lang.Object> options)`
`Tuple<AckMessage<Identifier>,java.lang.Boolean>` | `logMessageIfNew(UserDataMessage<Handle> udm)`
`void` | `notifyCertificateAvailable(Identifier id)`
`void` | `setTimeToleranceMillis(long timeToleranceMicros)`

Methods inherited from interface org.mpisws.p2p.transport.peerreview.infostore.StatusChangeListener
`notifyStatusChange`

Method Detail

### handleOutgoingMessage

    MessageRequestHandle<Handle,java.nio.ByteBuffer> handleOutgoingMessage(Handle target,
                                                                           java.nio.ByteBuffer message,
                                                                           MessageCallback<Handle,java.nio.ByteBuffer> deliverAckToMe,
                                                                           java.util.Map<java.lang.String,java.lang.Object> options)

### handleIncomingAck

    void handleIncomingAck(Handle source,
                           AckMessage<Identifier> ackMessage,
                           java.util.Map<java.lang.String,java.lang.Object> options)
                           throws java.io.IOException

  Throws:
    `java.io.IOException`

### handleIncomingMessage

    void handleIncomingMessage(Handle source,
                               UserDataMessage<Handle> msg,
                               java.util.Map<java.lang.String,java.lang.Object> options)
                               throws java.io.IOException

  Throws:
    `java.io.IOException`

### notifyCertificateAvailable

    void notifyCertificateAvailable(Identifier id)

### logMessageIfNew

    Tuple<AckMessage<Identifier>,java.lang.Boolean> logMessageIfNew(UserDataMessage<Handle> udm)

### setTimeToleranceMillis

    void setTimeToleranceMillis(long timeToleranceMicros)

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Rice Pastry API
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2001-2005 - Rice Pastry.