package com.seewo.ota.j.a;

import android.util.Log;
import com.seewo.ota.j.a.b;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

/* JADX INFO: compiled from: InvokerHandle.java */
/* JADX INFO: loaded from: classes.dex */
public class f<TInput, TApiInvoker extends b> {
    private static final String TAG = "InvokerHandle";
    private final List<TApiInvoker> mApiInvokers;
    protected d<TInput> mParserFactory;

    public f(d<TInput> dVar, List<TApiInvoker> list) {
        this.mParserFactory = dVar;
        this.mApiInvokers = list;
    }

    protected abstract TApiInvoker getInvoker(c<TInput> cVar, TInput tinput, List<TApiInvoker> list);

    public Object handle(TInput tinput) {
        c<TInput> cVarCreate = this.mParserFactory.create(tinput);
        b invoker = getInvoker(cVarCreate, tinput, this.mApiInvokers);
        if (invoker == null) {
            Log.d(TAG, "invoker not found");
            throw new IllegalArgumentException("invoker not found, input:" + tinput);
        }
        try {
            Object[] array = parseParams(cVarCreate, tinput, invoker).toArray();
            Object objInvoke = invoker.invoke(array);
            Log.d(TAG, "call api succeed, api:" + invoker.getName() + ", params:" + Arrays.toString(array));
            return objInvoke;
        } catch (Exception e2) {
            Log.e(TAG, "call api error", e2);
            if (e2.getCause() != null) {
                throw new IllegalArgumentException(e2.getCause().getMessage(), e2.getCause());
            }
            throw new IllegalArgumentException("call api error", e2);
        }
    }

    protected List<Object> parseParams(c<TInput> cVar, TInput tinput, b bVar) throws Exception {
        ArrayList arrayList = new ArrayList();
        for (e eVar : bVar.getParams()) {
            if (!cVar.contains(tinput, eVar.name()) && !eVar.nullable()) {
                throw new IllegalArgumentException("Non nullable params not found, param name:" + eVar.name());
            }
            try {
                Object objValueOf = eVar.getType() == Integer.TYPE ? Integer.valueOf(cVar.parseInt(tinput, eVar.name())) : eVar.getType() == Boolean.TYPE ? Boolean.valueOf(cVar.parseBoolean(tinput, eVar.name())) : eVar.getType() == String.class ? cVar.parseString(tinput, eVar.name()) : ((eVar.getType() instanceof Class) && ((Class) eVar.getType()).isEnum()) ? cVar.parseEnum(tinput, eVar.name(), eVar.getType()) : cVar.parseObject(tinput, eVar.name(), eVar.getType());
                if (objValueOf == null && !eVar.nullable()) {
                    throw new IllegalArgumentException("parse params error, param name:" + eVar.name());
                }
                arrayList.add(objValueOf);
            } catch (Exception e2) {
                Log.e(TAG, "parse params error, param name:" + eVar.name(), e2);
                throw e2;
            }
        }
        return arrayList;
    }
}
