From 5fe81e804ff69521208c7a8911f6440083dd035e Mon Sep 17 00:00:00 2001 From: Konstantin Kolosovsky Date: Sat, 27 Oct 2018 22:36:51 +0300 Subject: [PATCH] svn: Refactor "RepositoryLoader" - remove useless interactive auth configuration "SvnClient" instances use interactive auth by default anyway --- .../idea/svn/auth/SvnAuthenticationProvider.java | 14 +------------- .../svn/dialogs/browserCache/RepositoryLoader.java | 4 ---- 2 files changed, 1 insertion(+), 17 deletions(-) diff --git a/plugins/svn4idea/src/org/jetbrains/idea/svn/auth/SvnAuthenticationProvider.java b/plugins/svn4idea/src/org/jetbrains/idea/svn/auth/SvnAuthenticationProvider.java index b653e2eeabd5..f1a2e56c47d8 100644 --- a/plugins/svn4idea/src/org/jetbrains/idea/svn/auth/SvnAuthenticationProvider.java +++ b/plugins/svn4idea/src/org/jetbrains/idea/svn/auth/SvnAuthenticationProvider.java @@ -5,16 +5,12 @@ import com.intellij.openapi.project.Project; import org.jetbrains.idea.svn.SvnVcs; import org.jetbrains.idea.svn.api.Url; -import java.util.HashSet; -import java.util.Set; - public class SvnAuthenticationProvider implements AuthenticationProvider { private final Project myProject; private final SvnAuthenticationNotifier myAuthenticationNotifier; private final AuthenticationProvider mySvnInteractiveAuthenticationProvider; private final SvnAuthenticationManager myAuthenticationManager; - private static final Set ourForceInteractive = new HashSet<>(); public SvnAuthenticationProvider(final SvnVcs svnVcs, final AuthenticationProvider provider, @@ -33,7 +29,7 @@ public class SvnAuthenticationProvider implements AuthenticationProvider { final SvnAuthenticationNotifier.AuthenticationRequest obj = new SvnAuthenticationNotifier.AuthenticationRequest(myProject, kind, url, realm); final Url wcUrl = myAuthenticationNotifier.getWcUrl(obj); - if (wcUrl == null || ourForceInteractive.contains(Thread.currentThread())) { + if (wcUrl == null) { // outside-project url return mySvnInteractiveAuthenticationProvider.requestClientAuthentication(kind, url, realm, canCache); } else { @@ -44,14 +40,6 @@ public class SvnAuthenticationProvider implements AuthenticationProvider { return null; } - public static void forceInteractive() { - ourForceInteractive.add(Thread.currentThread()); - } - - public static void clearInteractive() { - ourForceInteractive.remove(Thread.currentThread()); - } - @Override public AcceptResult acceptServerAuthentication(Url url, String realm, final Object certificate, final boolean canCache) { return mySvnInteractiveAuthenticationProvider.acceptServerAuthentication(url, realm, certificate, canCache); diff --git a/plugins/svn4idea/src/org/jetbrains/idea/svn/dialogs/browserCache/RepositoryLoader.java b/plugins/svn4idea/src/org/jetbrains/idea/svn/dialogs/browserCache/RepositoryLoader.java index 7e6bba723b20..29a41b254699 100644 --- a/plugins/svn4idea/src/org/jetbrains/idea/svn/dialogs/browserCache/RepositoryLoader.java +++ b/plugins/svn4idea/src/org/jetbrains/idea/svn/dialogs/browserCache/RepositoryLoader.java @@ -13,7 +13,6 @@ import org.jetbrains.idea.svn.SvnVcs; import org.jetbrains.idea.svn.api.Depth; import org.jetbrains.idea.svn.api.Revision; import org.jetbrains.idea.svn.api.Target; -import org.jetbrains.idea.svn.auth.SvnAuthenticationProvider; import org.jetbrains.idea.svn.browse.DirectoryEntry; import org.jetbrains.idea.svn.dialogs.RepositoryTreeNode; @@ -100,7 +99,6 @@ class RepositoryLoader extends Loader { List entries = newArrayList(); final RepositoryTreeNode node = myData.first; final SvnVcs vcs = node.getVcs(); - SvnAuthenticationProvider.forceInteractive(); try { Target target = Target.on(node.getURL()); @@ -112,8 +110,6 @@ class RepositoryLoader extends Loader { startNext(); }); return; - } finally { - SvnAuthenticationProvider.clearInteractive(); } SwingUtilities.invokeLater(() -> {