package com.google.firebase.components; import C.w; import android.app.Service; import android.content.ComponentName; import android.content.Context; import android.content.pm.PackageManager; import android.content.pm.ServiceInfo; import android.os.Bundle; import android.util.Log; import com.google.firebase.inject.Provider; import java.lang.reflect.InvocationTargetException; import java.util.ArrayList; import java.util.Collections; import java.util.Iterator; import java.util.List; /* loaded from: classes3.dex */ public final class ComponentDiscovery { private static final String COMPONENT_KEY_PREFIX = "com.google.firebase.components:"; private static final String COMPONENT_SENTINEL_VALUE = "com.google.firebase.components.ComponentRegistrar"; static final String TAG = "ComponentDiscovery"; private final T context; private final RegistrarNameRetriever retriever; /* loaded from: classes3.dex */ public static class MetadataRegistrarNameRetriever implements RegistrarNameRetriever { private final Class discoveryService; private Bundle getMetadata(Context context) { try { PackageManager packageManager = context.getPackageManager(); if (packageManager == null) { Log.w(ComponentDiscovery.TAG, "Context has no PackageManager."); return null; } ServiceInfo serviceInfo = packageManager.getServiceInfo(new ComponentName(context, this.discoveryService), 128); if (serviceInfo != null) { return serviceInfo.metaData; } Log.w(ComponentDiscovery.TAG, this.discoveryService + " has no service info."); return null; } catch (PackageManager.NameNotFoundException unused) { Log.w(ComponentDiscovery.TAG, "Application info not found."); return null; } } private MetadataRegistrarNameRetriever(Class cls) { this.discoveryService = cls; } @Override // com.google.firebase.components.ComponentDiscovery.RegistrarNameRetriever public List retrieve(Context context) { Bundle metadata = getMetadata(context); if (metadata == null) { Log.w(ComponentDiscovery.TAG, "Could not retrieve metadata, returning empty list of registrars."); return Collections.EMPTY_LIST; } ArrayList arrayList = new ArrayList(); for (String str : metadata.keySet()) { if (ComponentDiscovery.COMPONENT_SENTINEL_VALUE.equals(metadata.get(str)) && str.startsWith(ComponentDiscovery.COMPONENT_KEY_PREFIX)) { arrayList.add(str.substring(31)); } } return arrayList; } } /* loaded from: classes3.dex */ public interface RegistrarNameRetriever { List retrieve(T t2); } public ComponentDiscovery(T t2, RegistrarNameRetriever registrarNameRetriever) { this.context = t2; this.retriever = registrarNameRetriever; } public static ComponentDiscovery forContext(Context context, Class cls) { return new ComponentDiscovery<>(context, new MetadataRegistrarNameRetriever(cls)); } /* JADX INFO: Access modifiers changed from: private */ public static ComponentRegistrar instantiate(String str) { try { Class cls = Class.forName(str); if (ComponentRegistrar.class.isAssignableFrom(cls)) { return (ComponentRegistrar) cls.getDeclaredConstructor(new Class[0]).newInstance(new Object[0]); } throw new InvalidRegistrarException("Class " + str + " is not an instance of com.google.firebase.components.ComponentRegistrar"); } catch (ClassNotFoundException unused) { Log.w(TAG, "Class " + str + " is not an found."); return null; } catch (IllegalAccessException e4) { throw new InvalidRegistrarException(w.o("Could not instantiate ", str, "."), e4); } catch (InstantiationException e5) { throw new InvalidRegistrarException(w.o("Could not instantiate ", str, "."), e5); } catch (NoSuchMethodException e6) { throw new InvalidRegistrarException(w.z("Could not instantiate ", str), e6); } catch (InvocationTargetException e7) { throw new InvalidRegistrarException(w.z("Could not instantiate ", str), e7); } } @Deprecated public List discover() { ArrayList arrayList = new ArrayList(); Iterator it = this.retriever.retrieve(this.context).iterator(); while (it.hasNext()) { try { ComponentRegistrar instantiate = instantiate(it.next()); if (instantiate != null) { arrayList.add(instantiate); } } catch (InvalidRegistrarException e4) { Log.w(TAG, "Invalid component registrar.", e4); } } return arrayList; } public List> discoverLazy() { ArrayList arrayList = new ArrayList(); Iterator it = this.retriever.retrieve(this.context).iterator(); while (it.hasNext()) { arrayList.add(new b(it.next(), 0)); } return arrayList; } }