package com.google.firebase.components; import com.google.firebase.events.Event; import com.google.firebase.events.EventHandler; import com.google.firebase.events.Publisher; import com.google.firebase.events.Subscriber; import java.util.ArrayDeque; import java.util.Collections; import java.util.HashMap; import java.util.Iterator; import java.util.Map; import java.util.Queue; import java.util.Set; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.Executor; /* JADX INFO: Access modifiers changed from: package-private */ /* loaded from: classes3.dex */ public class EventBus implements Subscriber, Publisher { private final Executor defaultExecutor; private final Map, ConcurrentHashMap, Executor>> handlerMap = new HashMap(); private Queue> pendingEvents = new ArrayDeque(); public EventBus(Executor executor) { this.defaultExecutor = executor; } private synchronized Set, Executor>> getHandlers(Event event) { ConcurrentHashMap, Executor> concurrentHashMap; try { concurrentHashMap = this.handlerMap.get(event.getType()); } catch (Throwable th) { throw th; } return concurrentHashMap == null ? Collections.EMPTY_SET : concurrentHashMap.entrySet(); } /* JADX INFO: Access modifiers changed from: private */ public static /* synthetic */ void lambda$publish$0(Map.Entry entry, Event event) { ((EventHandler) entry.getKey()).handle(event); } public void enablePublishingAndFlushPending() { Queue> queue; synchronized (this) { try { queue = this.pendingEvents; if (queue != null) { this.pendingEvents = null; } else { queue = null; } } catch (Throwable th) { throw th; } } if (queue != null) { Iterator> it = queue.iterator(); while (it.hasNext()) { publish(it.next()); } } } @Override // com.google.firebase.events.Publisher public void publish(Event event) { Preconditions.checkNotNull(event); synchronized (this) { try { Queue> queue = this.pendingEvents; if (queue != null) { queue.add(event); return; } for (Map.Entry, Executor> entry : getHandlers(event)) { entry.getValue().execute(new e(2, entry, event)); } } catch (Throwable th) { throw th; } } } @Override // com.google.firebase.events.Subscriber public synchronized void subscribe(Class cls, Executor executor, EventHandler eventHandler) { try { Preconditions.checkNotNull(cls); Preconditions.checkNotNull(eventHandler); Preconditions.checkNotNull(executor); if (!this.handlerMap.containsKey(cls)) { this.handlerMap.put(cls, new ConcurrentHashMap<>()); } this.handlerMap.get(cls).put(eventHandler, executor); } catch (Throwable th) { throw th; } } @Override // com.google.firebase.events.Subscriber public synchronized void unsubscribe(Class cls, EventHandler eventHandler) { Preconditions.checkNotNull(cls); Preconditions.checkNotNull(eventHandler); if (this.handlerMap.containsKey(cls)) { ConcurrentHashMap, Executor> concurrentHashMap = this.handlerMap.get(cls); concurrentHashMap.remove(eventHandler); if (concurrentHashMap.isEmpty()) { this.handlerMap.remove(cls); } } } @Override // com.google.firebase.events.Subscriber public void subscribe(Class cls, EventHandler eventHandler) { subscribe(cls, this.defaultExecutor, eventHandler); } }