コード例 #1
0
ファイル: protocol_v2.go プロジェクト: absolute8511/nsq
func SendMessage(client *nsqd.ClientV2, msg *nsqd.Message, buf *bytes.Buffer, needFlush bool) error {
	buf.Reset()
	if !client.EnableTrace {
		_, err := msg.WriteTo(buf)
		if err != nil {
			return err
		}
	} else {
		_, err := msg.WriteToWithDetail(buf)
		if err != nil {
			return err
		}
	}

	err := internalSend(client, frameTypeMessage, buf.Bytes(), needFlush)
	if err != nil {
		return err
	}

	return nil
}