diff --git a/pkg/members/members.go b/pkg/members/members.go new file mode 100644 index 0000000000000000000000000000000000000000..0993b6fddfe34cf7f257e6b70433893485a60dba --- /dev/null +++ b/pkg/members/members.go @@ -0,0 +1,35 @@ +package members + +import ( + "fmt" +) + +type Member struct { + OrgId string `bson:"orgId"` + UserId string `bson:"userId"` + Role Role `bson:"role"` +} + +type Role uint + +const ( + NotMember Role = iota + RoleMember + RoleOwner + RoleAdmin +) + +func (r Role) IsPrivileged() bool { + return r == RoleOwner || r == RoleAdmin +} + +func (r Role) Format(s fmt.State, verb rune) { + switch r { + case RoleOwner: + fmt.Fprint(s, "owner") + case RoleAdmin: + fmt.Fprint(s, "admin") + case RoleMember: + fmt.Fprint(s, "member") + } +} diff --git a/pkg/members/mocks/Members.go b/pkg/members/mocks/Members.go new file mode 100644 index 0000000000000000000000000000000000000000..2adeaac705bf18a17eb06f7932d5d3769de1b50f --- /dev/null +++ b/pkg/members/mocks/Members.go @@ -0,0 +1,124 @@ +// Code generated by mockery v2.7.4. DO NOT EDIT. + +package mocks + +import ( + context "context" + + members "git.perx.ru/perxis/perxis-go/pkg/members" + mock "github.com/stretchr/testify/mock" +) + +// Members is an autogenerated mock type for the Members type +type Members struct { + mock.Mock +} + +// Get provides a mock function with given fields: ctx, orgId, userId +func (_m *Members) Get(ctx context.Context, orgId string, userId string) (members.Role, error) { + ret := _m.Called(ctx, orgId, userId) + + var r0 members.Role + if rf, ok := ret.Get(0).(func(context.Context, string, string) members.Role); ok { + r0 = rf(ctx, orgId, userId) + } else { + r0 = ret.Get(0).(members.Role) + } + + var r1 error + if rf, ok := ret.Get(1).(func(context.Context, string, string) error); ok { + r1 = rf(ctx, orgId, userId) + } else { + r1 = ret.Error(1) + } + + return r0, r1 +} + +// ListMembers provides a mock function with given fields: ctx, orgId +func (_m *Members) ListMembers(ctx context.Context, orgId string) ([]*members.Member, error) { + ret := _m.Called(ctx, orgId) + + var r0 []*members.Member + if rf, ok := ret.Get(0).(func(context.Context, string) []*members.Member); ok { + r0 = rf(ctx, orgId) + } else { + if ret.Get(0) != nil { + r0 = ret.Get(0).([]*members.Member) + } + } + + var r1 error + if rf, ok := ret.Get(1).(func(context.Context, string) error); ok { + r1 = rf(ctx, orgId) + } else { + r1 = ret.Error(1) + } + + return r0, r1 +} + +// ListOrganizations provides a mock function with given fields: ctx, userId +func (_m *Members) ListOrganizations(ctx context.Context, userId string) ([]*members.Member, error) { + ret := _m.Called(ctx, userId) + + var r0 []*members.Member + if rf, ok := ret.Get(0).(func(context.Context, string) []*members.Member); ok { + r0 = rf(ctx, userId) + } else { + if ret.Get(0) != nil { + r0 = ret.Get(0).([]*members.Member) + } + } + + var r1 error + if rf, ok := ret.Get(1).(func(context.Context, string) error); ok { + r1 = rf(ctx, userId) + } else { + r1 = ret.Error(1) + } + + return r0, r1 +} + +// Remove provides a mock function with given fields: ctx, orgId, userId +func (_m *Members) Remove(ctx context.Context, orgId string, userId string) error { + ret := _m.Called(ctx, orgId, userId) + + var r0 error + if rf, ok := ret.Get(0).(func(context.Context, string, string) error); ok { + r0 = rf(ctx, orgId, userId) + } else { + r0 = ret.Error(0) + } + + return r0 +} + +// RemoveAll provides a mock function with given fields: ctx, orgId +func (_m *Members) RemoveAll(ctx context.Context, orgId string) error { + ret := _m.Called(ctx, orgId) + + var r0 error + if rf, ok := ret.Get(0).(func(context.Context, string) error); ok { + r0 = rf(ctx, orgId) + } else { + r0 = ret.Error(0) + } + + return r0 +} + +// Set provides a mock function with given fields: ctx, orgId, userId, role +func (_m *Members) Set(ctx context.Context, orgId string, userId string, role members.Role) error { + ret := _m.Called(ctx, orgId, userId, role) + + var r0 error + if rf, ok := ret.Get(0).(func(context.Context, string, string, members.Role) error); ok { + r0 = rf(ctx, orgId, userId, role) + } else { + r0 = ret.Error(0) + } + + return r0 +} diff --git a/pkg/members/service.go b/pkg/members/service.go new file mode 100644 index 0000000000000000000000000000000000000000..5b88239b9b8509d8c1f65ca1a1a353cfe7281503 --- /dev/null +++ b/pkg/members/service.go @@ -0,0 +1,23 @@ +package members + +import ( + "context" +) + +// @microgen grpc +// @protobuf git.perx.ru/perxis/perxis-go/proto/members +// @grpc-addr account.members.Members +type Members interface { + Set(ctx context.Context, orgId, userId string, role Role) (err error) + + Get(ctx context.Context, orgId, userId string) (role Role, err error) + + Remove(ctx context.Context, orgId, userId string) (err error) + + // @microgen - + RemoveAll(ctx context.Context, orgId string) (err error) + + ListMembers(ctx context.Context, orgId string) (members []*Member, err error) + + ListOrganizations(ctx context.Context, userId string) (organizations []*Member, err error) +} diff --git a/pkg/members/transport/client.microgen.go b/pkg/members/transport/client.microgen.go new file mode 100644 index 0000000000000000000000000000000000000000..4cd10cad5b1b970f30a9380eae77a5d706748a08 --- /dev/null +++ b/pkg/members/transport/client.microgen.go @@ -0,0 +1,86 @@ +// Code generated by microgen 0.9.1. DO NOT EDIT. + +package transport + +import ( + "context" + "errors" + + members "git.perx.ru/perxis/perxis-go/pkg/members" + codes "google.golang.org/grpc/codes" + status "google.golang.org/grpc/status" +) + +func (set EndpointsSet) Set(arg0 context.Context, arg1 string, arg2 string, arg3 members.Role) (res0 error) { + request := SetRequest{ + OrgId: arg1, + Role: arg3, + UserId: arg2, + } + _, res0 = set.SetEndpoint(arg0, &request) + if res0 != nil { + if e, ok := status.FromError(res0); ok || e.Code() == codes.Internal || e.Code() == codes.Unknown { + res0 = errors.New(e.Message()) + } + return + } + return res0 +} + +func (set EndpointsSet) Get(arg0 context.Context, arg1 string, arg2 string) (res0 members.Role, res1 error) { + request := GetRequest{ + OrgId: arg1, + UserId: arg2, + } + response, res1 := set.GetEndpoint(arg0, &request) + if res1 != nil { + if e, ok := status.FromError(res1); ok || e.Code() == codes.Internal || e.Code() == codes.Unknown { + res1 = errors.New(e.Message()) + } + return + } + return response.(*GetResponse).Role, res1 +} + +func (set EndpointsSet) Remove(arg0 context.Context, arg1 string, arg2 string) (res0 error) { + request := RemoveRequest{ + OrgId: arg1, + UserId: arg2, + } + _, res0 = set.RemoveEndpoint(arg0, &request) + if res0 != nil { + if e, ok := status.FromError(res0); ok || e.Code() == codes.Internal || e.Code() == codes.Unknown { + res0 = errors.New(e.Message()) + } + return + } + return res0 +} + +func (set EndpointsSet) RemoveAll(arg0 context.Context, arg1 string) (res0 error) { + return +} + +func (set EndpointsSet) ListMembers(arg0 context.Context, arg1 string) (res0 []*members.Member, res1 error) { + request := ListMembersRequest{OrgId: arg1} + response, res1 := set.ListMembersEndpoint(arg0, &request) + if res1 != nil { + if e, ok := status.FromError(res1); ok || e.Code() == codes.Internal || e.Code() == codes.Unknown { + res1 = errors.New(e.Message()) + } + return + } + return response.(*ListMembersResponse).Members, res1 +} + +func (set EndpointsSet) ListOrganizations(arg0 context.Context, arg1 string) (res0 []*members.Member, res1 error) { + request := ListOrganizationsRequest{UserId: arg1} + response, res1 := set.ListOrganizationsEndpoint(arg0, &request) + if res1 != nil { + if e, ok := status.FromError(res1); ok || e.Code() == codes.Internal || e.Code() == codes.Unknown { + res1 = errors.New(e.Message()) + } + return + } + return response.(*ListOrganizationsResponse).Organizations, res1 +} diff --git a/pkg/members/transport/endpoints.microgen.go b/pkg/members/transport/endpoints.microgen.go new file mode 100644 index 0000000000000000000000000000000000000000..88740bb07c63a46ff111527fdeae40dfc89a6167 --- /dev/null +++ b/pkg/members/transport/endpoints.microgen.go @@ -0,0 +1,14 @@ +// Code generated by microgen 0.9.1. DO NOT EDIT. + +package transport + +import endpoint "github.com/go-kit/kit/endpoint" + +// EndpointsSet implements Members API and used for transport purposes. +type EndpointsSet struct { + SetEndpoint endpoint.Endpoint + GetEndpoint endpoint.Endpoint + RemoveEndpoint endpoint.Endpoint + ListMembersEndpoint endpoint.Endpoint + ListOrganizationsEndpoint endpoint.Endpoint +} diff --git a/pkg/members/transport/exchanges.microgen.go b/pkg/members/transport/exchanges.microgen.go new file mode 100644 index 0000000000000000000000000000000000000000..afa03b65ed508022e89565e2f0881e6afb3c5678 --- /dev/null +++ b/pkg/members/transport/exchanges.microgen.go @@ -0,0 +1,44 @@ +// Code generated by microgen 0.9.1. DO NOT EDIT. + +package transport + +import members "git.perx.ru/perxis/perxis-go/pkg/members" + +type ( + SetRequest struct { + OrgId string `json:"org_id"` + UserId string `json:"user_id"` + Role members.Role `json:"role"` + } + // Formal exchange type, please do not delete. + SetResponse struct{} + + GetRequest struct { + OrgId string `json:"org_id"` + UserId string `json:"user_id"` + } + GetResponse struct { + Role members.Role `json:"role"` + } + + RemoveRequest struct { + OrgId string `json:"org_id"` + UserId string `json:"user_id"` + } + // Formal exchange type, please do not delete. + RemoveResponse struct{} + + ListMembersRequest struct { + OrgId string `json:"org_id"` + } + ListMembersResponse struct { + Members []*members.Member `json:"members"` + } + + ListOrganizationsRequest struct { + UserId string `json:"user_id"` + } + ListOrganizationsResponse struct { + Organizations []*members.Member `json:"organizations"` + } +) diff --git a/pkg/members/transport/grpc/client.microgen.go b/pkg/members/transport/grpc/client.microgen.go new file mode 100644 index 0000000000000000000000000000000000000000..ad8ad450edbdfa95435e9a3b472386db033bc33f --- /dev/null +++ b/pkg/members/transport/grpc/client.microgen.go @@ -0,0 +1,54 @@ +// Code generated by microgen 0.9.1. DO NOT EDIT. + +package transportgrpc + +import ( + pb "git.perx.ru/perxis/perxis-go/proto/members" + transport "git.perx.ru/perxis/perxis/services/members/transport" + grpckit "github.com/go-kit/kit/transport/grpc" + empty "github.com/golang/protobuf/ptypes/empty" + grpc "google.golang.org/grpc" +) + +func NewGRPCClient(conn *grpc.ClientConn, addr string, opts ...grpckit.ClientOption) transport.EndpointsSet { + if addr == "" { + addr = "account.members.Members" + } + return transport.EndpointsSet{ + GetEndpoint: grpckit.NewClient( + conn, addr, "Get", + _Encode_Get_Request, + _Decode_Get_Response, + pb.GetResponse{}, + opts..., + ).Endpoint(), + ListMembersEndpoint: grpckit.NewClient( + conn, addr, "ListMembers", + _Encode_ListMembers_Request, + _Decode_ListMembers_Response, + pb.ListMembersResponse{}, + opts..., + ).Endpoint(), + ListOrganizationsEndpoint: grpckit.NewClient( + conn, addr, "ListOrganizations", + _Encode_ListOrganizations_Request, + _Decode_ListOrganizations_Response, + pb.ListOrganizationsResponse{}, + opts..., + ).Endpoint(), + RemoveEndpoint: grpckit.NewClient( + conn, addr, "Remove", + _Encode_Remove_Request, + _Decode_Remove_Response, + empty.Empty{}, + opts..., + ).Endpoint(), + SetEndpoint: grpckit.NewClient( + conn, addr, "Set", + _Encode_Set_Request, + _Decode_Set_Response, + empty.Empty{}, + opts..., + ).Endpoint(), + } +} diff --git a/pkg/members/transport/grpc/protobuf_endpoint_converters.microgen.go b/pkg/members/transport/grpc/protobuf_endpoint_converters.microgen.go new file mode 100644 index 0000000000000000000000000000000000000000..71748297758d43ade7f7131d808a992fc84aadeb --- /dev/null +++ b/pkg/members/transport/grpc/protobuf_endpoint_converters.microgen.go @@ -0,0 +1,209 @@ +// Code generated by microgen 0.9.1. DO NOT EDIT. + +// Please, do not change functions names! +package transportgrpc + +import ( + "context" + "errors" + + "git.perx.ru/perxis/perxis-go/proto/members" + "git.perx.ru/perxis/perxis/services/members/transport" + "github.com/golang/protobuf/ptypes/empty" +) + +func _Encode_Set_Request(ctx context.Context, request interface{}) (interface{}, error) { + if request == nil { + return nil, errors.New("nil SetRequest") + } + req := request.(*transport.SetRequest) + reqRole, err := RoleToProto(req.Role) + if err != nil { + return nil, err + } + return &members.SetRequest{ + OrgId: req.OrgId, + Role: reqRole, + UserId: req.UserId, + }, nil +} + +func _Encode_Get_Request(ctx context.Context, request interface{}) (interface{}, error) { + if request == nil { + return nil, errors.New("nil GetRequest") + } + req := request.(*transport.GetRequest) + return &members.GetRequest{ + OrgId: req.OrgId, + UserId: req.UserId, + }, nil +} + +func _Encode_Remove_Request(ctx context.Context, request interface{}) (interface{}, error) { + if request == nil { + return nil, errors.New("nil RemoveRequest") + } + req := request.(*transport.RemoveRequest) + return &members.RemoveRequest{ + OrgId: req.OrgId, + UserId: req.UserId, + }, nil +} + +func _Encode_ListMembers_Request(ctx context.Context, request interface{}) (interface{}, error) { + if request == nil { + return nil, errors.New("nil ListMembersRequest") + } + req := request.(*transport.ListMembersRequest) + return &members.ListMembersRequest{OrgId: req.OrgId}, nil +} + +func _Encode_ListOrganizations_Request(ctx context.Context, request interface{}) (interface{}, error) { + if request == nil { + return nil, errors.New("nil ListOrganizationsRequest") + } + req := request.(*transport.ListOrganizationsRequest) + return &members.ListOrganizationsRequest{UserId: req.UserId}, nil +} + +func _Encode_Set_Response(ctx context.Context, response interface{}) (interface{}, error) { + return &empty.Empty{}, nil +} + +func _Encode_Get_Response(ctx context.Context, response interface{}) (interface{}, error) { + if response == nil { + return nil, errors.New("nil GetResponse") + } + resp := response.(*transport.GetResponse) + respRole, err := RoleToProto(resp.Role) + if err != nil { + return nil, err + } + return &members.GetResponse{Role: respRole}, nil +} + +func _Encode_Remove_Response(ctx context.Context, response interface{}) (interface{}, error) { + return &empty.Empty{}, nil +} + +func _Encode_ListMembers_Response(ctx context.Context, response interface{}) (interface{}, error) { + if response == nil { + return nil, errors.New("nil ListMembersResponse") + } + resp := response.(*transport.ListMembersResponse) + respMembers, err := ListPtrMemberToProto(resp.Members) + if err != nil { + return nil, err + } + return &members.ListMembersResponse{Members: respMembers}, nil +} + +func _Encode_ListOrganizations_Response(ctx context.Context, response interface{}) (interface{}, error) { + if response == nil { + return nil, errors.New("nil ListOrganizationsResponse") + } + resp := response.(*transport.ListOrganizationsResponse) + respOrganizations, err := ListPtrMemberToProto(resp.Organizations) + if err != nil { + return nil, err + } + return &members.ListOrganizationsResponse{Organizations: respOrganizations}, nil +} + +func _Decode_Set_Request(ctx context.Context, request interface{}) (interface{}, error) { + if request == nil { + return nil, errors.New("nil SetRequest") + } + req := request.(*members.SetRequest) + reqRole, err := ProtoToRole(req.Role) + if err != nil { + return nil, err + } + return &transport.SetRequest{ + OrgId: string(req.OrgId), + Role: reqRole, + UserId: string(req.UserId), + }, nil +} + +func _Decode_Get_Request(ctx context.Context, request interface{}) (interface{}, error) { + if request == nil { + return nil, errors.New("nil GetRequest") + } + req := request.(*members.GetRequest) + return &transport.GetRequest{ + OrgId: string(req.OrgId), + UserId: string(req.UserId), + }, nil +} + +func _Decode_Remove_Request(ctx context.Context, request interface{}) (interface{}, error) { + if request == nil { + return nil, errors.New("nil RemoveRequest") + } + req := request.(*members.RemoveRequest) + return &transport.RemoveRequest{ + OrgId: string(req.OrgId), + UserId: string(req.UserId), + }, nil +} + +func _Decode_ListMembers_Request(ctx context.Context, request interface{}) (interface{}, error) { + if request == nil { + return nil, errors.New("nil ListMembersRequest") + } + req := request.(*members.ListMembersRequest) + return &transport.ListMembersRequest{OrgId: string(req.OrgId)}, nil +} + +func _Decode_ListOrganizations_Request(ctx context.Context, request interface{}) (interface{}, error) { + if request == nil { + return nil, errors.New("nil ListOrganizationsRequest") + } + req := request.(*members.ListOrganizationsRequest) + return &transport.ListOrganizationsRequest{UserId: string(req.UserId)}, nil +} + +func _Decode_Set_Response(ctx context.Context, response interface{}) (interface{}, error) { + return &empty.Empty{}, nil +} + +func _Decode_Get_Response(ctx context.Context, response interface{}) (interface{}, error) { + if response == nil { + return nil, errors.New("nil GetResponse") + } + resp := response.(*members.GetResponse) + respRole, err := ProtoToRole(resp.Role) + if err != nil { + return nil, err + } + return &transport.GetResponse{Role: respRole}, nil +} + +func _Decode_Remove_Response(ctx context.Context, response interface{}) (interface{}, error) { + return &empty.Empty{}, nil +} + +func _Decode_ListMembers_Response(ctx context.Context, response interface{}) (interface{}, error) { + if response == nil { + return nil, errors.New("nil ListMembersResponse") + } + resp := response.(*members.ListMembersResponse) + respMembers, err := ProtoToListPtrMember(resp.Members) + if err != nil { + return nil, err + } + return &transport.ListMembersResponse{Members: respMembers}, nil +} + +func _Decode_ListOrganizations_Response(ctx context.Context, response interface{}) (interface{}, error) { + if response == nil { + return nil, errors.New("nil ListOrganizationsResponse") + } + resp := response.(*members.ListOrganizationsResponse) + respOrganizations, err := ProtoToListPtrMember(resp.Organizations) + if err != nil { + return nil, err + } + return &transport.ListOrganizationsResponse{Organizations: respOrganizations}, nil +} diff --git a/pkg/members/transport/grpc/protobuf_type_converters.microgen.go b/pkg/members/transport/grpc/protobuf_type_converters.microgen.go new file mode 100644 index 0000000000000000000000000000000000000000..a5b5264837967bf034c2badd0ae96066212b291e --- /dev/null +++ b/pkg/members/transport/grpc/protobuf_type_converters.microgen.go @@ -0,0 +1,42 @@ +// Code generated by microgen 0.9.1. DO NOT EDIT. + +// It is better for you if you do not change functions names! +// This file will never be overwritten. +package transportgrpc + +import ( + pb "git.perx.ru/perxis/perxis-go/proto/members" + service "git.perx.ru/perxis/perxis/services/members" +) + +func RoleToProto(role service.Role) (pb.Role, error) { + return pb.Role(role), nil +} + +func ProtoToRole(protoRole pb.Role) (service.Role, error) { + return service.Role(protoRole), nil +} + +func ListPtrMemberToProto(members []*service.Member) ([]*pb.Member, error) { + res := make([]*pb.Member, 0, len(members)) + for _, m := range members { + res = append(res, &pb.Member{ + OrgId: m.OrgId, + UserId: m.UserId, + Role: pb.Role(m.Role), + }) + } + return res, nil +} + +func ProtoToListPtrMember(protoMembers []*pb.Member) ([]*service.Member, error) { + res := make([]*service.Member, 0, len(protoMembers)) + for _, m := range protoMembers { + res = append(res, &service.Member{ + OrgId: m.OrgId, + UserId: m.UserId, + Role: service.Role(m.Role), + }) + } + return res, nil +} diff --git a/pkg/members/transport/grpc/server.microgen.go b/pkg/members/transport/grpc/server.microgen.go new file mode 100644 index 0000000000000000000000000000000000000000..2805883e4d013566b6bdc7bca1a75ae284e239e7 --- /dev/null +++ b/pkg/members/transport/grpc/server.microgen.go @@ -0,0 +1,97 @@ +// Code generated by microgen 0.9.1. DO NOT EDIT. + +// DO NOT EDIT. +package transportgrpc + +import ( + pb "git.perx.ru/perxis/perxis-go/proto/members" + transport "git.perx.ru/perxis/perxis/services/members/transport" + grpc "github.com/go-kit/kit/transport/grpc" + empty "github.com/golang/protobuf/ptypes/empty" + context "golang.org/x/net/context" +) + +type membersServer struct { + set grpc.Handler + get grpc.Handler + remove grpc.Handler + listMembers grpc.Handler + listOrganizations grpc.Handler + + pb.UnimplementedMembersServer +} + +func NewGRPCServer(endpoints *transport.EndpointsSet, opts ...grpc.ServerOption) pb.MembersServer { + return &membersServer{ + get: grpc.NewServer( + endpoints.GetEndpoint, + _Decode_Get_Request, + _Encode_Get_Response, + opts..., + ), + listMembers: grpc.NewServer( + endpoints.ListMembersEndpoint, + _Decode_ListMembers_Request, + _Encode_ListMembers_Response, + opts..., + ), + listOrganizations: grpc.NewServer( + endpoints.ListOrganizationsEndpoint, + _Decode_ListOrganizations_Request, + _Encode_ListOrganizations_Response, + opts..., + ), + remove: grpc.NewServer( + endpoints.RemoveEndpoint, + _Decode_Remove_Request, + _Encode_Remove_Response, + opts..., + ), + set: grpc.NewServer( + endpoints.SetEndpoint, + _Decode_Set_Request, + _Encode_Set_Response, + opts..., + ), + } +} + +func (S *membersServer) Set(ctx context.Context, req *pb.SetRequest) (*empty.Empty, error) { + _, resp, err := S.set.ServeGRPC(ctx, req) + if err != nil { + return nil, err + } + return resp.(*empty.Empty), nil +} + +func (S *membersServer) Get(ctx context.Context, req *pb.GetRequest) (*pb.GetResponse, error) { + _, resp, err := S.get.ServeGRPC(ctx, req) + if err != nil { + return nil, err + } + return resp.(*pb.GetResponse), nil +} + +func (S *membersServer) Remove(ctx context.Context, req *pb.RemoveRequest) (*empty.Empty, error) { + _, resp, err := S.remove.ServeGRPC(ctx, req) + if err != nil { + return nil, err + } + return resp.(*empty.Empty), nil +} + +func (S *membersServer) ListMembers(ctx context.Context, req *pb.ListMembersRequest) (*pb.ListMembersResponse, error) { + _, resp, err := S.listMembers.ServeGRPC(ctx, req) + if err != nil { + return nil, err + } + return resp.(*pb.ListMembersResponse), nil +} + +func (S *membersServer) ListOrganizations(ctx context.Context, req *pb.ListOrganizationsRequest) (*pb.ListOrganizationsResponse, error) { + _, resp, err := S.listOrganizations.ServeGRPC(ctx, req) + if err != nil { + return nil, err + } + return resp.(*pb.ListOrganizationsResponse), nil +} diff --git a/pkg/members/transport/server.microgen.go b/pkg/members/transport/server.microgen.go new file mode 100644 index 0000000000000000000000000000000000000000..b1c40ac3039b2ce46685880e93651f20d4fe7d16 --- /dev/null +++ b/pkg/members/transport/server.microgen.go @@ -0,0 +1,60 @@ +// Code generated by microgen 0.9.1. DO NOT EDIT. + +package transport + +import ( + "context" + + members "git.perx.ru/perxis/perxis-go/pkg/members" + endpoint "github.com/go-kit/kit/endpoint" +) + +func Endpoints(svc members.Members) EndpointsSet { + return EndpointsSet{ + GetEndpoint: GetEndpoint(svc), + ListMembersEndpoint: ListMembersEndpoint(svc), + ListOrganizationsEndpoint: ListOrganizationsEndpoint(svc), + RemoveEndpoint: RemoveEndpoint(svc), + SetEndpoint: SetEndpoint(svc), + } +} + +func SetEndpoint(svc members.Members) endpoint.Endpoint { + return func(arg0 context.Context, request interface{}) (interface{}, error) { + req := request.(*SetRequest) + res0 := svc.Set(arg0, req.OrgId, req.UserId, req.Role) + return &SetResponse{}, res0 + } +} + +func GetEndpoint(svc members.Members) endpoint.Endpoint { + return func(arg0 context.Context, request interface{}) (interface{}, error) { + req := request.(*GetRequest) + res0, res1 := svc.Get(arg0, req.OrgId, req.UserId) + return &GetResponse{Role: res0}, res1 + } +} + +func RemoveEndpoint(svc members.Members) endpoint.Endpoint { + return func(arg0 context.Context, request interface{}) (interface{}, error) { + req := request.(*RemoveRequest) + res0 := svc.Remove(arg0, req.OrgId, req.UserId) + return &RemoveResponse{}, res0 + } +} + +func ListMembersEndpoint(svc members.Members) endpoint.Endpoint { + return func(arg0 context.Context, request interface{}) (interface{}, error) { + req := request.(*ListMembersRequest) + res0, res1 := svc.ListMembers(arg0, req.OrgId) + return &ListMembersResponse{Members: res0}, res1 + } +} + +func ListOrganizationsEndpoint(svc members.Members) endpoint.Endpoint { + return func(arg0 context.Context, request interface{}) (interface{}, error) { + req := request.(*ListOrganizationsRequest) + res0, res1 := svc.ListOrganizations(arg0, req.UserId) + return &ListOrganizationsResponse{Organizations: res0}, res1 + } +}