granularity level: instruction
.class public final Lc1/d;
.super Ljava/lang/Object;
.source "SourceFile"
.implements Lc1/e;
.field public static final m:Ljava/lang/Object;
.field public static final n:Lc1/c;
.field public final a:Lp0/g;
.field public final b:Lf1/c;
.field public final c:Lk/j;
.field public final d:Lc1/k;
.field public final e:Lr0/o;
.field public final f:Lc1/i;
.field public final g:Ljava/lang/Object;
.field public final h:Ljava/util/concurrent/ExecutorService;
.field public final i:Ljava/util/concurrent/ThreadPoolExecutor;
.field public j:Ljava/lang/String;
.field public k:Ljava/util/HashSet;
.field public final l:Ljava/util/ArrayList;
.method public static constructor <clinit>()V
.locals 1
new-instance v0, Ljava/lang/Object;
invoke-direct {v0}, Ljava/lang/Object;-><init>()V
sput-object v0, Lc1/d;->m:Ljava/lang/Object;
new-instance v0, Lc1/c;
invoke-direct {v0}, Lc1/c;-><init>()V
sput-object v0, Lc1/d;->n:Lc1/c;
return-void
.end method
.method public constructor <init>(Lp0/g;Lb1/a;)V
.locals 11
new-instance v8, Ljava/util/concurrent/ThreadPoolExecutor;
sget-object v9, Ljava/util/concurrent/TimeUnit;->SECONDS:Ljava/util/concurrent/TimeUnit;
new-instance v6, Ljava/util/concurrent/LinkedBlockingQueue;
invoke-direct {v6}, Ljava/util/concurrent/LinkedBlockingQueue;-><init>()V
sget-object v10, Lc1/d;->n:Lc1/c;
const/4 v1, 0x0
const/4 v2, 0x1
const-wide/16 v3, 0x1e
move-object v0, v8
move-object v5, v9
move-object v7, v10
invoke-direct/range {v0 .. v7}, Ljava/util/concurrent/ThreadPoolExecutor;-><init>(IIJLjava/util/concurrent/TimeUnit;Ljava/util/concurrent/BlockingQueue;Ljava/util/concurrent/ThreadFactory;)V
new-instance v0, Lf1/c;
invoke-virtual {p1}, Lp0/g;->a()V
iget-object v1, p1, Lp0/g;->a:Landroid/content/Context;
invoke-direct {v0, v1, p2}, Lf1/c;-><init>(Landroid/content/Context;Lb1/a;)V
new-instance p2, Lk/j;
invoke-direct {p2, p1}, Lk/j;-><init>(Lp0/g;)V
invoke-static {}, Lc1/k;->a()Lc1/k;
move-result-object v1
new-instance v2, Lr0/o;
new-instance v3, Lr0/d;
const/4 v4, 0x2
invoke-direct {v3, v4, p1}, Lr0/d;-><init>(ILjava/lang/Object;)V
invoke-direct {v2, v3}, Lr0/o;-><init>(Lb1/a;)V
new-instance v3, Lc1/i;
invoke-direct {v3}, Lc1/i;-><init>()V
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
new-instance v4, Ljava/lang/Object;
invoke-direct {v4}, Ljava/lang/Object;-><init>()V
iput-object v4, p0, Lc1/d;->g:Ljava/lang/Object;
new-instance v4, Ljava/util/HashSet;
invoke-direct {v4}, Ljava/util/HashSet;-><init>()V
iput-object v4, p0, Lc1/d;->k:Ljava/util/HashSet;
new-instance v4, Ljava/util/ArrayList;
invoke-direct {v4}, Ljava/util/ArrayList;-><init>()V
iput-object v4, p0, Lc1/d;->l:Ljava/util/ArrayList;
iput-object p1, p0, Lc1/d;->a:Lp0/g;
iput-object v0, p0, Lc1/d;->b:Lf1/c;
iput-object p2, p0, Lc1/d;->c:Lk/j;
iput-object v1, p0, Lc1/d;->d:Lc1/k;
iput-object v2, p0, Lc1/d;->e:Lr0/o;
iput-object v3, p0, Lc1/d;->f:Lc1/i;
iput-object v8, p0, Lc1/d;->h:Ljava/util/concurrent/ExecutorService;
new-instance p1, Ljava/util/concurrent/ThreadPoolExecutor;
new-instance v6, Ljava/util/concurrent/LinkedBlockingQueue;
invoke-direct {v6}, Ljava/util/concurrent/LinkedBlockingQueue;-><init>()V
const/4 v1, 0x0
const/4 v2, 0x1
const-wide/16 v3, 0x1e
move-object v0, p1
invoke-direct/range {v0 .. v7}, Ljava/util/concurrent/ThreadPoolExecutor;-><init>(IIJLjava/util/concurrent/TimeUnit;Ljava/util/concurrent/BlockingQueue;Ljava/util/concurrent/ThreadFactory;)V
iput-object p1, p0, Lc1/d;->i:Ljava/util/concurrent/ThreadPoolExecutor;
return-void
.end method
.method public final a(Z)V
.locals 7
sget-object v0, Lc1/d;->m:Ljava/lang/Object;
monitor-enter v0
:try_start_0
iget-object v1, p0, Lc1/d;->a:Lp0/g;
invoke-virtual {v1}, Lp0/g;->a()V
iget-object v1, v1, Lp0/g;->a:Landroid/content/Context;
invoke-static {v1}, Lk/j;->a(Landroid/content/Context;)Lk/j;
move-result-object v1
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_1
iget-object v2, p0, Lc1/d;->c:Lk/j;
invoke-virtual {v2}, Lk/j;->j()Le1/a;
move-result-object v2
iget-object v3, v2, Le1/a;->b:Le1/c;
sget-object v4, Le1/c;->b:Le1/c;
const/4 v5, 0x1
if-eq v3, v4, :cond_1
sget-object v4, Le1/c;->a:Le1/c;
if-ne v3, v4, :cond_0
goto :goto_0
:cond_0
const/4 v3, 0x0
goto :goto_1
:goto_0
:cond_1
const/4 v3, 0x1
:goto_1
if-eqz v3, :cond_2
invoke-virtual {p0, v2}, Lc1/d;->f(Le1/a;)Ljava/lang/String;
move-result-object v3
iget-object v4, p0, Lc1/d;->c:Lk/j;
new-instance v6, Lk/l;
invoke-direct {v6, v2}, Lk/l;-><init>(Le1/a;)V
iput-object v3, v6, Lk/l;->d:Ljava/lang/String;
sget-object v2, Le1/c;->c:Le1/c;
invoke-virtual {v6, v2}, Lk/l;->b(Le1/c;)V
invoke-virtual {v6}, Lk/l;->a()Le1/a;
move-result-object v2
invoke-virtual {v4, v2}, Lk/j;->i(Le1/a;)V
:cond_2
if-eqz v1, :cond_3
:try_start_2
invoke-virtual {v1}, Lk/j;->k()V
:cond_3
monitor-exit v0
:try_end_2
.catchall {:try_start_2 .. :try_end_2} :catchall_1
invoke-virtual {p0, v2}, Lc1/d;->h(Le1/a;)V
iget-object v0, p0, Lc1/d;->i:Ljava/util/concurrent/ThreadPoolExecutor;
new-instance v1, Lc1/b;
invoke-direct {v1, p0, p1, v5}, Lc1/b;-><init>(Lc1/d;ZI)V
invoke-virtual {v0, v1}, Ljava/util/concurrent/ThreadPoolExecutor;->execute(Ljava/lang/Runnable;)V
return-void
:catchall_1
move-exception p1
monitor-exit v0
throw p1
.end method
.method public final b(Le1/a;)Le1/a;
.locals 18
const/4 v0, 0x0
return-object v0
.end method
.method public final c()Lo0/o;
.locals 4
invoke-virtual {p0}, Lc1/d;->e()V
monitor-enter p0
:try_start_0
iget-object v0, p0, Lc1/d;->j:Ljava/lang/String;
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_1
monitor-exit p0
if-eqz v0, :cond_0
invoke-static {v0}, Lf0/a;->j(Ljava/lang/Object;)Lo0/o;
move-result-object v0
return-object v0
:cond_0
new-instance v0, Lo0/i;
invoke-direct {v0}, Lo0/i;-><init>()V
new-instance v1, Lc1/h;
invoke-direct {v1, v0}, Lc1/h;-><init>(Lo0/i;)V
iget-object v2, p0, Lc1/d;->g:Ljava/lang/Object;
monitor-enter v2
:try_start_1
iget-object v3, p0, Lc1/d;->l:Ljava/util/ArrayList;
invoke-virtual {v3, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
monitor-exit v2
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
iget-object v0, v0, Lo0/i;->a:Lo0/o;
iget-object v1, p0, Lc1/d;->h:Ljava/util/concurrent/ExecutorService;
new-instance v2, Lq/n;
const/4 v3, 0x1
invoke-direct {v2, v3, p0}, Lq/n;-><init>(ILjava/lang/Object;)V
invoke-interface {v1, v2}, Ljava/util/concurrent/Executor;->execute(Ljava/lang/Runnable;)V
return-object v0
:catchall_0
move-exception v0
monitor-exit v2
throw v0
:catchall_1
move-exception v0
monitor-exit p0
throw v0
.end method
.method public final d()Lo0/o;
.locals 4
invoke-virtual {p0}, Lc1/d;->e()V
new-instance v0, Lo0/i;
invoke-direct {v0}, Lo0/i;-><init>()V
new-instance v1, Lc1/g;
iget-object v2, p0, Lc1/d;->d:Lc1/k;
invoke-direct {v1, v2, v0}, Lc1/g;-><init>(Lc1/k;Lo0/i;)V
iget-object v2, p0, Lc1/d;->g:Ljava/lang/Object;
monitor-enter v2
:try_start_0
iget-object v3, p0, Lc1/d;->l:Ljava/util/ArrayList;
invoke-virtual {v3, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
monitor-exit v2
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
iget-object v0, v0, Lo0/i;->a:Lo0/o;
iget-object v1, p0, Lc1/d;->h:Ljava/util/concurrent/ExecutorService;
new-instance v2, Lc1/b;
const/4 v3, 0x0
invoke-direct {v2, p0, v3, v3}, Lc1/b;-><init>(Lc1/d;ZI)V
invoke-interface {v1, v2}, Ljava/util/concurrent/Executor;->execute(Ljava/lang/Runnable;)V
return-object v0
:catchall_0
move-exception v0
monitor-exit v2
throw v0
.end method
.method public final e()V
.locals 4
iget-object v0, p0, Lc1/d;->a:Lp0/g;
invoke-virtual {v0}, Lp0/g;->a()V
iget-object v0, v0, Lp0/g;->c:Lp0/h;
iget-object v0, v0, Lp0/h;->b:Ljava/lang/String;
const-string v1, "Please set your Application ID. A valid Firebase App ID is required to communicate with Firebase server APIs: It identifies your application with Firebase.Please refer to https://firebase.google.com/support/privacy/init-options."
invoke-static {v1, v0}, Lp0/a;->h(Ljava/lang/String;Ljava/lang/String;)V
iget-object v0, p0, Lc1/d;->a:Lp0/g;
invoke-virtual {v0}, Lp0/g;->a()V
iget-object v0, v0, Lp0/g;->c:Lp0/h;
iget-object v0, v0, Lp0/h;->g:Ljava/lang/String;
const-string v2, "Please set your Project ID. A valid Firebase Project ID is required to communicate with Firebase server APIs: It identifies your application with Firebase.Please refer to https://firebase.google.com/support/privacy/init-options."
invoke-static {v2, v0}, Lp0/a;->h(Ljava/lang/String;Ljava/lang/String;)V
iget-object v0, p0, Lc1/d;->a:Lp0/g;
invoke-virtual {v0}, Lp0/g;->a()V
iget-object v0, v0, Lp0/g;->c:Lp0/h;
iget-object v0, v0, Lp0/h;->a:Ljava/lang/String;
const-string v2, "Please set a valid API key. A Firebase API key is required to communicate with Firebase server APIs: It authenticates your project with Google.Please refer to https://firebase.google.com/support/privacy/init-options."
invoke-static {v2, v0}, Lp0/a;->h(Ljava/lang/String;Ljava/lang/String;)V
iget-object v0, p0, Lc1/d;->a:Lp0/g;
invoke-virtual {v0}, Lp0/g;->a()V
iget-object v0, v0, Lp0/g;->c:Lp0/h;
iget-object v0, v0, Lp0/h;->b:Ljava/lang/String;
sget-object v3, Lc1/k;->c:Ljava/util/regex/Pattern;
const-string v3, ":"
invoke-virtual {v0, v3}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
move-result v0
iget-object v0, p0, Lc1/d;->a:Lp0/g;
invoke-virtual {v0}, Lp0/g;->a()V
iget-object v0, v0, Lp0/g;->c:Lp0/h;
iget-object v0, v0, Lp0/h;->a:Ljava/lang/String;
sget-object v1, Lc1/k;->c:Ljava/util/regex/Pattern;
invoke-virtual {v1, v0}, Ljava/util/regex/Pattern;->matcher(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
move-result-object v0
invoke-virtual {v0}, Ljava/util/regex/Matcher;->matches()Z
move-result v0
return-void
.end method
.method public final f(Le1/a;)Ljava/lang/String;
.locals 5
iget-object v0, p0, Lc1/d;->a:Lp0/g;
invoke-virtual {v0}, Lp0/g;->a()V
iget-object v0, v0, Lp0/g;->b:Ljava/lang/String;
const-string v1, "CHIME_ANDROID_SDK"
invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v0
if-nez v0, :cond_0
iget-object v0, p0, Lc1/d;->a:Lp0/g;
invoke-virtual {v0}, Lp0/g;->a()V
iget-object v0, v0, Lp0/g;->b:Ljava/lang/String;
const-string v1, "[DEFAULT]"
invoke-virtual {v1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v0
:cond_0
iget-object p1, p1, Le1/a;->b:Le1/c;
sget-object v0, Le1/c;->a:Le1/c;
const/4 p1, 0x1
iget-object p1, p0, Lc1/d;->e:Lr0/o;
invoke-virtual {p1}, Lr0/o;->get()Ljava/lang/Object;
move-result-object p1
check-cast p1, Le1/b;
iget-object v0, p1, Le1/b;->a:Landroid/content/SharedPreferences;
monitor-enter v0
:try_start_0
iget-object v1, p1, Le1/b;->a:Landroid/content/SharedPreferences;
monitor-enter v1
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_1
:try_start_1
iget-object v2, p1, Le1/b;->a:Landroid/content/SharedPreferences;
const-string v3, "|S|id"
const/4 v4, 0x0
invoke-interface {v2, v3, v4}, Landroid/content/SharedPreferences;->getString(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v2
monitor-exit v1
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
:try_start_2
invoke-virtual {p1}, Le1/b;->a()Ljava/lang/String;
move-result-object v2
:goto_1
monitor-exit v0
:try_end_2
.catchall {:try_start_2 .. :try_end_2} :catchall_1
invoke-static {v2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result p1
if-eqz p1, :cond_5
iget-object p1, p0, Lc1/d;->f:Lc1/i;
invoke-virtual {p1}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
invoke-static {}, Lc1/i;->a()Ljava/lang/String;
move-result-object v2
:cond_5
return-object v2
:catchall_0
move-exception p1
monitor-exit v1
throw p1
:catchall_1
move-exception p1
monitor-exit v0
throw p1
.end method
.method public final g(Le1/a;)Le1/a;
.locals 22
move-object/from16 v1, p0
move-object/from16 v0, p1
iget-object v2, v0, Le1/a;->a:Ljava/lang/String;
const/4 v3, 0x0
const/4 v4, 0x0
if-eqz v2, :cond_3
invoke-virtual {v2}, Ljava/lang/String;->length()I
move-result v2
const/16 v5, 0xb
goto/32 :cond_3
:catchall_0
move-exception v0
monitor-exit v5
throw v0
:goto_2
:cond_3
iget-object v2, v1, Lc1/d;->b:Lf1/c;
iget-object v5, v1, Lc1/d;->a:Lp0/g;
invoke-virtual {v5}, Lp0/g;->a()V
iget-object v5, v5, Lp0/g;->c:Lp0/h;
iget-object v5, v5, Lp0/h;->a:Ljava/lang/String;
iget-object v6, v0, Le1/a;->a:Ljava/lang/String;
iget-object v7, v1, Lc1/d;->a:Lp0/g;
invoke-virtual {v7}, Lp0/g;->a()V
iget-object v7, v7, Lp0/g;->c:Lp0/h;
iget-object v7, v7, Lp0/h;->g:Ljava/lang/String;
iget-object v8, v1, Lc1/d;->a:Lp0/g;
invoke-virtual {v8}, Lp0/g;->a()V
iget-object v8, v8, Lp0/g;->c:Lp0/h;
iget-object v8, v8, Lp0/h;->b:Ljava/lang/String;
iget-object v9, v2, Lf1/c;->c:Lf1/e;
monitor-enter v9
iget v10, v9, Lf1/e;->c:I
const/4 v11, 0x1
:goto_3
const/4 v10, 0x1
:goto_4
monitor-exit v9
const-string v9, "Firebase Installations Service is unavailable. Please try again later."
new-array v10, v11, [Ljava/lang/Object;
aput-object v7, v10, v3
const-string v12, "projects/%s/installations"
invoke-static {v12, v10}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object v10
invoke-static {v10}, Lf1/c;->a(Ljava/lang/String;)Ljava/net/URL;
move-result-object v10
const/4 v12, 0x0
:goto_5
const v13, 0x8001
invoke-static {v13}, Landroid/net/TrafficStats;->setThreadStatsTag(I)V
invoke-virtual {v2, v10, v5}, Lf1/c;->c(Ljava/net/URL;Ljava/lang/String;)Ljava/net/HttpURLConnection;
move-result-object v13
const-string v14, "POST"
invoke-virtual {v13, v14}, Ljava/net/HttpURLConnection;->setRequestMethod(Ljava/lang/String;)V
invoke-virtual {v13, v11}, Ljava/net/URLConnection;->setDoOutput(Z)V
invoke-static {v13, v6, v8}, Lf1/c;->g(Ljava/net/HttpURLConnection;Ljava/lang/String;Ljava/lang/String;)V
invoke-virtual {v13}, Ljava/net/HttpURLConnection;->getResponseCode()I
move-result v14
iget-object v15, v2, Lf1/c;->c:Lf1/e;
invoke-virtual {v15, v14}, Lf1/e;->a(I)V
const/16 v15, 0xc8
const/16 v15, 0x12c
const/4 v15, 0x1
invoke-static {v13}, Lf1/c;->e(Ljava/net/HttpURLConnection;)Lf1/a;
move-result-object v2
invoke-virtual {v13}, Ljava/net/HttpURLConnection;->disconnect()V
invoke-static {}, Landroid/net/TrafficStats;->clearThreadStatsTag()V
iget-object v3, v2, Lf1/a;->e:Lf1/d;
invoke-virtual {v3}, Ljava/lang/Enum;->ordinal()I
move-result v3
iget-object v3, v2, Lf1/a;->b:Ljava/lang/String;
iget-object v4, v2, Lf1/a;->c:Ljava/lang/String;
iget-object v5, v1, Lc1/d;->d:Lc1/k;
invoke-virtual {v5}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
sget-object v6, Ljava/util/concurrent/TimeUnit;->MILLISECONDS:Ljava/util/concurrent/TimeUnit;
iget-object v5, v5, Lc1/k;->a:Lz0/e;
invoke-virtual {v5}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
move-result-wide v7
invoke-virtual {v6, v7, v8}, Ljava/util/concurrent/TimeUnit;->toSeconds(J)J
move-result-wide v5
iget-object v2, v2, Lf1/a;->d:Lf1/b;
iget-object v7, v2, Lf1/b;->a:Ljava/lang/String;
iget-wide v8, v2, Lf1/b;->b:J
new-instance v2, Lk/l;
invoke-direct {v2, v0}, Lk/l;-><init>(Le1/a;)V
iput-object v3, v2, Lk/l;->d:Ljava/lang/String;
sget-object v0, Le1/c;->d:Le1/c;
invoke-virtual {v2, v0}, Lk/l;->b(Le1/c;)V
iput-object v7, v2, Lk/l;->c:Ljava/lang/Object;
iput-object v4, v2, Lk/l;->f:Ljava/lang/Object;
invoke-static {v8, v9}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
move-result-object v0
iput-object v0, v2, Lk/l;->a:Ljava/lang/Long;
invoke-static {v5, v6}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
move-result-object v0
iput-object v0, v2, Lk/l;->b:Ljava/lang/Long;
invoke-virtual {v2}, Lk/l;->a()Le1/a;
move-result-object v0
return-object v0
:catchall_2
move-exception v0
monitor-exit v9
throw v0
.end method
.method public final h(Le1/a;)V
.locals 3
iget-object v0, p0, Lc1/d;->g:Ljava/lang/Object;
monitor-enter v0
iget-object v1, p0, Lc1/d;->l:Ljava/util/ArrayList;
invoke-virtual {v1}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object v1
:goto_0
:cond_0
invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z
move-result v2
if-eqz v2, :cond_1
invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v2
check-cast v2, Lc1/j;
invoke-interface {v2, p1}, Lc1/j;->a(Le1/a;)Z
move-result v2
if-eqz v2, :cond_0
invoke-interface {v1}, Ljava/util/Iterator;->remove()V
goto :goto_0
:cond_1
monitor-exit v0
return-void
:catchall_0
move-exception p1
monitor-exit v0
:throw0
throw p1
.end method