Search in sources :

Example 1 with GithubLoginDialog

use of org.jetbrains.plugins.github.ui.GithubLoginDialog in project intellij-community by JetBrains.

the class GithubUtil method getValidAuthData.

private static void getValidAuthData(@NotNull final Project project, @NotNull final GithubAuthDataHolder authHolder, @NotNull final ProgressIndicator indicator, @NotNull final AuthLevel authLevel, @NotNull final GithubAuthData oldAuth) throws GithubOperationCanceledException {
    authHolder.runTransaction(oldAuth, () -> {
        final GithubAuthData[] authData = new GithubAuthData[1];
        ApplicationManager.getApplication().invokeAndWait(() -> {
            GithubLoginDialog dialog = new GithubLoginDialog(project, oldAuth, authLevel);
            DialogManager.show(dialog);
            if (dialog.isOK()) {
                authData[0] = dialog.getAuthData();
                if (!authLevel.isOnetime()) {
                    GithubSettings.getInstance().setAuthData(authData[0], dialog.isSavePasswordSelected());
                }
            }
        }, indicator.getModalityState());
        if (authData[0] == null)
            throw new GithubOperationCanceledException("Can't get valid credentials");
        return authData[0];
    });
}
Also used : GithubOperationCanceledException(org.jetbrains.plugins.github.exceptions.GithubOperationCanceledException) GithubLoginDialog(org.jetbrains.plugins.github.ui.GithubLoginDialog)

Aggregations

GithubOperationCanceledException (org.jetbrains.plugins.github.exceptions.GithubOperationCanceledException)1 GithubLoginDialog (org.jetbrains.plugins.github.ui.GithubLoginDialog)1