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

## net.i2p.router
Class MessageValidator

    java.lang.Object
      net.i2p.router.MessageValidator

    public class MessageValidator

extends Object

Singleton to manage the logic (and historical data) to determine whether a message is valid or not (meaning it isn't expired and hasn't already been received). We'll need a revamp once we start dealing with long message expirations (since it might involve keeping a significant number of entries in memory), but that probably won't be necessary until I2P 3.0.

Constructor Summary
`MessageValidator(RouterContext context)`

Method Summary
`(package private) void` | `shutdown()`
`void` | `startup()`
`String` | `validateMessage(long expiration)` Only check the expiration for the message
`String` | `validateMessage(long messageId, long expiration)` Determine if this message should be accepted as valid (not expired, not a duplicate)

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### MessageValidator

    public MessageValidator(RouterContext context)

Method Detail

### validateMessage

    public String validateMessage(long messageId,
                                  long expiration)

  Determine if this message should be accepted as valid (not expired, not a duplicate)

  Returns:
    reason why the message is invalid (or null if the message is valid)

### validateMessage

    public String validateMessage(long expiration)

  Only check the expiration for the message

### startup

    public void startup()

### shutdown

    void shutdown()

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