// This is a low-level function that is not supposed to be called directly // by the user. Change this if the MessagePack protocol is updated. func SendRequestMessage(writer io.Writer, msgId int, funcName string, arguments []interface{}) error { _, err := writer.Write([]byte{0x94}) if err != nil { return err } _, err = msgpack.PackInt(writer, REQUEST) if err != nil { return err } _, err = msgpack.PackInt(writer, msgId) if err != nil { return err } _, err = msgpack.PackBytes(writer, []byte(funcName)) if err != nil { return err } _, err = msgpack.PackArray(writer, reflect.ValueOf(arguments)) return err }
// This is a low-level function that is not supposed to be called directly // by the user. Change this if the MessagePack protocol is updated. func SendErrorResponseMessage(writer io.Writer, msgId int, errMsg string) error { _, err := writer.Write([]byte{0x94}) if err != nil { return err } _, err = msgpack.PackInt8(writer, RESPONSE) if err != nil { return err } _, err = msgpack.PackInt(writer, msgId) if err != nil { return err } _, err = msgpack.PackBytes(writer, []byte(errMsg)) if err != nil { return err } _, err = msgpack.PackNil(writer) return err }
// This is a low-level function that is not supposed to be called directly // by the user. Change this if the MessagePack protocol is updated. func SendResponseMessage(writer io.Writer, msgId int, value reflect.Value) error { _, err := writer.Write([]byte{0x94}) if err != nil { return err } _, err = msgpack.PackInt8(writer, RESPONSE) if err != nil { return err } _, err = msgpack.PackInt(writer, msgId) if err != nil { return err } _, err = msgpack.PackNil(writer) if err != nil { return err } _, err = msgpack.PackValue(writer, value) return err }