MCPcopy Create free account
hub / github.com/1Panel-dev/1Panel / loadRefreshTokenByCode

Function loadRefreshTokenByCode

agent/app/service/backup.go:541–569  ·  view source on GitHub ↗
(backup *model.BackupAccount)

Source from the content-addressed store, hash-verified

539}
540
541func loadRefreshTokenByCode(backup *model.BackupAccount) (string, error) {
542 varMap := make(map[string]interface{})
543 if err := json.Unmarshal([]byte(backup.Vars), &varMap); err != nil {
544 return "", fmt.Errorf("unmarshal backup vars failed, err: %v", err)
545 }
546 if token, ok := varMap["refresh_token"]; ok && len(token.(string)) != 0 {
547 return "", nil
548 }
549 refreshToken := ""
550 var err error
551 switch backup.Type {
552 case constant.GoogleDrive:
553 refreshToken, err = client.RefreshGoogleToken("authorization_code", "refreshToken", varMap)
554 if err != nil {
555 return "", err
556 }
557 case constant.OneDrive:
558 refreshToken, err = client.RefreshToken("authorization_code", "refreshToken", varMap)
559 if err != nil {
560 return "", err
561 }
562 }
563 if backup.Type != constant.ALIYUN {
564 varMap["refresh_token"] = refreshToken
565 }
566 itemVars, _ := json.Marshal(varMap)
567 backup.Vars = string(itemVars)
568 return refreshToken, nil
569}
570
571func loadBackupNamesByID(accountIDs string, downloadID uint) ([]string, string, error) {
572 accountIDList := strings.Split(accountIDs, ",")

Callers 1

CheckConnMethod · 0.85

Calls 1

RefreshTokenMethod · 0.65

Tested by

no test coverage detected