diff options
author | Matthias Sohn | 2011-11-25 21:05:16 +0000 |
---|---|---|
committer | Jens Baumgart | 2011-11-30 14:51:18 +0000 |
commit | 41de765e17ac9047e614f57367b0b1e140b1f66b (patch) | |
tree | 7bcc32617b02a2fa4e4bf85386586edab0e16b0b /org.eclipse.egit.ui/src | |
parent | 09a32863d50405d58c5ddac5a79cc412c23c8719 (diff) | |
download | egit-41de765e17ac9047e614f57367b0b1e140b1f66b.tar.gz egit-41de765e17ac9047e614f57367b0b1e140b1f66b.tar.xz egit-41de765e17ac9047e614f57367b0b1e140b1f66b.zip |
Provide a way to reset stored credentials
When credentials of a user change the credentials stored in secure
store need to be reset to enable prompting for the new credentials.
Depends on JGit change I7d64c5f39b68a9687c858bb68a961616eabbc751
Bug: 356233
Change-Id: I22865b0387642e66021bb980e584dfc6394a4108
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
Diffstat (limited to 'org.eclipse.egit.ui/src')
3 files changed, 17 insertions, 0 deletions
diff --git a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/UIText.java b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/UIText.java index e5e221d14a..e4186612d6 100644 --- a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/UIText.java +++ b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/UIText.java @@ -211,6 +211,9 @@ public class UIText extends NLS { public static String EGitCredentialsProvider_errorReadingCredentials; /** */ + public static String EGitCredentialsProvider_FailedToClearCredentials; + + /** */ public static String EgitUiUtils_CouldNotOpenEditorMessage; /** */ diff --git a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/credentials/EGitCredentialsProvider.java b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/credentials/EGitCredentialsProvider.java index aa1e1c8f3c..33d8f1bd15 100644 --- a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/credentials/EGitCredentialsProvider.java +++ b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/credentials/EGitCredentialsProvider.java @@ -9,6 +9,8 @@ *******************************************************************************/ package org.eclipse.egit.ui.internal.credentials; +import java.io.IOException; +import java.text.MessageFormat; import java.util.concurrent.atomic.AtomicReference; import org.eclipse.egit.core.Activator; @@ -134,6 +136,17 @@ public class EGitCredentialsProvider extends CredentialsProvider { return result[0]; } + @Override + public void reset(URIish uri) { + try { + Activator.getDefault().getSecureStore().clearCredentials(uri); + } catch (IOException e) { + Activator.logError(MessageFormat.format( + UIText.EGitCredentialsProvider_FailedToClearCredentials, + uri), e); + } + } + /** * Opens a dialog for a single non-user, non-password type item. * @param shell the shell to use diff --git a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/uitext.properties b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/uitext.properties index 4844b83183..18c17ce06a 100644 --- a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/uitext.properties +++ b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/uitext.properties @@ -77,6 +77,7 @@ GerritConfigurationPage_pushUri=Push URI GerritConfigurationPage_title=Gerrit Configuration EGitCredentialsProvider_errorReadingCredentials=Failed reading credentials from secure store +EGitCredentialsProvider_FailedToClearCredentials=Failed to clear credentials for {0} stored in secure store EGitCredentialsProvider_question=Question EGitCredentialsProvider_information=Information CustomPromptDialog_provide_information_for=Provide information for {0} |