## net.i2p.router.message
Class OutboundClientMessageStatus

    java.lang.Object
      net.i2p.router.message.OutboundClientMessageStatus

     class OutboundClientMessageStatus

extends java.lang.Object

Good ol' fashioned struct with the send status

Constructor Summary
`OutboundClientMessageStatus(RouterContext ctx, ClientMessage msg)`

Method Summary
`boolean` `alreadySent(Hash gateway, TunnelId tunnelId)` have we already sent the message down this tunnel?
`void` `clearAlreadySent()`
`boolean` `failed()` we failed.
`PayloadGarlicConfig` `getClove()` clove, if we've built it
`boolean` `getFailure()` did we totally fail?
`Destination` `getFrom()` who sent the message?
`LeaseSet` `getLeaseSet()` what is the target's current leaseSet (or null if we don't know yet)
`ClientMessage` `getMessage()`
`int` `getNumLookups()`
`int` `getNumSent()` how many messages have we sent through various leases?
`Payload` `getPayload()` raw payload
`long` `getStart()` date we started the process on
`boolean` `getSuccess()` have we totally succeeded?
`Destination` `getTo()` who is the message going to?
`void` `incrementLookups()`
`void` `sent(Hash gateway, TunnelId tunnelId)`
`void` `setClove(PayloadGarlicConfig clove)`
`void` `setLeaseSet(LeaseSet ls)`
`boolean` `success()` we succeeded.

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

Constructor Detail

### OutboundClientMessageStatus

    public OutboundClientMessageStatus(RouterContext ctx,
                                       ClientMessage msg)

Method Detail

### getPayload

    public Payload getPayload()

  raw payload

### getClove

    public PayloadGarlicConfig getClove()

  clove, if we've built it

### setClove

    public void setClove(PayloadGarlicConfig clove)

### getMessage

    public ClientMessage getMessage()

### getStart

    public long getStart()

  date we started the process on

### getNumLookups

    public int getNumLookups()

### incrementLookups

    public void incrementLookups()

### clearAlreadySent

    public void clearAlreadySent()

### getFrom

    public Destination getFrom()

  who sent the message?

### getTo

    public Destination getTo()

  who is the message going to?

### getLeaseSet

    public LeaseSet getLeaseSet()

  what is the target's current leaseSet (or null if we don't know yet)

### setLeaseSet

    public void setLeaseSet(LeaseSet ls)

### alreadySent

    public boolean alreadySent(Hash gateway,
                               TunnelId tunnelId)

  have we already sent the message down this tunnel?

### sent

    public void sent(Hash gateway,
                     TunnelId tunnelId)

### getNumSent

    public int getNumSent()

  how many messages have we sent through various leases?

### getFailure

    public boolean getFailure()

  did we totally fail?

### failed

    public boolean failed()

  we failed. returns true if we had already failed before

### getSuccess

    public boolean getSuccess()

  have we totally succeeded?

### success

    public boolean success()

  we succeeded. returns true if we had already succeeded before