1//Generated by gRPC Go plugin 2//If you make any local changes, they will be lost 3//source: monster_test 4 5package Example 6 7import "github.com/google/flatbuffers/go" 8 9import ( 10 context "context" 11 grpc "google.golang.org/grpc" 12) 13 14// Client API for MonsterStorage service 15type MonsterStorageClient interface{ 16 Store(ctx context.Context, in *flatbuffers.Builder, 17 opts... grpc.CallOption) (* Stat, error) 18 Retrieve(ctx context.Context, in *flatbuffers.Builder, 19 opts... grpc.CallOption) (MonsterStorage_RetrieveClient, error) 20 GetMaxHitPoint(ctx context.Context, 21 opts... grpc.CallOption) (MonsterStorage_GetMaxHitPointClient, error) 22 GetMinMaxHitPoints(ctx context.Context, 23 opts... grpc.CallOption) (MonsterStorage_GetMinMaxHitPointsClient, error) 24} 25 26type monsterStorageClient struct { 27 cc *grpc.ClientConn 28} 29 30func NewMonsterStorageClient(cc *grpc.ClientConn) MonsterStorageClient { 31 return &monsterStorageClient{cc} 32} 33 34func (c *monsterStorageClient) Store(ctx context.Context, in *flatbuffers.Builder, 35 opts... grpc.CallOption) (* Stat, error) { 36 out := new(Stat) 37 err := grpc.Invoke(ctx, "/MyGame.Example.MonsterStorage/Store", in, out, c.cc, opts...) 38 if err != nil { return nil, err } 39 return out, nil 40} 41 42func (c *monsterStorageClient) Retrieve(ctx context.Context, in *flatbuffers.Builder, 43 opts... grpc.CallOption) (MonsterStorage_RetrieveClient, error) { 44 stream, err := grpc.NewClientStream(ctx, &_MonsterStorage_serviceDesc.Streams[0], c.cc, "/MyGame.Example.MonsterStorage/Retrieve", opts...) 45 if err != nil { return nil, err } 46 x := &monsterStorageRetrieveClient{stream} 47 if err := x.ClientStream.SendMsg(in); err != nil { return nil, err } 48 if err := x.ClientStream.CloseSend(); err != nil { return nil, err } 49 return x,nil 50} 51 52type MonsterStorage_RetrieveClient interface { 53 Recv() (*Monster, error) 54 grpc.ClientStream 55} 56 57type monsterStorageRetrieveClient struct{ 58 grpc.ClientStream 59} 60 61func (x *monsterStorageRetrieveClient) Recv() (*Monster, error) { 62 m := new(Monster) 63 if err := x.ClientStream.RecvMsg(m); err != nil { return nil, err } 64 return m, nil 65} 66 67func (c *monsterStorageClient) GetMaxHitPoint(ctx context.Context, 68 opts... grpc.CallOption) (MonsterStorage_GetMaxHitPointClient, error) { 69 stream, err := grpc.NewClientStream(ctx, &_MonsterStorage_serviceDesc.Streams[1], c.cc, "/MyGame.Example.MonsterStorage/GetMaxHitPoint", opts...) 70 if err != nil { return nil, err } 71 x := &monsterStorageGetMaxHitPointClient{stream} 72 return x,nil 73} 74 75type MonsterStorage_GetMaxHitPointClient interface { 76 Send(*flatbuffers.Builder) error 77 CloseAndRecv() (*Stat, error) 78 grpc.ClientStream 79} 80 81type monsterStorageGetMaxHitPointClient struct{ 82 grpc.ClientStream 83} 84 85func (x *monsterStorageGetMaxHitPointClient) Send(m *flatbuffers.Builder) error { 86 return x.ClientStream.SendMsg(m) 87} 88 89func (x *monsterStorageGetMaxHitPointClient) CloseAndRecv() (*Stat, error) { 90 if err := x.ClientStream.CloseSend(); err != nil { return nil, err } 91 m := new (Stat) 92 if err := x.ClientStream.RecvMsg(m); err != nil { return nil, err } 93 return m, nil 94} 95 96func (c *monsterStorageClient) GetMinMaxHitPoints(ctx context.Context, 97 opts... grpc.CallOption) (MonsterStorage_GetMinMaxHitPointsClient, error) { 98 stream, err := grpc.NewClientStream(ctx, &_MonsterStorage_serviceDesc.Streams[2], c.cc, "/MyGame.Example.MonsterStorage/GetMinMaxHitPoints", opts...) 99 if err != nil { return nil, err } 100 x := &monsterStorageGetMinMaxHitPointsClient{stream} 101 return x,nil 102} 103 104type MonsterStorage_GetMinMaxHitPointsClient interface { 105 Send(*flatbuffers.Builder) error 106 Recv() (*Stat, error) 107 grpc.ClientStream 108} 109 110type monsterStorageGetMinMaxHitPointsClient struct{ 111 grpc.ClientStream 112} 113 114func (x *monsterStorageGetMinMaxHitPointsClient) Send(m *flatbuffers.Builder) error { 115 return x.ClientStream.SendMsg(m) 116} 117 118func (x *monsterStorageGetMinMaxHitPointsClient) Recv() (*Stat, error) { 119 m := new(Stat) 120 if err := x.ClientStream.RecvMsg(m); err != nil { return nil, err } 121 return m, nil 122} 123 124// Server API for MonsterStorage service 125type MonsterStorageServer interface { 126 Store(context.Context, *Monster) (*flatbuffers.Builder, error) 127 Retrieve(*Stat, MonsterStorage_RetrieveServer) error 128 GetMaxHitPoint(MonsterStorage_GetMaxHitPointServer) error 129 GetMinMaxHitPoints(MonsterStorage_GetMinMaxHitPointsServer) error 130} 131 132func RegisterMonsterStorageServer(s *grpc.Server, srv MonsterStorageServer) { 133 s.RegisterService(&_MonsterStorage_serviceDesc, srv) 134} 135 136func _MonsterStorage_Store_Handler(srv interface{}, ctx context.Context, 137 dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 138 in := new(Monster) 139 if err := dec(in); err != nil { return nil, err } 140 if interceptor == nil { return srv.(MonsterStorageServer).Store(ctx, in) } 141 info := &grpc.UnaryServerInfo{ 142 Server: srv, 143 FullMethod: "/MyGame.Example.MonsterStorage/Store", 144 } 145 146 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 147 return srv.(MonsterStorageServer).Store(ctx, req.(* Monster)) 148 } 149 return interceptor(ctx, in, info, handler) 150} 151 152 153func _MonsterStorage_Retrieve_Handler(srv interface{}, stream grpc.ServerStream) error { 154 m := new(Stat) 155 if err := stream.RecvMsg(m); err != nil { return err } 156 return srv.(MonsterStorageServer).Retrieve(m, &monsterStorageRetrieveServer{stream}) 157} 158 159type MonsterStorage_RetrieveServer interface { 160 Send(* flatbuffers.Builder) error 161 grpc.ServerStream 162} 163 164type monsterStorageRetrieveServer struct { 165 grpc.ServerStream 166} 167 168func (x *monsterStorageRetrieveServer) Send(m *flatbuffers.Builder) error { 169 return x.ServerStream.SendMsg(m) 170} 171 172 173func _MonsterStorage_GetMaxHitPoint_Handler(srv interface{}, stream grpc.ServerStream) error { 174 return srv.(MonsterStorageServer).GetMaxHitPoint(&monsterStorageGetMaxHitPointServer{stream}) 175} 176 177type MonsterStorage_GetMaxHitPointServer interface { 178 Recv() (* Monster, error) 179 SendAndClose(* flatbuffers.Builder) error 180 grpc.ServerStream 181} 182 183type monsterStorageGetMaxHitPointServer struct { 184 grpc.ServerStream 185} 186 187func (x *monsterStorageGetMaxHitPointServer) Recv() (*Monster, error) { 188 m := new(Monster) 189 if err := x.ServerStream.RecvMsg(m); err != nil { return nil, err } 190 return m, nil 191} 192 193func (x *monsterStorageGetMaxHitPointServer) SendAndClose(m *flatbuffers.Builder) error { 194 return x.ServerStream.SendMsg(m) 195} 196 197 198func _MonsterStorage_GetMinMaxHitPoints_Handler(srv interface{}, stream grpc.ServerStream) error { 199 return srv.(MonsterStorageServer).GetMinMaxHitPoints(&monsterStorageGetMinMaxHitPointsServer{stream}) 200} 201 202type MonsterStorage_GetMinMaxHitPointsServer interface { 203 Send(* flatbuffers.Builder) error 204 Recv() (* Monster, error) 205 grpc.ServerStream 206} 207 208type monsterStorageGetMinMaxHitPointsServer struct { 209 grpc.ServerStream 210} 211 212func (x *monsterStorageGetMinMaxHitPointsServer) Send(m *flatbuffers.Builder) error { 213 return x.ServerStream.SendMsg(m) 214} 215 216func (x *monsterStorageGetMinMaxHitPointsServer) Recv() (*Monster, error) { 217 m := new(Monster) 218 if err := x.ServerStream.RecvMsg(m); err != nil { return nil, err } 219 return m, nil 220} 221 222 223var _MonsterStorage_serviceDesc = grpc.ServiceDesc{ 224 ServiceName: "MyGame.Example.MonsterStorage", 225 HandlerType: (*MonsterStorageServer)(nil), 226 Methods: []grpc.MethodDesc{ 227 { 228 MethodName: "Store", 229 Handler: _MonsterStorage_Store_Handler, 230 }, 231 }, 232 Streams: []grpc.StreamDesc{ 233 { 234 StreamName: "Retrieve", 235 Handler: _MonsterStorage_Retrieve_Handler, 236 ServerStreams: true, 237 }, 238 { 239 StreamName: "GetMaxHitPoint", 240 Handler: _MonsterStorage_GetMaxHitPoint_Handler, 241 ClientStreams: true, 242 }, 243 { 244 StreamName: "GetMinMaxHitPoints", 245 Handler: _MonsterStorage_GetMinMaxHitPoints_Handler, 246 ServerStreams: true, 247 ClientStreams: true, 248 }, 249 }, 250} 251 252