- var header interface{}
-
- // encode message header
- switch msg.GetMessageType() {
- case api.RequestMessage:
- header = &VppRequestHeader{VlMsgID: msgID}
- case api.ReplyMessage:
- header = &VppReplyHeader{VlMsgID: msgID}
- case api.EventMessage:
- header = &VppEventHeader{VlMsgID: msgID}
- default:
- header = &VppOtherHeader{VlMsgID: msgID}
+ marshaller, ok := msg.(Marshaler)
+ if !ok {
+ marshaller = Wrapper{msg}