Class SendMessageOptions

All Implemented Interfaces:
Serializable, DataStructure

public class SendMessageOptions extends DateAndFlags
Advanced options attached to a single outgoing I2CP message. Note that the packing of options into the 16-bit flags field is is subject to change. Therefore, for now, this is only recommended within RouterContext. Static methods are for OutboundClientMessageOneShotJob to decode the flags field on the router side. GzipOption flags are as of 0.9.36, are client-side only, and are not included in the flags field or sent to the router.
Since:
0.9.2
See Also:
  • Constructor Details

    • SendMessageOptions

      public SendMessageOptions()
  • Method Details

    • setSendLeaseSet

      public void setSendLeaseSet(boolean yes)
      default true
    • getSendLeaseSet

      public boolean getSendLeaseSet()
      default true
    • getSendLeaseSet

      public static boolean getSendLeaseSet(int flags)
      default true
    • setTagsToSend

      public void setTagsToSend(int tags)
      If we are low on tags, send this many. Power of 2 recommended - rounds down. default 0, meaning unset, use the SKM config (default 40)
      Parameters:
      tags - 0 or 2 to 128
    • getTagsToSend

      public int getTagsToSend()
      If we are low on tags, send this many.
      Returns:
      default 0, meaning unset, use the SKM config (default 40)
    • getTagsToSend

      public static int getTagsToSend(int flags)
      If we are low on tags, send this many.
      Returns:
      default 0, meaning unset, use the SKM config (default 40)
    • setTagThreshold

      public void setTagThreshold(int tags)
      Low tag threshold. If less than this many, send more. Power of 2 recommended - rounds down. default 0, meaning unset, use the SKM config (default 30)
      Parameters:
      tags - 0 to 90
    • getTagThreshold

      public int getTagThreshold()
      Low tag threshold. If less than this many, send more.
      Returns:
      default 0, meaning unset, use the SKM config (default 30)
    • getTagThreshold

      public static int getTagThreshold(int flags)
      Low tag threshold. If less than this many, send more.
      Returns:
      default 0, meaning unset, use the SKM config (default 30)
    • setReliability

      public void setReliability(SendMessageOptions.Reliability r)
      default Reliability.DEFAULT
      Since:
      0.9.14
    • getReliability

      public SendMessageOptions.Reliability getReliability()
      default Reliability.DEFAULT
      Since:
      0.9.14
    • getReliability

      public static SendMessageOptions.Reliability getReliability(int flags)
      default Reliability.DEFAULT
      Since:
      0.9.14
    • getGzip

      Overrides i2cp.gzip session option and size threshold for this message only.
      Returns:
      non-null, DEFAULT unless setGzip() was called
      Since:
      0.9.36
    • setGzip

      public void setGzip(boolean yes)
      Overrides i2cp.gzip session option and size threshold for this message only.
      Since:
      0.9.36