CamScanner.apk(点击下载) / EvernoteAPI.java


package com.intsig.webstorage.evernote;

import android.content.Context;
import android.text.TextUtils;
import androidx.fragment.app.FragmentActivity;
import com.evernote.client.android.EvernoteSession;
import com.evernote.client.android.EvernoteUtil;
import com.evernote.client.android.asyncclient.EvernoteClientFactory;
import com.evernote.client.android.asyncclient.EvernoteNoteStoreClient;
import com.evernote.client.conn.mobile.ByteStore;
import com.evernote.client.conn.mobile.DiskBackedByteStore;
import com.evernote.client.conn.mobile.FileData;
import com.evernote.edam.error.EDAMErrorCode;
import com.evernote.edam.error.EDAMNotFoundException;
import com.evernote.edam.error.EDAMUserException;
import com.evernote.edam.type.Note;
import com.evernote.edam.type.Notebook;
import com.evernote.edam.type.Resource;
import com.evernote.edam.type.ResourceAttributes;
import com.evernote.thrift.TException;
import com.evernote.thrift.transport.TTransportException;
import com.intsig.log.LogUtils;
import com.intsig.webstorage.RemoteFile;
import com.intsig.webstorage.UploadProgressListener;
import com.intsig.webstorage.WebStorageApi;
import com.intsig.webstorage.WebstorageException;
import com.intsig.webstorage.util.CloudServiceUtils;
import com.intsig.webstorage.util.ParamCheckUtil;
import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.net.SocketTimeoutException;
import java.util.ArrayList;
import java.util.List;
import java.util.Locale;

public class EvernoteAPI extends WebStorageApi {

    /* renamed from: e  reason: collision with root package name */
    private static final EvernoteSession.EvernoteService f41056e = EvernoteSession.EvernoteService.PRODUCTION;

    /* renamed from: c  reason: collision with root package name */
    private EvernoteSession f41057c;

    /* renamed from: d  reason: collision with root package name */
    private EvernoteNoteStoreClient f41058d;

    /* access modifiers changed from: package-private */
    /* renamed from: com.intsig.webstorage.evernote.EvernoteAPI$1  reason: invalid class name */
    public static /* synthetic */ class AnonymousClass1 {

        /* renamed from: a  reason: collision with root package name */
        static final /* synthetic */ int[] f41059a;

        static {
            int[] iArr = new int[EDAMErrorCode.values().length];
            f41059a = iArr;
            try {
                iArr[EDAMErrorCode.QUOTA_REACHED.ordinal()] = 1;
            } catch (NoSuchFieldError unused) {
            }
            try {
                f41059a[EDAMErrorCode.INVALID_AUTH.ordinal()] = 2;
            } catch (NoSuchFieldError unused2) {
            }
            try {
                f41059a[EDAMErrorCode.AUTH_EXPIRED.ordinal()] = 3;
            } catch (NoSuchFieldError unused3) {
            }
            try {
                f41059a[EDAMErrorCode.LIMIT_REACHED.ordinal()] = 4;
            } catch (NoSuchFieldError unused4) {
            }
        }
    }

    public EvernoteAPI(Context context) {
        super(context, 3);
        if (this.f41057c == null) {
            this.f41057c = new EvernoteSession.Builder(context).setEvernoteService(f41056e).setSupportAppLinkedNotebooks(true).setForceAuthenticationInThirdPartyApp(true).setLocale(Locale.getDefault()).build("intsig-sns", "c318b4f17a4429df").asSingleton();
        }
    }

    private ByteStore.Factory n() {
        return new DiskBackedByteStore.Factory(new File(Config.f41055a), (int) (Runtime.getRuntime().maxMemory() / 32));
    }

