package com.google.android.gms.cloudmessaging; import android.app.PendingIntent; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.os.Bundle; import android.os.Parcelable; import android.text.TextUtils; import android.util.Log; import com.google.android.gms.common.util.concurrent.NamedThreadFactory; import com.google.android.gms.tasks.Task; import com.google.android.gms.tasks.Tasks; import java.util.concurrent.ExecutionException; import java.util.concurrent.Executor; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.LinkedBlockingQueue; import java.util.concurrent.ThreadPoolExecutor; import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeoutException; /* loaded from: classes.dex */ public abstract class CloudMessagingReceiver extends BroadcastReceiver { private final ExecutorService zza; public static final class IntentActionKeys { public static final String NOTIFICATION_DISMISS = "com.google.firebase.messaging.NOTIFICATION_DISMISS"; public static final String NOTIFICATION_OPEN = "com.google.firebase.messaging.NOTIFICATION_OPEN"; private IntentActionKeys() { } } public static final class IntentKeys { public static final String PENDING_INTENT = "pending_intent"; public static final String WRAPPED_INTENT = "wrapped_intent"; private IntentKeys() { } } public CloudMessagingReceiver() { com.google.android.gms.internal.cloudmessaging.zze.zza(); ThreadPoolExecutor threadPoolExecutor = new ThreadPoolExecutor(1, 1, 60L, TimeUnit.SECONDS, new LinkedBlockingQueue(), new NamedThreadFactory("firebase-iid-executor")); threadPoolExecutor.allowCoreThreadTimeOut(true); this.zza = Executors.unconfigurableExecutorService(threadPoolExecutor); } private final int zzb(Context context, Intent intent) { Task zzc; if (intent.getExtras() == null) { return 500; } String stringExtra = intent.getStringExtra("google.message_id"); if (TextUtils.isEmpty(stringExtra)) { zzc = Tasks.forResult(null); } else { Bundle bundle = new Bundle(); bundle.putString("google.message_id", stringExtra); zzc = zzs.zzb(context).zzc(2, bundle); } int onMessageReceive = onMessageReceive(context, new CloudMessage(intent)); try { Tasks.await(zzc, TimeUnit.SECONDS.toMillis(1L), TimeUnit.MILLISECONDS); } catch (InterruptedException | ExecutionException | TimeoutException e10) { String valueOf = String.valueOf(e10); StringBuilder sb = new StringBuilder(valueOf.length() + 20); sb.append("Message ack failed: "); sb.append(valueOf); Log.w("CloudMessagingReceiver", sb.toString()); } return onMessageReceive; } private final int zzc(Context context, Intent intent) { PendingIntent pendingIntent = (PendingIntent) intent.getParcelableExtra(IntentKeys.PENDING_INTENT); if (pendingIntent != null) { try { pendingIntent.send(); } catch (PendingIntent.CanceledException unused) { Log.e("CloudMessagingReceiver", "Notification pending intent canceled"); } } Bundle extras = intent.getExtras(); if (extras != null) { extras.remove(IntentKeys.PENDING_INTENT); } else { extras = new Bundle(); } if (IntentActionKeys.NOTIFICATION_DISMISS.equals(intent.getAction())) { onNotificationDismissed(context, extras); return -1; } Log.e("CloudMessagingReceiver", "Unknown notification action"); return 500; } protected Executor getBroadcastExecutor() { return this.zza; } protected abstract int onMessageReceive(Context context, CloudMessage cloudMessage); protected void onNotificationDismissed(Context context, Bundle bundle) { } @Override // android.content.BroadcastReceiver public final void onReceive(final Context context, final Intent intent) { if (intent == null) { return; } final boolean isOrderedBroadcast = isOrderedBroadcast(); final BroadcastReceiver.PendingResult goAsync = goAsync(); getBroadcastExecutor().execute(new Runnable() { // from class: com.google.android.gms.cloudmessaging.zze @Override // java.lang.Runnable public final void run() { CloudMessagingReceiver.this.zza(intent, context, isOrderedBroadcast, goAsync); } }); } public final /* synthetic */ void zza(Intent intent, Context context, boolean z10, BroadcastReceiver.PendingResult pendingResult) { try { Parcelable parcelableExtra = intent.getParcelableExtra(IntentKeys.WRAPPED_INTENT); Intent intent2 = parcelableExtra instanceof Intent ? (Intent) parcelableExtra : null; int zzc = intent2 != null ? zzc(context, intent2) : zzb(context, intent); if (z10) { pendingResult.setResultCode(zzc); } } finally { pendingResult.finish(); } } }