You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@plc4x.apache.org by sr...@apache.org on 2022/08/10 11:03:00 UTC
[plc4x] branch develop updated: fix(plc4go/cbus): fixed handling of server errors
This is an automated email from the ASF dual-hosted git repository.
sruehl pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/plc4x.git
The following commit(s) were added to refs/heads/develop by this push:
new be71f0cd2 fix(plc4go/cbus): fixed handling of server errors
be71f0cd2 is described below
commit be71f0cd218b64a87cc3d3ef390372e1d6f1a76d
Author: Sebastian Rühl <sr...@apache.org>
AuthorDate: Wed Aug 10 13:02:54 2022 +0200
fix(plc4go/cbus): fixed handling of server errors
---
plc4go/internal/cbus/Reader.go | 17 +++++++----------
1 file changed, 7 insertions(+), 10 deletions(-)
diff --git a/plc4go/internal/cbus/Reader.go b/plc4go/internal/cbus/Reader.go
index ecbfbc4d4..0778cdeb9 100644
--- a/plc4go/internal/cbus/Reader.go
+++ b/plc4go/internal/cbus/Reader.go
@@ -108,17 +108,14 @@ func (m *Reader) Read(readRequest model.PlcReadRequest) <-chan model.PlcReadRequ
if !ok {
return false
}
+ // Check if this errored
+ if _, ok = messageToClient.GetReply().(readWriteModel.ServerErrorReplyExactly); ok {
+ // This means we must handle this below
+ return true
+ }
+
confirmation, ok := messageToClient.GetReply().(readWriteModel.ReplyOrConfirmationConfirmationExactly)
if !ok {
- reply, ok := messageToClient.GetReply().(readWriteModel.ReplyOrConfirmationReplyExactly)
- if !ok {
- return false
- }
- _, ok = reply.GetReply().(readWriteModel.ServerErrorReplyExactly)
- if ok {
- // This means we must handle this below
- return true
- }
return false
}
return confirmation.GetConfirmation().GetAlpha().GetCharacter() == messageToSend.(readWriteModel.CBusMessageToServer).GetRequest().(readWriteModel.RequestCommand).GetAlpha().GetCharacter()
@@ -128,7 +125,7 @@ func (m *Reader) Read(readRequest model.PlcReadRequest) <-chan model.PlcReadRequ
log.Trace().Msg("convert response to ")
cbusMessage := receivedMessage.(readWriteModel.CBusMessage)
messageToClient := cbusMessage.(readWriteModel.CBusMessageToClient)
- if _, ok := messageToClient.GetReply().(readWriteModel.ReplyOrConfirmationReplyExactly); ok {
+ if _, ok := messageToClient.GetReply().(readWriteModel.ServerErrorReplyExactly); ok {
log.Debug().Msg("We got a server failure")
addResponseCode(fieldNameCopy, model.PlcResponseCode_INVALID_DATA)
requestWasOk <- false