
Allow the api to stay at the same v1 go package name and keep using a 1.x version number. This indicates the API is still at 1.x and allows sharing proto types with containerd 1.6 and 1.7 releases. Signed-off-by: Derek McGowan <derek@mcg.dev>
125 lines
3.6 KiB
Go
125 lines
3.6 KiB
Go
// Code generated by protoc-gen-go-ttrpc. DO NOT EDIT.
|
|
// source: github.com/containerd/containerd/api/services/events/v1/events.proto
|
|
package events
|
|
|
|
import (
|
|
context "context"
|
|
types "github.com/containerd/containerd/api/types"
|
|
ttrpc "github.com/containerd/ttrpc"
|
|
emptypb "google.golang.org/protobuf/types/known/emptypb"
|
|
)
|
|
|
|
type TTRPCEventsService interface {
|
|
Publish(context.Context, *PublishRequest) (*emptypb.Empty, error)
|
|
Forward(context.Context, *ForwardRequest) (*emptypb.Empty, error)
|
|
Subscribe(context.Context, *SubscribeRequest, TTRPCEvents_SubscribeServer) error
|
|
}
|
|
|
|
type TTRPCEvents_SubscribeServer interface {
|
|
Send(*types.Envelope) error
|
|
ttrpc.StreamServer
|
|
}
|
|
|
|
type ttrpceventsSubscribeServer struct {
|
|
ttrpc.StreamServer
|
|
}
|
|
|
|
func (x *ttrpceventsSubscribeServer) Send(m *types.Envelope) error {
|
|
return x.StreamServer.SendMsg(m)
|
|
}
|
|
|
|
func RegisterTTRPCEventsService(srv *ttrpc.Server, svc TTRPCEventsService) {
|
|
srv.RegisterService("containerd.services.events.v1.Events", &ttrpc.ServiceDesc{
|
|
Methods: map[string]ttrpc.Method{
|
|
"Publish": func(ctx context.Context, unmarshal func(interface{}) error) (interface{}, error) {
|
|
var req PublishRequest
|
|
if err := unmarshal(&req); err != nil {
|
|
return nil, err
|
|
}
|
|
return svc.Publish(ctx, &req)
|
|
},
|
|
"Forward": func(ctx context.Context, unmarshal func(interface{}) error) (interface{}, error) {
|
|
var req ForwardRequest
|
|
if err := unmarshal(&req); err != nil {
|
|
return nil, err
|
|
}
|
|
return svc.Forward(ctx, &req)
|
|
},
|
|
},
|
|
Streams: map[string]ttrpc.Stream{
|
|
"Subscribe": {
|
|
Handler: func(ctx context.Context, stream ttrpc.StreamServer) (interface{}, error) {
|
|
m := new(SubscribeRequest)
|
|
if err := stream.RecvMsg(m); err != nil {
|
|
return nil, err
|
|
}
|
|
return nil, svc.Subscribe(ctx, m, &ttrpceventsSubscribeServer{stream})
|
|
},
|
|
StreamingClient: false,
|
|
StreamingServer: true,
|
|
},
|
|
},
|
|
})
|
|
}
|
|
|
|
type TTRPCEventsClient interface {
|
|
Publish(context.Context, *PublishRequest) (*emptypb.Empty, error)
|
|
Forward(context.Context, *ForwardRequest) (*emptypb.Empty, error)
|
|
Subscribe(context.Context, *SubscribeRequest) (TTRPCEvents_SubscribeClient, error)
|
|
}
|
|
|
|
type ttrpceventsClient struct {
|
|
client *ttrpc.Client
|
|
}
|
|
|
|
func NewTTRPCEventsClient(client *ttrpc.Client) TTRPCEventsClient {
|
|
return &ttrpceventsClient{
|
|
client: client,
|
|
}
|
|
}
|
|
|
|
func (c *ttrpceventsClient) Publish(ctx context.Context, req *PublishRequest) (*emptypb.Empty, error) {
|
|
var resp emptypb.Empty
|
|
if err := c.client.Call(ctx, "containerd.services.events.v1.Events", "Publish", req, &resp); err != nil {
|
|
return nil, err
|
|
}
|
|
return &resp, nil
|
|
}
|
|
|
|
func (c *ttrpceventsClient) Forward(ctx context.Context, req *ForwardRequest) (*emptypb.Empty, error) {
|
|
var resp emptypb.Empty
|
|
if err := c.client.Call(ctx, "containerd.services.events.v1.Events", "Forward", req, &resp); err != nil {
|
|
return nil, err
|
|
}
|
|
return &resp, nil
|
|
}
|
|
|
|
func (c *ttrpceventsClient) Subscribe(ctx context.Context, req *SubscribeRequest) (TTRPCEvents_SubscribeClient, error) {
|
|
stream, err := c.client.NewStream(ctx, &ttrpc.StreamDesc{
|
|
StreamingClient: false,
|
|
StreamingServer: true,
|
|
}, "containerd.services.events.v1.Events", "Subscribe", req)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
x := &ttrpceventsSubscribeClient{stream}
|
|
return x, nil
|
|
}
|
|
|
|
type TTRPCEvents_SubscribeClient interface {
|
|
Recv() (*types.Envelope, error)
|
|
ttrpc.ClientStream
|
|
}
|
|
|
|
type ttrpceventsSubscribeClient struct {
|
|
ttrpc.ClientStream
|
|
}
|
|
|
|
func (x *ttrpceventsSubscribeClient) Recv() (*types.Envelope, error) {
|
|
m := new(types.Envelope)
|
|
if err := x.ClientStream.RecvMsg(m); err != nil {
|
|
return nil, err
|
|
}
|
|
return m, nil
|
|
}
|