java.lang.Object
com.biglybt.core.peermanager.messaging.azureus.AZHandshake
All Implemented Interfaces:
AZMessage, Message

public class AZHandshake extends Object implements AZMessage
AZ handshake message.
  • Field Details

    • HANDSHAKE_TYPE_PLAIN

      public static final int HANDSHAKE_TYPE_PLAIN
      See Also:
    • HANDSHAKE_TYPE_CRYPTO

      public static final int HANDSHAKE_TYPE_CRYPTO
      See Also:
    • bss

      private static final byte bss
      See Also:
    • version

      private final byte version
    • buffer

      private DirectByteBuffer buffer
    • description

      private String description
    • identity

      private final byte[] identity
    • sessionID

      private final HashWrapper sessionID
    • reconnectID

      private final HashWrapper reconnectID
    • client

      private final String client
    • client_version

      private final String client_version
    • avail_ids

      private final String[] avail_ids
    • avail_versions

      private final byte[] avail_versions
    • tcp_port

      private int tcp_port
    • udp_port

      private int udp_port
    • udp_non_data_port

      private int udp_non_data_port
    • handshake_type

      private final int handshake_type
    • uploadOnly

      private final boolean uploadOnly
    • ipv6

      private final InetAddress ipv6
    • localHost

      private final String localHost
    • md_size

      private final int md_size
  • Constructor Details

    • AZHandshake

      public AZHandshake(byte[] peer_identity, HashWrapper sessionID, HashWrapper reconnectID, String _client, String version, int tcp_listen_port, int udp_listen_port, int udp_non_data_listen_port, InetAddress ipv6addr, String localHost, int md_size, String[] avail_msg_ids, byte[] avail_msg_versions, int _handshake_type, byte _version, boolean uploadOnly)
  • Method Details

    • getIdentity

      public byte[] getIdentity()
    • getRemoteSessionID

      public HashWrapper getRemoteSessionID()
    • getReconnectSessionID

      public HashWrapper getReconnectSessionID()
    • isUploadOnly

      public boolean isUploadOnly()
    • getClient

      public String getClient()
    • getClientVersion

      public String getClientVersion()
    • getMessageIDs

      public String[] getMessageIDs()
    • getMessageVersions

      public byte[] getMessageVersions()
    • getTCPListenPort

      public int getTCPListenPort()
    • getUDPListenPort

      public int getUDPListenPort()
    • getUDPNonDataListenPort

      public int getUDPNonDataListenPort()
    • getIPv6

      public InetAddress getIPv6()
    • getLocalHost

      public String getLocalHost()
    • getMetadataSize

      public int getMetadataSize()
    • getHandshakeType

      public int getHandshakeType()
    • 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
    • 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
    • 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
    • getDescription

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

      public DirectByteBuffer[] getData()
      Description copied from interface: Message
      Get message payload data.
      Specified by:
      getData in interface Message
      Returns:
      message data buffers
    • 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.
    • destroy

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