// Code generated by goctl. DO NOT EDIT. // Source: permission.proto package server import ( "context" "ark-permission/gen_result/pb/permission" "ark-permission/internal/logic" "ark-permission/internal/svc" ) type TokenServiceServer struct { svcCtx *svc.ServiceContext permission.UnimplementedTokenServiceServer } func NewTokenServiceServer(svcCtx *svc.ServiceContext) *TokenServiceServer { return &TokenServiceServer{ svcCtx: svcCtx, } } // NewToken 建立一個新的 Token,例如:AccessToken func (s *TokenServiceServer) NewToken(ctx context.Context, in *permission.AuthorizationReq) (*permission.TokenResp, error) { l := logic.NewNewTokenLogic(ctx, s.svcCtx) return l.NewToken(in) } // RefreshToken 更新目前的token 以及裡面包含的一次性 Token func (s *TokenServiceServer) RefreshToken(ctx context.Context, in *permission.RefreshTokenReq) (*permission.RefreshTokenResp, error) { l := logic.NewRefreshTokenLogic(ctx, s.svcCtx) return l.RefreshToken(in) } // CancelToken 取消 Token,也包含他裡面的 One Time Toke func (s *TokenServiceServer) CancelToken(ctx context.Context, in *permission.CancelTokenReq) (*permission.OKResp, error) { l := logic.NewCancelTokenLogic(ctx, s.svcCtx) return l.CancelToken(in) } // CancelTokenByUID 取消 Token (取消這個用戶從不同 Device 登入的所有 Token),也包含他裡面的 One Time Toke func (s *TokenServiceServer) CancelTokenByUID(ctx context.Context, in *permission.DoTokenByUIDReq) (*permission.OKResp, error) { l := logic.NewCancelTokenByUIDLogic(ctx, s.svcCtx) return l.CancelTokenByUID(in) } // CancelTokenByDeviceID 取消 Token func (s *TokenServiceServer) CancelTokenByDeviceID(ctx context.Context, in *permission.DoTokenByDeviceIDReq) (*permission.OKResp, error) { l := logic.NewCancelTokenByDeviceIDLogic(ctx, s.svcCtx) return l.CancelTokenByDeviceID(in) } // ValidationToken 驗證這個 Token 有沒有效 func (s *TokenServiceServer) ValidationToken(ctx context.Context, in *permission.ValidationTokenReq) (*permission.ValidationTokenResp, error) { l := logic.NewValidationTokenLogic(ctx, s.svcCtx) return l.ValidationToken(in) } // GetUserTokensByDeviceIDs 取得目前所對應的 DeviceID 所存在的 Tokens func (s *TokenServiceServer) GetUserTokensByDeviceID(ctx context.Context, in *permission.DoTokenByDeviceIDReq) (*permission.Tokens, error) { l := logic.NewGetUserTokensByDeviceIDLogic(ctx, s.svcCtx) return l.GetUserTokensByDeviceID(in) } // GetUserTokensByUID 取得目前所對應的 UID 所存在的 Tokens func (s *TokenServiceServer) GetUserTokensByUID(ctx context.Context, in *permission.DoTokenByUIDReq) (*permission.Tokens, error) { l := logic.NewGetUserTokensByUIDLogic(ctx, s.svcCtx) return l.GetUserTokensByUID(in) } // NewOneTimeToken 建立一次性使用,例如:RefreshToken func (s *TokenServiceServer) NewOneTimeToken(ctx context.Context, in *permission.CreateOneTimeTokenReq) (*permission.CreateOneTimeTokenResp, error) { l := logic.NewNewOneTimeTokenLogic(ctx, s.svcCtx) return l.NewOneTimeToken(in) } // CancelOneTimeToken 取消一次性使用 func (s *TokenServiceServer) CancelOneTimeToken(ctx context.Context, in *permission.CreateOneTimeTokenReq) (*permission.CreateOneTimeTokenResp, error) { l := logic.NewCancelOneTimeTokenLogic(ctx, s.svcCtx) return l.CancelOneTimeToken(in) }