java.lang.Object
com.biglybt.core.peermanager.messaging.bittorrent.ltep.LTHandshake
All Implemented Interfaces:
LTMessage, Message

public class LTHandshake extends Object implements LTMessage
  • Field Details

    • data_dict

      private Map data_dict
    • bencoded_data

      private byte[] bencoded_data
    • bencoded_string

      private String bencoded_string
    • description

      private String description
    • version

      private final byte version
    • buffer_array

      private DirectByteBuffer[] buffer_array
  • Constructor Details

    • LTHandshake

      public LTHandshake(Map data_dict, byte version)
  • Method Details

    • deserialize

      public Message deserialize(DirectByteBuffer data, byte version) throws MessageException
      Description copied from interface: Message
      Create a new instance of this message by decoding the given byte serialization.
      Specified by:
      deserialize in interface Message
      Parameters:
      data - to deserialize
      Returns:
      decoded message instance
      Throws:
      MessageException - if the decoding process fails NOTE: Does not auto-return given direct buffer on thrown exception.
    • getData

      public DirectByteBuffer[] getData()
      Description copied from interface: Message
      Get message payload data.
      Specified by:
      getData in interface Message
      Returns:
      message data buffers
    • destroy

      public void destroy()
      Description copied from interface: Message
      Destroy the message; i.e. perform cleanup actions.
      Specified by:
      destroy in interface Message
    • getDescription

      public String getDescription()
      Description copied from interface: Message
      Get textual description of this particular message.
      Specified by:
      getDescription in interface Message
      Returns:
      description
    • getBencodedString

      public String getBencodedString()
    • getBencodedData

      public byte[] getBencodedData()
    • getDataMap

      public Map getDataMap()
    • getClientName

      public String getClientName()
    • isUploadOnly

      public boolean isUploadOnly()
    • getIPv6

      public InetAddress getIPv6()
    • getTCPListeningPort

      public int getTCPListeningPort()
    • isCryptoRequested

      public Boolean isCryptoRequested()
    • getExtensionMapping

      public Map getExtensionMapping()
    • getMetadataSize

      public int getMetadataSize()
    • addDefaultExtensionMappings

      public void addDefaultExtensionMappings(boolean enable_pex, boolean enable_md, boolean enable_uo, boolean enable_hp)
    • addOptionalExtensionMapping

      public void addOptionalExtensionMapping(String id, long subid)
    • getFeatureID

      public String getFeatureID()
      Description copied from interface: Message
      Get the main feature set name this message belongs to.
      Specified by:
      getFeatureID in interface Message
      Returns:
      feature id
    • getFeatureSubID

      public int getFeatureSubID()
      Description copied from interface: Message
      Get the static message sub-id for the feature.
      Specified by:
      getFeatureSubID in interface Message
      Returns:
      sub id
    • getID

      public String getID()
      Description copied from interface: Message
      Get message id.
      Specified by:
      getID in interface Message
      Returns:
      id
    • getIDBytes

      public byte[] getIDBytes()
      Specified by:
      getIDBytes in interface Message
    • getType

      public int getType()
      Description copied from interface: Message
      Get message type.
      Specified by:
      getType in interface Message
      Returns:
      type
    • getVersion

      public byte getVersion()
      Specified by:
      getVersion in interface Message