Package net.i2p.router.tunnel
Class HopConfig
java.lang.Object
net.i2p.router.tunnel.HopConfig
Defines the general configuration for a hop in a tunnel.
 This is used for both participating tunnels and tunnels we create.
 Data only stored for tunnels we create should be in
 TunnelCreatorConfig to save space.
- 
Constructor Summary
Constructors - 
Method Summary
Modifier and TypeMethodDescriptionint(package private) intThis returns the number of processed messages since the last time this was called, and resets the count.longwhen was this tunnel created (in ms since the epoch)?longwhen does this tunnel expire (in ms since the epoch)?getIVKey()what key should we use to encrypt the preIV before passing it on?what key should we use to encrypt the layer before passing it on?intwhat is the previous peer in the tunnel (null if gateway)What tunnel ID are we receiving on? (null if uninitialized)longWhat tunnel ID are we receiving on? (0 if uninitialized)intThis returns the number of processed messages since the last time getAndResetRecentMessagesCount() was called.what is the next peer in the tunnel (null if endpoint)What is the next tunnel ID we are sending to? (null if endpoint)longWhat is the next tunnel ID we are sending to? (0 if endpoint)voidTake note of a message being pumped through this tunnel.voidsetAllocatedBW(int bw) voidsetCreation(long when) voidsetExpiration(long when) voidsetIVKey(SessionKey key) voidsetLayerKey(SessionKey key) voidsetReceiveFrom(Hash from) Do not set for gatewayvoidsetReceiveTunnelId(long id) voidvoidDo not set for endpointvoidsetSendTunnelId(long id) Do not set for endpointvoidDo not set for endpointtoString() 
- 
Constructor Details
- 
HopConfig
public HopConfig() 
 - 
 - 
Method Details
- 
getReceiveTunnelId
public long getReceiveTunnelId()What tunnel ID are we receiving on? (0 if uninitialized) - 
getReceiveTunnel
What tunnel ID are we receiving on? (null if uninitialized) - 
setReceiveTunnelId
 - 
setReceiveTunnelId
public void setReceiveTunnelId(long id) - Parameters:
 id- 1 to 0xffffffff- Throws:
 IllegalArgumentException- if less than or equal to zero or greater than max value- Since:
 - 0.9.48
 
 - 
getReceiveFrom
what is the previous peer in the tunnel (null if gateway) - 
setReceiveFrom
Do not set for gateway - 
getSendTunnelId
public long getSendTunnelId()What is the next tunnel ID we are sending to? (0 if endpoint) - 
getSendTunnel
What is the next tunnel ID we are sending to? (null if endpoint) - 
setSendTunnelId
Do not set for endpoint- Since:
 - 0.9.48
 
 - 
setSendTunnelId
public void setSendTunnelId(long id) Do not set for endpoint- Parameters:
 id- 1 to 0xffffffff- Throws:
 IllegalArgumentException- if less than or equal to zero or greater than max value- Since:
 - 0.9.48
 
 - 
getSendTo
what is the next peer in the tunnel (null if endpoint) - 
setSendTo
Do not set for endpoint - 
getLayerKey
what key should we use to encrypt the layer before passing it on? - 
setLayerKey
 - 
getIVKey
what key should we use to encrypt the preIV before passing it on? - 
setIVKey
 - 
getExpiration
public long getExpiration()when does this tunnel expire (in ms since the epoch)? - 
setExpiration
public void setExpiration(long when)  - 
getCreation
public long getCreation()when was this tunnel created (in ms since the epoch)? - 
setCreation
public void setCreation(long when)  - 
incrementProcessedMessages
public void incrementProcessedMessages()Take note of a message being pumped through this tunnel. "processed" is for incoming and "sent" is for outgoing (could be dropped in between) We use synchronization instead of an AtomicInteger here to save space. - 
getProcessedMessagesCount
public int getProcessedMessagesCount() - 
getRecentMessagesCount
public int getRecentMessagesCount()This returns the number of processed messages since the last time getAndResetRecentMessagesCount() was called. As of 0.9.23, does NOT reset the count, see getAndResetRecentMessagesCount(). - 
getAndResetRecentMessagesCount
int getAndResetRecentMessagesCount()This returns the number of processed messages since the last time this was called, and resets the count. It should only be called by code that updates the router stats. See TunnelDispatcher.updateParticipatingStats().- Since:
 - 0.9.23
 
 - 
getAllocatedBW
public int getAllocatedBW()- Returns:
 - Bps
 - Since:
 - 0.9.66
 
 - 
setAllocatedBW
public void setAllocatedBW(int bw) - Parameters:
 bw- Bps- Since:
 - 0.9.66
 
 - 
toString
 
 -