grpcserver

package
v0.0.0-...-9df599e Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 3, 2024 License: MIT Imports: 21 Imported by: 0

Documentation

Overview

Package controller/grpcserver релизует интерфейсный слой серверного приложения

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AuthUsecase

type AuthUsecase interface {
	Register(ctx context.Context, login string, password string) (*model.RegisterResponseModel, error)
	Login(ctx context.Context, login string, password string) (*model.LoginResponseModel, error)
	Logout(ctx context.Context, userID string, tokenID string) error
	RefreshToken(ctx context.Context, refreshToken string) (*model.RefreshTokenResponseModel, error)
	BuildJWTString(userID string) (string, error)
	ValidateJWTString(token string) (string, error)
}

AuthUsecase usecase для ручек авторизации/аутентификации

type Config

type Config struct {
	BootstrapAddress string
}

Config конфигурация gRPC сервера

type Controller

type Controller struct {
	pb.AuthServiceServer
	pb.StoreServiceServer
	// contains filtered or unexported fields
}

Controller контроллер gRPC сервера

func New

func New(conf Config, usecaseAuth AuthUsecase, usecaseStore StoreUsecase) *Controller

New создает новый контроллер gRPC сервера

func (*Controller) GetDataByID

GetDataByID возвращает данные из хранилища по ID

func (*Controller) GetMetaDataList

GetMetaDataList возвращает список метаданных

func (*Controller) Login

func (c *Controller) Login(ctx context.Context, request *pb.LoginRequest) (*pb.LoginResponse, error)

Login авторизует пользователя и отдаёт ему ключ для шифрования

func (*Controller) Logout

func (c *Controller) Logout(ctx context.Context, request *pb.LogoutRequest) (*pb.LogoutResponse, error)

Logout

func (*Controller) RefreshToken

func (c *Controller) RefreshToken(ctx context.Context, request *pb.RefreshTokenRequest) (*pb.RefreshTokenResponse, error)

RefreshToken обновляет токен доступа

TODO если refresh token недействительный, то возвращать ошибку "неавторизован"

func (*Controller) Register

func (c *Controller) Register(ctx context.Context, request *pb.RegisterRequest) (*pb.RegisterResponse, error)

Register добавляет новго пользователя в систему и отдаёт ему ключ для шифрования

func (*Controller) RemoveData

RemoveData помечает данные в хранилище удалёнными

func (*Controller) SaveData

SaveData сохранит данные в хранилище

func (*Controller) Serve

func (c *Controller) Serve(ctx context.Context) error

Serve запустить gRPC сервер

func (*Controller) UpdateData

UpdateData обновляет данные в хранилище

type InterceptorAuthKey

type InterceptorAuthKey int

InterceptorAuthKey тип ключа перехватчика аутентификации в контексте

type StoreUsecase

StoreUsecase usecase для ручек хранилища

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL