OneDriveStorageProcessUploadActivity.java 3.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. package com.epson.iprint.storage.onedrive;
  2. import android.content.Context;
  3. import android.content.Intent;
  4. import android.widget.Button;
  5. import com.epson.iprint.storage.StorageProcessActivity;
  6. import com.epson.iprint.storage.StorageProcessUploadActivity;
  7. import com.epson.iprint.storage.StorageServiceClient;
  8. import com.onedrive.sdk.extensions.IOneDriveClient;
  9. import epson.print.R;
  10. public class OneDriveStorageProcessUploadActivity extends StorageProcessUploadActivity {
  11. protected static final String TAG = "OneDriveStorageProcessUploadActivity";
  12. boolean mExpired;
  13. private OneDriveClient mStorageServiceClient;
  14. protected void onStart() {
  15. super.onStart();
  16. this.mExpired = false;
  17. checkSession();
  18. }
  19. protected void onResume() {
  20. super.onResume();
  21. this.mExpired = false;
  22. OneDriveClient oneDriveClient = this.mStorageServiceClient;
  23. if (oneDriveClient != null && oneDriveClient.getUploadProcessError().equals(StorageServiceClient.ProcessError.RETRY)) {
  24. this.mExpired = true;
  25. checkSession();
  26. }
  27. }
  28. private void checkSession() {
  29. if (isConnected()) {
  30. this.mStorageServiceClient = (OneDriveClient) getStorageClient();
  31. if (this.mStorageServiceClient.isSignedIn(this) && this.mStorageServiceClient.isSessionExpired()) {
  32. new Thread() {
  33. public void run() {
  34. super.run();
  35. OneDriveStorageProcessUploadActivity.this.mStorageServiceClient.getOneDriveClient(OneDriveStorageProcessUploadActivity.this, new OneDriveAuthenticator.OnOneDriveAuthenticatorListener() {
  36. public void onNotifyOneDriveClient(IOneDriveClient iOneDriveClient) {
  37. OneDriveStorageProcessUploadActivity.this.findViewById(R.id.folder_content_layout_for_upload).setVisibility(0);
  38. if (iOneDriveClient == null) {
  39. OneDriveStorageProcessUploadActivity.this.mStorageServiceClient.revokeSignedInData(OneDriveStorageProcessUploadActivity.this);
  40. OneDriveStorageProcessUploadActivity.this.updateSignInStatus();
  41. } else if (OneDriveStorageProcessUploadActivity.this.mExpired) {
  42. OneDriveStorageProcessUploadActivity.this.mExpired = false;
  43. OneDriveStorageProcessUploadActivity.this.mStorageServiceClient.resetUploadProcessError();
  44. ((Button) OneDriveStorageProcessUploadActivity.this.findViewById(R.id.save_button)).performClick();
  45. }
  46. }
  47. });
  48. }
  49. }.start();
  50. findViewById(R.id.folder_content_layout_for_upload).setVisibility(4);
  51. }
  52. }
  53. }
  54. public static Intent getProcessIntent(Context context, String str, StorageProcessActivity.ProcessType processType) {
  55. Intent intent = new Intent(context, OneDriveStorageProcessUploadActivity.class);
  56. setCommonExtra(intent, str);
  57. return intent;
  58. }
  59. }