package com.cvte.vman.client;

import T1.b;
import android.os.IHwBinder;
import android.os.Parcel;
import android.os.Process;
import android.os.RemoteException;
import com.cvte.vman.VmanMiddleWare;
import com.cvte.vman.data.CacheMechanism;
import com.cvte.vman.utils.CLog;
import java.util.ArrayList;
import java.util.NoSuchElementException;

/* JADX INFO: loaded from: classes.dex */
public class VmanHidlClient extends CacheMechanism {
    private static T1.a mHwVman;
    private static b mIHwVmanCallback = new b();
    private static VmanHidlClient mVmanHidlClient;

    private static class b extends b.a implements IHwBinder.DeathRecipient {
        private b() {
        }

        @Override // T1.b
        public void c(int i2, int i3, String str) {
        }

        @Override // T1.b
        public void g(int i2, int i3, ArrayList arrayList) {
            if (VmanMiddleWare.getInstance().mEventHandler == null) {
                CLog.e("hwNotify_vec: mEventHandler is null");
                return;
            }
            Parcel parcelObtain = Parcel.obtain();
            Parcel parcelObtain2 = Parcel.obtain();
            byte[] bArr = new byte[arrayList.size()];
            for (int i4 = 0; i4 < arrayList.size(); i4++) {
                bArr[i4] = ((Byte) arrayList.get(i4)).byteValue();
            }
            parcelObtain2.writeByteArray(bArr);
            parcelObtain2.setDataPosition(4);
            parcelObtain.appendFrom(parcelObtain2, parcelObtain2.dataPosition(), parcelObtain2.dataAvail());
            parcelObtain.setDataPosition(0);
            VmanMiddleWare.getInstance().mEventHandler.sendMessage(VmanMiddleWare.getInstance().mEventHandler.obtainMessage(i2, 0, 0, parcelObtain));
            CLog.i("hwNotify_vec: sendMessage type=" + i2);
        }

        @Override // android.os.IHwBinder.DeathRecipient
        public void serviceDied(long j2) {
            VmanHidlClient.reConnectToHwVman();
            CLog.d("IHwVman Service DeathRecipient and reconnect .");
        }
    }

    private VmanHidlClient() {
    }

    public static int VmanInvoke(Parcel parcel, Parcel parcel2) {
        if (mHwVman == null && !reConnectToHwVman()) {
            CLog.e("VmanInvoke reConnectToHwVman error!!!");
            return -1;
        }
        Parcel parcelObtain = Parcel.obtain();
        new ArrayList();
        byte[] bArrMarshall = parcel.marshall();
        ArrayList arrayList = new ArrayList(bArrMarshall.length);
        for (byte b2 : bArrMarshall) {
            arrayList.add(Byte.valueOf(b2));
        }
        try {
            ArrayList arrayListH = mHwVman.h(arrayList);
            byte[] bArr = new byte[arrayListH.size()];
            for (int i2 = 0; i2 < arrayListH.size(); i2++) {
                bArr[i2] = ((Byte) arrayListH.get(i2)).byteValue();
            }
            parcelObtain.writeByteArray(bArr);
            parcelObtain.setDataPosition(4);
            parcel2.appendFrom(parcelObtain, parcelObtain.dataPosition(), parcelObtain.dataAvail());
            parcel2.setDataPosition(0);
            int i3 = parcel2.readInt();
            parcel2.setDataPosition(0);
            parcelObtain.recycle();
            return i3;
        } catch (RemoteException e2) {
            e2.printStackTrace();
            CLog.w("RemoteException: try to reconnect");
            reConnectToHwVman();
            parcelObtain.recycle();
            return -1;
        }
    }

    public static boolean connectToHwVman() {
        getHwVmanService();
        if (mHwVman == null) {
            return false;
        }
        try {
            CacheMechanism.initCacheMechanism();
            mHwVman.b();
            mHwVman.e(mIHwVmanCallback, Process.myPid());
            mHwVman.asBinder().linkToDeath(mIHwVmanCallback, Process.myPid());
            return true;
        } catch (RemoteException e2) {
            e2.printStackTrace();
            return false;
        }
    }

    public static T1.a getHwVmanService() {
        if (mHwVman == null) {
            try {
                mHwVman = T1.a.f();
            } catch (RemoteException e2) {
                e2.printStackTrace();
                return null;
            } catch (NoSuchElementException e3) {
                e3.printStackTrace();
                return null;
            } catch (Exception e4) {
                e4.printStackTrace();
                return null;
            }
        }
        return mHwVman;
    }

    public static synchronized VmanHidlClient getInstance() {
        try {
            if (mVmanHidlClient == null) {
                mVmanHidlClient = new VmanHidlClient();
            }
        } catch (Throwable th) {
            throw th;
        }
        return mVmanHidlClient;
    }

    /* JADX INFO: Access modifiers changed from: private */
    public static boolean reConnectToHwVman() {
        mHwVman = null;
        return connectToHwVman();
    }

    public boolean isVmanReady() {
        try {
            return T1.a.f() != null;
        } catch (RemoteException e2) {
            e2.printStackTrace();
            return false;
        } catch (NoSuchElementException e3) {
            e3.printStackTrace();
            return false;
        } catch (Exception e4) {
            e4.printStackTrace();
            return false;
        }
    }
}
