Loading k9mail/src/main/java/com/fsck/k9/Account.java +1 −2 Original line number Diff line number Diff line Loading @@ -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]; Loading k9mail/src/main/java/com/fsck/k9/account/AndroidAccountOAuth2TokenStore.java +2 −3 Original line number Diff line number Diff line Loading @@ -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; Loading @@ -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; } Loading k9mail/src/main/java/com/fsck/k9/account/AndroidSpecificOAuth2TokenProvider.java +6 −4 Original line number Diff line number Diff line Loading @@ -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; } Loading k9mail/src/main/java/com/fsck/k9/account/K9OAuth2TokenProvider.java +1 −1 Original line number Diff line number Diff line Loading @@ -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); } Loading k9mail/src/main/java/com/fsck/k9/account/OAuth2WebViewClient.java +11 −8 Original line number Diff line number Diff line Loading @@ -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); Loading @@ -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 Loading
k9mail/src/main/java/com/fsck/k9/Account.java +1 −2 Original line number Diff line number Diff line Loading @@ -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]; Loading
k9mail/src/main/java/com/fsck/k9/account/AndroidAccountOAuth2TokenStore.java +2 −3 Original line number Diff line number Diff line Loading @@ -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; Loading @@ -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; } Loading
k9mail/src/main/java/com/fsck/k9/account/AndroidSpecificOAuth2TokenProvider.java +6 −4 Original line number Diff line number Diff line Loading @@ -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; } Loading
k9mail/src/main/java/com/fsck/k9/account/K9OAuth2TokenProvider.java +1 −1 Original line number Diff line number Diff line Loading @@ -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); } Loading
k9mail/src/main/java/com/fsck/k9/account/OAuth2WebViewClient.java +11 −8 Original line number Diff line number Diff line Loading @@ -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); Loading @@ -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