package api
import (
- "fmt"
"time"
)
// from VPP before returning an error.
SetReplyTimeout(timeout time.Duration)
+ // CheckCompatibility checks the compatiblity for the given messages.
+ // It will return an error if any of the given messages are not compatible.
+ CheckCompatiblity(msgs ...Message) error
+
// Close closes the API channel and releases all API channel-related resources in the ChannelProvider.
Close()
}
Unsubscribe() error
}
-// map of registered messages
var registeredMessages = make(map[string]Message)
// RegisterMessage is called from generated code to register message.
func RegisterMessage(x Message, name string) {
- if _, ok := registeredMessages[name]; ok {
+ name = x.GetMessageName() + "_" + x.GetCrcString()
+ /*if _, ok := registeredMessages[name]; ok {
panic(fmt.Errorf("govpp: duplicate message registered: %s (%s)", name, x.GetCrcString()))
- }
+ }*/
registeredMessages[name] = x
}
func GetRegisteredMessages() map[string]Message {
return registeredMessages
}
+
+// GoVppAPIPackageIsVersion1 is referenced from generated binapi files
+// to assert that that code is compatible with this version of the GoVPP api package.
+const GoVppAPIPackageIsVersion1 = true