]> source.dussan.org Git - gitea.git/commitdiff
Move oauth2 error to oauth2 service package (#17603)
authorLunny Xiao <xiaolunwen@gmail.com>
Wed, 10 Nov 2021 17:51:09 +0000 (01:51 +0800)
committerGitHub <noreply@github.com>
Wed, 10 Nov 2021 17:51:09 +0000 (01:51 +0800)
models/error_oauth2.go [deleted file]
routers/web/admin/auths.go
services/auth/source/oauth2/source_register.go

diff --git a/models/error_oauth2.go b/models/error_oauth2.go
deleted file mode 100644 (file)
index a25be89..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-// Copyright 2017 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package models
-
-import "fmt"
-
-// ErrOpenIDConnectInitialize represents a "OpenIDConnectInitialize" kind of error.
-type ErrOpenIDConnectInitialize struct {
-       OpenIDConnectAutoDiscoveryURL string
-       ProviderName                  string
-       Cause                         error
-}
-
-// IsErrOpenIDConnectInitialize checks if an error is a ExternalLoginUserAlreadyExist.
-func IsErrOpenIDConnectInitialize(err error) bool {
-       _, ok := err.(ErrOpenIDConnectInitialize)
-       return ok
-}
-
-func (err ErrOpenIDConnectInitialize) Error() string {
-       return fmt.Sprintf("Failed to initialize OpenID Connect Provider with name '%s' with url '%s': %v", err.ProviderName, err.OpenIDConnectAutoDiscoveryURL, err.Cause)
-}
index 803dcafa28bd9c18706ee6bc0db521f91b5f0d71..460b740171c21b6c1e0be3eee750e25703fa41d6 100644 (file)
@@ -10,7 +10,6 @@ import (
        "net/http"
        "regexp"
 
-       "code.gitea.io/gitea/models"
        "code.gitea.io/gitea/models/login"
        "code.gitea.io/gitea/modules/auth/pam"
        "code.gitea.io/gitea/modules/base"
@@ -386,7 +385,7 @@ func EditAuthSourcePost(ctx *context.Context) {
        source.IsSyncEnabled = form.IsSyncEnabled
        source.Cfg = config
        if err := login.UpdateSource(source); err != nil {
-               if models.IsErrOpenIDConnectInitialize(err) {
+               if oauth2.IsErrOpenIDConnectInitialize(err) {
                        ctx.Flash.Error(err.Error(), true)
                        ctx.HTML(http.StatusOK, tplAuthEdit)
                } else {
index 24c61a9a568de6c120c3bb03dcd34d08cb23ee9e..71ba288bf4c9a94c5aa629847d664ab06bbadcdc 100644 (file)
@@ -5,7 +5,7 @@
 package oauth2
 
 import (
-       "code.gitea.io/gitea/models"
+       "fmt"
 )
 
 // RegisterSource causes an OAuth2 configuration to be registered
@@ -20,11 +20,28 @@ func (source *Source) UnregisterSource() error {
        return nil
 }
 
+// ErrOpenIDConnectInitialize represents a "OpenIDConnectInitialize" kind of error.
+type ErrOpenIDConnectInitialize struct {
+       OpenIDConnectAutoDiscoveryURL string
+       ProviderName                  string
+       Cause                         error
+}
+
+// IsErrOpenIDConnectInitialize checks if an error is a ExternalLoginUserAlreadyExist.
+func IsErrOpenIDConnectInitialize(err error) bool {
+       _, ok := err.(ErrOpenIDConnectInitialize)
+       return ok
+}
+
+func (err ErrOpenIDConnectInitialize) Error() string {
+       return fmt.Sprintf("Failed to initialize OpenID Connect Provider with name '%s' with url '%s': %v", err.ProviderName, err.OpenIDConnectAutoDiscoveryURL, err.Cause)
+}
+
 // wrapOpenIDConnectInitializeError is used to wrap the error but this cannot be done in modules/auth/oauth2
 // inside oauth2: import cycle not allowed models -> modules/auth/oauth2 -> models
 func wrapOpenIDConnectInitializeError(err error, providerName string, source *Source) error {
        if err != nil && source.Provider == "openidConnect" {
-               err = models.ErrOpenIDConnectInitialize{ProviderName: providerName, OpenIDConnectAutoDiscoveryURL: source.OpenIDConnectAutoDiscoveryURL, Cause: err}
+               err = ErrOpenIDConnectInitialize{ProviderName: providerName, OpenIDConnectAutoDiscoveryURL: source.OpenIDConnectAutoDiscoveryURL, Cause: err}
        }
        return err
 }