Files
identity-service/src/internal/ui/refresh_action.go
Piotr Biernat 843cd17f90
Some checks failed
ci/woodpecker/push/workflow Pipeline failed
Replaced all occurencies of old repo url to new one
2025-12-13 16:35:18 +01:00

31 lines
729 B
Go

package ui
import (
identityDTO "git.pbiernat.space/egommerce/api-entities/identity/dto"
"git.pbiernat.space/egommerce/identity-service/internal/service"
)
type RefreshTokenActionUI struct {
auth *service.AuthService
}
func NewRefreshTokenActionUI(auth *service.AuthService) *RefreshTokenActionUI {
return &RefreshTokenActionUI{
auth: auth,
}
}
func (ui *RefreshTokenActionUI) Execute(header *identityDTO.AuthorizationHeaderDTO) (string, error) {
token, _ := ui.auth.GetTokenFromAuthorizationHeader(header)
newToken, err := ui.auth.RefreshToken(token)
if err != nil {
if err == service.ErrUnableToCacheToken { // FIXME: Move to RefreshHandlerFn
return "", err
}
return "", err
}
return newToken, nil
}