Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ( // ErrMissingEmail missing email ErrMissingEmail = httputils.NewBadRequestError("missing email") // ErrMissingPassword missing password ErrMissingPassword = httputils.NewBadRequestError("missing password") // ErrMissingName missing name ErrMissingName = httputils.NewBadRequestError("missing name") // ErrMissingRole missing role ErrMissingRole = httputils.NewBadRequestError("missing role") // ErrPasswordHashingFailed password hashing failed ErrPasswordHashingFailed = errors.New("hashing password failed") // ErrGeneratingIDFailed generating id failed ErrGeneratingIDFailed = errors.New("generating id failed") // ErrValidatingRoleFailed validating role failed ErrValidatingRoleFailed = errors.New("validating role failed") // ErrRoleNotValid role not valid ErrRoleNotValid = httputils.NewBadRequestError("role not valid") // ErrMissingRoleName missing role name ErrMissingRoleName = httputils.NewBadRequestError("missing role name") // ErrMissingPermissions missing permissions ErrMissingPermissions = httputils.NewBadRequestError("missing permissions") // ErrMissingActionInPermission missing action in permissions ErrMissingActionInPermission = httputils.NewBadRequestError("missing actions in permission") // ErrMissingResourceInPermission missing resource in permission ErrMissingResourceInPermission = httputils.NewBadRequestError("missing resource in permission") // ErrInvalidCredentials invalid credentials ErrInvalidCredentials = httputils.ErrorResponse{Code: http.StatusUnauthorized, Message: "invalid credentials"} // ErrInvalidAction invalid action ErrInvalidAction = errors.New("invalid action") // ErrMissingPatchOperation missing patch operation ErrMissingPatchOperation = httputils.NewBadRequestError("missing patch operation") // ErrMissingPatchPath missing patch path ErrMissingPatchPath = httputils.NewBadRequestError("missing patch path") // ErrMissingPatchValue missing patch value ErrMissingPatchValue = httputils.NewBadRequestError("missing patch value") // ErrNothingToUpdate nothing to update ErrNothingToUpdate = httputils.NewBadRequestError("nothing to update") )
Functions ¶
This section is empty.
Types ¶
type AuthUseCase ¶
type AuthUseCase interface {
Login(ctx context.Context, email, password string) (LoginResponse, error)
}
AuthUseCase defines the usecases function for the auth operations
type LoginResponse ¶
LoginResponse login response
type RolesUseCase ¶
type RolesUseCase interface { CreateRole(ctx context.Context, role models.Role) error GetRoles(ctx context.Context) ([]models.Role, error) UpdateRole(ctx context.Context, role models.Role) error }
RolesUseCase defines the usescases functions for the user
type Service ¶
type Service interface { RolesUseCase UserUseCase AuthUseCase }
Service defines the service layer methods
func NewService ¶
func NewService(usersRepo usersRepository.Repository, rolesRepo rolesRepository.Repository) Service
NewService returns a new service entity to be able to execuse business logic
type UserUseCase ¶
type UserUseCase interface { CreateUser(ctx context.Context, user models.User) (models.User, error) AddRoleToUser(ctx context.Context, roleName string, userID string) error UpdateUser(ctx context.Context, request httputils.PatchRequest, userID string) (models.User, error) GetUser(ctx context.Context, userID string) (models.User, error) GetUsers(ctx context.Context) ([]models.User, error) }
UserUseCase defines the usecases functions for the user
Click to show internal directories.
Click to hide internal directories.