java.lang.Object
org.openremote.agent.protocol.bluetooth.mesh.utils.Heartbeat
Direct Known Subclasses:
HeartbeatPublication, HeartbeatSubscription

public abstract class Heartbeat extends Object
  • Field Details

  • Method Details

    • isEnabled

      public abstract boolean isEnabled()
      Returns true if the heartbeats are enabled.
    • getDst

      public int getDst()
      Returns the destination address.
    • getPeriodLog

      public byte getPeriodLog()
      Returns the period for processing.
    • calculateHeartbeatPeriod

      public static int calculateHeartbeatPeriod(short periodLog)
      Calculates the heart beat period interval in seconds
      Parameters:
      periodLog - period value
    • decodeHeartbeatPeriod

      public static byte decodeHeartbeatPeriod(int period)
      Decodes the period and returns the period log value
      Parameters:
      period - period value
    • isValidHeartbeatPeriod

      public static boolean isValidHeartbeatPeriod(int period)
      Validates heart beat period.
      Parameters:
      period - Heartbeat publication period.
      Returns:
      true if valid or false otherwise.
      Throws:
      IllegalArgumentException - if the value does not range from 0 to 17.
    • isValidHeartbeatPeriodLog

      public static boolean isValidHeartbeatPeriodLog(byte period)
      Validates heart beat period log.
      Parameters:
      period - Heartbeat publication period.
      Returns:
      true if valid or false otherwise.
      Throws:
      IllegalArgumentException - if the value does not range from 0 to 17.
    • getCountLog

      public byte getCountLog()
    • calculateHeartbeatCount

      public static int calculateHeartbeatCount(int countLog)
      Calculates the heart beat publication count which is the number of publications to be sent
      Parameters:
      countLog - count value
    • periodToTime

      public static String periodToTime(int seconds)
      Converts the period to time
      Parameters:
      seconds - PeriodLog