internal void ReceiveMessage(Message message) { if (_needData != NeedDataEnum.NoNeed) { State.SetNeedData(_needData); _needData = NeedDataEnum.NoNeed; } var processingMessage = State.ProcessMessage(message, _confirmMessage, _newState, _needsConfirm); if (processingMessage == null) return; if (processingMessage.ResponseMessage != null) { SendMessage(processingMessage); } else { _needsConfirm = false; _confirmMessage = null; _newState = null; if (processingMessage.NewState != null) { State = processingMessage.NewState; processingMessage = State.StateChanged(); if (processingMessage != null) SendMessage(processingMessage); } } }
internal void CheckIntervalElapsed() { _needData = NeedDataEnum.CheckTemperature; }
internal void SetNeedData(NeedDataEnum needData) { NeedData = needData; }