Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ad735e0c authored by daquexian's avatar daquexian Committed by Vincent Breitmoser
Browse files

Some minor update and rename

parent 54b3c346
Loading
Loading
Loading
Loading
+1 −2
Original line number Diff line number Diff line
@@ -1975,8 +1975,7 @@ public class Account implements BaseAccount, AccountConfig {
        setName(getOwnerName());
        setEmail(email);

        EmailHelper emailHelper = new EmailHelper();
        String[] emailParts = emailHelper.splitEmail(email);
        String[] emailParts = EmailHelper.splitEmail(email);
        String user = emailParts[0];
        String domain = emailParts[1];

+2 −3
Original line number Diff line number Diff line
@@ -4,7 +4,6 @@ import android.accounts.Account;
import android.accounts.AccountManager;
import android.accounts.AccountManagerFuture;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;

import com.fsck.k9.mail.AuthenticationFailedException;
@@ -29,13 +28,13 @@ public class AndroidAccountOAuth2TokenStore extends SpecificOAuth2TokenProvider

    private Map<String,String> authTokens = new HashMap<>();
    private AccountManager accountManager;
    private XOauth2PromptRequestHandler promptRequestHandler;
    private Oauth2PromptRequestHandler promptRequestHandler;

    public AndroidAccountOAuth2TokenStore(Context applicationContext) {
        this.accountManager = AccountManager.get(applicationContext);
    }

    public void setPromptRequestHandler(XOauth2PromptRequestHandler promptRequestHandler) {
    public void setPromptRequestHandler(Oauth2PromptRequestHandler promptRequestHandler) {
        this.promptRequestHandler = promptRequestHandler;
    }

+6 −4
Original line number Diff line number Diff line
@@ -11,15 +11,17 @@ import retrofit2.Call;
import retrofit2.Response;

/**
 *
 * base class for OAuth 2.0 standard authorization code flow
 * Classes extended this should override two methods that return Retrofit's calls
 * For other OAuth 2.0 flows, please create another TokenProvider
 */
public abstract class AndroidSpecificOAuth2TokenProvider extends SpecificOAuth2TokenProvider {
    protected XOauth2PromptRequestHandler promptRequestHandler;
abstract class AndroidSpecificOAuth2TokenProvider extends SpecificOAuth2TokenProvider {
    protected Oauth2PromptRequestHandler promptRequestHandler;

    protected abstract Call<ExchangeResponse> getExchangeCodeCall(String code);
    protected abstract Call<RefreshResponse> getRefreshTokenCall(String code);

    void setPromptRequestHandler(XOauth2PromptRequestHandler promptRequestHandler) {
    void setPromptRequestHandler(Oauth2PromptRequestHandler promptRequestHandler) {
        this.promptRequestHandler = promptRequestHandler;
    }

+1 −1
Original line number Diff line number Diff line
@@ -24,7 +24,7 @@ public class K9OAuth2TokenProvider extends OAuth2TokenProvider {
        outlookOAuth2TokenStore = new OutlookOAuth2TokenStore();
    }

    public void setPromptRequestHandler(XOauth2PromptRequestHandler promptRequestHandler) {
    public void setPromptRequestHandler(Oauth2PromptRequestHandler promptRequestHandler) {
        gmailOAuth2TokenStore.setPromptRequestHandler(promptRequestHandler);
        outlookOAuth2TokenStore.setPromptRequestHandler(promptRequestHandler);
    }
+11 −8
Original line number Diff line number Diff line
@@ -11,11 +11,14 @@ import com.fsck.k9.activity.setup.AccountSetupPresenter;

import timber.log.Timber;

public abstract class OAuth2WebViewClient extends WebViewClient {
    AccountSetupPresenter presenter;

    public OAuth2WebViewClient(AccountSetupPresenter presenter) {
        this.presenter = presenter;
/**
 * bass class for standard authorization code flow like Google's or Microsoft's
 */
abstract class OAuth2WebViewClient extends WebViewClient {
    private Oauth2PromptRequestHandler requestHandler;

    public OAuth2WebViewClient(Oauth2PromptRequestHandler requestHandler) {
        this.requestHandler = requestHandler;
    }

    protected abstract boolean arrivedAtRedirectUri(Uri uri);
@@ -29,18 +32,18 @@ public abstract class OAuth2WebViewClient extends WebViewClient {
        if (arrivedAtRedirectUri(uri)) {
            if (uri.getQueryParameter("error") != null) {
                Timber.i("got oauth error: " + uri.getQueryParameter("error"));
                presenter.onErrorWhenGettingOAuthCode(uri.getQueryParameter("error"));
                requestHandler.onErrorWhenGettingOAuthCode(uri.getQueryParameter("error"));
                return true;
            }

            String oAuthCode = uri.getQueryParameter("code");
            presenter.onOAuthCodeGot(oAuthCode);
            requestHandler.onOAuthCodeGot(oAuthCode);
            return true;
        }

        // if (!uri.getHost().contains("google")) {
        if (getOutOfDomain(uri)) {
            presenter.onErrorWhenGettingOAuthCode("Don't surf away"); // TODO: 2017/8/19 better error message
            requestHandler.onErrorWhenGettingOAuthCode("Don't surf away"); // TODO: 2017/8/19 better error message
            return true;
        }
        return false;
Loading