// 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) os.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 SendRequestMessage(writer io.Writer, msgId int, funcName string, arguments []interface{}) os.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.NewValue(arguments).(reflect.ArrayOrSliceValue)) return err }