// Code generated by GoVPP binapi-generator. DO NOT EDIT.
-// source: memif.api.json
+// source: /usr/share/vpp/api/plugins/memif.api.json
/*
- Package memif is a generated from VPP binary API module 'memif'.
+Package memif is a generated from VPP binary API module 'memif'.
- It contains following objects:
- 5 services
+ The memif module consists of:
10 messages
+ 5 services
*/
package memif
import api "git.fd.io/govpp.git/api"
-import struc "github.com/lunixbochs/struc"
import bytes "bytes"
+import context "context"
+import strconv "strconv"
+import struc "github.com/lunixbochs/struc"
// Reference imports to suppress errors if they are not otherwise used.
var _ = api.RegisterMessage
-var _ = struc.Pack
var _ = bytes.NewBuffer
+var _ = context.Background
+var _ = strconv.Itoa
+var _ = struc.Pack
-// Services represents VPP binary API services:
-type Services interface {
- DumpMemif(*MemifDump) ([]*MemifDetails, error)
- DumpMemifSocketFilename(*MemifSocketFilenameDump) ([]*MemifSocketFilenameDetails, error)
- MemifCreate(*MemifCreate) (*MemifCreateReply, error)
- MemifDelete(*MemifDelete) (*MemifDeleteReply, error)
- MemifSocketFilenameAddDel(*MemifSocketFilenameAddDel) (*MemifSocketFilenameAddDelReply, error)
-}
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the GoVPP api package it is being compiled against.
+// A compilation error at this line likely means your copy of the
+// GoVPP api package needs to be updated.
+const _ = api.GoVppAPIPackageIsVersion1 // please upgrade the GoVPP api package
+
+const (
+ // ModuleName is the name of this module.
+ ModuleName = "memif"
+ // APIVersion is the API version of this module.
+ APIVersion = "2.0.0"
+ // VersionCrc is the CRC of this module.
+ VersionCrc = 0x31b42e17
+)
/* Messages */
api.RegisterMessage((*MemifSocketFilenameDump)(nil), "memif.MemifSocketFilenameDump")
}
-var Messages = []api.Message{
- (*MemifCreate)(nil),
- (*MemifCreateReply)(nil),
- (*MemifDelete)(nil),
- (*MemifDeleteReply)(nil),
- (*MemifDetails)(nil),
- (*MemifDump)(nil),
- (*MemifSocketFilenameAddDel)(nil),
- (*MemifSocketFilenameAddDelReply)(nil),
- (*MemifSocketFilenameDetails)(nil),
- (*MemifSocketFilenameDump)(nil),
+// Messages returns list of all messages in this module.
+func AllMessages() []api.Message {
+ return []api.Message{
+ (*MemifCreate)(nil),
+ (*MemifCreateReply)(nil),
+ (*MemifDelete)(nil),
+ (*MemifDeleteReply)(nil),
+ (*MemifDetails)(nil),
+ (*MemifDump)(nil),
+ (*MemifSocketFilenameAddDel)(nil),
+ (*MemifSocketFilenameAddDelReply)(nil),
+ (*MemifSocketFilenameDetails)(nil),
+ (*MemifSocketFilenameDump)(nil),
+ }
+}
+
+// Service represents services in VPP binary API.
+type Service interface {
+ DumpMemif(ctx context.Context, in *MemifDump) ([]*MemifDetails, error)
+ DumpMemifSocketFilename(ctx context.Context, in *MemifSocketFilenameDump) ([]*MemifSocketFilenameDetails, error)
+ MemifCreate(ctx context.Context, in *MemifCreate) (*MemifCreateReply, error)
+ MemifDelete(ctx context.Context, in *MemifDelete) (*MemifDeleteReply, error)
+ MemifSocketFilenameAddDel(ctx context.Context, in *MemifSocketFilenameAddDel) (*MemifSocketFilenameAddDelReply, error)
+}
+
+type service struct {
+ ch api.Channel
+}
+
+func NewService(ch api.Channel) Service {
+ return &service{ch}
+}
+
+func (c *service) DumpMemif(ctx context.Context, in *MemifDump) ([]*MemifDetails, error) {
+ var dump []*MemifDetails
+ req := c.ch.SendMultiRequest(in)
+ for {
+ m := new(MemifDetails)
+ stop, err := req.ReceiveReply(m)
+ if stop {
+ break
+ }
+ if err != nil {
+ return nil, err
+ }
+ dump = append(dump, m)
+ }
+ return dump, nil
+}
+
+func (c *service) DumpMemifSocketFilename(ctx context.Context, in *MemifSocketFilenameDump) ([]*MemifSocketFilenameDetails, error) {
+ var dump []*MemifSocketFilenameDetails
+ req := c.ch.SendMultiRequest(in)
+ for {
+ m := new(MemifSocketFilenameDetails)
+ stop, err := req.ReceiveReply(m)
+ if stop {
+ break
+ }
+ if err != nil {
+ return nil, err
+ }
+ dump = append(dump, m)
+ }
+ return dump, nil
+}
+
+func (c *service) MemifCreate(ctx context.Context, in *MemifCreate) (*MemifCreateReply, error) {
+ out := new(MemifCreateReply)
+ err := c.ch.SendRequest(in).ReceiveReply(out)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *service) MemifDelete(ctx context.Context, in *MemifDelete) (*MemifDeleteReply, error) {
+ out := new(MemifDeleteReply)
+ err := c.ch.SendRequest(in).ReceiveReply(out)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *service) MemifSocketFilenameAddDel(ctx context.Context, in *MemifSocketFilenameAddDel) (*MemifSocketFilenameAddDelReply, error) {
+ out := new(MemifSocketFilenameAddDelReply)
+ err := c.ch.SendRequest(in).ReceiveReply(out)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
}