Don't log message as string twice in case of errors.

This commit is contained in:
Joachim Bauch 2022-07-12 13:31:40 +02:00
parent f0eb80b6fd
commit 532587eb9f
No known key found for this signature in database
GPG key ID: 77C1D22D53E15F02

View file

@ -80,44 +80,36 @@ func checkUnexpectedClose(err error) error {
return nil
}
func toJsonString(o interface{}) string {
if s, err := json.Marshal(o); err != nil {
panic(err)
} else {
return string(s)
}
}
func checkMessageType(message *ServerMessage, expectedType string) error {
if message == nil {
return ErrNoMessageReceived
}
if message.Type != expectedType {
return fmt.Errorf("Expected \"%s\" message, got %+v (%s)", expectedType, message, toJsonString(message))
return fmt.Errorf("Expected \"%s\" message, got %+v", expectedType, message)
}
switch message.Type {
case "hello":
if message.Hello == nil {
return fmt.Errorf("Expected \"%s\" message, got %+v (%s)", expectedType, message, toJsonString(message))
return fmt.Errorf("Expected \"%s\" message, got %+v", expectedType, message)
}
case "message":
if message.Message == nil {
return fmt.Errorf("Expected \"%s\" message, got %+v (%s)", expectedType, message, toJsonString(message))
return fmt.Errorf("Expected \"%s\" message, got %+v", expectedType, message)
} else if message.Message.Data == nil || len(*message.Message.Data) == 0 {
return fmt.Errorf("Received message without data")
}
case "room":
if message.Room == nil {
return fmt.Errorf("Expected \"%s\" message, got %+v (%s)", expectedType, message, toJsonString(message))
return fmt.Errorf("Expected \"%s\" message, got %+v", expectedType, message)
}
case "event":
if message.Event == nil {
return fmt.Errorf("Expected \"%s\" message, got %+v (%s)", expectedType, message, toJsonString(message))
return fmt.Errorf("Expected \"%s\" message, got %+v", expectedType, message)
}
case "transient":
if message.TransientData == nil {
return fmt.Errorf("Expected \"%s\" message, got %+v (%s)", expectedType, message, toJsonString(message))
return fmt.Errorf("Expected \"%s\" message, got %+v", expectedType, message)
}
}