processMessage method

void processMessage(
  1. FarmMessage message
)

Implementation

void processMessage(FarmMessage message) {
  if (message.topicParts.isEmpty) {
    throw StateError(
        "Invalid farm message: topicParts is empty! (topic: ${message.topic})");
  }

  _lastMessage = message;
  _handleIsReady(debounce: message.retained);

  final messageType = message.shiftTopic();

  if (messageType == "florafi") {
    _processFlorafiMessage(message);
  } else if (messageType == "homie") {
    _processHomieMessage(message);
  } else {
    _log.fine("Unknown message topic '${message.topic}'");
  }
}