From eb884ab52dbc58a85bacbcccaf3e1cb29ff4ce31 Mon Sep 17 00:00:00 2001 From: Arnaud Delcasse Date: Tue, 13 Jan 2026 20:27:33 +0100 Subject: [PATCH] Add delete option --- go.mod | 21 +- go.sum | 60 +- grpcapi/groups.pb.go | 76 +- grpcapi/groupsmanagement.pb.go | 1185 ++++++++++----------------- grpcapi/groupsmanagement.proto | 7 + grpcapi/groupsmanagement_grpc.pb.go | 146 +++- grpcapi/groupsmember.pb.go | 77 +- grpcapi/grpcapi.go | 10 + handlers/groups.go | 4 + storage/mongodb.go | 10 + storage/storage.go | 1 + 11 files changed, 670 insertions(+), 927 deletions(-) diff --git a/go.mod b/go.mod index df5c7fc..480effd 100644 --- a/go.mod +++ b/go.mod @@ -1,15 +1,15 @@ module git.coopgo.io/coopgo-platform/groups-management -go 1.18 +go 1.24.0 require ( ariga.io/atlas v0.10.1 - github.com/google/uuid v1.3.0 + github.com/google/uuid v1.6.0 github.com/lib/pq v1.10.9 github.com/spf13/viper v1.12.0 go.mongodb.org/mongo-driver v1.10.1 - google.golang.org/grpc v1.48.0 - google.golang.org/protobuf v1.28.1 + google.golang.org/grpc v1.78.0 + google.golang.org/protobuf v1.36.11 ) require ( @@ -17,9 +17,8 @@ require ( github.com/apparentlymart/go-textseg/v13 v13.0.0 // indirect github.com/fsnotify/fsnotify v1.5.4 // indirect github.com/go-openapi/inflect v0.19.0 // indirect - github.com/golang/protobuf v1.5.2 // indirect github.com/golang/snappy v0.0.1 // indirect - github.com/google/go-cmp v0.5.8 // indirect + github.com/google/go-cmp v0.7.0 // indirect github.com/hashicorp/hcl v1.0.0 // indirect github.com/hashicorp/hcl/v2 v2.10.0 // indirect github.com/klauspost/compress v1.13.6 // indirect @@ -40,11 +39,11 @@ require ( github.com/xdg-go/stringprep v1.0.3 // indirect github.com/youmark/pkcs8 v0.0.0-20181117223130-1be2e3e5546d // indirect github.com/zclconf/go-cty v1.8.0 // indirect - golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d // indirect - golang.org/x/net v0.0.0-20220520000938-2e3eb7b945c2 // indirect - golang.org/x/sync v0.0.0-20210220032951-036812b2e83c // indirect - golang.org/x/sys v0.5.0 // indirect - golang.org/x/text v0.8.0 // indirect + golang.org/x/crypto v0.44.0 // indirect + golang.org/x/net v0.47.0 // indirect + golang.org/x/sync v0.18.0 // indirect + golang.org/x/sys v0.38.0 // indirect + golang.org/x/text v0.31.0 // indirect google.golang.org/genproto v0.0.0-20220519153652-3a47de7e79bd // indirect gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15 // indirect gopkg.in/ini.v1 v1.66.4 // indirect diff --git a/go.sum b/go.sum index c6386a1..f5ad08f 100644 --- a/go.sum +++ b/go.sum @@ -41,6 +41,7 @@ dmitri.shuralyov.com/gpu/mtl v0.0.0-20190408044501-666a987793e9/go.mod h1:H6x//7 github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= github.com/BurntSushi/xgb v0.0.0-20160522181843-27f122750802/go.mod h1:IVnqGOEym/WlBOVXweHU+Q+/VP0lqqI8lqeDx9IjBqo= github.com/DATA-DOG/go-sqlmock v1.5.0 h1:Shsta01QNfFxHCfpW6YH2STWB0MudeXXEWMr20OEh60= +github.com/DATA-DOG/go-sqlmock v1.5.0/go.mod h1:f/Ixk793poVmq4qj/V1dPUg2JEAKC73Q5eFN3EC/SaM= github.com/agext/levenshtein v1.2.1 h1:QmvMAjj2aEICytGiWzmxoE0x2KZvE0fvmqMOfy2tjT8= github.com/agext/levenshtein v1.2.1/go.mod h1:JEDfjyjHDjOF/1e4FlBE/PkbqA9OfWu2ki2W0IB5558= github.com/antihax/optional v1.0.0/go.mod h1:uupD/76wgC+ih3iEmQUL+0Ugr19nfwCT1kdvxnR2qWY= @@ -72,12 +73,17 @@ github.com/envoyproxy/go-control-plane v0.9.9-0.20201210154907-fd9021fe5dad/go.m github.com/envoyproxy/go-control-plane v0.10.2-0.20220325020618-49ff273808a1/go.mod h1:KJwIaB5Mv44NWtYuAOFCVOjcI94vtpEz2JU/D2v6IjE= github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= github.com/frankban/quicktest v1.14.3 h1:FJKSZTDHjyhriyC81FLQ0LY93eSai0ZyR/ZIkd3ZUKE= +github.com/frankban/quicktest v1.14.3/go.mod h1:mgiwOwqx65TmIk1wJ6Q7wvnVMocbUorkibMOrVTHZps= github.com/fsnotify/fsnotify v1.5.4 h1:jRbGcIw6P2Meqdwuo0H1p6JVLbL5DHKAKlYndzMwVZI= github.com/fsnotify/fsnotify v1.5.4/go.mod h1:OVB6XrOHzAwXMpEM7uPOzcehqUV2UqJxmVXmkdnm1bU= github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= github.com/go-gl/glfw v0.0.0-20190409004039-e6da0acd62b1/go.mod h1:vR7hzQXu2zJy9AVAgeJqvqgH9Q5CA+iKCZ2gyEVpxRU= github.com/go-gl/glfw/v3.3/glfw v0.0.0-20191125211704-12ad95a8df72/go.mod h1:tQ2UAYgL5IevRw8kRxooKSPJfGvJ9fJQFa0TUsXzTg8= github.com/go-gl/glfw/v3.3/glfw v0.0.0-20200222043503-6f7a984d4dc4/go.mod h1:tQ2UAYgL5IevRw8kRxooKSPJfGvJ9fJQFa0TUsXzTg8= +github.com/go-logr/logr v1.4.3 h1:CjnDlHq8ikf6E492q6eKboGOC0T8CDaOvkHCIg8idEI= +github.com/go-logr/logr v1.4.3/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY= +github.com/go-logr/stdr v1.2.2 h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag= +github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE= github.com/go-openapi/inflect v0.19.0 h1:9jCH9scKIbHeV9m12SmPilScz6krDxKRasNNSNPXu/4= github.com/go-openapi/inflect v0.19.0/go.mod h1:lHpZVlpIQqLyKwJ4N+YSc9hchQy/i12fJykb83CRBH4= github.com/go-test/deep v1.0.3 h1:ZrJSEWsXzPOxaZnFteGEfooLba+ju3FYIbOrS+rQd68= @@ -109,8 +115,9 @@ github.com/golang/protobuf v1.4.1/go.mod h1:U8fpvMrcmy5pZrNK1lt4xCsGvpyWQ/VVv6QD github.com/golang/protobuf v1.4.2/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= github.com/golang/protobuf v1.4.3/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk= -github.com/golang/protobuf v1.5.2 h1:ROPKBNFfQgOUMifHyP+KYbvpjbdoFNs+aK7DXlji0Tw= github.com/golang/protobuf v1.5.2/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= +github.com/golang/protobuf v1.5.4 h1:i7eJL8qZTpSEXOPTxNKhASYpMn+8e5Q6AdndVa1dWek= +github.com/golang/protobuf v1.5.4/go.mod h1:lnTiLA8Wa4RWRcIUkrtSVa5nRhsEGBg48fD6rSs7xps= github.com/golang/snappy v0.0.1 h1:Qgr9rKW7uDUkrbSmQeiDsGa8SjGyCOGtuasMWwvp2P4= github.com/golang/snappy v0.0.1/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= github.com/google/btree v0.0.0-20180813153112-4030bb1f1f0c/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= @@ -126,8 +133,8 @@ github.com/google/go-cmp v0.5.2/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/ github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.6/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= -github.com/google/go-cmp v0.5.8 h1:e6P7q2lk1O+qJJb4BtCQXlK8vWEO8V1ZeuEdJNOqZyg= -github.com/google/go-cmp v0.5.8/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= +github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8= +github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU= github.com/google/martian v2.1.0+incompatible/go.mod h1:9I4somxYTbIHy5NJKHRl3wXiIaQGbYVAs8BPL6v8lEs= github.com/google/martian/v3 v3.0.0/go.mod h1:y5Zk1BBys9G+gd6Jrk0W3cC1+ELVxBWuIGO+w/tUAp0= github.com/google/martian/v3 v3.1.0/go.mod h1:y5Zk1BBys9G+gd6Jrk0W3cC1+ELVxBWuIGO+w/tUAp0= @@ -143,8 +150,8 @@ github.com/google/pprof v0.0.0-20201203190320-1bf35d6f28c2/go.mod h1:kpwsk12EmLe github.com/google/pprof v0.0.0-20201218002935-b9804c9f04c2/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI= github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= -github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= -github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= +github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/googleapis/gax-go/v2 v2.0.4/go.mod h1:0Wqv26UfaUD9n4G6kQubkQ+KchISgw+vpHVxEJEs9eg= github.com/googleapis/gax-go/v2 v2.0.5/go.mod h1:DWXyrwAJ9X0FpwwEdw+IPEYBICEFu5mhpdKc/us6bOk= github.com/googleapis/google-cloud-go-testing v0.0.0-20200911160855-bcd43fbb19e8/go.mod h1:dvDLG8qkwmyD9a/MJJN3XJcT3xFxOKAvTZGvuZmac9g= @@ -165,9 +172,11 @@ github.com/klauspost/compress v1.13.6/go.mod h1:/3/Vjq9QcHkK5uEr5lBEmyoZ1iFhe47e github.com/kr/fs v0.1.0/go.mod h1:FFnZGqtBN9Gxj7eW1uZ42v5BccTP0vu6NEaFoC2HwRg= github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= github.com/kr/pretty v0.3.0 h1:WgNl7dwNpEZ6jJ9k1snq4pZsg7DOEN8hP9Xw0Tsjwk0= +github.com/kr/pretty v0.3.0/go.mod h1:640gp4NfQd8pI5XOwp5fnNeVWj67G7CFk/SaSQn7NBk= github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= +github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= github.com/kylelemons/godebug v0.0.0-20170820004349-d65d576e9348 h1:MtvEpTB6LX3vkb4ax0b5D2DHbNAUsen0Gx5wZoq3lV4= github.com/kylelemons/godebug v0.0.0-20170820004349-d65d576e9348/go.mod h1:B69LEHPfb2qLo0BaaOLcbitczOKLWTsrBG9LczfCD4k= github.com/lib/pq v1.10.9 h1:YXG7RB+JIjhP29X+OtkiDnYaXQwpS4JEWq7dtCCRUEw= @@ -193,6 +202,7 @@ github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1: github.com/rogpeppe/fastuuid v1.2.0/go.mod h1:jVj6XXZzXRy/MSR5jhDC/2q6DgLz+nrA6LYCDYWNEvQ= github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4= github.com/rogpeppe/go-internal v1.6.1 h1:/FiVV8dS/e+YqF2JvO3yXRFbBLTIuSDkuC7aBOAvL+k= +github.com/rogpeppe/go-internal v1.6.1/go.mod h1:xXDCJY+GAPziupqXw64V24skbSoqbTEfhy4qGm1nDQc= github.com/sergi/go-diff v1.0.0 h1:Kpca3qRNrduNnOQeazBd0ysaKrUJiIuISHxogkT9RPQ= github.com/sergi/go-diff v1.0.0/go.mod h1:0CfEIISq7TuYL3j771MWULgwwjU+GofnZX9QAmXWZgo= github.com/spf13/afero v1.8.2 h1:xehSyVa0YnHWsJ49JFljMpg1HX19V6NDZ1fkm1Xznbo= @@ -245,6 +255,18 @@ go.opencensus.io v0.22.2/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= go.opencensus.io v0.22.3/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= go.opencensus.io v0.22.4/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= go.opencensus.io v0.22.5/go.mod h1:5pWMHQbX5EPX2/62yrJeAkowc+lfs/XD7Uxpq3pI6kk= +go.opentelemetry.io/auto/sdk v1.2.1 h1:jXsnJ4Lmnqd11kwkBV2LgLoFMZKizbCi5fNZ/ipaZ64= +go.opentelemetry.io/auto/sdk v1.2.1/go.mod h1:KRTj+aOaElaLi+wW1kO/DZRXwkF4C5xPbEe3ZiIhN7Y= +go.opentelemetry.io/otel v1.38.0 h1:RkfdswUDRimDg0m2Az18RKOsnI8UDzppJAtj01/Ymk8= +go.opentelemetry.io/otel v1.38.0/go.mod h1:zcmtmQ1+YmQM9wrNsTGV/q/uyusom3P8RxwExxkZhjM= +go.opentelemetry.io/otel/metric v1.38.0 h1:Kl6lzIYGAh5M159u9NgiRkmoMKjvbsKtYRwgfrA6WpA= +go.opentelemetry.io/otel/metric v1.38.0/go.mod h1:kB5n/QoRM8YwmUahxvI3bO34eVtQf2i4utNVLr9gEmI= +go.opentelemetry.io/otel/sdk v1.38.0 h1:l48sr5YbNf2hpCUj/FoGhW9yDkl+Ma+LrVl8qaM5b+E= +go.opentelemetry.io/otel/sdk v1.38.0/go.mod h1:ghmNdGlVemJI3+ZB5iDEuk4bWA3GkTpW+DOoZMYBVVg= +go.opentelemetry.io/otel/sdk/metric v1.38.0 h1:aSH66iL0aZqo//xXzQLYozmWrXxyFkBJ6qT5wthqPoM= +go.opentelemetry.io/otel/sdk/metric v1.38.0/go.mod h1:dg9PBnW9XdQ1Hd6ZnRz689CbtrUp0wMMs9iPcgT9EZA= +go.opentelemetry.io/otel/trace v1.38.0 h1:Fxk5bKrDZJUH+AMyyIXGcFAPah0oRcT+LuNtJrmcNLE= +go.opentelemetry.io/otel/trace v1.38.0/go.mod h1:j1P9ivuFsTceSWe1oY+EeW3sc+Pp42sO++GHkg4wwhs= go.opentelemetry.io/proto/otlp v0.7.0/go.mod h1:PqfVotwruBrMGOCsRd/89rSnXhoiJIqeYNgFYFoEGnI= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20190426145343-a29dc8fdc734/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= @@ -254,8 +276,9 @@ golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8U golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20210421170649-83a5a9bb288b/go.mod h1:T9bdIzuCu7OtxOm1hfPfRQxPLYneinmdGuTeoZ9dtd4= golang.org/x/crypto v0.0.0-20211108221036-ceb1ce70b4fa/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= -golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d h1:sK3txAijHtOK88l68nt020reeT1ZdKLIYetKl95FzVY= golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= +golang.org/x/crypto v0.44.0 h1:A97SsFvM3AIwEEmTBiaxPPTYpDC47w720rdiiUvgoAU= +golang.org/x/crypto v0.44.0/go.mod h1:013i+Nw79BMiQiMsOPcVCB5ZIJbYkerPrGnOa00tvmc= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8= @@ -323,8 +346,8 @@ golang.org/x/net v0.0.0-20201224014010-6772e930b67b/go.mod h1:m0MpNAwzfU5UDzcl9v golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= golang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4/go.mod h1:p54w0d4576C0XHj96bSt6lcn1PtDYWL6XObtHCRCNQM= golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= -golang.org/x/net v0.0.0-20220520000938-2e3eb7b945c2 h1:NWy5+hlRbC7HK+PmcXVUmW1IMyFce7to56IUvhUFm7Y= -golang.org/x/net v0.0.0-20220520000938-2e3eb7b945c2/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= +golang.org/x/net v0.47.0 h1:Mx+4dIFzqraBXUugkia1OOvlD6LemFo1ALMHjrXDOhY= +golang.org/x/net v0.47.0/go.mod h1:/jNxtkgq5yWUGYkaZGqo27cfGZ1c5Nen03aYrrKpVRU= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= @@ -344,8 +367,9 @@ golang.org/x/sync v0.0.0-20200317015054-43a5402ce75a/go.mod h1:RxMgew5VJxzue5/jJ golang.org/x/sync v0.0.0-20200625203802-6e8e738ad208/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20201207232520-09787c993a3a/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20210220032951-036812b2e83c h1:5KslGYwFpkhGh+Q16bwMP3cOontH8FOep7tGV86Y7SQ= golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.18.0 h1:kr88TuHDroi+UVf+0hZnirlk8o8T+4MrK6mr60WkH/I= +golang.org/x/sync v0.18.0/go.mod h1:9KTHXmSnoGruLpwFjVSX0lNNA75CykiMECbovNTZqGI= golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190312061237-fead79001313/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -385,8 +409,8 @@ golang.org/x/sys v0.0.0-20210423185535-09eb48e85fd7/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20210510120138-977fb7262007/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220412211240-33da011f77ad/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.5.0 h1:MUK/U/4lj1t1oPg0HfuXDN/Z1wv31ZJ/YcPiGccS4DU= -golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.38.0 h1:3yZWxaJjBmCWXqhN1qh02AkOnCQ1poK6oF+a7xWL6Gc= +golang.org/x/sys v0.38.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= @@ -397,8 +421,8 @@ golang.org/x/text v0.3.4/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.5/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= -golang.org/x/text v0.8.0 h1:57P1ETyNKtuIjB4SRd15iJxuhj8Gc416Y78H3qgMh68= -golang.org/x/text v0.8.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= +golang.org/x/text v0.31.0 h1:aC8ghyu4JhP8VojJ2lEHBnochRno1sgL6nEi9WGFGMM= +golang.org/x/text v0.31.0/go.mod h1:tKRAlv61yKIjGGHX/4tP1LTbc13YSec1pxVEWXzfoeM= golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= @@ -453,6 +477,8 @@ golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8T golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +gonum.org/v1/gonum v0.16.0 h1:5+ul4Swaf3ESvrOnidPp4GZbzf0mxVQpDCYUQE7OJfk= +gonum.org/v1/gonum v0.16.0/go.mod h1:fef3am4MQ93R2HHpKnLk4/Tbh/s0+wqD5nfa6Pnwy4E= google.golang.org/api v0.4.0/go.mod h1:8k5glujaEP+g9n7WNsDg8QP6cUVNI86fCNMcbazEtwE= google.golang.org/api v0.7.0/go.mod h1:WtwebWUNSVBH/HAw79HIFXZNqEvBhG+Ra+ax0hx3E3M= google.golang.org/api v0.8.0/go.mod h1:o4eAsZoiT+ibD93RtjEohWalFOjRDx6CVaqeizhEnKg= @@ -537,8 +563,8 @@ google.golang.org/grpc v1.34.0/go.mod h1:WotjhfgOW/POjDeRt8vscBtXq+2VjORFy659qA5 google.golang.org/grpc v1.35.0/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAGRRjU= google.golang.org/grpc v1.36.0/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAGRRjU= google.golang.org/grpc v1.46.0/go.mod h1:vN9eftEi1UMyUsIF80+uQXhHjbXYbm0uXoFCACuMGWk= -google.golang.org/grpc v1.48.0 h1:rQOsyJ/8+ufEDJd/Gdsz7HG220Mh9HAhFHRGnIjda0w= -google.golang.org/grpc v1.48.0/go.mod h1:vN9eftEi1UMyUsIF80+uQXhHjbXYbm0uXoFCACuMGWk= +google.golang.org/grpc v1.78.0 h1:K1XZG/yGDJnzMdd/uZHAkVqJE+xIDOcmdSFZkBUicNc= +google.golang.org/grpc v1.78.0/go.mod h1:I47qjTo4OKbMkjA/aOOwxDIiPSBofUtQUI5EfpWvW7U= google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8= google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0= google.golang.org/protobuf v0.0.0-20200228230310-ab0ca4ff8a60/go.mod h1:cfTl7dwQJ+fmap5saPgwCLgHXTUD7jkjRqWcaiX5VyM= @@ -553,8 +579,8 @@ google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp0 google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= google.golang.org/protobuf v1.27.1/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= google.golang.org/protobuf v1.28.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= -google.golang.org/protobuf v1.28.1 h1:d0NfwRgPtno5B1Wa6L2DAG+KivqkdutMf1UhdNx175w= -google.golang.org/protobuf v1.28.1/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= +google.golang.org/protobuf v1.36.11 h1:fV6ZwhNocDyBLK0dj+fg8ektcVegBBuEolpbTQyBNVE= +google.golang.org/protobuf v1.36.11/go.mod h1:HTf+CrKn2C3g5S8VImy6tdcUvCska2kB7j23XfzDpco= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15 h1:YR8cESwS4TdDjEe65xsg0ogRM/Nc3DYOhEAlW+xobZo= diff --git a/grpcapi/groups.pb.go b/grpcapi/groups.pb.go index 0887164..973d093 100644 --- a/grpcapi/groups.pb.go +++ b/grpcapi/groups.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.0 -// protoc v3.19.4 +// protoc-gen-go v1.36.7 +// protoc v6.31.1 // source: groups.proto package grpcapi @@ -12,6 +12,7 @@ import ( structpb "google.golang.org/protobuf/types/known/structpb" reflect "reflect" sync "sync" + unsafe "unsafe" ) const ( @@ -22,23 +23,20 @@ const ( ) type Group struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + Namespace string `protobuf:"bytes,2,opt,name=namespace,proto3" json:"namespace,omitempty"` + Members []string `protobuf:"bytes,3,rep,name=members,proto3" json:"members,omitempty"` + Data *structpb.Struct `protobuf:"bytes,4,opt,name=data,proto3" json:"data,omitempty"` unknownFields protoimpl.UnknownFields - - Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` - Namespace string `protobuf:"bytes,2,opt,name=namespace,proto3" json:"namespace,omitempty"` - Members []string `protobuf:"bytes,3,rep,name=members,proto3" json:"members,omitempty"` - Data *structpb.Struct `protobuf:"bytes,4,opt,name=data,proto3" json:"data,omitempty"` + sizeCache protoimpl.SizeCache } func (x *Group) Reset() { *x = Group{} - if protoimpl.UnsafeEnabled { - mi := &file_groups_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_groups_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *Group) String() string { @@ -49,7 +47,7 @@ func (*Group) ProtoMessage() {} func (x *Group) ProtoReflect() protoreflect.Message { mi := &file_groups_proto_msgTypes[0] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -94,38 +92,29 @@ func (x *Group) GetData() *structpb.Struct { var File_groups_proto protoreflect.FileDescriptor -var file_groups_proto_rawDesc = []byte{ - 0x0a, 0x0c, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, - 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, - 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x7c, 0x0a, 0x05, - 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, - 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, - 0x61, 0x63, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x03, - 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x2b, 0x0a, - 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, - 0x72, 0x75, 0x63, 0x74, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x42, 0x39, 0x5a, 0x37, 0x67, 0x69, - 0x74, 0x2e, 0x63, 0x6f, 0x6f, 0x70, 0x67, 0x6f, 0x2e, 0x69, 0x6f, 0x2f, 0x63, 0x6f, 0x6f, 0x70, - 0x67, 0x6f, 0x2d, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x67, 0x72, 0x6f, 0x75, - 0x70, 0x73, 0x2d, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2f, 0x67, 0x72, - 0x70, 0x63, 0x61, 0x70, 0x69, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, -} +const file_groups_proto_rawDesc = "" + + "\n" + + "\fgroups.proto\x1a\x1cgoogle/protobuf/struct.proto\"|\n" + + "\x05Group\x12\x0e\n" + + "\x02id\x18\x01 \x01(\tR\x02id\x12\x1c\n" + + "\tnamespace\x18\x02 \x01(\tR\tnamespace\x12\x18\n" + + "\amembers\x18\x03 \x03(\tR\amembers\x12+\n" + + "\x04data\x18\x04 \x01(\v2\x17.google.protobuf.StructR\x04dataB9Z7git.coopgo.io/coopgo-platform/groups-management/grpcapib\x06proto3" var ( file_groups_proto_rawDescOnce sync.Once - file_groups_proto_rawDescData = file_groups_proto_rawDesc + file_groups_proto_rawDescData []byte ) func file_groups_proto_rawDescGZIP() []byte { file_groups_proto_rawDescOnce.Do(func() { - file_groups_proto_rawDescData = protoimpl.X.CompressGZIP(file_groups_proto_rawDescData) + file_groups_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_groups_proto_rawDesc), len(file_groups_proto_rawDesc))) }) return file_groups_proto_rawDescData } var file_groups_proto_msgTypes = make([]protoimpl.MessageInfo, 1) -var file_groups_proto_goTypes = []interface{}{ +var file_groups_proto_goTypes = []any{ (*Group)(nil), // 0: Group (*structpb.Struct)(nil), // 1: google.protobuf.Struct } @@ -143,25 +132,11 @@ func file_groups_proto_init() { if File_groups_proto != nil { return } - if !protoimpl.UnsafeEnabled { - file_groups_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Group); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - } type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), - RawDescriptor: file_groups_proto_rawDesc, + RawDescriptor: unsafe.Slice(unsafe.StringData(file_groups_proto_rawDesc), len(file_groups_proto_rawDesc)), NumEnums: 0, NumMessages: 1, NumExtensions: 0, @@ -172,7 +147,6 @@ func file_groups_proto_init() { MessageInfos: file_groups_proto_msgTypes, }.Build() File_groups_proto = out.File - file_groups_proto_rawDesc = nil file_groups_proto_goTypes = nil file_groups_proto_depIdxs = nil } diff --git a/grpcapi/groupsmanagement.pb.go b/grpcapi/groupsmanagement.pb.go index 513179b..8e2cbf1 100644 --- a/grpcapi/groupsmanagement.pb.go +++ b/grpcapi/groupsmanagement.pb.go @@ -2,8 +2,8 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.0 -// protoc v3.19.4 +// protoc-gen-go v1.36.7 +// protoc v6.31.1 // source: groupsmanagement.proto package grpcapi @@ -13,6 +13,7 @@ import ( protoimpl "google.golang.org/protobuf/runtime/protoimpl" reflect "reflect" sync "sync" + unsafe "unsafe" ) const ( @@ -23,20 +24,17 @@ const ( ) type AddGroupRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Group *Group `protobuf:"bytes,1,opt,name=group,proto3" json:"group,omitempty"` unknownFields protoimpl.UnknownFields - - Group *Group `protobuf:"bytes,1,opt,name=group,proto3" json:"group,omitempty"` + sizeCache protoimpl.SizeCache } func (x *AddGroupRequest) Reset() { *x = AddGroupRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_groupsmanagement_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_groupsmanagement_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *AddGroupRequest) String() string { @@ -47,7 +45,7 @@ func (*AddGroupRequest) ProtoMessage() {} func (x *AddGroupRequest) ProtoReflect() protoreflect.Message { mi := &file_groupsmanagement_proto_msgTypes[0] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -70,20 +68,17 @@ func (x *AddGroupRequest) GetGroup() *Group { } type AddGroupResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Group *Group `protobuf:"bytes,2,opt,name=group,proto3" json:"group,omitempty"` unknownFields protoimpl.UnknownFields - - Group *Group `protobuf:"bytes,2,opt,name=group,proto3" json:"group,omitempty"` + sizeCache protoimpl.SizeCache } func (x *AddGroupResponse) Reset() { *x = AddGroupResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_groupsmanagement_proto_msgTypes[1] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_groupsmanagement_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *AddGroupResponse) String() string { @@ -94,7 +89,7 @@ func (*AddGroupResponse) ProtoMessage() {} func (x *AddGroupResponse) ProtoReflect() protoreflect.Message { mi := &file_groupsmanagement_proto_msgTypes[1] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -117,21 +112,18 @@ func (x *AddGroupResponse) GetGroup() *Group { } type GetGroupRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Id string `protobuf:"bytes,3,opt,name=id,proto3" json:"id,omitempty"` + Namespace string `protobuf:"bytes,4,opt,name=namespace,proto3" json:"namespace,omitempty"` unknownFields protoimpl.UnknownFields - - Id string `protobuf:"bytes,3,opt,name=id,proto3" json:"id,omitempty"` - Namespace string `protobuf:"bytes,4,opt,name=namespace,proto3" json:"namespace,omitempty"` + sizeCache protoimpl.SizeCache } func (x *GetGroupRequest) Reset() { *x = GetGroupRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_groupsmanagement_proto_msgTypes[2] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_groupsmanagement_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *GetGroupRequest) String() string { @@ -142,7 +134,7 @@ func (*GetGroupRequest) ProtoMessage() {} func (x *GetGroupRequest) ProtoReflect() protoreflect.Message { mi := &file_groupsmanagement_proto_msgTypes[2] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -172,20 +164,17 @@ func (x *GetGroupRequest) GetNamespace() string { } type GetGroupResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Group *Group `protobuf:"bytes,5,opt,name=group,proto3" json:"group,omitempty"` unknownFields protoimpl.UnknownFields - - Group *Group `protobuf:"bytes,5,opt,name=group,proto3" json:"group,omitempty"` + sizeCache protoimpl.SizeCache } func (x *GetGroupResponse) Reset() { *x = GetGroupResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_groupsmanagement_proto_msgTypes[3] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_groupsmanagement_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *GetGroupResponse) String() string { @@ -196,7 +185,7 @@ func (*GetGroupResponse) ProtoMessage() {} func (x *GetGroupResponse) ProtoReflect() protoreflect.Message { mi := &file_groupsmanagement_proto_msgTypes[3] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -219,21 +208,18 @@ func (x *GetGroupResponse) GetGroup() *Group { } type GetGroupsRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Namespaces []string `protobuf:"bytes,6,rep,name=namespaces,proto3" json:"namespaces,omitempty"` + Member string `protobuf:"bytes,7,opt,name=member,proto3" json:"member,omitempty"` unknownFields protoimpl.UnknownFields - - Namespaces []string `protobuf:"bytes,6,rep,name=namespaces,proto3" json:"namespaces,omitempty"` - Member string `protobuf:"bytes,7,opt,name=member,proto3" json:"member,omitempty"` + sizeCache protoimpl.SizeCache } func (x *GetGroupsRequest) Reset() { *x = GetGroupsRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_groupsmanagement_proto_msgTypes[4] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_groupsmanagement_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *GetGroupsRequest) String() string { @@ -244,7 +230,7 @@ func (*GetGroupsRequest) ProtoMessage() {} func (x *GetGroupsRequest) ProtoReflect() protoreflect.Message { mi := &file_groupsmanagement_proto_msgTypes[4] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -274,20 +260,17 @@ func (x *GetGroupsRequest) GetMember() string { } type GetGroupsResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Groups []*Group `protobuf:"bytes,8,rep,name=groups,proto3" json:"groups,omitempty"` unknownFields protoimpl.UnknownFields - - Groups []*Group `protobuf:"bytes,8,rep,name=groups,proto3" json:"groups,omitempty"` + sizeCache protoimpl.SizeCache } func (x *GetGroupsResponse) Reset() { *x = GetGroupsResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_groupsmanagement_proto_msgTypes[5] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_groupsmanagement_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *GetGroupsResponse) String() string { @@ -298,7 +281,7 @@ func (*GetGroupsResponse) ProtoMessage() {} func (x *GetGroupsResponse) ProtoReflect() protoreflect.Message { mi := &file_groupsmanagement_proto_msgTypes[5] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -321,20 +304,17 @@ func (x *GetGroupsResponse) GetGroups() []*Group { } type GetGroupsBatchRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Groupids []string `protobuf:"bytes,10,rep,name=groupids,proto3" json:"groupids,omitempty"` unknownFields protoimpl.UnknownFields - - Groupids []string `protobuf:"bytes,10,rep,name=groupids,proto3" json:"groupids,omitempty"` + sizeCache protoimpl.SizeCache } func (x *GetGroupsBatchRequest) Reset() { *x = GetGroupsBatchRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_groupsmanagement_proto_msgTypes[6] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_groupsmanagement_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *GetGroupsBatchRequest) String() string { @@ -345,7 +325,7 @@ func (*GetGroupsBatchRequest) ProtoMessage() {} func (x *GetGroupsBatchRequest) ProtoReflect() protoreflect.Message { mi := &file_groupsmanagement_proto_msgTypes[6] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -368,20 +348,17 @@ func (x *GetGroupsBatchRequest) GetGroupids() []string { } type GetGroupsBatchResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Groups []*Group `protobuf:"bytes,11,rep,name=groups,proto3" json:"groups,omitempty"` unknownFields protoimpl.UnknownFields - - Groups []*Group `protobuf:"bytes,11,rep,name=groups,proto3" json:"groups,omitempty"` + sizeCache protoimpl.SizeCache } func (x *GetGroupsBatchResponse) Reset() { *x = GetGroupsBatchResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_groupsmanagement_proto_msgTypes[7] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_groupsmanagement_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *GetGroupsBatchResponse) String() string { @@ -392,7 +369,7 @@ func (*GetGroupsBatchResponse) ProtoMessage() {} func (x *GetGroupsBatchResponse) ProtoReflect() protoreflect.Message { mi := &file_groupsmanagement_proto_msgTypes[7] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -415,21 +392,18 @@ func (x *GetGroupsBatchResponse) GetGroups() []*Group { } type SubscribeRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Groupid string `protobuf:"bytes,20,opt,name=groupid,proto3" json:"groupid,omitempty"` + Memberid string `protobuf:"bytes,21,opt,name=memberid,proto3" json:"memberid,omitempty"` unknownFields protoimpl.UnknownFields - - Groupid string `protobuf:"bytes,20,opt,name=groupid,proto3" json:"groupid,omitempty"` - Memberid string `protobuf:"bytes,21,opt,name=memberid,proto3" json:"memberid,omitempty"` + sizeCache protoimpl.SizeCache } func (x *SubscribeRequest) Reset() { *x = SubscribeRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_groupsmanagement_proto_msgTypes[8] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_groupsmanagement_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *SubscribeRequest) String() string { @@ -440,7 +414,7 @@ func (*SubscribeRequest) ProtoMessage() {} func (x *SubscribeRequest) ProtoReflect() protoreflect.Message { mi := &file_groupsmanagement_proto_msgTypes[8] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -470,20 +444,17 @@ func (x *SubscribeRequest) GetMemberid() string { } type SubscribeResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Ok bool `protobuf:"varint,22,opt,name=ok,proto3" json:"ok,omitempty"` unknownFields protoimpl.UnknownFields - - Ok bool `protobuf:"varint,22,opt,name=ok,proto3" json:"ok,omitempty"` + sizeCache protoimpl.SizeCache } func (x *SubscribeResponse) Reset() { *x = SubscribeResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_groupsmanagement_proto_msgTypes[9] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_groupsmanagement_proto_msgTypes[9] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *SubscribeResponse) String() string { @@ -494,7 +465,7 @@ func (*SubscribeResponse) ProtoMessage() {} func (x *SubscribeResponse) ProtoReflect() protoreflect.Message { mi := &file_groupsmanagement_proto_msgTypes[9] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -517,21 +488,18 @@ func (x *SubscribeResponse) GetOk() bool { } type UnsubscribeRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Groupid string `protobuf:"bytes,30,opt,name=groupid,proto3" json:"groupid,omitempty"` + Memberid string `protobuf:"bytes,31,opt,name=memberid,proto3" json:"memberid,omitempty"` unknownFields protoimpl.UnknownFields - - Groupid string `protobuf:"bytes,30,opt,name=groupid,proto3" json:"groupid,omitempty"` - Memberid string `protobuf:"bytes,31,opt,name=memberid,proto3" json:"memberid,omitempty"` + sizeCache protoimpl.SizeCache } func (x *UnsubscribeRequest) Reset() { *x = UnsubscribeRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_groupsmanagement_proto_msgTypes[10] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_groupsmanagement_proto_msgTypes[10] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *UnsubscribeRequest) String() string { @@ -542,7 +510,7 @@ func (*UnsubscribeRequest) ProtoMessage() {} func (x *UnsubscribeRequest) ProtoReflect() protoreflect.Message { mi := &file_groupsmanagement_proto_msgTypes[10] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -572,20 +540,17 @@ func (x *UnsubscribeRequest) GetMemberid() string { } type UnsubscribeResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Ok bool `protobuf:"varint,32,opt,name=ok,proto3" json:"ok,omitempty"` unknownFields protoimpl.UnknownFields - - Ok bool `protobuf:"varint,32,opt,name=ok,proto3" json:"ok,omitempty"` + sizeCache protoimpl.SizeCache } func (x *UnsubscribeResponse) Reset() { *x = UnsubscribeResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_groupsmanagement_proto_msgTypes[11] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_groupsmanagement_proto_msgTypes[11] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *UnsubscribeResponse) String() string { @@ -596,7 +561,7 @@ func (*UnsubscribeResponse) ProtoMessage() {} func (x *UnsubscribeResponse) ProtoReflect() protoreflect.Message { mi := &file_groupsmanagement_proto_msgTypes[11] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -618,21 +583,106 @@ func (x *UnsubscribeResponse) GetOk() bool { return false } -type AddGroupMemberRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache +type DeleteGroupRequest struct { + state protoimpl.MessageState `protogen:"open.v1"` + Id string `protobuf:"bytes,50,opt,name=id,proto3" json:"id,omitempty"` unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} - Group *GroupMember `protobuf:"bytes,33,opt,name=group,proto3" json:"group,omitempty"` +func (x *DeleteGroupRequest) Reset() { + *x = DeleteGroupRequest{} + mi := &file_groupsmanagement_proto_msgTypes[12] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *DeleteGroupRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DeleteGroupRequest) ProtoMessage() {} + +func (x *DeleteGroupRequest) ProtoReflect() protoreflect.Message { + mi := &file_groupsmanagement_proto_msgTypes[12] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use DeleteGroupRequest.ProtoReflect.Descriptor instead. +func (*DeleteGroupRequest) Descriptor() ([]byte, []int) { + return file_groupsmanagement_proto_rawDescGZIP(), []int{12} +} + +func (x *DeleteGroupRequest) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +type DeleteGroupResponse struct { + state protoimpl.MessageState `protogen:"open.v1"` + Ok bool `protobuf:"varint,51,opt,name=ok,proto3" json:"ok,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *DeleteGroupResponse) Reset() { + *x = DeleteGroupResponse{} + mi := &file_groupsmanagement_proto_msgTypes[13] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *DeleteGroupResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DeleteGroupResponse) ProtoMessage() {} + +func (x *DeleteGroupResponse) ProtoReflect() protoreflect.Message { + mi := &file_groupsmanagement_proto_msgTypes[13] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use DeleteGroupResponse.ProtoReflect.Descriptor instead. +func (*DeleteGroupResponse) Descriptor() ([]byte, []int) { + return file_groupsmanagement_proto_rawDescGZIP(), []int{13} +} + +func (x *DeleteGroupResponse) GetOk() bool { + if x != nil { + return x.Ok + } + return false +} + +type AddGroupMemberRequest struct { + state protoimpl.MessageState `protogen:"open.v1"` + Group *GroupMember `protobuf:"bytes,33,opt,name=group,proto3" json:"group,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *AddGroupMemberRequest) Reset() { *x = AddGroupMemberRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_groupsmanagement_proto_msgTypes[12] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_groupsmanagement_proto_msgTypes[14] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *AddGroupMemberRequest) String() string { @@ -642,8 +692,8 @@ func (x *AddGroupMemberRequest) String() string { func (*AddGroupMemberRequest) ProtoMessage() {} func (x *AddGroupMemberRequest) ProtoReflect() protoreflect.Message { - mi := &file_groupsmanagement_proto_msgTypes[12] - if protoimpl.UnsafeEnabled && x != nil { + mi := &file_groupsmanagement_proto_msgTypes[14] + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -655,7 +705,7 @@ func (x *AddGroupMemberRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use AddGroupMemberRequest.ProtoReflect.Descriptor instead. func (*AddGroupMemberRequest) Descriptor() ([]byte, []int) { - return file_groupsmanagement_proto_rawDescGZIP(), []int{12} + return file_groupsmanagement_proto_rawDescGZIP(), []int{14} } func (x *AddGroupMemberRequest) GetGroup() *GroupMember { @@ -666,20 +716,17 @@ func (x *AddGroupMemberRequest) GetGroup() *GroupMember { } type AddGroupMemberResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Group *GroupMember `protobuf:"bytes,34,opt,name=group,proto3" json:"group,omitempty"` unknownFields protoimpl.UnknownFields - - Group *GroupMember `protobuf:"bytes,34,opt,name=group,proto3" json:"group,omitempty"` + sizeCache protoimpl.SizeCache } func (x *AddGroupMemberResponse) Reset() { *x = AddGroupMemberResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_groupsmanagement_proto_msgTypes[13] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_groupsmanagement_proto_msgTypes[15] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *AddGroupMemberResponse) String() string { @@ -689,8 +736,8 @@ func (x *AddGroupMemberResponse) String() string { func (*AddGroupMemberResponse) ProtoMessage() {} func (x *AddGroupMemberResponse) ProtoReflect() protoreflect.Message { - mi := &file_groupsmanagement_proto_msgTypes[13] - if protoimpl.UnsafeEnabled && x != nil { + mi := &file_groupsmanagement_proto_msgTypes[15] + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -702,7 +749,7 @@ func (x *AddGroupMemberResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use AddGroupMemberResponse.ProtoReflect.Descriptor instead. func (*AddGroupMemberResponse) Descriptor() ([]byte, []int) { - return file_groupsmanagement_proto_rawDescGZIP(), []int{13} + return file_groupsmanagement_proto_rawDescGZIP(), []int{15} } func (x *AddGroupMemberResponse) GetGroup() *GroupMember { @@ -713,21 +760,18 @@ func (x *AddGroupMemberResponse) GetGroup() *GroupMember { } type GetGroupMemberRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Id string `protobuf:"bytes,35,opt,name=id,proto3" json:"id,omitempty"` + Groupid string `protobuf:"bytes,36,opt,name=groupid,proto3" json:"groupid,omitempty"` unknownFields protoimpl.UnknownFields - - Id string `protobuf:"bytes,35,opt,name=id,proto3" json:"id,omitempty"` - Groupid string `protobuf:"bytes,36,opt,name=groupid,proto3" json:"groupid,omitempty"` + sizeCache protoimpl.SizeCache } func (x *GetGroupMemberRequest) Reset() { *x = GetGroupMemberRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_groupsmanagement_proto_msgTypes[14] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_groupsmanagement_proto_msgTypes[16] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *GetGroupMemberRequest) String() string { @@ -737,8 +781,8 @@ func (x *GetGroupMemberRequest) String() string { func (*GetGroupMemberRequest) ProtoMessage() {} func (x *GetGroupMemberRequest) ProtoReflect() protoreflect.Message { - mi := &file_groupsmanagement_proto_msgTypes[14] - if protoimpl.UnsafeEnabled && x != nil { + mi := &file_groupsmanagement_proto_msgTypes[16] + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -750,7 +794,7 @@ func (x *GetGroupMemberRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetGroupMemberRequest.ProtoReflect.Descriptor instead. func (*GetGroupMemberRequest) Descriptor() ([]byte, []int) { - return file_groupsmanagement_proto_rawDescGZIP(), []int{14} + return file_groupsmanagement_proto_rawDescGZIP(), []int{16} } func (x *GetGroupMemberRequest) GetId() string { @@ -768,20 +812,17 @@ func (x *GetGroupMemberRequest) GetGroupid() string { } type GetGroupMemberResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Group *GroupMember `protobuf:"bytes,37,opt,name=group,proto3" json:"group,omitempty"` unknownFields protoimpl.UnknownFields - - Group *GroupMember `protobuf:"bytes,37,opt,name=group,proto3" json:"group,omitempty"` + sizeCache protoimpl.SizeCache } func (x *GetGroupMemberResponse) Reset() { *x = GetGroupMemberResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_groupsmanagement_proto_msgTypes[15] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_groupsmanagement_proto_msgTypes[17] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *GetGroupMemberResponse) String() string { @@ -791,8 +832,8 @@ func (x *GetGroupMemberResponse) String() string { func (*GetGroupMemberResponse) ProtoMessage() {} func (x *GetGroupMemberResponse) ProtoReflect() protoreflect.Message { - mi := &file_groupsmanagement_proto_msgTypes[15] - if protoimpl.UnsafeEnabled && x != nil { + mi := &file_groupsmanagement_proto_msgTypes[17] + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -804,7 +845,7 @@ func (x *GetGroupMemberResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use GetGroupMemberResponse.ProtoReflect.Descriptor instead. func (*GetGroupMemberResponse) Descriptor() ([]byte, []int) { - return file_groupsmanagement_proto_rawDescGZIP(), []int{15} + return file_groupsmanagement_proto_rawDescGZIP(), []int{17} } func (x *GetGroupMemberResponse) GetGroup() *GroupMember { @@ -815,20 +856,17 @@ func (x *GetGroupMemberResponse) GetGroup() *GroupMember { } type GetGroupsMemberRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Namespaces []string `protobuf:"bytes,38,rep,name=namespaces,proto3" json:"namespaces,omitempty"` unknownFields protoimpl.UnknownFields - - Namespaces []string `protobuf:"bytes,38,rep,name=namespaces,proto3" json:"namespaces,omitempty"` + sizeCache protoimpl.SizeCache } func (x *GetGroupsMemberRequest) Reset() { *x = GetGroupsMemberRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_groupsmanagement_proto_msgTypes[16] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_groupsmanagement_proto_msgTypes[18] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *GetGroupsMemberRequest) String() string { @@ -838,8 +876,8 @@ func (x *GetGroupsMemberRequest) String() string { func (*GetGroupsMemberRequest) ProtoMessage() {} func (x *GetGroupsMemberRequest) ProtoReflect() protoreflect.Message { - mi := &file_groupsmanagement_proto_msgTypes[16] - if protoimpl.UnsafeEnabled && x != nil { + mi := &file_groupsmanagement_proto_msgTypes[18] + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -851,7 +889,7 @@ func (x *GetGroupsMemberRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetGroupsMemberRequest.ProtoReflect.Descriptor instead. func (*GetGroupsMemberRequest) Descriptor() ([]byte, []int) { - return file_groupsmanagement_proto_rawDescGZIP(), []int{16} + return file_groupsmanagement_proto_rawDescGZIP(), []int{18} } func (x *GetGroupsMemberRequest) GetNamespaces() []string { @@ -862,20 +900,17 @@ func (x *GetGroupsMemberRequest) GetNamespaces() []string { } type GetGroupsMemberResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Groups []*GroupMember `protobuf:"bytes,39,rep,name=groups,proto3" json:"groups,omitempty"` unknownFields protoimpl.UnknownFields - - Groups []*GroupMember `protobuf:"bytes,39,rep,name=groups,proto3" json:"groups,omitempty"` + sizeCache protoimpl.SizeCache } func (x *GetGroupsMemberResponse) Reset() { *x = GetGroupsMemberResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_groupsmanagement_proto_msgTypes[17] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_groupsmanagement_proto_msgTypes[19] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *GetGroupsMemberResponse) String() string { @@ -885,8 +920,8 @@ func (x *GetGroupsMemberResponse) String() string { func (*GetGroupsMemberResponse) ProtoMessage() {} func (x *GetGroupsMemberResponse) ProtoReflect() protoreflect.Message { - mi := &file_groupsmanagement_proto_msgTypes[17] - if protoimpl.UnsafeEnabled && x != nil { + mi := &file_groupsmanagement_proto_msgTypes[19] + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -898,7 +933,7 @@ func (x *GetGroupsMemberResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use GetGroupsMemberResponse.ProtoReflect.Descriptor instead. func (*GetGroupsMemberResponse) Descriptor() ([]byte, []int) { - return file_groupsmanagement_proto_rawDescGZIP(), []int{17} + return file_groupsmanagement_proto_rawDescGZIP(), []int{19} } func (x *GetGroupsMemberResponse) GetGroups() []*GroupMember { @@ -909,20 +944,17 @@ func (x *GetGroupsMemberResponse) GetGroups() []*GroupMember { } type GetGroupsBatchMemberRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Groupids []string `protobuf:"bytes,40,rep,name=groupids,proto3" json:"groupids,omitempty"` unknownFields protoimpl.UnknownFields - - Groupids []string `protobuf:"bytes,40,rep,name=groupids,proto3" json:"groupids,omitempty"` + sizeCache protoimpl.SizeCache } func (x *GetGroupsBatchMemberRequest) Reset() { *x = GetGroupsBatchMemberRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_groupsmanagement_proto_msgTypes[18] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_groupsmanagement_proto_msgTypes[20] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *GetGroupsBatchMemberRequest) String() string { @@ -932,8 +964,8 @@ func (x *GetGroupsBatchMemberRequest) String() string { func (*GetGroupsBatchMemberRequest) ProtoMessage() {} func (x *GetGroupsBatchMemberRequest) ProtoReflect() protoreflect.Message { - mi := &file_groupsmanagement_proto_msgTypes[18] - if protoimpl.UnsafeEnabled && x != nil { + mi := &file_groupsmanagement_proto_msgTypes[20] + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -945,7 +977,7 @@ func (x *GetGroupsBatchMemberRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetGroupsBatchMemberRequest.ProtoReflect.Descriptor instead. func (*GetGroupsBatchMemberRequest) Descriptor() ([]byte, []int) { - return file_groupsmanagement_proto_rawDescGZIP(), []int{18} + return file_groupsmanagement_proto_rawDescGZIP(), []int{20} } func (x *GetGroupsBatchMemberRequest) GetGroupids() []string { @@ -956,20 +988,17 @@ func (x *GetGroupsBatchMemberRequest) GetGroupids() []string { } type GetGroupsBatchMemberResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Groups []*GroupMember `protobuf:"bytes,41,rep,name=groups,proto3" json:"groups,omitempty"` unknownFields protoimpl.UnknownFields - - Groups []*GroupMember `protobuf:"bytes,41,rep,name=groups,proto3" json:"groups,omitempty"` + sizeCache protoimpl.SizeCache } func (x *GetGroupsBatchMemberResponse) Reset() { *x = GetGroupsBatchMemberResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_groupsmanagement_proto_msgTypes[19] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_groupsmanagement_proto_msgTypes[21] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *GetGroupsBatchMemberResponse) String() string { @@ -979,8 +1008,8 @@ func (x *GetGroupsBatchMemberResponse) String() string { func (*GetGroupsBatchMemberResponse) ProtoMessage() {} func (x *GetGroupsBatchMemberResponse) ProtoReflect() protoreflect.Message { - mi := &file_groupsmanagement_proto_msgTypes[19] - if protoimpl.UnsafeEnabled && x != nil { + mi := &file_groupsmanagement_proto_msgTypes[21] + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -992,7 +1021,7 @@ func (x *GetGroupsBatchMemberResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use GetGroupsBatchMemberResponse.ProtoReflect.Descriptor instead. func (*GetGroupsBatchMemberResponse) Descriptor() ([]byte, []int) { - return file_groupsmanagement_proto_rawDescGZIP(), []int{19} + return file_groupsmanagement_proto_rawDescGZIP(), []int{21} } func (x *GetGroupsBatchMemberResponse) GetGroups() []*GroupMember { @@ -1003,20 +1032,17 @@ func (x *GetGroupsBatchMemberResponse) GetGroups() []*GroupMember { } type SubscribeMemberRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Group *GroupMember `protobuf:"bytes,42,opt,name=group,proto3" json:"group,omitempty"` unknownFields protoimpl.UnknownFields - - Group *GroupMember `protobuf:"bytes,42,opt,name=group,proto3" json:"group,omitempty"` + sizeCache protoimpl.SizeCache } func (x *SubscribeMemberRequest) Reset() { *x = SubscribeMemberRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_groupsmanagement_proto_msgTypes[20] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_groupsmanagement_proto_msgTypes[22] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *SubscribeMemberRequest) String() string { @@ -1026,8 +1052,8 @@ func (x *SubscribeMemberRequest) String() string { func (*SubscribeMemberRequest) ProtoMessage() {} func (x *SubscribeMemberRequest) ProtoReflect() protoreflect.Message { - mi := &file_groupsmanagement_proto_msgTypes[20] - if protoimpl.UnsafeEnabled && x != nil { + mi := &file_groupsmanagement_proto_msgTypes[22] + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1039,7 +1065,7 @@ func (x *SubscribeMemberRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use SubscribeMemberRequest.ProtoReflect.Descriptor instead. func (*SubscribeMemberRequest) Descriptor() ([]byte, []int) { - return file_groupsmanagement_proto_rawDescGZIP(), []int{20} + return file_groupsmanagement_proto_rawDescGZIP(), []int{22} } func (x *SubscribeMemberRequest) GetGroup() *GroupMember { @@ -1050,20 +1076,17 @@ func (x *SubscribeMemberRequest) GetGroup() *GroupMember { } type SubscribeMemberResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Group *GroupMember `protobuf:"bytes,43,opt,name=group,proto3" json:"group,omitempty"` unknownFields protoimpl.UnknownFields - - Group *GroupMember `protobuf:"bytes,43,opt,name=group,proto3" json:"group,omitempty"` + sizeCache protoimpl.SizeCache } func (x *SubscribeMemberResponse) Reset() { *x = SubscribeMemberResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_groupsmanagement_proto_msgTypes[21] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_groupsmanagement_proto_msgTypes[23] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *SubscribeMemberResponse) String() string { @@ -1073,8 +1096,8 @@ func (x *SubscribeMemberResponse) String() string { func (*SubscribeMemberResponse) ProtoMessage() {} func (x *SubscribeMemberResponse) ProtoReflect() protoreflect.Message { - mi := &file_groupsmanagement_proto_msgTypes[21] - if protoimpl.UnsafeEnabled && x != nil { + mi := &file_groupsmanagement_proto_msgTypes[23] + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1086,7 +1109,7 @@ func (x *SubscribeMemberResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use SubscribeMemberResponse.ProtoReflect.Descriptor instead. func (*SubscribeMemberResponse) Descriptor() ([]byte, []int) { - return file_groupsmanagement_proto_rawDescGZIP(), []int{21} + return file_groupsmanagement_proto_rawDescGZIP(), []int{23} } func (x *SubscribeMemberResponse) GetGroup() *GroupMember { @@ -1097,20 +1120,17 @@ func (x *SubscribeMemberResponse) GetGroup() *GroupMember { } type UnsubscribeMemberRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Id string `protobuf:"bytes,44,opt,name=id,proto3" json:"id,omitempty"` unknownFields protoimpl.UnknownFields - - Id string `protobuf:"bytes,44,opt,name=id,proto3" json:"id,omitempty"` + sizeCache protoimpl.SizeCache } func (x *UnsubscribeMemberRequest) Reset() { *x = UnsubscribeMemberRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_groupsmanagement_proto_msgTypes[22] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_groupsmanagement_proto_msgTypes[24] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *UnsubscribeMemberRequest) String() string { @@ -1120,8 +1140,8 @@ func (x *UnsubscribeMemberRequest) String() string { func (*UnsubscribeMemberRequest) ProtoMessage() {} func (x *UnsubscribeMemberRequest) ProtoReflect() protoreflect.Message { - mi := &file_groupsmanagement_proto_msgTypes[22] - if protoimpl.UnsafeEnabled && x != nil { + mi := &file_groupsmanagement_proto_msgTypes[24] + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1133,7 +1153,7 @@ func (x *UnsubscribeMemberRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use UnsubscribeMemberRequest.ProtoReflect.Descriptor instead. func (*UnsubscribeMemberRequest) Descriptor() ([]byte, []int) { - return file_groupsmanagement_proto_rawDescGZIP(), []int{22} + return file_groupsmanagement_proto_rawDescGZIP(), []int{24} } func (x *UnsubscribeMemberRequest) GetId() string { @@ -1144,20 +1164,17 @@ func (x *UnsubscribeMemberRequest) GetId() string { } type UnsubscribeMemberResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Id string `protobuf:"bytes,45,opt,name=id,proto3" json:"id,omitempty"` unknownFields protoimpl.UnknownFields - - Id string `protobuf:"bytes,45,opt,name=id,proto3" json:"id,omitempty"` + sizeCache protoimpl.SizeCache } func (x *UnsubscribeMemberResponse) Reset() { *x = UnsubscribeMemberResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_groupsmanagement_proto_msgTypes[23] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_groupsmanagement_proto_msgTypes[25] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *UnsubscribeMemberResponse) String() string { @@ -1167,8 +1184,8 @@ func (x *UnsubscribeMemberResponse) String() string { func (*UnsubscribeMemberResponse) ProtoMessage() {} func (x *UnsubscribeMemberResponse) ProtoReflect() protoreflect.Message { - mi := &file_groupsmanagement_proto_msgTypes[23] - if protoimpl.UnsafeEnabled && x != nil { + mi := &file_groupsmanagement_proto_msgTypes[25] + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1180,7 +1197,7 @@ func (x *UnsubscribeMemberResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use UnsubscribeMemberResponse.ProtoReflect.Descriptor instead. func (*UnsubscribeMemberResponse) Descriptor() ([]byte, []int) { - return file_groupsmanagement_proto_rawDescGZIP(), []int{23} + return file_groupsmanagement_proto_rawDescGZIP(), []int{25} } func (x *UnsubscribeMemberResponse) GetId() string { @@ -1192,169 +1209,100 @@ func (x *UnsubscribeMemberResponse) GetId() string { var File_groupsmanagement_proto protoreflect.FileDescriptor -var file_groupsmanagement_proto_rawDesc = []byte{ - 0x0a, 0x16, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, - 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x0c, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x12, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x6d, 0x65, - 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x2f, 0x0a, 0x0f, 0x41, 0x64, - 0x64, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c, 0x0a, - 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x06, 0x2e, 0x47, - 0x72, 0x6f, 0x75, 0x70, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x22, 0x30, 0x0a, 0x10, 0x41, - 0x64, 0x64, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x1c, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x06, - 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x22, 0x3f, 0x0a, - 0x0f, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, - 0x12, 0x1c, 0x0a, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x22, 0x30, - 0x0a, 0x10, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x1c, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x06, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, - 0x22, 0x4a, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, - 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, - 0x61, 0x63, 0x65, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x07, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x22, 0x33, 0x0a, 0x11, - 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x1e, 0x0a, 0x06, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x06, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x06, 0x67, 0x72, 0x6f, 0x75, 0x70, - 0x73, 0x22, 0x33, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x42, 0x61, - 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x67, 0x72, - 0x6f, 0x75, 0x70, 0x69, 0x64, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x67, 0x72, - 0x6f, 0x75, 0x70, 0x69, 0x64, 0x73, 0x22, 0x38, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, - 0x75, 0x70, 0x73, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x1e, 0x0a, 0x06, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x06, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x06, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, - 0x22, 0x48, 0x0a, 0x10, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x18, - 0x14, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x12, 0x1a, - 0x0a, 0x08, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x69, 0x64, 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x08, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x69, 0x64, 0x22, 0x23, 0x0a, 0x11, 0x53, 0x75, - 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x16, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x22, - 0x4a, 0x0a, 0x12, 0x55, 0x6e, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, - 0x18, 0x1e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x12, - 0x1a, 0x0a, 0x08, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x69, 0x64, 0x18, 0x1f, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x08, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x69, 0x64, 0x22, 0x25, 0x0a, 0x13, 0x55, - 0x6e, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x20, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, - 0x6f, 0x6b, 0x22, 0x3b, 0x0a, 0x15, 0x41, 0x64, 0x64, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, - 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x22, 0x0a, 0x05, 0x67, - 0x72, 0x6f, 0x75, 0x70, 0x18, 0x21, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x47, 0x72, 0x6f, - 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x22, - 0x3c, 0x0a, 0x16, 0x41, 0x64, 0x64, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, - 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x22, 0x0a, 0x05, 0x67, 0x72, 0x6f, - 0x75, 0x70, 0x18, 0x22, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, - 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x22, 0x41, 0x0a, - 0x15, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x23, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, - 0x64, 0x18, 0x24, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, - 0x22, 0x3c, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, - 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x22, 0x0a, 0x05, 0x67, 0x72, - 0x6f, 0x75, 0x70, 0x18, 0x25, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x47, 0x72, 0x6f, 0x75, - 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x22, 0x38, - 0x0a, 0x16, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x4d, 0x65, 0x6d, 0x62, 0x65, - 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x6e, 0x61, 0x6d, 0x65, - 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x18, 0x26, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x6e, 0x61, - 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x22, 0x3f, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x47, - 0x72, 0x6f, 0x75, 0x70, 0x73, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x24, 0x0a, 0x06, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x18, 0x27, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, - 0x72, 0x52, 0x06, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x22, 0x39, 0x0a, 0x1b, 0x47, 0x65, 0x74, - 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x42, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, 0x6d, 0x62, 0x65, - 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x67, 0x72, 0x6f, 0x75, - 0x70, 0x69, 0x64, 0x73, 0x18, 0x28, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x67, 0x72, 0x6f, 0x75, - 0x70, 0x69, 0x64, 0x73, 0x22, 0x44, 0x0a, 0x1c, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, - 0x73, 0x42, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x24, 0x0a, 0x06, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x18, 0x29, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, - 0x65, 0x72, 0x52, 0x06, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x22, 0x3c, 0x0a, 0x16, 0x53, 0x75, - 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x12, 0x22, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x2a, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, - 0x72, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x22, 0x3d, 0x0a, 0x17, 0x53, 0x75, 0x62, 0x73, - 0x63, 0x72, 0x69, 0x62, 0x65, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x22, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x2b, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, - 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x22, 0x2a, 0x0a, 0x18, 0x55, 0x6e, 0x73, 0x75, 0x62, - 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x2c, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x02, 0x69, 0x64, 0x22, 0x2b, 0x0a, 0x19, 0x55, 0x6e, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, - 0x62, 0x65, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x2d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, - 0x32, 0xa4, 0x06, 0x0a, 0x10, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x4d, 0x61, 0x6e, 0x61, 0x67, - 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x31, 0x0a, 0x08, 0x41, 0x64, 0x64, 0x47, 0x72, 0x6f, 0x75, - 0x70, 0x12, 0x10, 0x2e, 0x41, 0x64, 0x64, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x11, 0x2e, 0x41, 0x64, 0x64, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x31, 0x0a, 0x08, 0x47, 0x65, 0x74, 0x47, - 0x72, 0x6f, 0x75, 0x70, 0x12, 0x10, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x11, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, - 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x34, 0x0a, 0x09, 0x47, - 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x12, 0x11, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x72, - 0x6f, 0x75, 0x70, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x12, 0x2e, 0x47, 0x65, - 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, - 0x00, 0x12, 0x43, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x42, 0x61, - 0x74, 0x63, 0x68, 0x12, 0x16, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x42, - 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x47, 0x65, - 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x34, 0x0a, 0x09, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, - 0x69, 0x62, 0x65, 0x12, 0x11, 0x2e, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x12, 0x2e, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, - 0x62, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3a, 0x0a, 0x0b, - 0x55, 0x6e, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x12, 0x13, 0x2e, 0x55, 0x6e, - 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x1a, 0x14, 0x2e, 0x55, 0x6e, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x43, 0x0a, 0x0e, 0x41, 0x64, 0x64, 0x47, - 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x16, 0x2e, 0x41, 0x64, 0x64, - 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x41, 0x64, 0x64, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, - 0x62, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x43, 0x0a, - 0x0e, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x12, - 0x16, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, - 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x22, 0x00, 0x12, 0x46, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x4d, - 0x65, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x17, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, - 0x73, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, - 0x2e, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x55, 0x0a, 0x14, 0x47, 0x65, - 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x42, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, 0x6d, 0x62, - 0x65, 0x72, 0x12, 0x1c, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x42, 0x61, - 0x74, 0x63, 0x68, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x1a, 0x1d, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x42, 0x61, 0x74, 0x63, - 0x68, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, - 0x00, 0x12, 0x46, 0x0a, 0x0f, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x4d, 0x65, - 0x6d, 0x62, 0x65, 0x72, 0x12, 0x17, 0x2e, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, - 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, - 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4c, 0x0a, 0x11, 0x55, 0x6e, 0x73, - 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x19, - 0x2e, 0x55, 0x6e, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x4d, 0x65, 0x6d, 0x62, - 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x55, 0x6e, 0x73, 0x75, - 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x42, 0x39, 0x5a, 0x37, 0x67, 0x69, 0x74, 0x2e, 0x63, - 0x6f, 0x6f, 0x70, 0x67, 0x6f, 0x2e, 0x69, 0x6f, 0x2f, 0x63, 0x6f, 0x6f, 0x70, 0x67, 0x6f, 0x2d, - 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x2d, - 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2f, 0x67, 0x72, 0x70, 0x63, 0x61, - 0x70, 0x69, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, -} +const file_groupsmanagement_proto_rawDesc = "" + + "\n" + + "\x16groupsmanagement.proto\x1a\fgroups.proto\x1a\x12groupsmember.proto\"/\n" + + "\x0fAddGroupRequest\x12\x1c\n" + + "\x05group\x18\x01 \x01(\v2\x06.GroupR\x05group\"0\n" + + "\x10AddGroupResponse\x12\x1c\n" + + "\x05group\x18\x02 \x01(\v2\x06.GroupR\x05group\"?\n" + + "\x0fGetGroupRequest\x12\x0e\n" + + "\x02id\x18\x03 \x01(\tR\x02id\x12\x1c\n" + + "\tnamespace\x18\x04 \x01(\tR\tnamespace\"0\n" + + "\x10GetGroupResponse\x12\x1c\n" + + "\x05group\x18\x05 \x01(\v2\x06.GroupR\x05group\"J\n" + + "\x10GetGroupsRequest\x12\x1e\n" + + "\n" + + "namespaces\x18\x06 \x03(\tR\n" + + "namespaces\x12\x16\n" + + "\x06member\x18\a \x01(\tR\x06member\"3\n" + + "\x11GetGroupsResponse\x12\x1e\n" + + "\x06groups\x18\b \x03(\v2\x06.GroupR\x06groups\"3\n" + + "\x15GetGroupsBatchRequest\x12\x1a\n" + + "\bgroupids\x18\n" + + " \x03(\tR\bgroupids\"8\n" + + "\x16GetGroupsBatchResponse\x12\x1e\n" + + "\x06groups\x18\v \x03(\v2\x06.GroupR\x06groups\"H\n" + + "\x10SubscribeRequest\x12\x18\n" + + "\agroupid\x18\x14 \x01(\tR\agroupid\x12\x1a\n" + + "\bmemberid\x18\x15 \x01(\tR\bmemberid\"#\n" + + "\x11SubscribeResponse\x12\x0e\n" + + "\x02ok\x18\x16 \x01(\bR\x02ok\"J\n" + + "\x12UnsubscribeRequest\x12\x18\n" + + "\agroupid\x18\x1e \x01(\tR\agroupid\x12\x1a\n" + + "\bmemberid\x18\x1f \x01(\tR\bmemberid\"%\n" + + "\x13UnsubscribeResponse\x12\x0e\n" + + "\x02ok\x18 \x01(\bR\x02ok\"$\n" + + "\x12DeleteGroupRequest\x12\x0e\n" + + "\x02id\x182 \x01(\tR\x02id\"%\n" + + "\x13DeleteGroupResponse\x12\x0e\n" + + "\x02ok\x183 \x01(\bR\x02ok\";\n" + + "\x15AddGroupMemberRequest\x12\"\n" + + "\x05group\x18! \x01(\v2\f.GroupMemberR\x05group\"<\n" + + "\x16AddGroupMemberResponse\x12\"\n" + + "\x05group\x18\" \x01(\v2\f.GroupMemberR\x05group\"A\n" + + "\x15GetGroupMemberRequest\x12\x0e\n" + + "\x02id\x18# \x01(\tR\x02id\x12\x18\n" + + "\agroupid\x18$ \x01(\tR\agroupid\"<\n" + + "\x16GetGroupMemberResponse\x12\"\n" + + "\x05group\x18% \x01(\v2\f.GroupMemberR\x05group\"8\n" + + "\x16GetGroupsMemberRequest\x12\x1e\n" + + "\n" + + "namespaces\x18& \x03(\tR\n" + + "namespaces\"?\n" + + "\x17GetGroupsMemberResponse\x12$\n" + + "\x06groups\x18' \x03(\v2\f.GroupMemberR\x06groups\"9\n" + + "\x1bGetGroupsBatchMemberRequest\x12\x1a\n" + + "\bgroupids\x18( \x03(\tR\bgroupids\"D\n" + + "\x1cGetGroupsBatchMemberResponse\x12$\n" + + "\x06groups\x18) \x03(\v2\f.GroupMemberR\x06groups\"<\n" + + "\x16SubscribeMemberRequest\x12\"\n" + + "\x05group\x18* \x01(\v2\f.GroupMemberR\x05group\"=\n" + + "\x17SubscribeMemberResponse\x12\"\n" + + "\x05group\x18+ \x01(\v2\f.GroupMemberR\x05group\"*\n" + + "\x18UnsubscribeMemberRequest\x12\x0e\n" + + "\x02id\x18, \x01(\tR\x02id\"+\n" + + "\x19UnsubscribeMemberResponse\x12\x0e\n" + + "\x02id\x18- \x01(\tR\x02id2\xe0\x06\n" + + "\x10GroupsManagement\x121\n" + + "\bAddGroup\x12\x10.AddGroupRequest\x1a\x11.AddGroupResponse\"\x00\x121\n" + + "\bGetGroup\x12\x10.GetGroupRequest\x1a\x11.GetGroupResponse\"\x00\x124\n" + + "\tGetGroups\x12\x11.GetGroupsRequest\x1a\x12.GetGroupsResponse\"\x00\x12C\n" + + "\x0eGetGroupsBatch\x12\x16.GetGroupsBatchRequest\x1a\x17.GetGroupsBatchResponse\"\x00\x124\n" + + "\tSubscribe\x12\x11.SubscribeRequest\x1a\x12.SubscribeResponse\"\x00\x12:\n" + + "\vUnsubscribe\x12\x13.UnsubscribeRequest\x1a\x14.UnsubscribeResponse\"\x00\x12:\n" + + "\vDeleteGroup\x12\x13.DeleteGroupRequest\x1a\x14.DeleteGroupResponse\"\x00\x12C\n" + + "\x0eAddGroupMember\x12\x16.AddGroupMemberRequest\x1a\x17.AddGroupMemberResponse\"\x00\x12C\n" + + "\x0eGetGroupMember\x12\x16.GetGroupMemberRequest\x1a\x17.GetGroupMemberResponse\"\x00\x12F\n" + + "\x0fGetGroupsMember\x12\x17.GetGroupsMemberRequest\x1a\x18.GetGroupsMemberResponse\"\x00\x12U\n" + + "\x14GetGroupsBatchMember\x12\x1c.GetGroupsBatchMemberRequest\x1a\x1d.GetGroupsBatchMemberResponse\"\x00\x12F\n" + + "\x0fSubscribeMember\x12\x17.SubscribeMemberRequest\x1a\x18.SubscribeMemberResponse\"\x00\x12L\n" + + "\x11UnsubscribeMember\x12\x19.UnsubscribeMemberRequest\x1a\x1a.UnsubscribeMemberResponse\"\x00B9Z7git.coopgo.io/coopgo-platform/groups-management/grpcapib\x06proto3" var ( file_groupsmanagement_proto_rawDescOnce sync.Once - file_groupsmanagement_proto_rawDescData = file_groupsmanagement_proto_rawDesc + file_groupsmanagement_proto_rawDescData []byte ) func file_groupsmanagement_proto_rawDescGZIP() []byte { file_groupsmanagement_proto_rawDescOnce.Do(func() { - file_groupsmanagement_proto_rawDescData = protoimpl.X.CompressGZIP(file_groupsmanagement_proto_rawDescData) + file_groupsmanagement_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_groupsmanagement_proto_rawDesc), len(file_groupsmanagement_proto_rawDesc))) }) return file_groupsmanagement_proto_rawDescData } -var file_groupsmanagement_proto_msgTypes = make([]protoimpl.MessageInfo, 24) -var file_groupsmanagement_proto_goTypes = []interface{}{ +var file_groupsmanagement_proto_msgTypes = make([]protoimpl.MessageInfo, 26) +var file_groupsmanagement_proto_goTypes = []any{ (*AddGroupRequest)(nil), // 0: AddGroupRequest (*AddGroupResponse)(nil), // 1: AddGroupResponse (*GetGroupRequest)(nil), // 2: GetGroupRequest @@ -1367,60 +1315,64 @@ var file_groupsmanagement_proto_goTypes = []interface{}{ (*SubscribeResponse)(nil), // 9: SubscribeResponse (*UnsubscribeRequest)(nil), // 10: UnsubscribeRequest (*UnsubscribeResponse)(nil), // 11: UnsubscribeResponse - (*AddGroupMemberRequest)(nil), // 12: AddGroupMemberRequest - (*AddGroupMemberResponse)(nil), // 13: AddGroupMemberResponse - (*GetGroupMemberRequest)(nil), // 14: GetGroupMemberRequest - (*GetGroupMemberResponse)(nil), // 15: GetGroupMemberResponse - (*GetGroupsMemberRequest)(nil), // 16: GetGroupsMemberRequest - (*GetGroupsMemberResponse)(nil), // 17: GetGroupsMemberResponse - (*GetGroupsBatchMemberRequest)(nil), // 18: GetGroupsBatchMemberRequest - (*GetGroupsBatchMemberResponse)(nil), // 19: GetGroupsBatchMemberResponse - (*SubscribeMemberRequest)(nil), // 20: SubscribeMemberRequest - (*SubscribeMemberResponse)(nil), // 21: SubscribeMemberResponse - (*UnsubscribeMemberRequest)(nil), // 22: UnsubscribeMemberRequest - (*UnsubscribeMemberResponse)(nil), // 23: UnsubscribeMemberResponse - (*Group)(nil), // 24: Group - (*GroupMember)(nil), // 25: GroupMember + (*DeleteGroupRequest)(nil), // 12: DeleteGroupRequest + (*DeleteGroupResponse)(nil), // 13: DeleteGroupResponse + (*AddGroupMemberRequest)(nil), // 14: AddGroupMemberRequest + (*AddGroupMemberResponse)(nil), // 15: AddGroupMemberResponse + (*GetGroupMemberRequest)(nil), // 16: GetGroupMemberRequest + (*GetGroupMemberResponse)(nil), // 17: GetGroupMemberResponse + (*GetGroupsMemberRequest)(nil), // 18: GetGroupsMemberRequest + (*GetGroupsMemberResponse)(nil), // 19: GetGroupsMemberResponse + (*GetGroupsBatchMemberRequest)(nil), // 20: GetGroupsBatchMemberRequest + (*GetGroupsBatchMemberResponse)(nil), // 21: GetGroupsBatchMemberResponse + (*SubscribeMemberRequest)(nil), // 22: SubscribeMemberRequest + (*SubscribeMemberResponse)(nil), // 23: SubscribeMemberResponse + (*UnsubscribeMemberRequest)(nil), // 24: UnsubscribeMemberRequest + (*UnsubscribeMemberResponse)(nil), // 25: UnsubscribeMemberResponse + (*Group)(nil), // 26: Group + (*GroupMember)(nil), // 27: GroupMember } var file_groupsmanagement_proto_depIdxs = []int32{ - 24, // 0: AddGroupRequest.group:type_name -> Group - 24, // 1: AddGroupResponse.group:type_name -> Group - 24, // 2: GetGroupResponse.group:type_name -> Group - 24, // 3: GetGroupsResponse.groups:type_name -> Group - 24, // 4: GetGroupsBatchResponse.groups:type_name -> Group - 25, // 5: AddGroupMemberRequest.group:type_name -> GroupMember - 25, // 6: AddGroupMemberResponse.group:type_name -> GroupMember - 25, // 7: GetGroupMemberResponse.group:type_name -> GroupMember - 25, // 8: GetGroupsMemberResponse.groups:type_name -> GroupMember - 25, // 9: GetGroupsBatchMemberResponse.groups:type_name -> GroupMember - 25, // 10: SubscribeMemberRequest.group:type_name -> GroupMember - 25, // 11: SubscribeMemberResponse.group:type_name -> GroupMember + 26, // 0: AddGroupRequest.group:type_name -> Group + 26, // 1: AddGroupResponse.group:type_name -> Group + 26, // 2: GetGroupResponse.group:type_name -> Group + 26, // 3: GetGroupsResponse.groups:type_name -> Group + 26, // 4: GetGroupsBatchResponse.groups:type_name -> Group + 27, // 5: AddGroupMemberRequest.group:type_name -> GroupMember + 27, // 6: AddGroupMemberResponse.group:type_name -> GroupMember + 27, // 7: GetGroupMemberResponse.group:type_name -> GroupMember + 27, // 8: GetGroupsMemberResponse.groups:type_name -> GroupMember + 27, // 9: GetGroupsBatchMemberResponse.groups:type_name -> GroupMember + 27, // 10: SubscribeMemberRequest.group:type_name -> GroupMember + 27, // 11: SubscribeMemberResponse.group:type_name -> GroupMember 0, // 12: GroupsManagement.AddGroup:input_type -> AddGroupRequest 2, // 13: GroupsManagement.GetGroup:input_type -> GetGroupRequest 4, // 14: GroupsManagement.GetGroups:input_type -> GetGroupsRequest 6, // 15: GroupsManagement.GetGroupsBatch:input_type -> GetGroupsBatchRequest 8, // 16: GroupsManagement.Subscribe:input_type -> SubscribeRequest 10, // 17: GroupsManagement.Unsubscribe:input_type -> UnsubscribeRequest - 12, // 18: GroupsManagement.AddGroupMember:input_type -> AddGroupMemberRequest - 14, // 19: GroupsManagement.GetGroupMember:input_type -> GetGroupMemberRequest - 16, // 20: GroupsManagement.GetGroupsMember:input_type -> GetGroupsMemberRequest - 18, // 21: GroupsManagement.GetGroupsBatchMember:input_type -> GetGroupsBatchMemberRequest - 20, // 22: GroupsManagement.SubscribeMember:input_type -> SubscribeMemberRequest - 22, // 23: GroupsManagement.UnsubscribeMember:input_type -> UnsubscribeMemberRequest - 1, // 24: GroupsManagement.AddGroup:output_type -> AddGroupResponse - 3, // 25: GroupsManagement.GetGroup:output_type -> GetGroupResponse - 5, // 26: GroupsManagement.GetGroups:output_type -> GetGroupsResponse - 7, // 27: GroupsManagement.GetGroupsBatch:output_type -> GetGroupsBatchResponse - 9, // 28: GroupsManagement.Subscribe:output_type -> SubscribeResponse - 11, // 29: GroupsManagement.Unsubscribe:output_type -> UnsubscribeResponse - 13, // 30: GroupsManagement.AddGroupMember:output_type -> AddGroupMemberResponse - 15, // 31: GroupsManagement.GetGroupMember:output_type -> GetGroupMemberResponse - 17, // 32: GroupsManagement.GetGroupsMember:output_type -> GetGroupsMemberResponse - 19, // 33: GroupsManagement.GetGroupsBatchMember:output_type -> GetGroupsBatchMemberResponse - 21, // 34: GroupsManagement.SubscribeMember:output_type -> SubscribeMemberResponse - 23, // 35: GroupsManagement.UnsubscribeMember:output_type -> UnsubscribeMemberResponse - 24, // [24:36] is the sub-list for method output_type - 12, // [12:24] is the sub-list for method input_type + 12, // 18: GroupsManagement.DeleteGroup:input_type -> DeleteGroupRequest + 14, // 19: GroupsManagement.AddGroupMember:input_type -> AddGroupMemberRequest + 16, // 20: GroupsManagement.GetGroupMember:input_type -> GetGroupMemberRequest + 18, // 21: GroupsManagement.GetGroupsMember:input_type -> GetGroupsMemberRequest + 20, // 22: GroupsManagement.GetGroupsBatchMember:input_type -> GetGroupsBatchMemberRequest + 22, // 23: GroupsManagement.SubscribeMember:input_type -> SubscribeMemberRequest + 24, // 24: GroupsManagement.UnsubscribeMember:input_type -> UnsubscribeMemberRequest + 1, // 25: GroupsManagement.AddGroup:output_type -> AddGroupResponse + 3, // 26: GroupsManagement.GetGroup:output_type -> GetGroupResponse + 5, // 27: GroupsManagement.GetGroups:output_type -> GetGroupsResponse + 7, // 28: GroupsManagement.GetGroupsBatch:output_type -> GetGroupsBatchResponse + 9, // 29: GroupsManagement.Subscribe:output_type -> SubscribeResponse + 11, // 30: GroupsManagement.Unsubscribe:output_type -> UnsubscribeResponse + 13, // 31: GroupsManagement.DeleteGroup:output_type -> DeleteGroupResponse + 15, // 32: GroupsManagement.AddGroupMember:output_type -> AddGroupMemberResponse + 17, // 33: GroupsManagement.GetGroupMember:output_type -> GetGroupMemberResponse + 19, // 34: GroupsManagement.GetGroupsMember:output_type -> GetGroupsMemberResponse + 21, // 35: GroupsManagement.GetGroupsBatchMember:output_type -> GetGroupsBatchMemberResponse + 23, // 36: GroupsManagement.SubscribeMember:output_type -> SubscribeMemberResponse + 25, // 37: GroupsManagement.UnsubscribeMember:output_type -> UnsubscribeMemberResponse + 25, // [25:38] is the sub-list for method output_type + 12, // [12:25] is the sub-list for method input_type 12, // [12:12] is the sub-list for extension type_name 12, // [12:12] is the sub-list for extension extendee 0, // [0:12] is the sub-list for field type_name @@ -1433,303 +1385,13 @@ func file_groupsmanagement_proto_init() { } file_groups_proto_init() file_groupsmember_proto_init() - if !protoimpl.UnsafeEnabled { - file_groupsmanagement_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AddGroupRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_groupsmanagement_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AddGroupResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_groupsmanagement_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetGroupRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_groupsmanagement_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetGroupResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_groupsmanagement_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetGroupsRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_groupsmanagement_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetGroupsResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_groupsmanagement_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetGroupsBatchRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_groupsmanagement_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetGroupsBatchResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_groupsmanagement_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SubscribeRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_groupsmanagement_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SubscribeResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_groupsmanagement_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UnsubscribeRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_groupsmanagement_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UnsubscribeResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_groupsmanagement_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AddGroupMemberRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_groupsmanagement_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AddGroupMemberResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_groupsmanagement_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetGroupMemberRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_groupsmanagement_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetGroupMemberResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_groupsmanagement_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetGroupsMemberRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_groupsmanagement_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetGroupsMemberResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_groupsmanagement_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetGroupsBatchMemberRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_groupsmanagement_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetGroupsBatchMemberResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_groupsmanagement_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SubscribeMemberRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_groupsmanagement_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SubscribeMemberResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_groupsmanagement_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UnsubscribeMemberRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_groupsmanagement_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UnsubscribeMemberResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - } type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), - RawDescriptor: file_groupsmanagement_proto_rawDesc, + RawDescriptor: unsafe.Slice(unsafe.StringData(file_groupsmanagement_proto_rawDesc), len(file_groupsmanagement_proto_rawDesc)), NumEnums: 0, - NumMessages: 24, + NumMessages: 26, NumExtensions: 0, NumServices: 1, }, @@ -1738,7 +1400,6 @@ func file_groupsmanagement_proto_init() { MessageInfos: file_groupsmanagement_proto_msgTypes, }.Build() File_groupsmanagement_proto = out.File - file_groupsmanagement_proto_rawDesc = nil file_groupsmanagement_proto_goTypes = nil file_groupsmanagement_proto_depIdxs = nil } diff --git a/grpcapi/groupsmanagement.proto b/grpcapi/groupsmanagement.proto index 14ec3ad..b340839 100644 --- a/grpcapi/groupsmanagement.proto +++ b/grpcapi/groupsmanagement.proto @@ -14,6 +14,7 @@ service GroupsManagement { rpc GetGroupsBatch(GetGroupsBatchRequest) returns (GetGroupsBatchResponse) {} rpc Subscribe(SubscribeRequest) returns (SubscribeResponse) {} rpc Unsubscribe(UnsubscribeRequest) returns (UnsubscribeResponse) {} + rpc DeleteGroup(DeleteGroupRequest) returns (DeleteGroupResponse) {} //////////member rpc AddGroupMember(AddGroupMemberRequest) returns (AddGroupMemberResponse) {} rpc GetGroupMember(GetGroupMemberRequest) returns (GetGroupMemberResponse) {} @@ -63,6 +64,12 @@ message UnsubscribeRequest { message UnsubscribeResponse { bool ok = 32; } +message DeleteGroupRequest { + string id = 50; +} +message DeleteGroupResponse { + bool ok = 51; +} //////////////////member message AddGroupMemberRequest { diff --git a/grpcapi/groupsmanagement_grpc.pb.go b/grpcapi/groupsmanagement_grpc.pb.go index ef5cf41..6c153c0 100644 --- a/grpcapi/groupsmanagement_grpc.pb.go +++ b/grpcapi/groupsmanagement_grpc.pb.go @@ -1,7 +1,9 @@ +//COOPGO Groups Management gRPC service definition + // Code generated by protoc-gen-go-grpc. DO NOT EDIT. // versions: -// - protoc-gen-go-grpc v1.2.0 -// - protoc v3.19.4 +// - protoc-gen-go-grpc v1.5.1 +// - protoc v6.31.1 // source: groupsmanagement.proto package grpcapi @@ -15,8 +17,24 @@ import ( // 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 +// Requires gRPC-Go v1.64.0 or later. +const _ = grpc.SupportPackageIsVersion9 + +const ( + GroupsManagement_AddGroup_FullMethodName = "/GroupsManagement/AddGroup" + GroupsManagement_GetGroup_FullMethodName = "/GroupsManagement/GetGroup" + GroupsManagement_GetGroups_FullMethodName = "/GroupsManagement/GetGroups" + GroupsManagement_GetGroupsBatch_FullMethodName = "/GroupsManagement/GetGroupsBatch" + GroupsManagement_Subscribe_FullMethodName = "/GroupsManagement/Subscribe" + GroupsManagement_Unsubscribe_FullMethodName = "/GroupsManagement/Unsubscribe" + GroupsManagement_DeleteGroup_FullMethodName = "/GroupsManagement/DeleteGroup" + GroupsManagement_AddGroupMember_FullMethodName = "/GroupsManagement/AddGroupMember" + GroupsManagement_GetGroupMember_FullMethodName = "/GroupsManagement/GetGroupMember" + GroupsManagement_GetGroupsMember_FullMethodName = "/GroupsManagement/GetGroupsMember" + GroupsManagement_GetGroupsBatchMember_FullMethodName = "/GroupsManagement/GetGroupsBatchMember" + GroupsManagement_SubscribeMember_FullMethodName = "/GroupsManagement/SubscribeMember" + GroupsManagement_UnsubscribeMember_FullMethodName = "/GroupsManagement/UnsubscribeMember" +) // GroupsManagementClient is the client API for GroupsManagement service. // @@ -28,7 +46,8 @@ type GroupsManagementClient interface { GetGroupsBatch(ctx context.Context, in *GetGroupsBatchRequest, opts ...grpc.CallOption) (*GetGroupsBatchResponse, error) Subscribe(ctx context.Context, in *SubscribeRequest, opts ...grpc.CallOption) (*SubscribeResponse, error) Unsubscribe(ctx context.Context, in *UnsubscribeRequest, opts ...grpc.CallOption) (*UnsubscribeResponse, error) - //////////member + DeleteGroup(ctx context.Context, in *DeleteGroupRequest, opts ...grpc.CallOption) (*DeleteGroupResponse, error) + // ////////member AddGroupMember(ctx context.Context, in *AddGroupMemberRequest, opts ...grpc.CallOption) (*AddGroupMemberResponse, error) GetGroupMember(ctx context.Context, in *GetGroupMemberRequest, opts ...grpc.CallOption) (*GetGroupMemberResponse, error) GetGroupsMember(ctx context.Context, in *GetGroupsMemberRequest, opts ...grpc.CallOption) (*GetGroupsMemberResponse, error) @@ -46,8 +65,9 @@ func NewGroupsManagementClient(cc grpc.ClientConnInterface) GroupsManagementClie } func (c *groupsManagementClient) AddGroup(ctx context.Context, in *AddGroupRequest, opts ...grpc.CallOption) (*AddGroupResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) out := new(AddGroupResponse) - err := c.cc.Invoke(ctx, "/GroupsManagement/AddGroup", in, out, opts...) + err := c.cc.Invoke(ctx, GroupsManagement_AddGroup_FullMethodName, in, out, cOpts...) if err != nil { return nil, err } @@ -55,8 +75,9 @@ func (c *groupsManagementClient) AddGroup(ctx context.Context, in *AddGroupReque } func (c *groupsManagementClient) GetGroup(ctx context.Context, in *GetGroupRequest, opts ...grpc.CallOption) (*GetGroupResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) out := new(GetGroupResponse) - err := c.cc.Invoke(ctx, "/GroupsManagement/GetGroup", in, out, opts...) + err := c.cc.Invoke(ctx, GroupsManagement_GetGroup_FullMethodName, in, out, cOpts...) if err != nil { return nil, err } @@ -64,8 +85,9 @@ func (c *groupsManagementClient) GetGroup(ctx context.Context, in *GetGroupReque } func (c *groupsManagementClient) GetGroups(ctx context.Context, in *GetGroupsRequest, opts ...grpc.CallOption) (*GetGroupsResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) out := new(GetGroupsResponse) - err := c.cc.Invoke(ctx, "/GroupsManagement/GetGroups", in, out, opts...) + err := c.cc.Invoke(ctx, GroupsManagement_GetGroups_FullMethodName, in, out, cOpts...) if err != nil { return nil, err } @@ -73,8 +95,9 @@ func (c *groupsManagementClient) GetGroups(ctx context.Context, in *GetGroupsReq } func (c *groupsManagementClient) GetGroupsBatch(ctx context.Context, in *GetGroupsBatchRequest, opts ...grpc.CallOption) (*GetGroupsBatchResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) out := new(GetGroupsBatchResponse) - err := c.cc.Invoke(ctx, "/GroupsManagement/GetGroupsBatch", in, out, opts...) + err := c.cc.Invoke(ctx, GroupsManagement_GetGroupsBatch_FullMethodName, in, out, cOpts...) if err != nil { return nil, err } @@ -82,8 +105,9 @@ func (c *groupsManagementClient) GetGroupsBatch(ctx context.Context, in *GetGrou } func (c *groupsManagementClient) Subscribe(ctx context.Context, in *SubscribeRequest, opts ...grpc.CallOption) (*SubscribeResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) out := new(SubscribeResponse) - err := c.cc.Invoke(ctx, "/GroupsManagement/Subscribe", in, out, opts...) + err := c.cc.Invoke(ctx, GroupsManagement_Subscribe_FullMethodName, in, out, cOpts...) if err != nil { return nil, err } @@ -91,8 +115,19 @@ func (c *groupsManagementClient) Subscribe(ctx context.Context, in *SubscribeReq } func (c *groupsManagementClient) Unsubscribe(ctx context.Context, in *UnsubscribeRequest, opts ...grpc.CallOption) (*UnsubscribeResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) out := new(UnsubscribeResponse) - err := c.cc.Invoke(ctx, "/GroupsManagement/Unsubscribe", in, out, opts...) + err := c.cc.Invoke(ctx, GroupsManagement_Unsubscribe_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *groupsManagementClient) DeleteGroup(ctx context.Context, in *DeleteGroupRequest, opts ...grpc.CallOption) (*DeleteGroupResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(DeleteGroupResponse) + err := c.cc.Invoke(ctx, GroupsManagement_DeleteGroup_FullMethodName, in, out, cOpts...) if err != nil { return nil, err } @@ -100,8 +135,9 @@ func (c *groupsManagementClient) Unsubscribe(ctx context.Context, in *Unsubscrib } func (c *groupsManagementClient) AddGroupMember(ctx context.Context, in *AddGroupMemberRequest, opts ...grpc.CallOption) (*AddGroupMemberResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) out := new(AddGroupMemberResponse) - err := c.cc.Invoke(ctx, "/GroupsManagement/AddGroupMember", in, out, opts...) + err := c.cc.Invoke(ctx, GroupsManagement_AddGroupMember_FullMethodName, in, out, cOpts...) if err != nil { return nil, err } @@ -109,8 +145,9 @@ func (c *groupsManagementClient) AddGroupMember(ctx context.Context, in *AddGrou } func (c *groupsManagementClient) GetGroupMember(ctx context.Context, in *GetGroupMemberRequest, opts ...grpc.CallOption) (*GetGroupMemberResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) out := new(GetGroupMemberResponse) - err := c.cc.Invoke(ctx, "/GroupsManagement/GetGroupMember", in, out, opts...) + err := c.cc.Invoke(ctx, GroupsManagement_GetGroupMember_FullMethodName, in, out, cOpts...) if err != nil { return nil, err } @@ -118,8 +155,9 @@ func (c *groupsManagementClient) GetGroupMember(ctx context.Context, in *GetGrou } func (c *groupsManagementClient) GetGroupsMember(ctx context.Context, in *GetGroupsMemberRequest, opts ...grpc.CallOption) (*GetGroupsMemberResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) out := new(GetGroupsMemberResponse) - err := c.cc.Invoke(ctx, "/GroupsManagement/GetGroupsMember", in, out, opts...) + err := c.cc.Invoke(ctx, GroupsManagement_GetGroupsMember_FullMethodName, in, out, cOpts...) if err != nil { return nil, err } @@ -127,8 +165,9 @@ func (c *groupsManagementClient) GetGroupsMember(ctx context.Context, in *GetGro } func (c *groupsManagementClient) GetGroupsBatchMember(ctx context.Context, in *GetGroupsBatchMemberRequest, opts ...grpc.CallOption) (*GetGroupsBatchMemberResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) out := new(GetGroupsBatchMemberResponse) - err := c.cc.Invoke(ctx, "/GroupsManagement/GetGroupsBatchMember", in, out, opts...) + err := c.cc.Invoke(ctx, GroupsManagement_GetGroupsBatchMember_FullMethodName, in, out, cOpts...) if err != nil { return nil, err } @@ -136,8 +175,9 @@ func (c *groupsManagementClient) GetGroupsBatchMember(ctx context.Context, in *G } func (c *groupsManagementClient) SubscribeMember(ctx context.Context, in *SubscribeMemberRequest, opts ...grpc.CallOption) (*SubscribeMemberResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) out := new(SubscribeMemberResponse) - err := c.cc.Invoke(ctx, "/GroupsManagement/SubscribeMember", in, out, opts...) + err := c.cc.Invoke(ctx, GroupsManagement_SubscribeMember_FullMethodName, in, out, cOpts...) if err != nil { return nil, err } @@ -145,8 +185,9 @@ func (c *groupsManagementClient) SubscribeMember(ctx context.Context, in *Subscr } func (c *groupsManagementClient) UnsubscribeMember(ctx context.Context, in *UnsubscribeMemberRequest, opts ...grpc.CallOption) (*UnsubscribeMemberResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) out := new(UnsubscribeMemberResponse) - err := c.cc.Invoke(ctx, "/GroupsManagement/UnsubscribeMember", in, out, opts...) + err := c.cc.Invoke(ctx, GroupsManagement_UnsubscribeMember_FullMethodName, in, out, cOpts...) if err != nil { return nil, err } @@ -155,7 +196,7 @@ func (c *groupsManagementClient) UnsubscribeMember(ctx context.Context, in *Unsu // GroupsManagementServer is the server API for GroupsManagement service. // All implementations must embed UnimplementedGroupsManagementServer -// for forward compatibility +// for forward compatibility. type GroupsManagementServer interface { AddGroup(context.Context, *AddGroupRequest) (*AddGroupResponse, error) GetGroup(context.Context, *GetGroupRequest) (*GetGroupResponse, error) @@ -163,7 +204,8 @@ type GroupsManagementServer interface { GetGroupsBatch(context.Context, *GetGroupsBatchRequest) (*GetGroupsBatchResponse, error) Subscribe(context.Context, *SubscribeRequest) (*SubscribeResponse, error) Unsubscribe(context.Context, *UnsubscribeRequest) (*UnsubscribeResponse, error) - //////////member + DeleteGroup(context.Context, *DeleteGroupRequest) (*DeleteGroupResponse, error) + // ////////member AddGroupMember(context.Context, *AddGroupMemberRequest) (*AddGroupMemberResponse, error) GetGroupMember(context.Context, *GetGroupMemberRequest) (*GetGroupMemberResponse, error) GetGroupsMember(context.Context, *GetGroupsMemberRequest) (*GetGroupsMemberResponse, error) @@ -173,9 +215,12 @@ type GroupsManagementServer interface { mustEmbedUnimplementedGroupsManagementServer() } -// UnimplementedGroupsManagementServer must be embedded to have forward compatible implementations. -type UnimplementedGroupsManagementServer struct { -} +// UnimplementedGroupsManagementServer must be embedded to have +// forward compatible implementations. +// +// NOTE: this should be embedded by value instead of pointer to avoid a nil +// pointer dereference when methods are called. +type UnimplementedGroupsManagementServer struct{} func (UnimplementedGroupsManagementServer) AddGroup(context.Context, *AddGroupRequest) (*AddGroupResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method AddGroup not implemented") @@ -195,6 +240,9 @@ func (UnimplementedGroupsManagementServer) Subscribe(context.Context, *Subscribe func (UnimplementedGroupsManagementServer) Unsubscribe(context.Context, *UnsubscribeRequest) (*UnsubscribeResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method Unsubscribe not implemented") } +func (UnimplementedGroupsManagementServer) DeleteGroup(context.Context, *DeleteGroupRequest) (*DeleteGroupResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method DeleteGroup not implemented") +} func (UnimplementedGroupsManagementServer) AddGroupMember(context.Context, *AddGroupMemberRequest) (*AddGroupMemberResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method AddGroupMember not implemented") } @@ -214,6 +262,7 @@ func (UnimplementedGroupsManagementServer) UnsubscribeMember(context.Context, *U return nil, status.Errorf(codes.Unimplemented, "method UnsubscribeMember not implemented") } func (UnimplementedGroupsManagementServer) mustEmbedUnimplementedGroupsManagementServer() {} +func (UnimplementedGroupsManagementServer) testEmbeddedByValue() {} // UnsafeGroupsManagementServer may be embedded to opt out of forward compatibility for this service. // Use of this interface is not recommended, as added methods to GroupsManagementServer will @@ -223,6 +272,13 @@ type UnsafeGroupsManagementServer interface { } func RegisterGroupsManagementServer(s grpc.ServiceRegistrar, srv GroupsManagementServer) { + // If the following call pancis, it indicates UnimplementedGroupsManagementServer was + // embedded by pointer and is nil. This will cause panics if an + // unimplemented method is ever invoked, so we test this at initialization + // time to prevent it from happening at runtime later due to I/O. + if t, ok := srv.(interface{ testEmbeddedByValue() }); ok { + t.testEmbeddedByValue() + } s.RegisterService(&GroupsManagement_ServiceDesc, srv) } @@ -236,7 +292,7 @@ func _GroupsManagement_AddGroup_Handler(srv interface{}, ctx context.Context, de } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/GroupsManagement/AddGroup", + FullMethod: GroupsManagement_AddGroup_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GroupsManagementServer).AddGroup(ctx, req.(*AddGroupRequest)) @@ -254,7 +310,7 @@ func _GroupsManagement_GetGroup_Handler(srv interface{}, ctx context.Context, de } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/GroupsManagement/GetGroup", + FullMethod: GroupsManagement_GetGroup_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GroupsManagementServer).GetGroup(ctx, req.(*GetGroupRequest)) @@ -272,7 +328,7 @@ func _GroupsManagement_GetGroups_Handler(srv interface{}, ctx context.Context, d } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/GroupsManagement/GetGroups", + FullMethod: GroupsManagement_GetGroups_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GroupsManagementServer).GetGroups(ctx, req.(*GetGroupsRequest)) @@ -290,7 +346,7 @@ func _GroupsManagement_GetGroupsBatch_Handler(srv interface{}, ctx context.Conte } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/GroupsManagement/GetGroupsBatch", + FullMethod: GroupsManagement_GetGroupsBatch_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GroupsManagementServer).GetGroupsBatch(ctx, req.(*GetGroupsBatchRequest)) @@ -308,7 +364,7 @@ func _GroupsManagement_Subscribe_Handler(srv interface{}, ctx context.Context, d } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/GroupsManagement/Subscribe", + FullMethod: GroupsManagement_Subscribe_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GroupsManagementServer).Subscribe(ctx, req.(*SubscribeRequest)) @@ -326,7 +382,7 @@ func _GroupsManagement_Unsubscribe_Handler(srv interface{}, ctx context.Context, } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/GroupsManagement/Unsubscribe", + FullMethod: GroupsManagement_Unsubscribe_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GroupsManagementServer).Unsubscribe(ctx, req.(*UnsubscribeRequest)) @@ -334,6 +390,24 @@ func _GroupsManagement_Unsubscribe_Handler(srv interface{}, ctx context.Context, return interceptor(ctx, in, info, handler) } +func _GroupsManagement_DeleteGroup_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(DeleteGroupRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(GroupsManagementServer).DeleteGroup(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: GroupsManagement_DeleteGroup_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(GroupsManagementServer).DeleteGroup(ctx, req.(*DeleteGroupRequest)) + } + return interceptor(ctx, in, info, handler) +} + func _GroupsManagement_AddGroupMember_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(AddGroupMemberRequest) if err := dec(in); err != nil { @@ -344,7 +418,7 @@ func _GroupsManagement_AddGroupMember_Handler(srv interface{}, ctx context.Conte } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/GroupsManagement/AddGroupMember", + FullMethod: GroupsManagement_AddGroupMember_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GroupsManagementServer).AddGroupMember(ctx, req.(*AddGroupMemberRequest)) @@ -362,7 +436,7 @@ func _GroupsManagement_GetGroupMember_Handler(srv interface{}, ctx context.Conte } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/GroupsManagement/GetGroupMember", + FullMethod: GroupsManagement_GetGroupMember_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GroupsManagementServer).GetGroupMember(ctx, req.(*GetGroupMemberRequest)) @@ -380,7 +454,7 @@ func _GroupsManagement_GetGroupsMember_Handler(srv interface{}, ctx context.Cont } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/GroupsManagement/GetGroupsMember", + FullMethod: GroupsManagement_GetGroupsMember_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GroupsManagementServer).GetGroupsMember(ctx, req.(*GetGroupsMemberRequest)) @@ -398,7 +472,7 @@ func _GroupsManagement_GetGroupsBatchMember_Handler(srv interface{}, ctx context } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/GroupsManagement/GetGroupsBatchMember", + FullMethod: GroupsManagement_GetGroupsBatchMember_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GroupsManagementServer).GetGroupsBatchMember(ctx, req.(*GetGroupsBatchMemberRequest)) @@ -416,7 +490,7 @@ func _GroupsManagement_SubscribeMember_Handler(srv interface{}, ctx context.Cont } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/GroupsManagement/SubscribeMember", + FullMethod: GroupsManagement_SubscribeMember_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GroupsManagementServer).SubscribeMember(ctx, req.(*SubscribeMemberRequest)) @@ -434,7 +508,7 @@ func _GroupsManagement_UnsubscribeMember_Handler(srv interface{}, ctx context.Co } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/GroupsManagement/UnsubscribeMember", + FullMethod: GroupsManagement_UnsubscribeMember_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GroupsManagementServer).UnsubscribeMember(ctx, req.(*UnsubscribeMemberRequest)) @@ -473,6 +547,10 @@ var GroupsManagement_ServiceDesc = grpc.ServiceDesc{ MethodName: "Unsubscribe", Handler: _GroupsManagement_Unsubscribe_Handler, }, + { + MethodName: "DeleteGroup", + Handler: _GroupsManagement_DeleteGroup_Handler, + }, { MethodName: "AddGroupMember", Handler: _GroupsManagement_AddGroupMember_Handler, diff --git a/grpcapi/groupsmember.pb.go b/grpcapi/groupsmember.pb.go index cd706dd..c95a257 100644 --- a/grpcapi/groupsmember.pb.go +++ b/grpcapi/groupsmember.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.0 -// protoc v3.19.4 +// protoc-gen-go v1.36.7 +// protoc v6.31.1 // source: groupsmember.proto package grpcapi @@ -12,6 +12,7 @@ import ( structpb "google.golang.org/protobuf/types/known/structpb" reflect "reflect" sync "sync" + unsafe "unsafe" ) const ( @@ -22,23 +23,20 @@ const ( ) type GroupMember struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + Memberid string `protobuf:"bytes,2,opt,name=memberid,proto3" json:"memberid,omitempty"` + Groupid string `protobuf:"bytes,3,opt,name=groupid,proto3" json:"groupid,omitempty"` + Data *structpb.Struct `protobuf:"bytes,4,opt,name=data,proto3" json:"data,omitempty"` unknownFields protoimpl.UnknownFields - - Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` - Memberid string `protobuf:"bytes,2,opt,name=memberid,proto3" json:"memberid,omitempty"` - Groupid string `protobuf:"bytes,3,opt,name=groupid,proto3" json:"groupid,omitempty"` - Data *structpb.Struct `protobuf:"bytes,4,opt,name=data,proto3" json:"data,omitempty"` + sizeCache protoimpl.SizeCache } func (x *GroupMember) Reset() { *x = GroupMember{} - if protoimpl.UnsafeEnabled { - mi := &file_groupsmember_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_groupsmember_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *GroupMember) String() string { @@ -49,7 +47,7 @@ func (*GroupMember) ProtoMessage() {} func (x *GroupMember) ProtoReflect() protoreflect.Message { mi := &file_groupsmember_proto_msgTypes[0] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -94,39 +92,29 @@ func (x *GroupMember) GetData() *structpb.Struct { var File_groupsmember_proto protoreflect.FileDescriptor -var file_groupsmember_proto_rawDesc = []byte{ - 0x0a, 0x12, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x2e, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x22, 0x80, 0x01, 0x0a, 0x0b, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, - 0x65, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, - 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x69, 0x64, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x69, 0x64, 0x12, 0x18, - 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x12, 0x2b, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, - 0x04, 0x64, 0x61, 0x74, 0x61, 0x42, 0x39, 0x5a, 0x37, 0x67, 0x69, 0x74, 0x2e, 0x63, 0x6f, 0x6f, - 0x70, 0x67, 0x6f, 0x2e, 0x69, 0x6f, 0x2f, 0x63, 0x6f, 0x6f, 0x70, 0x67, 0x6f, 0x2d, 0x70, 0x6c, - 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x2d, 0x6d, 0x61, - 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2f, 0x67, 0x72, 0x70, 0x63, 0x61, 0x70, 0x69, - 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, -} +const file_groupsmember_proto_rawDesc = "" + + "\n" + + "\x12groupsmember.proto\x1a\x1cgoogle/protobuf/struct.proto\"\x80\x01\n" + + "\vGroupMember\x12\x0e\n" + + "\x02id\x18\x01 \x01(\tR\x02id\x12\x1a\n" + + "\bmemberid\x18\x02 \x01(\tR\bmemberid\x12\x18\n" + + "\agroupid\x18\x03 \x01(\tR\agroupid\x12+\n" + + "\x04data\x18\x04 \x01(\v2\x17.google.protobuf.StructR\x04dataB9Z7git.coopgo.io/coopgo-platform/groups-management/grpcapib\x06proto3" var ( file_groupsmember_proto_rawDescOnce sync.Once - file_groupsmember_proto_rawDescData = file_groupsmember_proto_rawDesc + file_groupsmember_proto_rawDescData []byte ) func file_groupsmember_proto_rawDescGZIP() []byte { file_groupsmember_proto_rawDescOnce.Do(func() { - file_groupsmember_proto_rawDescData = protoimpl.X.CompressGZIP(file_groupsmember_proto_rawDescData) + file_groupsmember_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_groupsmember_proto_rawDesc), len(file_groupsmember_proto_rawDesc))) }) return file_groupsmember_proto_rawDescData } var file_groupsmember_proto_msgTypes = make([]protoimpl.MessageInfo, 1) -var file_groupsmember_proto_goTypes = []interface{}{ +var file_groupsmember_proto_goTypes = []any{ (*GroupMember)(nil), // 0: GroupMember (*structpb.Struct)(nil), // 1: google.protobuf.Struct } @@ -144,25 +132,11 @@ func file_groupsmember_proto_init() { if File_groupsmember_proto != nil { return } - if !protoimpl.UnsafeEnabled { - file_groupsmember_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GroupMember); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - } type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), - RawDescriptor: file_groupsmember_proto_rawDesc, + RawDescriptor: unsafe.Slice(unsafe.StringData(file_groupsmember_proto_rawDesc), len(file_groupsmember_proto_rawDesc)), NumEnums: 0, NumMessages: 1, NumExtensions: 0, @@ -173,7 +147,6 @@ func file_groupsmember_proto_init() { MessageInfos: file_groupsmember_proto_msgTypes, }.Build() File_groupsmember_proto = out.File - file_groupsmember_proto_rawDesc = nil file_groupsmember_proto_goTypes = nil file_groupsmember_proto_depIdxs = nil } diff --git a/grpcapi/grpcapi.go b/grpcapi/grpcapi.go index cd512c5..07729e7 100644 --- a/grpcapi/grpcapi.go +++ b/grpcapi/grpcapi.go @@ -103,6 +103,16 @@ func (s GroupsManagementServerImpl) Unsubscribe(ctx context.Context, req *Unsubs Ok: true, }, nil } + +func (s GroupsManagementServerImpl) DeleteGroup(ctx context.Context, req *DeleteGroupRequest) (*DeleteGroupResponse, error) { + err := s.handler.DeleteGroup(req.Id) + if err != nil { + return nil, status.Errorf(codes.Internal, "could not delete group: %v", err) + } + return &DeleteGroupResponse{ + Ok: true, + }, nil +} func (s GroupsManagementServerImpl) mustEmbedUnimplementedGroupsManagementServer() {} func Run(done chan error, cfg *viper.Viper, handler handlers.GroupsManagementHandler) { diff --git a/handlers/groups.go b/handlers/groups.go index 1e04246..edaf177 100644 --- a/handlers/groups.go +++ b/handlers/groups.go @@ -80,3 +80,7 @@ func (h GroupsManagementHandler) Unsubscribe(groupid string, subscriber string) h.storage.UpdateGroup(*group) return nil } + +func (h GroupsManagementHandler) DeleteGroup(id string) error { + return h.storage.DeleteGroup(id) +} diff --git a/storage/mongodb.go b/storage/mongodb.go index 61bf9bf..3d15553 100644 --- a/storage/mongodb.go +++ b/storage/mongodb.go @@ -152,6 +152,16 @@ func (s MongoDBStorage) UpdateGroup(group Group) error { return nil } +func (s MongoDBStorage) DeleteGroup(id string) error { + collection := s.Client.Database(s.DbName).Collection(s.Collections["groups"]) + + if _, err := collection.DeleteOne(context.TODO(), bson.M{"_id": id}); err != nil { + return err + } + + return nil +} + /*********************************************************************************************************************************/ /*********************************************************Code********************************************************************/ /*********************************************************************************************************************************/ diff --git a/storage/storage.go b/storage/storage.go index 3dff03f..df19a9e 100644 --- a/storage/storage.go +++ b/storage/storage.go @@ -12,6 +12,7 @@ type Storage interface { GetGroups([]string) ([]Group, error) GetGroupsByIds([]string) ([]Group, error) UpdateGroup(Group) error + DeleteGroup(string) error /*******************************************************/ CreateGroupMember(GroupMember) error GetGroupMember(string) (*GroupMember, error)