Improve documentation
[nonrtric/rapp/ransliceassurance.git] / icsversion / internal / odusliceassurance / messageHandler.go
index 2aee075..c2b988d 100644 (file)
@@ -21,6 +21,7 @@
 package sliceassurance
 
 import (
+       "bytes"
        "encoding/json"
        "io"
        "io/ioutil"
@@ -41,7 +42,7 @@ func NewMessageHandler(data *structures.SliceAssuranceMeas) *MessageHandler {
 }
 
 func (handler MessageHandler) ProcessMessage(body io.ReadCloser) {
-       log.Debug("Process messages from Dmaap mediator")
+       log.Debug("Process messages from DMaaP mediator")
 
        if messages := getVesMessages(body); messages != nil {
                stdMessages := getStdMessages(messages)
@@ -66,10 +67,14 @@ func getVesMessages(r io.ReadCloser) *[]string {
                log.Warn(err)
                return nil
        }
-       err = json.Unmarshal(body, &messages)
-       if err != nil {
-               log.Warn(err)
-               return nil
+       if bytes.HasPrefix(body, []byte("{")) {
+               messages = append(messages, string(body))
+       } else {
+               err = json.Unmarshal(body, &messages)
+               if err != nil {
+                       log.Warn(err)
+                       return nil
+               }
        }
        return &messages
 }