aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--go.mod3
-rw-r--r--telebot/makefile4
-rw-r--r--telebot/v1/telegram.pb.go7
-rw-r--r--telebot/v1/telegram_grpc.pb.go101
4 files changed, 107 insertions, 8 deletions
diff --git a/go.mod b/go.mod
index d2eb9ab..131b0e8 100644
--- a/go.mod
+++ b/go.mod
@@ -3,6 +3,7 @@ module github.com/terminaldweller/grpc
go 1.15
require (
- github.com/golang/protobuf v1.5.2
+ github.com/golang/protobuf v1.5.2 // indirect
+ google.golang.org/grpc v1.42.0
google.golang.org/protobuf v1.27.1
)
diff --git a/telebot/makefile b/telebot/makefile
index 70c353b..b919633 100644
--- a/telebot/makefile
+++ b/telebot/makefile
@@ -8,7 +8,9 @@ DEFAULT: default
default: $(ARTIFACT_LIST)
$(SRC_DIR)/%.pb.go:$(SRC_DIR)/%.proto
- protoc --proto_path=$(SRC_DIR) --go_out=$(DST_DIR) --go_opt=paths=source_relative $<
+ protoc --proto_path=$(SRC_DIR) \
+ --go_out=$(DST_DIR) --go_opt=paths=source_relative \
+ --go-grpc_out=$(DST_DIR) --go-grpc_opt=paths=source_relative $<
if [ -d go.mod ];then : else;go mod init github.com/terminaldweller/grpc/telebot/v1;fi
go mod tidy
diff --git a/telebot/v1/telegram.pb.go b/telebot/v1/telegram.pb.go
index ab46f67..85a653a 100644
--- a/telebot/v1/telegram.pb.go
+++ b/telebot/v1/telegram.pb.go
@@ -1,13 +1,12 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
-// protoc-gen-go v1.23.0
+// protoc-gen-go v1.27.1
// protoc v3.15.6
// source: telegram.proto
package v1
import (
- proto "github.com/golang/protobuf/proto"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
timestamppb "google.golang.org/protobuf/types/known/timestamppb"
@@ -22,10 +21,6 @@ const (
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
-// This is a compile-time assertion that a sufficiently up-to-date version
-// of the legacy proto package is being used.
-const _ = proto.ProtoPackageIsVersion4
-
type NotificationRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
diff --git a/telebot/v1/telegram_grpc.pb.go b/telebot/v1/telegram_grpc.pb.go
new file mode 100644
index 0000000..7f55861
--- /dev/null
+++ b/telebot/v1/telegram_grpc.pb.go
@@ -0,0 +1,101 @@
+// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
+
+package v1
+
+import (
+ context "context"
+ grpc "google.golang.org/grpc"
+ codes "google.golang.org/grpc/codes"
+ status "google.golang.org/grpc/status"
+)
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the grpc package it is being compiled against.
+// Requires gRPC-Go v1.32.0 or later.
+const _ = grpc.SupportPackageIsVersion7
+
+// NotificationServiceClient is the client API for NotificationService service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
+type NotificationServiceClient interface {
+ Notify(ctx context.Context, in *NotificationRequest, opts ...grpc.CallOption) (*NotificationResponse, error)
+}
+
+type notificationServiceClient struct {
+ cc grpc.ClientConnInterface
+}
+
+func NewNotificationServiceClient(cc grpc.ClientConnInterface) NotificationServiceClient {
+ return &notificationServiceClient{cc}
+}
+
+func (c *notificationServiceClient) Notify(ctx context.Context, in *NotificationRequest, opts ...grpc.CallOption) (*NotificationResponse, error) {
+ out := new(NotificationResponse)
+ err := c.cc.Invoke(ctx, "/hived.NotificationService/Notify", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+// NotificationServiceServer is the server API for NotificationService service.
+// All implementations must embed UnimplementedNotificationServiceServer
+// for forward compatibility
+type NotificationServiceServer interface {
+ Notify(context.Context, *NotificationRequest) (*NotificationResponse, error)
+ mustEmbedUnimplementedNotificationServiceServer()
+}
+
+// UnimplementedNotificationServiceServer must be embedded to have forward compatible implementations.
+type UnimplementedNotificationServiceServer struct {
+}
+
+func (UnimplementedNotificationServiceServer) Notify(context.Context, *NotificationRequest) (*NotificationResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method Notify not implemented")
+}
+func (UnimplementedNotificationServiceServer) mustEmbedUnimplementedNotificationServiceServer() {}
+
+// UnsafeNotificationServiceServer may be embedded to opt out of forward compatibility for this service.
+// Use of this interface is not recommended, as added methods to NotificationServiceServer will
+// result in compilation errors.
+type UnsafeNotificationServiceServer interface {
+ mustEmbedUnimplementedNotificationServiceServer()
+}
+
+func RegisterNotificationServiceServer(s grpc.ServiceRegistrar, srv NotificationServiceServer) {
+ s.RegisterService(&NotificationService_ServiceDesc, srv)
+}
+
+func _NotificationService_Notify_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(NotificationRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(NotificationServiceServer).Notify(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/hived.NotificationService/Notify",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(NotificationServiceServer).Notify(ctx, req.(*NotificationRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+// NotificationService_ServiceDesc is the grpc.ServiceDesc for NotificationService service.
+// It's only intended for direct use with grpc.RegisterService,
+// and not to be introspected or modified (even as a copy)
+var NotificationService_ServiceDesc = grpc.ServiceDesc{
+ ServiceName: "hived.NotificationService",
+ HandlerType: (*NotificationServiceServer)(nil),
+ Methods: []grpc.MethodDesc{
+ {
+ MethodName: "Notify",
+ Handler: _NotificationService_Notify_Handler,
+ },
+ },
+ Streams: []grpc.StreamDesc{},
+ Metadata: "telegram.proto",
+}