java.lang.Object
net.i2p.router.transport.ntcp.NTCP2Payload.Block
net.i2p.router.transport.ntcp.NTCP2Payload.RIBlock
Enclosing class:
NTCP2Payload

public static class NTCP2Payload.RIBlockextends NTCP2Payload.Block
Block containing router information.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    private final byte[]
    The encoded router info.
    private final boolean
    True if the receiver should flood the router info.
  • Constructor Summary

    Constructors
    Constructor
    Description
    RIBlock(RouterInfo ri, boolean flood)
    Serializes the RouterInfo and records whether the receiver should flood it.
  • Method Summary

    All Methods
    Modifier and Type
    Method
    Description
    int
    The data length of this block.
    int
    writeData(byte[] tgt, int off)
    Write the block data to the target array.

    Methods inherited from class NTCP2Payload.Block

    getTotalLength, toString, write
    Modifier and Type
    Method
    Description
    int
    How many bytes the whole block occupies in a frame.
    String representation of this block.
    int
    write(byte[] tgt, int off)
    Write the block to the target array, returning the new offset.

    Methods inherited from class Object

    clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Field Details

    • data

      private final byte[] data
      The encoded router info.
    • f

      private final boolean f
      True if the receiver should flood the router info.
  • Constructor Details

    • RIBlock

      public RIBlock(RouterInfo ri, boolean flood)
      Serializes the RouterInfo and records whether the receiver should flood it.
      Parameters:
      ri - the RouterInfo to serialize into the block
      flood - true to set the flag byte asking the receiver to flood it
  • Method Details

    • getDataLength

      public int getDataLength()
      The data length of this block.
      Specified by:
      getDataLength in class NTCP2Payload.Block
      Returns:
      the data length
    • writeData

      public int writeData(byte[] tgt, int off)
      Write the block data to the target array.
      Specified by:
      writeData in class NTCP2Payload.Block
      Parameters:
      tgt - the destination array
      off - index in tgt to write the data at, past the 3-byte header
      Returns:
      the offset just past the written data