46 lines
1.4 KiB
Go
46 lines
1.4 KiB
Go
package transport
|
|
|
|
import (
|
|
"context"
|
|
"google.golang.org/grpc/codes"
|
|
"google.golang.org/grpc/status"
|
|
"google.golang.org/protobuf/types/known/emptypb"
|
|
sessionv1 "ms-auth/pkg/go/gen/session/v1"
|
|
)
|
|
|
|
func (s *AuthServer) Create(ctx context.Context, req *sessionv1.CreateSessionRequest) (*sessionv1.CreateSessionResponse, error) {
|
|
token, err := s.sessionService.Create(ctx, req.GetHandle(), req.GetPassword())
|
|
if err != nil {
|
|
return nil, status.Errorf(codes.Unknown, err.Error()) // FIXME
|
|
}
|
|
return &sessionv1.CreateSessionResponse{
|
|
Token: *token,
|
|
}, nil
|
|
}
|
|
|
|
func (s *AuthServer) Read(ctx context.Context, req *sessionv1.ReadSessionRequest) (*sessionv1.ReadSessionResponse, error) {
|
|
id, err := s.sessionService.Read(ctx, req.GetToken())
|
|
if err != nil {
|
|
return nil, status.Errorf(codes.Unknown, err.Error()) // FIXME
|
|
}
|
|
return &sessionv1.ReadSessionResponse{
|
|
UserId: *id,
|
|
}, nil
|
|
}
|
|
|
|
func (s *AuthServer) Update(ctx context.Context, req *sessionv1.UpdateSessionRequest) (*emptypb.Empty, error) {
|
|
err := s.sessionService.Update(ctx, req.GetToken())
|
|
if err != nil {
|
|
return nil, status.Errorf(codes.Unknown, err.Error()) // FIXME
|
|
}
|
|
return &emptypb.Empty{}, nil
|
|
}
|
|
|
|
func (s *AuthServer) Delete(ctx context.Context, req *sessionv1.DeleteSessionRequest) (*emptypb.Empty, error) {
|
|
err := s.sessionService.Delete(ctx, req.GetToken())
|
|
if err != nil {
|
|
return nil, status.Errorf(codes.Unknown, err.Error()) // FIXME
|
|
}
|
|
return &emptypb.Empty{}, nil
|
|
}
|