Handle redirection during validation.

This allows the validator to tell the app that
it should use a different host.

Change-Id: Ie42c32aa7aea83e4d95d2b82b88225036b2407a9
This commit is contained in:
Yu Ping Hu 2013-05-23 15:09:44 -07:00
parent 7283aea81c
commit c28347552e
2 changed files with 6 additions and 0 deletions

View File

@ -60,6 +60,7 @@ public class EmailServiceProxy extends ServiceProxy implements IEmailService {
public static final String VALIDATE_BUNDLE_UNSUPPORTED_POLICIES =
"validate_unsupported_policies";
public static final String VALIDATE_BUNDLE_PROTOCOL_VERSION = "validate_protocol_version";
public static final String VALIDATE_BUNDLE_REDIRECT_ADDRESS = "validate_redirect_address";
private final IEmailServiceCallback mCallback;
private Object mReturn = null;

View File

@ -477,6 +477,11 @@ public class AccountCheckSettingsFragment extends Fragment {
EmailServiceProxy.VALIDATE_BUNDLE_PROTOCOL_VERSION);
resultCode = bundle.getInt(
EmailServiceProxy.VALIDATE_BUNDLE_RESULT_CODE);
final String redirectAddress = bundle.getString(
EmailServiceProxy.VALIDATE_BUNDLE_REDIRECT_ADDRESS, null);
if (redirectAddress != null) {
mAccount.mHostAuthRecv.mAddress = redirectAddress;
}
// Only show "policies required" if this is a new account setup
if (resultCode == MessagingException.SECURITY_POLICIES_REQUIRED &&
mAccount.isSaved()) {