first commit
This commit is contained in:
118
pkg/auth/token.go
Normal file
118
pkg/auth/token.go
Normal file
@ -0,0 +1,118 @@
|
||||
package auth
|
||||
|
||||
import (
|
||||
"time"
|
||||
)
|
||||
|
||||
// TokenInfo the token information model interface
|
||||
type TokenInfo interface {
|
||||
New() TokenInfo
|
||||
|
||||
GetUserID() string
|
||||
SetUserID(string)
|
||||
|
||||
GetAccess() string
|
||||
SetAccess(string)
|
||||
GetAccessCreateAt() time.Time
|
||||
SetAccessCreateAt(time.Time)
|
||||
GetAccessExpiresIn() time.Duration
|
||||
SetAccessExpiresIn(time.Duration)
|
||||
|
||||
GetRefresh() string
|
||||
SetRefresh(string)
|
||||
GetRefreshCreateAt() time.Time
|
||||
SetRefreshCreateAt(time.Time)
|
||||
GetRefreshExpiresIn() time.Duration
|
||||
SetRefreshExpiresIn(time.Duration)
|
||||
}
|
||||
|
||||
// NewToken create to token model instance
|
||||
func NewToken() *Token {
|
||||
return &Token{}
|
||||
}
|
||||
|
||||
// Token token model
|
||||
type Token struct {
|
||||
UserID string `bson:"UserID"`
|
||||
Access string `bson:"Access"`
|
||||
AccessCreateAt time.Time `bson:"AccessCreateAt"`
|
||||
AccessExpiresIn time.Duration `bson:"AccessExpiresIn"`
|
||||
Refresh string `bson:"Refresh"`
|
||||
RefreshCreateAt time.Time `bson:"RefreshCreateAt"`
|
||||
RefreshExpiresIn time.Duration `bson:"RefreshExpiresIn"`
|
||||
}
|
||||
|
||||
// New create to token model instance
|
||||
func (t *Token) New() TokenInfo {
|
||||
return NewToken()
|
||||
}
|
||||
|
||||
// GetUserID the user id
|
||||
func (t *Token) GetUserID() string {
|
||||
return t.UserID
|
||||
}
|
||||
|
||||
// SetUserID the user id
|
||||
func (t *Token) SetUserID(userID string) {
|
||||
t.UserID = userID
|
||||
}
|
||||
|
||||
// GetAccess access Token
|
||||
func (t *Token) GetAccess() string {
|
||||
return t.Access
|
||||
}
|
||||
|
||||
// SetAccess access Token
|
||||
func (t *Token) SetAccess(access string) {
|
||||
t.Access = access
|
||||
}
|
||||
|
||||
// GetAccessCreateAt create Time
|
||||
func (t *Token) GetAccessCreateAt() time.Time {
|
||||
return t.AccessCreateAt
|
||||
}
|
||||
|
||||
// SetAccessCreateAt create Time
|
||||
func (t *Token) SetAccessCreateAt(createAt time.Time) {
|
||||
t.AccessCreateAt = createAt
|
||||
}
|
||||
|
||||
// GetAccessExpiresIn the lifetime in seconds of the access token
|
||||
func (t *Token) GetAccessExpiresIn() time.Duration {
|
||||
return t.AccessExpiresIn
|
||||
}
|
||||
|
||||
// SetAccessExpiresIn the lifetime in seconds of the access token
|
||||
func (t *Token) SetAccessExpiresIn(exp time.Duration) {
|
||||
t.AccessExpiresIn = exp
|
||||
}
|
||||
|
||||
// GetRefresh refresh Token
|
||||
func (t *Token) GetRefresh() string {
|
||||
return t.Refresh
|
||||
}
|
||||
|
||||
// SetRefresh refresh Token
|
||||
func (t *Token) SetRefresh(refresh string) {
|
||||
t.Refresh = refresh
|
||||
}
|
||||
|
||||
// GetRefreshCreateAt create Time
|
||||
func (t *Token) GetRefreshCreateAt() time.Time {
|
||||
return t.RefreshCreateAt
|
||||
}
|
||||
|
||||
// SetRefreshCreateAt create Time
|
||||
func (t *Token) SetRefreshCreateAt(createAt time.Time) {
|
||||
t.RefreshCreateAt = createAt
|
||||
}
|
||||
|
||||
// GetRefreshExpiresIn the lifetime in seconds of the refresh token
|
||||
func (t *Token) GetRefreshExpiresIn() time.Duration {
|
||||
return t.RefreshExpiresIn
|
||||
}
|
||||
|
||||
// SetRefreshExpiresIn the lifetime in seconds of the refresh token
|
||||
func (t *Token) SetRefreshExpiresIn(exp time.Duration) {
|
||||
t.RefreshExpiresIn = exp
|
||||
}
|
Reference in New Issue
Block a user