You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
43 lines
1.2 KiB
43 lines
1.2 KiB
package services
|
|
|
|
import (
|
|
model "git.devices.local/mawas/golang-api-skeleton/models"
|
|
)
|
|
|
|
type tokenRepository interface {
|
|
ReadByKey(key interface{}) (*model.Token, error)
|
|
ReadAll() ([]*model.Token, error)
|
|
Create(token *model.Token) (*model.Token, error)
|
|
}
|
|
|
|
type TokenService struct {
|
|
repo tokenRepository
|
|
}
|
|
|
|
// NewTokenService creates a new TokenService with the given user DAO.
|
|
func NewTokenService(repo tokenRepository) *TokenService {
|
|
return &TokenService{repo}
|
|
}
|
|
|
|
// ReadByKey just retrieves user using User DAO, here can be additional logic for processing data retrieved by DAOs
|
|
func (s *TokenService) ReadByKey(key interface{}) (*model.Token, error) {
|
|
return s.repo.ReadByKey(key)
|
|
}
|
|
|
|
// ReadAll just retrieves user using User DAO, here can be additional logic for processing data retrieved by DAOs
|
|
func (s *TokenService) ReadAll() ([]*model.Token, error) {
|
|
return s.repo.ReadAll()
|
|
}
|
|
|
|
// Create just retrieves user using User DAO, here can be additional logic for processing data retrieved by DAOs
|
|
func (s *TokenService) Create(token *model.Token) (*model.Token, error) {
|
|
return s.repo.Create(token)
|
|
}
|
|
|
|
// NewToken returns a new created Token object
|
|
func NewToken(username string) model.Token {
|
|
return model.Token{
|
|
Username: username,
|
|
Active: true,
|
|
}
|
|
}
|