123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100 |
- package com.epson.iprint.storage.box;
- import android.app.Activity;
- import android.content.Context;
- import android.content.Intent;
- import android.os.AsyncTask;
- import android.os.Bundle;
- import com.box.androidsdk.content.auth.BoxAuthentication;
- import com.epson.iprint.storage.StorageSignInActivity;
- import java.lang.ref.WeakReference;
- import epson.print.R;
- public class BoxNetSignInActivity extends StorageSignInActivity implements BoxAuthentication.AuthListener {
- private static final String PARAM_KEY_LOGOUT = "logout";
- private BoxNetClient mBoxClient;
- private boolean mModeLogout;
- public StorageSignInActivity.BasicSignIn getBasicSignIn() {
- return null;
- }
- public void onBackPressed() {
- }
- @NonNull
- public static Intent getLogoutIntent(@NonNull Context context) {
- Intent intent = new Intent(context, BoxNetSignInActivity.class);
- intent.putExtra(PARAM_KEY_LOGOUT, true);
- return intent;
- }
- protected void onCreate(Bundle bundle) {
- super.onCreate(bundle);
- this.mModeLogout = getMode(getIntent());
- if (this.mModeLogout) {
- setContentView((int) R.layout.storage_progress);
- findViewById(R.id.messageText).setVisibility(8);
- findViewById(R.id.cancelButton).setVisibility(8);
- }
- this.mBoxClient = BoxNetClient.getInstance();
- this.mBoxClient.setSessionAuthListener(this);
- if (this.mModeLogout) {
- startLogoutTask();
- } else {
- this.mBoxClient.authenticate();
- }
- }
- private boolean getMode(@Nullable Intent intent) {
- if (intent == null) {
- return false;
- }
- return intent.getBooleanExtra(PARAM_KEY_LOGOUT, false);
- }
- private void startLogoutTask() {
- if (this.mBoxClient == null) {
- finish();
- }
- new LogoutTask(this, this.mBoxClient).executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR, new Void[0]);
- }
- public void onRefreshed(BoxAuthentication.BoxAuthenticationInfo boxAuthenticationInfo) {
- this.mBoxClient.setLoginStatus(true);
- finish();
- }
- public void onAuthCreated(BoxAuthentication.BoxAuthenticationInfo boxAuthenticationInfo) {
- this.mBoxClient.setLoginStatus(true);
- finish();
- }
- public void onAuthFailure(BoxAuthentication.BoxAuthenticationInfo boxAuthenticationInfo, Exception exc) {
- this.mBoxClient.setLoginStatus(false);
- showLoginErrorAndFinish();
- }
- public void onLoggedOut(BoxAuthentication.BoxAuthenticationInfo boxAuthenticationInfo, Exception exc) {
- this.mBoxClient.setLoginStatus(false);
- finish();
- }
- private static class LogoutTask extends AsyncTask<Void, Void, Void> {
- private final WeakReference<Activity> mActivityReference;
- private final BoxNetClient mBoxNetClient;
- LogoutTask(Activity activity, @NonNull BoxNetClient boxNetClient) {
- this.mActivityReference = new WeakReference<>(activity);
- this.mBoxNetClient = boxNetClient;
- }
- protected Void doInBackground(Void... voidArr) {
- this.mBoxNetClient.boxLogout();
- return null;
- }
- }
- }
|