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

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,
}
}