Class BlockAcknowledgementMessage
java.lang.Object
org.openremote.agent.protocol.bluetooth.mesh.control.TransportControlMessage
org.openremote.agent.protocol.bluetooth.mesh.control.BlockAcknowledgementMessage
-
Nested Class Summary
Nested classes/interfaces inherited from class org.openremote.agent.protocol.bluetooth.mesh.control.TransportControlMessage
TransportControlMessage.TransportControlMessageState -
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic intcalculateBlockAcknowledgement(int segN) Calculates the block acknowledgement payload.static IntegercalculateBlockAcknowledgement(Integer blockAck, int segO) Calculates the block acknowledgement payload.getSegmentsToBeRetransmitted(byte[] blockAcknowledgement, int segmentCount) Parses the block acknowledgement payloadgetState()static booleanhasAllSegmentsBeenReceived(Integer blockAcknowledgement, int segN) Checks if all segments are received based on the segment count
-
Field Details
-
LOG
-
-
Constructor Details
-
BlockAcknowledgementMessage
public BlockAcknowledgementMessage(byte[] acknowledgementPayload)
-
-
Method Details
-
calculateBlockAcknowledgement
Calculates the block acknowledgement payload.This method will set the segO bit to 1
- Parameters:
blockAck- block acknowledgement payload to be sentsegO- segment index
-
calculateBlockAcknowledgement
public static int calculateBlockAcknowledgement(int segN) Calculates the block acknowledgement payload.This method will set the segO bit to 1
- Parameters:
segN- number of segments
-
getState
- Specified by:
getStatein classTransportControlMessage
-
getSegmentsToBeRetransmitted
public static ArrayList<Integer> getSegmentsToBeRetransmitted(byte[] blockAcknowledgement, int segmentCount) Parses the block acknowledgement payloadThis method will iterate though the block acknowledgement to find out which segments needs to be retransmitted.
- Parameters:
blockAcknowledgement- acknowledgement payload receivedsegmentCount- number of segments
-
hasAllSegmentsBeenReceived
Checks if all segments are received based on the segment count- Parameters:
blockAcknowledgement- acknowledgement payload receivedsegN- number of segments
-