Class BTKeepAlive
java.lang.Object
com.biglybt.core.peermanager.messaging.bittorrent.BTKeepAlive
- All Implemented Interfaces:
RawMessage
,BTMessage
,Message
BitTorrent keep-alive message.
-
Field Summary
FieldsFields inherited from interface com.biglybt.core.peermanager.messaging.bittorrent.BTMessage
BT_FEATURE_ID, ID_BT_ALLOWED_FAST, ID_BT_ALLOWED_FAST_BYTES, ID_BT_BITFIELD, ID_BT_BITFIELD_BYTES, ID_BT_CANCEL, ID_BT_CANCEL_BYTES, ID_BT_CHOKE, ID_BT_CHOKE_BYTES, ID_BT_DHT_PORT, ID_BT_DHT_PORT_BYTES, ID_BT_HANDSHAKE, ID_BT_HANDSHAKE_BYTES, ID_BT_HASH_REJECT, ID_BT_HASH_REJECT_BYTES, ID_BT_HASH_REQUEST, ID_BT_HASH_REQUEST_BYTES, ID_BT_HASHES, ID_BT_HASHES_BYTES, ID_BT_HAVE, ID_BT_HAVE_ALL, ID_BT_HAVE_ALL_BYTES, ID_BT_HAVE_BYTES, ID_BT_HAVE_NONE, ID_BT_HAVE_NONE_BYTES, ID_BT_INTERESTED, ID_BT_INTERESTED_BYTES, ID_BT_KEEP_ALIVE, ID_BT_KEEP_ALIVE_BYTES, ID_BT_LT_EXT_MESSAGE, ID_BT_LT_EXT_MESSAGE_BYTES, ID_BT_PIECE, ID_BT_PIECE_BYTES, ID_BT_REJECT_REQUEST, ID_BT_REJECT_REQUEST_BYTES, ID_BT_REQUEST, ID_BT_REQUEST_BYTES, ID_BT_SUGGEST_PIECE, ID_BT_SUGGEST_PIECE_BYTES, ID_BT_UNCHOKE, ID_BT_UNCHOKE_BYTES, ID_BT_UNINTERESTED, ID_BT_UNINTERESTED_BYTES, SUBID_BT_ALLOWED_FAST, SUBID_BT_BITFIELD, SUBID_BT_CANCEL, SUBID_BT_CHOKE, SUBID_BT_DHT_PORT, SUBID_BT_HANDSHAKE, SUBID_BT_HASH_REJECT, SUBID_BT_HASH_REQUEST, SUBID_BT_HASHES, SUBID_BT_HAVE, SUBID_BT_HAVE_ALL, SUBID_BT_HAVE_NONE, SUBID_BT_INTERESTED, SUBID_BT_KEEP_ALIVE, SUBID_BT_LT_EXT_MESSAGE, SUBID_BT_PIECE, SUBID_BT_REJECT_REQUEST, SUBID_BT_REQUEST, SUBID_BT_SUGGEST_PIECE, SUBID_BT_UNCHOKE, SUBID_BT_UNINTERESTED, SUBID_MAX
Fields inherited from interface com.biglybt.core.peermanager.messaging.Message
TYPE_DATA_PAYLOAD, TYPE_PROTOCOL_PAYLOAD
Fields inherited from interface com.biglybt.core.networkmanager.RawMessage
PRIORITY_HIGH, PRIORITY_LOW, PRIORITY_NORMAL
-
Constructor Summary
Constructors -
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.Get the message this raw message is based upon.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.getID()
Get message id.byte[]
int
Get the message's queue priority.Get the message's raw data payload.int
getType()
Get message type.byte
boolean
Is this a no-delay message.Message[]
Get the yet-unsent message types that should be removed before queueing this message for sending.void
Set no-delay for this message
-
Field Details
-
version
private final byte version -
buffer
-
no_delay
private boolean no_delay
-
-
Constructor Details
-
BTKeepAlive
public BTKeepAlive(byte _version)
-
-
Method Details
-
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.
-
getRawData
Description copied from interface:RawMessage
Get the message's raw data payload.- Specified by:
getRawData
in interfaceRawMessage
- Returns:
- data payload buffers
-
getPriority
public int getPriority()Description copied from interface:RawMessage
Get the message's queue priority.- Specified by:
getPriority
in interfaceRawMessage
- Returns:
- priority
-
isNoDelay
public boolean isNoDelay()Description copied from interface:RawMessage
Is this a no-delay message. No-delay messages are transmitted immediately, i.e. force-flushed out the transport.- Specified by:
isNoDelay
in interfaceRawMessage
- Returns:
- true if a no-delay message
-
setNoDelay
public void setNoDelay()Description copied from interface:RawMessage
Set no-delay for this message- Specified by:
setNoDelay
in interfaceRawMessage
-
messagesToRemove
Description copied from interface:RawMessage
Get the yet-unsent message types that should be removed before queueing this message for sending.- Specified by:
messagesToRemove
in interfaceRawMessage
- Returns:
- message types; null if no types
-
destroy
public void destroy()Description copied from interface:Message
Destroy the message; i.e. perform cleanup actions. -
getBaseMessage
Description copied from interface:RawMessage
Get the message this raw message is based upon.- Specified by:
getBaseMessage
in interfaceRawMessage
- Returns:
- original message
-