From f93962e5f20ae2cbc21236cf256fde9c539596e7 Mon Sep 17 00:00:00 2001 From: Akshay Gaikwad Date: Thu, 20 Jan 2022 11:41:43 +0530 Subject: [PATCH] Add structure for OIdC provider service --- .../usermgmt/pkg/server/oidc_provider.go | 34 ++++++++++++++ .../usermgmt/pkg/service/oidc_provider.go | 47 +++++++++++++++++++ 2 files changed, 81 insertions(+) create mode 100644 components/usermgmt/pkg/server/oidc_provider.go create mode 100644 components/usermgmt/pkg/service/oidc_provider.go diff --git a/components/usermgmt/pkg/server/oidc_provider.go b/components/usermgmt/pkg/server/oidc_provider.go new file mode 100644 index 0000000..68c8418 --- /dev/null +++ b/components/usermgmt/pkg/server/oidc_provider.go @@ -0,0 +1,34 @@ +package server + +import ( + "context" + + "github.com/RafaySystems/rcloud-base/components/usermgmt/pkg/service" + rpcv3 "github.com/RafaySystems/rcloud-base/components/usermgmt/proto/rpc/v3" + userv3 "github.com/RafaySystems/rcloud-base/components/usermgmt/proto/types/userpb/v3" + "google.golang.org/protobuf/types/known/emptypb" +) + +type oidcProvider struct { + service.OIDCProviderService +} + +func NewOIDCServer(providerSvc service.OIDCProviderService) rpcv3.OIDCProviderServer { + return &oidcProvider{providerSvc} +} + +func (s *oidcProvider) CreateOIDCProvider(ctx context.Context, p *userv3.OIDCProvider) (*userv3.OIDCProvider, error) { + return s.Create(ctx, p) +} +func (s *oidcProvider) GetOIDCProvider(ctx context.Context, p *userv3.OIDCProvider) (*userv3.OIDCProvider, error) { + return s.GetByID(ctx, p) +} +func (s *oidcProvider) ListOIDCProvider(ctx context.Context, p *emptypb.Empty) (*userv3.OIDCProviderList, error) { + return s.List(ctx) +} +func (s *oidcProvider) UpdateOIDCProvider(ctx context.Context, p *userv3.OIDCProvider) (*userv3.OIDCProvider, error) { + return s.Update(ctx, p) +} +func (s *oidcProvider) DeleteOIDCProvider(ctx context.Context, p *userv3.OIDCProvider) (*emptypb.Empty, error) { + return &emptypb.Empty{}, s.Delete(ctx, p) +} diff --git a/components/usermgmt/pkg/service/oidc_provider.go b/components/usermgmt/pkg/service/oidc_provider.go new file mode 100644 index 0000000..415d4f8 --- /dev/null +++ b/components/usermgmt/pkg/service/oidc_provider.go @@ -0,0 +1,47 @@ +package service + +import ( + "context" + + "github.com/RafaySystems/rcloud-base/components/common/pkg/persistence/provider/pg" + userv3 "github.com/RafaySystems/rcloud-base/components/usermgmt/proto/types/userpb/v3" + bun "github.com/uptrace/bun" +) + +type OIDCProviderService interface { + Create(context.Context, *userv3.OIDCProvider) (*userv3.OIDCProvider, error) + GetByID(context.Context, *userv3.OIDCProvider) (*userv3.OIDCProvider, error) + List(context.Context) (*userv3.OIDCProviderList, error) + Update(context.Context, *userv3.OIDCProvider) (*userv3.OIDCProvider, error) + Delete(context.Context, *userv3.OIDCProvider) error +} + +type oidcProvider struct { + dao pg.EntityDAO +} + +func NewOIDCProviderService(db *bun.DB) OIDCProviderService { + return &oidcProvider{ + dao: pg.NewEntityDAO(db), + } +} + +func (s *oidcProvider) Create(ctx context.Context, provider *userv3.OIDCProvider) (*userv3.OIDCProvider, error) { + return &userv3.OIDCProvider{}, nil +} + +func (s *oidcProvider) GetByID(ctx context.Context, provider *userv3.OIDCProvider) (*userv3.OIDCProvider, error) { + return &userv3.OIDCProvider{}, nil +} + +func (s *oidcProvider) List(ctx context.Context) (*userv3.OIDCProviderList, error) { + return &userv3.OIDCProviderList{}, nil +} + +func (s *oidcProvider) Update(ctx context.Context, provider *userv3.OIDCProvider) (*userv3.OIDCProvider, error) { + return &userv3.OIDCProvider{}, nil +} + +func (s *oidcProvider) Delete(ctx context.Context, provider *userv3.OIDCProvider) error { + return nil +}