    private int o(Exception exc) {
        CloudServiceUtils.c("EvernoteAPI", "exceptionHandle Exception ", exc);
        if (exc instanceof FileNotFoundException) {
            return -7;
        }
        if (exc instanceof EDAMUserException) {
            EDAMUserException eDAMUserException = (EDAMUserException) exc;
            CloudServiceUtils.b("EvernoteAPI", "getErrorCode " + eDAMUserException.getErrorCode() + " msg " + eDAMUserException.getMessage());
            int i10 = AnonymousClass1.f41059a[eDAMUserException.getErrorCode().ordinal()];
            if (i10 == 1) {
                return -6;
            }
            if (i10 == 2 || i10 == 3) {
                return -8;
            }
            return i10 != 4 ? -4 : -10;
        }
        if (!(exc instanceof TTransportException)) {
            if (!(exc instanceof TException)) {
                if (exc instanceof SocketTimeoutException) {
                    return -2;
                }
                if (exc instanceof EDAMNotFoundException) {
                    return -4;
                }
                boolean z10 = exc instanceof IOException;
                return -4;
            }
        }
        return -3;
    }

    private static String p(Context context) {
        return context.getSharedPreferences("camscanner", 0).getString("ehytSPNAME_EVERNOTE_ACCOUNT_NAME", null);
    }

    private EvernoteNoteStoreClient q() {
        LogUtils.a("EvernoteAPI", "getNoteStoreClient");
        if (this.f41058d == null) {
            EvernoteClientFactory.Builder builder = new EvernoteClientFactory.Builder(this.f41057c);
            builder.setByteStoreFactory(n());
            this.f41057c.setEvernoteClientFactoryBuilder(builder);
            this.f41058d = this.f41057c.getEvernoteClientFactory().getNoteStoreClient();
        }
        return this.f41058d;
    }

    private static void r(Context context, String str) {
        context.getSharedPreferences("camscanner", 0).edit().putString("ehytSPNAME_EVERNOTE_ACCOUNT_NAME", str).apply();
    }

    @Override // com.intsig.webstorage.WebStorageApi
    public boolean b(int i10) {
        LogUtils.a("EvernoteAPI", "authenticate   type==" + i10);
        if (h()) {
            return true;
        }
        Context context = this.f40999a;
        if (context instanceof FragmentActivity) {
            this.f41057c.authenticate((FragmentActivity) context);
        }
        return false;
    }

    @Override // com.intsig.webstorage.WebStorageApi
    public int c(RemoteFile remoteFile, RemoteFile remoteFile2) {
        int i10;
        LogUtils.a("EvernoteAPI", "createFolder");
        EvernoteNoteStoreClient q10 = q();
        if (q10 != null) {
            Notebook notebook = new Notebook();
            notebook.setName("CamScanner");
            try {
                q10.createNotebook(notebook);
                i10 = 0;
            } catch (Exception e10) {
                i10 = o(e10);
            }
        } else {
            i10 = -4;
        }
        CloudServiceUtils.b("EvernoteAPI", "createFolder() " + i10);
        return i10;
    }

    @Override // com.intsig.webstorage.WebStorageApi
    public String g() {
        return p(this.f40999a);
    }

    @Override // com.intsig.webstorage.WebStorageApi
    public boolean h() {
        LogUtils.a("EvernoteAPI", "isLogin");
        return this.f41057c.isLoggedIn();
    }

    @Override // com.intsig.webstorage.WebStorageApi
    public List<RemoteFile> i(RemoteFile remoteFile) throws WebstorageException {
        LogUtils.a("EvernoteAPI", "listAllItems");
        return j(remoteFile);
    }

    @Override // com.intsig.webstorage.WebStorageApi
    public List<RemoteFile> j(RemoteFile remoteFile) throws WebstorageException {
        String str;
        LogUtils.a("EvernoteAPI", "listFolder");
        EvernoteNoteStoreClient q10 = q();
        if (q10 == null) {
            return null;
        }
        if (remoteFile == null || (str = remoteFile.f40978b) == null) {
            str = null;
        }
        ArrayList arrayList = new ArrayList();
        try {
            while (true) {
                for (Notebook notebook : q10.listNotebooks()) {
                    RemoteFile remoteFile2 = new RemoteFile();
                    remoteFile2.f40977a = notebook.getGuid();
                    remoteFile2.f40978b = notebook.getName();
                    String stack = notebook.getStack();
                    remoteFile2.f40981e = stack;
                    if (str == null) {
                        arrayList.add(remoteFile2);
                    } else if (stack != null && str.equals(stack)) {
                        arrayList.add(remoteFile2);
                    }
                }
                return arrayList;
            }
        } catch (Exception e10) {
            if (o(e10) != -8) {
                return null;
            }
            throw new WebstorageException(-8, "LOGIN_ERROR");
        }
    }

