in eventmesh-sdks/eventmesh-sdk-go/common/protocol/tcp/codec/codec.go [143:180]
func deserializeBody(bodyStr string, header tcp.Header) interface{} {
command := header.Cmd
switch command {
case tcp.DefaultCommand.HELLO_REQUEST:
case tcp.DefaultCommand.RECOMMEND_REQUEST:
var useAgent tcp.UserAgent
gutils.UnMarshalJsonString(bodyStr, &useAgent)
return useAgent
case tcp.DefaultCommand.SUBSCRIBE_REQUEST:
case tcp.DefaultCommand.UNSUBSCRIBE_REQUEST:
return nil
//return OBJECT_MAPPER.readValue(bodyJsonString, Subscription.class);
case tcp.DefaultCommand.REQUEST_TO_SERVER:
case tcp.DefaultCommand.RESPONSE_TO_SERVER:
case tcp.DefaultCommand.ASYNC_MESSAGE_TO_SERVER:
case tcp.DefaultCommand.BROADCAST_MESSAGE_TO_SERVER:
case tcp.DefaultCommand.REQUEST_TO_CLIENT:
case tcp.DefaultCommand.RESPONSE_TO_CLIENT:
case tcp.DefaultCommand.ASYNC_MESSAGE_TO_CLIENT:
case tcp.DefaultCommand.BROADCAST_MESSAGE_TO_CLIENT:
case tcp.DefaultCommand.REQUEST_TO_CLIENT_ACK:
case tcp.DefaultCommand.RESPONSE_TO_CLIENT_ACK:
case tcp.DefaultCommand.ASYNC_MESSAGE_TO_CLIENT_ACK:
case tcp.DefaultCommand.BROADCAST_MESSAGE_TO_CLIENT_ACK:
// The message string will be deserialized by protocol plugin, if the event is cloudevents, the body is
// just a string.
return bodyStr
case tcp.DefaultCommand.REDIRECT_TO_CLIENT:
return nil
//return OBJECT_MAPPER.readValue(bodyJsonString, RedirectInfo.class);
default:
// FIXME improve codes
log.Errorf("Invalidate TCP command: %s", command)
return nil
}
return nil
}