Class AZHandshake
java.lang.Object
com.biglybt.core.peermanager.messaging.azureus.AZHandshake
AZ handshake message.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final String[]
private final byte[]
private static final byte
private DirectByteBuffer
private final String
private final String
private String
private final int
static final int
static final int
private final byte[]
private final InetAddress
private final String
private final int
private final HashWrapper
private final HashWrapper
private int
private int
private int
private final boolean
private final byte
Fields inherited from interface com.biglybt.core.peermanager.messaging.azureus.AZMessage
AZ_FEATURE_ID, ID_AZ_BAD_PIECE, ID_AZ_BAD_PIECE_BYTES, ID_AZ_GENERIC_MAP, ID_AZ_GENERIC_MAP_BYTES, ID_AZ_HANDSHAKE, ID_AZ_HANDSHAKE_BYTES, ID_AZ_HAVE, ID_AZ_HAVE_BYTES, ID_AZ_METADATA, ID_AZ_METADATA_BYTES, ID_AZ_PEER_EXCHANGE, ID_AZ_PEER_EXCHANGE_BYTES, ID_AZ_REQUEST_HINT, ID_AZ_REQUEST_HINT_BYTES, ID_AZ_STAT_REPLY, ID_AZ_STAT_REPLY_BYTES, ID_AZ_STAT_REQUEST, ID_AZ_STAT_REQUEST_BYTES, SUBID_AZ_BAD_PIECE, SUBID_AZ_GENERIC_MAP, SUBID_AZ_HANDSHAKE, SUBID_AZ_HAVE, SUBID_AZ_METADATA, SUBID_AZ_PEER_EXCHANGE, SUBID_AZ_REQUEST_HINT, SUBID_AZ_STAT_REPLY, SUBID_AZ_STAT_REQUEST
Fields inherited from interface com.biglybt.core.peermanager.messaging.Message
TYPE_DATA_PAYLOAD, TYPE_PROTOCOL_PAYLOAD
-
Constructor Summary
ConstructorsConstructorDescriptionAZHandshake
(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 Summary
Modifier and TypeMethodDescriptiondeserialize
(DirectByteBuffer data, byte version) Create a new instance of this message by decoding the given byte serialization.void
destroy()
Destroy the message; i.e.getData()
Get message payload data.Get textual description of this particular message.Get the main feature set name this message belongs to.int
Get the static message sub-id for the feature.int
getID()
Get message id.byte[]
byte[]
getIPv6()
String[]
byte[]
int
int
int
getType()
Get message type.int
int
byte
boolean
-
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
-
description
-
identity
private final byte[] identity -
sessionID
-
reconnectID
-
client
-
client_version
-
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
-
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
-
getReconnectSessionID
-
isUploadOnly
public boolean isUploadOnly() -
getClient
-
getClientVersion
-
getMessageIDs
-
getMessageVersions
public byte[] getMessageVersions() -
getTCPListenPort
public int getTCPListenPort() -
getUDPListenPort
public int getUDPListenPort() -
getUDPNonDataListenPort
public int getUDPNonDataListenPort() -
getIPv6
-
getLocalHost
-
getMetadataSize
public int getMetadataSize() -
getHandshakeType
public int getHandshakeType() -
getID
Description copied from interface:Message
Get message id. -
getIDBytes
public byte[] getIDBytes()- Specified by:
getIDBytes
in interfaceMessage
-
getFeatureID
Description copied from interface:Message
Get the main feature set name this message belongs to.- Specified by:
getFeatureID
in interfaceMessage
- 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 interfaceMessage
- Returns:
- sub id
-
getType
public int getType()Description copied from interface:Message
Get message type. -
getVersion
public byte getVersion()- Specified by:
getVersion
in interfaceMessage
-
getDescription
Description copied from interface:Message
Get textual description of this particular message.- Specified by:
getDescription
in interfaceMessage
- Returns:
- description
-
getData
Description copied from interface:Message
Get message payload data. -
deserialize
Description copied from interface:Message
Create a new instance of this message by decoding the given byte serialization.- Specified by:
deserialize
in interfaceMessage
- 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.
-