2017-01-01 21:39:05 +03:00
|
|
|
package http
|
|
|
|
|
|
|
|
import (
|
2021-01-10 14:48:10 +03:00
|
|
|
"github.com/unistack-org/micro/v3/client"
|
2017-01-01 21:39:05 +03:00
|
|
|
)
|
|
|
|
|
2018-04-17 13:26:18 +03:00
|
|
|
type httpMessage struct {
|
2021-04-25 16:18:54 +03:00
|
|
|
payload interface{}
|
2017-01-01 21:39:05 +03:00
|
|
|
topic string
|
|
|
|
contentType string
|
|
|
|
}
|
|
|
|
|
2018-05-10 19:38:14 +03:00
|
|
|
func newHTTPMessage(topic string, payload interface{}, contentType string, opts ...client.MessageOption) client.Message {
|
2021-01-10 14:48:10 +03:00
|
|
|
options := client.NewMessageOptions(opts...)
|
|
|
|
if len(options.ContentType) == 0 {
|
|
|
|
options.ContentType = contentType
|
2018-05-10 19:38:14 +03:00
|
|
|
}
|
|
|
|
|
2018-04-17 13:26:18 +03:00
|
|
|
return &httpMessage{
|
|
|
|
payload: payload,
|
2017-01-01 21:39:05 +03:00
|
|
|
topic: topic,
|
2021-01-10 14:48:10 +03:00
|
|
|
contentType: options.ContentType,
|
2017-01-01 21:39:05 +03:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2018-04-17 13:26:18 +03:00
|
|
|
func (h *httpMessage) ContentType() string {
|
2017-01-01 21:39:05 +03:00
|
|
|
return h.contentType
|
|
|
|
}
|
|
|
|
|
2018-04-17 13:26:18 +03:00
|
|
|
func (h *httpMessage) Topic() string {
|
2017-01-01 21:39:05 +03:00
|
|
|
return h.topic
|
|
|
|
}
|
|
|
|
|
2018-04-17 13:26:18 +03:00
|
|
|
func (h *httpMessage) Payload() interface{} {
|
|
|
|
return h.payload
|
2017-01-01 21:39:05 +03:00
|
|
|
}
|