Class DeliveryInstructions

java.lang.Object
net.i2p.data.DataStructureImpl
net.i2p.data.i2np.DeliveryInstructions
All Implemented Interfaces:
Serializable, DataStructure

public class DeliveryInstructions extends DataStructureImpl
Contains the delivery instructions for garlic cloves. Generic "delivery instructions" are used both in tunnel messages and in garlic cloves, with slight differences. However, the tunnel message generator TrivialPreprocessor and reader FragmentHandler do not use this class, the reading and writing is handled inline there.
Author:
jrandom
See Also:
  • Field Details

  • Constructor Details

    • DeliveryInstructions

      public DeliveryInstructions()
  • Method Details

    • create

      public static DeliveryInstructions create(byte[] data, int offset) throws DataFormatException
      Returns immutable local instructions, or new
      Throws:
      DataFormatException
      Since:
      0.9.20
    • getEncrypted

      @Deprecated public boolean getEncrypted()
      Deprecated.
      unused
      For cloves only (not tunnels), default false, unused
    • setEncrypted

      @Deprecated public void setEncrypted(boolean encrypted)
      Deprecated.
      unused
      For cloves only (not tunnels), default false, unused
    • getEncryptionKey

      @Deprecated public SessionKey getEncryptionKey()
      Deprecated.
      unused
      For cloves only (not tunnels), default null, unused
    • setEncryptionKey

      @Deprecated public void setEncryptionKey(SessionKey key)
      Deprecated.
      unused
      For cloves only (not tunnels), default null, unused
    • getDeliveryMode

      public int getDeliveryMode()
      default -1
    • setDeliveryMode

      public void setDeliveryMode(int mode)
      Parameters:
      mode - 0-3
    • getDestination

      public Hash getDestination()
      default null
    • setDestination

      public void setDestination(Hash dest)
      required for DESTINATION
    • getRouter

      public Hash getRouter()
      default null
    • setRouter

      public void setRouter(Hash router)
      required for ROUTER or TUNNEL
    • getTunnelId

      public TunnelId getTunnelId()
      default null
    • setTunnelId

      public void setTunnelId(TunnelId id)
      required for TUNNEL
    • getDelayRequested

      @Deprecated public boolean getDelayRequested()
      Deprecated.
      unused
      default false, unused
    • setDelayRequested

      @Deprecated public void setDelayRequested(boolean req)
      Deprecated.
      unused
      default false, unused
    • getDelaySeconds

      @Deprecated public long getDelaySeconds()
      Deprecated.
      unused
      default 0, unused
    • setDelaySeconds

      @Deprecated public void setDelaySeconds(long seconds)
      Deprecated.
      unused
      default 0, unused
    • readBytes

      @Deprecated public void readBytes(InputStream in)
      Deprecated.
      unused
      Description copied from interface: DataStructure
      Load up the current object with data from the given stream. Data loaded this way must match the I2P data structure specification. Warning - many classes will throw IllegalStateException if data is already set.
      Parameters:
      in - stream to read from
      Throws:
      UnsupportedOperationException - always
    • readBytes

      public int readBytes(byte[] data, int offset) throws DataFormatException
      Throws:
      DataFormatException
    • writeBytes

      @Deprecated public void writeBytes(OutputStream out)
      Deprecated.
      unused
      Description copied from interface: DataStructure
      Write out the data structure to the stream, using the format defined in the I2P data structure specification.
      Parameters:
      out - stream to write to
      Throws:
      UnsupportedOperationException - always
    • writeBytes

      public int writeBytes(byte[] target, int offset)
      Returns:
      the number of bytes written to the target
    • getSize

      public int getSize()
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object