Fabric$Builder.smali
.class public Lio/fabric/sdk/android/Fabric$Builder;
.super Ljava/lang/Object;
.source "Fabric.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lio/fabric/sdk/android/Fabric;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "Builder"
.end annotation
# instance fields
.field private appIdentifier:Ljava/lang/String;
.field private appInstallIdentifier:Ljava/lang/String;
.field private final context:Landroid/content/Context;
.field private debuggable:Z
.field private handler:Landroid/os/Handler;
.field private initializationCallback:Lio/fabric/sdk/android/InitializationCallback;
.annotation system Ldalvik/annotation/Signature;
value = {
"Lio/fabric/sdk/android/InitializationCallback<",
"Lio/fabric/sdk/android/Fabric;",
">;"
}
.end annotation
.end field
.field private kits:[Lio/fabric/sdk/android/Kit;
.field private logger:Lio/fabric/sdk/android/Logger;
.field private threadPoolExecutor:Lio/fabric/sdk/android/services/concurrency/PriorityThreadPoolExecutor;
# direct methods
.method public constructor <init>(Landroid/content/Context;)V
.registers 3
.line 90
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
if-eqz p1, :cond_c
.line 95
invoke-virtual {p1}, Landroid/content/Context;->getApplicationContext()Landroid/content/Context;
move-result-object p1
iput-object p1, p0, Lio/fabric/sdk/android/Fabric$Builder;->context:Landroid/content/Context;
return-void
.line 92
:cond_c
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string v0, "Context must not be null."
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method
# virtual methods
.method public appIdentifier(Ljava/lang/String;)Lio/fabric/sdk/android/Fabric$Builder;
.registers 3
if-eqz p1, :cond_11
.line 174
iget-object v0, p0, Lio/fabric/sdk/android/Fabric$Builder;->appIdentifier:Ljava/lang/String;
if-nez v0, :cond_9
.line 178
iput-object p1, p0, Lio/fabric/sdk/android/Fabric$Builder;->appIdentifier:Ljava/lang/String;
return-object p0
.line 175
:cond_9
new-instance p1, Ljava/lang/IllegalStateException;
const-string v0, "appIdentifier already set."
invoke-direct {p1, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p1
.line 171
:cond_11
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string v0, "appIdentifier must not be null."
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method public appInstallIdentifier(Ljava/lang/String;)Lio/fabric/sdk/android/Fabric$Builder;
.registers 3
if-eqz p1, :cond_11
.line 190
iget-object v0, p0, Lio/fabric/sdk/android/Fabric$Builder;->appInstallIdentifier:Ljava/lang/String;
if-nez v0, :cond_9
.line 194
iput-object p1, p0, Lio/fabric/sdk/android/Fabric$Builder;->appInstallIdentifier:Ljava/lang/String;
return-object p0
.line 191
:cond_9
new-instance p1, Ljava/lang/IllegalStateException;
const-string v0, "appInstallIdentifier already set."
invoke-direct {p1, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p1
.line 187
:cond_11
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string v0, "appInstallIdentifier must not be null."
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method public build()Lio/fabric/sdk/android/Fabric;
.registers 11
.line 227
iget-object v0, p0, Lio/fabric/sdk/android/Fabric$Builder;->threadPoolExecutor:Lio/fabric/sdk/android/services/concurrency/PriorityThreadPoolExecutor;
if-nez v0, :cond_a
.line 228
invoke-static {}, Lio/fabric/sdk/android/services/concurrency/PriorityThreadPoolExecutor;->create()Lio/fabric/sdk/android/services/concurrency/PriorityThreadPoolExecutor;
move-result-object v0
iput-object v0, p0, Lio/fabric/sdk/android/Fabric$Builder;->threadPoolExecutor:Lio/fabric/sdk/android/services/concurrency/PriorityThreadPoolExecutor;
.line 231
:cond_a
iget-object v0, p0, Lio/fabric/sdk/android/Fabric$Builder;->handler:Landroid/os/Handler;
if-nez v0, :cond_19
.line 232
new-instance v0, Landroid/os/Handler;
invoke-static {}, Landroid/os/Looper;->getMainLooper()Landroid/os/Looper;
move-result-object v1
invoke-direct {v0, v1}, Landroid/os/Handler;-><init>(Landroid/os/Looper;)V
iput-object v0, p0, Lio/fabric/sdk/android/Fabric$Builder;->handler:Landroid/os/Handler;
.line 235
:cond_19
iget-object v0, p0, Lio/fabric/sdk/android/Fabric$Builder;->logger:Lio/fabric/sdk/android/Logger;
if-nez v0, :cond_31
.line 236
iget-boolean v0, p0, Lio/fabric/sdk/android/Fabric$Builder;->debuggable:Z
if-eqz v0, :cond_2a
.line 237
new-instance v0, Lio/fabric/sdk/android/DefaultLogger;
const/4 v1, 0x3
invoke-direct {v0, v1}, Lio/fabric/sdk/android/DefaultLogger;-><init>(I)V
iput-object v0, p0, Lio/fabric/sdk/android/Fabric$Builder;->logger:Lio/fabric/sdk/android/Logger;
goto :goto_31
.line 239
:cond_2a
new-instance v0, Lio/fabric/sdk/android/DefaultLogger;
invoke-direct {v0}, Lio/fabric/sdk/android/DefaultLogger;-><init>()V
iput-object v0, p0, Lio/fabric/sdk/android/Fabric$Builder;->logger:Lio/fabric/sdk/android/Logger;
.line 244
:cond_31
:goto_31
iget-object v0, p0, Lio/fabric/sdk/android/Fabric$Builder;->appIdentifier:Ljava/lang/String;
if-nez v0, :cond_3d
.line 245
iget-object v0, p0, Lio/fabric/sdk/android/Fabric$Builder;->context:Landroid/content/Context;
invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
move-result-object v0
iput-object v0, p0, Lio/fabric/sdk/android/Fabric$Builder;->appIdentifier:Ljava/lang/String;
.line 248
:cond_3d
iget-object v0, p0, Lio/fabric/sdk/android/Fabric$Builder;->initializationCallback:Lio/fabric/sdk/android/InitializationCallback;
if-nez v0, :cond_45
.line 249
sget-object v0, Lio/fabric/sdk/android/InitializationCallback;->EMPTY:Lio/fabric/sdk/android/InitializationCallback;
iput-object v0, p0, Lio/fabric/sdk/android/Fabric$Builder;->initializationCallback:Lio/fabric/sdk/android/InitializationCallback;
.line 253
:cond_45
iget-object v0, p0, Lio/fabric/sdk/android/Fabric$Builder;->kits:[Lio/fabric/sdk/android/Kit;
if-nez v0, :cond_4f
.line 254
new-instance v0, Ljava/util/HashMap;
invoke-direct {v0}, Ljava/util/HashMap;-><init>()V
goto :goto_57
.line 256
:cond_4f
invoke-static {v0}, Ljava/util/Arrays;->asList([Ljava/lang/Object;)Ljava/util/List;
move-result-object v0
# invokes: Lio/fabric/sdk/android/Fabric;->getKitMap(Ljava/util/Collection;)Ljava/util/Map;
invoke-static {v0}, Lio/fabric/sdk/android/Fabric;->access$000(Ljava/util/Collection;)Ljava/util/Map;
move-result-object v0
:goto_57
move-object v3, v0
.line 259
new-instance v9, Lio/fabric/sdk/android/services/common/IdManager;
iget-object v0, p0, Lio/fabric/sdk/android/Fabric$Builder;->context:Landroid/content/Context;
iget-object v1, p0, Lio/fabric/sdk/android/Fabric$Builder;->appIdentifier:Ljava/lang/String;
iget-object v2, p0, Lio/fabric/sdk/android/Fabric$Builder;->appInstallIdentifier:Ljava/lang/String;
invoke-interface {v3}, Ljava/util/Map;->values()Ljava/util/Collection;
move-result-object v4
invoke-direct {v9, v0, v1, v2, v4}, Lio/fabric/sdk/android/services/common/IdManager;-><init>(Landroid/content/Context;Ljava/lang/String;Ljava/lang/String;Ljava/util/Collection;)V
.line 262
new-instance v0, Lio/fabric/sdk/android/Fabric;
iget-object v2, p0, Lio/fabric/sdk/android/Fabric$Builder;->context:Landroid/content/Context;
iget-object v4, p0, Lio/fabric/sdk/android/Fabric$Builder;->threadPoolExecutor:Lio/fabric/sdk/android/services/concurrency/PriorityThreadPoolExecutor;
iget-object v5, p0, Lio/fabric/sdk/android/Fabric$Builder;->handler:Landroid/os/Handler;
iget-object v6, p0, Lio/fabric/sdk/android/Fabric$Builder;->logger:Lio/fabric/sdk/android/Logger;
iget-boolean v7, p0, Lio/fabric/sdk/android/Fabric$Builder;->debuggable:Z
iget-object v8, p0, Lio/fabric/sdk/android/Fabric$Builder;->initializationCallback:Lio/fabric/sdk/android/InitializationCallback;
move-object v1, v0
invoke-direct/range {v1 .. v9}, Lio/fabric/sdk/android/Fabric;-><init>(Landroid/content/Context;Ljava/util/Map;Lio/fabric/sdk/android/services/concurrency/PriorityThreadPoolExecutor;Landroid/os/Handler;Lio/fabric/sdk/android/Logger;ZLio/fabric/sdk/android/InitializationCallback;Lio/fabric/sdk/android/services/common/IdManager;)V
return-object v0
.end method
.method public debuggable(Z)Lio/fabric/sdk/android/Fabric$Builder;
.registers 2
.line 202
iput-boolean p1, p0, Lio/fabric/sdk/android/Fabric$Builder;->debuggable:Z
return-object p0
.end method
.method public executorService(Ljava/util/concurrent/ExecutorService;)Lio/fabric/sdk/android/Fabric$Builder;
.registers 2
.annotation runtime Ljava/lang/Deprecated;
.end annotation
return-object p0
.end method
.method public handler(Landroid/os/Handler;)Lio/fabric/sdk/android/Fabric$Builder;
.registers 2
.annotation runtime Ljava/lang/Deprecated;
.end annotation
return-object p0
.end method
.method public initializationCallback(Lio/fabric/sdk/android/InitializationCallback;)Lio/fabric/sdk/android/Fabric$Builder;
.registers 3
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lio/fabric/sdk/android/InitializationCallback<",
"Lio/fabric/sdk/android/Fabric;",
">;)",
"Lio/fabric/sdk/android/Fabric$Builder;"
}
.end annotation
if-eqz p1, :cond_11
.line 215
iget-object v0, p0, Lio/fabric/sdk/android/Fabric$Builder;->initializationCallback:Lio/fabric/sdk/android/InitializationCallback;
if-nez v0, :cond_9
.line 219
iput-object p1, p0, Lio/fabric/sdk/android/Fabric$Builder;->initializationCallback:Lio/fabric/sdk/android/InitializationCallback;
return-object p0
.line 216
:cond_9
new-instance p1, Ljava/lang/IllegalStateException;
const-string v0, "initializationCallback already set."
invoke-direct {p1, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p1
.line 212
:cond_11
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string v0, "initializationCallback must not be null."
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method public varargs kits([Lio/fabric/sdk/android/Kit;)Lio/fabric/sdk/android/Fabric$Builder;
.registers 3
.line 102
iget-object v0, p0, Lio/fabric/sdk/android/Fabric$Builder;->kits:[Lio/fabric/sdk/android/Kit;
if-nez v0, :cond_7
.line 106
iput-object p1, p0, Lio/fabric/sdk/android/Fabric$Builder;->kits:[Lio/fabric/sdk/android/Kit;
return-object p0
.line 103
:cond_7
new-instance p1, Ljava/lang/IllegalStateException;
const-string v0, "Kits already set."
invoke-direct {p1, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method public logger(Lio/fabric/sdk/android/Logger;)Lio/fabric/sdk/android/Fabric$Builder;
.registers 3
if-eqz p1, :cond_11
.line 150
iget-object v0, p0, Lio/fabric/sdk/android/Fabric$Builder;->logger:Lio/fabric/sdk/android/Logger;
if-nez v0, :cond_9
.line 154
iput-object p1, p0, Lio/fabric/sdk/android/Fabric$Builder;->logger:Lio/fabric/sdk/android/Logger;
return-object p0
.line 151
:cond_9
new-instance p1, Ljava/lang/IllegalStateException;
const-string v0, "Logger already set."
invoke-direct {p1, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p1
.line 147
:cond_11
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string v0, "Logger must not be null."
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method public threadPoolExecutor(Lio/fabric/sdk/android/services/concurrency/PriorityThreadPoolExecutor;)Lio/fabric/sdk/android/Fabric$Builder;
.registers 3
if-eqz p1, :cond_11
.line 126
iget-object v0, p0, Lio/fabric/sdk/android/Fabric$Builder;->threadPoolExecutor:Lio/fabric/sdk/android/services/concurrency/PriorityThreadPoolExecutor;
if-nez v0, :cond_9
.line 130
iput-object p1, p0, Lio/fabric/sdk/android/Fabric$Builder;->threadPoolExecutor:Lio/fabric/sdk/android/services/concurrency/PriorityThreadPoolExecutor;
return-object p0
.line 127
:cond_9
new-instance p1, Ljava/lang/IllegalStateException;
const-string v0, "PriorityThreadPoolExecutor already set."
invoke-direct {p1, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p1
.line 123
:cond_11
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string v0, "PriorityThreadPoolExecutor must not be null."
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method