    @Override // com.intsig.webstorage.WebStorageApi
    public void k() {
        LogUtils.a("EvernoteAPI", "logout");
        this.f41057c.logOut();
        r(this.f40999a, null);
    }

    @Override // com.intsig.webstorage.WebStorageApi
    public boolean l() {
        return true;
    }

    /* JADX WARNING: Removed duplicated region for block: B:40:0x0137  */
    /* JADX WARNING: Removed duplicated region for block: B:44:0x0140  */
    @Override // com.intsig.webstorage.WebStorageApi
    public int m(RemoteFile remoteFile, RemoteFile remoteFile2, UploadProgressListener uploadProgressListener) {
        Throwable th;
        Exception e10;
        LogUtils.a("EvernoteAPI", "upload");
        if (ParamCheckUtil.b(remoteFile)) {
            return -7;
        }
        if (!h()) {
            return -8;
        }
        EvernoteNoteStoreClient q10 = q();
        if (q10 == null) {
            return -3;
        }
        int i10 = -4;
        BufferedInputStream bufferedInputStream = null;
        try {
            BufferedInputStream bufferedInputStream2 = new BufferedInputStream(new FileInputStream(remoteFile.f40979c));
            try {
                FileData fileData = new FileData(EvernoteUtil.hash(bufferedInputStream2), remoteFile.f40979c);
                Resource resource = new Resource();
                resource.setData(fileData);
                resource.setMime(remoteFile.f());
                ResourceAttributes resourceAttributes = new ResourceAttributes();
                resourceAttributes.setFileName(remoteFile.f40979c.getName());
                resource.setAttributes(resourceAttributes);
                Note note = new Note();
                note.setTitle(remoteFile.g());
                note.addToResources(resource);
                CloudServiceUtils.e("EvernoteAPI", "Evernote mimetype " + remoteFile.f());
                note.setContent("<?xml version=\"1.0\" encoding=\"UTF-8\"?><!DOCTYPE en-note SYSTEM \"http://xml.evernote.com/pub/enml2.dtd\"><en-note><en-media type=\"" + remoteFile.f() + "\" hash=\"" + EvernoteUtil.bytesToHex(resource.getData().getBodyHash()) + "\"/>" + EvernoteUtil.NOTE_SUFFIX);
                if (remoteFile2 != null && !TextUtils.isEmpty(remoteFile2.d())) {
                    note.setNotebookGuid(remoteFile2.d());
                }
                if (q10.createNote(note) != null) {
                    i10 = 0;
                }
                try {
                    bufferedInputStream2.close();
                } catch (Exception e11) {
                    CloudServiceUtils.c("EvernoteAPI", "Exception ", e11);
                }
            } catch (Exception e12) {
                e10 = e12;
                bufferedInputStream = bufferedInputStream2;
                try {
                    i10 = o(e10);
                    if (bufferedInputStream != null) {
                    }
                    return i10;
                } catch (Throwable th2) {
                    th = th2;
                    if (bufferedInputStream != null) {
                    }
                    throw th;
                }
            } catch (Throwable th3) {
                th = th3;
                bufferedInputStream = bufferedInputStream2;
                if (bufferedInputStream != null) {
                    try {
                        bufferedInputStream.close();
                    } catch (Exception e13) {
                        CloudServiceUtils.c("EvernoteAPI", "Exception ", e13);
                    }
                    throw th;
                }
                throw th;
            }
        } catch (Exception e14) {
            e10 = e14;
            i10 = o(e10);
            if (bufferedInputStream != null) {
                bufferedInputStream.close();
            }
            return i10;
        }
        return i10;
    }
}