b.smali
.class public final Lcom/bumptech/glide/d/b;
.super Ljava/lang/Object;
.source "ManifestParser.java"
# instance fields
.field private final zn:Landroid/content/Context;
# direct methods
.method public constructor <init>(Landroid/content/Context;)V
.registers 2
.prologue
.line 18
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 19
iput-object p1, p0, Lcom/bumptech/glide/d/b;->zn:Landroid/content/Context;
.line 20
return-void
.end method
.method private static O(Ljava/lang/String;)Lcom/bumptech/glide/d/a;
.registers 6
.prologue
.line 44
:try_start_0
invoke-static {p0}, Ljava/lang/Class;->forName(Ljava/lang/String;)Ljava/lang/Class;
:try_end_3
.catch Ljava/lang/ClassNotFoundException; {:try_start_0 .. :try_end_3} :catch_21
move-result-object v0
.line 51
:try_start_4
invoke-virtual {v0}, Ljava/lang/Class;->newInstance()Ljava/lang/Object;
:try_end_7
.catch Ljava/lang/InstantiationException; {:try_start_4 .. :try_end_7} :catch_2a
.catch Ljava/lang/IllegalAccessException; {:try_start_4 .. :try_end_7} :catch_40
move-result-object v0
.line 58
instance-of v1, v0, Lcom/bumptech/glide/d/a;
if-nez v1, :cond_56
.line 59
new-instance v1, Ljava/lang/RuntimeException;
new-instance v2, Ljava/lang/StringBuilder;
const-string v3, "Expected instanceof GlideModule, but found: "
invoke-direct {v2, v3}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-direct {v1, v0}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V
throw v1
.line 45
:catch_21
move-exception v0
.line 46
new-instance v1, Ljava/lang/IllegalArgumentException;
const-string v2, "Unable to find GlideModule implementation"
invoke-direct {v1, v2, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw v1
.line 52
:catch_2a
move-exception v1
.line 53
new-instance v2, Ljava/lang/RuntimeException;
new-instance v3, Ljava/lang/StringBuilder;
const-string v4, "Unable to instantiate GlideModule implementation for "
invoke-direct {v3, v4}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-direct {v2, v0, v1}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw v2
.line 54
:catch_40
move-exception v1
.line 55
new-instance v2, Ljava/lang/RuntimeException;
new-instance v3, Ljava/lang/StringBuilder;
const-string v4, "Unable to instantiate GlideModule implementation for "
invoke-direct {v3, v4}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-direct {v2, v0, v1}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw v2
.line 61
:cond_56
check-cast v0, Lcom/bumptech/glide/d/a;
return-object v0
.end method
# virtual methods
.method public final parse()Ljava/util/List;
.registers 7
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/util/List",
"<",
"Lcom/bumptech/glide/d/a;",
">;"
}
.end annotation
.prologue
.line 23
new-instance v1, Ljava/util/ArrayList;
invoke-direct {v1}, Ljava/util/ArrayList;-><init>()V
.line 25
:try_start_5
iget-object v0, p0, Lcom/bumptech/glide/d/b;->zn:Landroid/content/Context;
invoke-virtual {v0}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object v0
iget-object v2, p0, Lcom/bumptech/glide/d/b;->zn:Landroid/content/Context;
invoke-virtual {v2}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
move-result-object v2
const/16 v3, 0x80
invoke-virtual {v0, v2, v3}, Landroid/content/pm/PackageManager;->getApplicationInfo(Ljava/lang/String;I)Landroid/content/pm/ApplicationInfo;
move-result-object v2
.line 27
iget-object v0, v2, Landroid/content/pm/ApplicationInfo;->metaData:Landroid/os/Bundle;
if-eqz v0, :cond_50
.line 28
iget-object v0, v2, Landroid/content/pm/ApplicationInfo;->metaData:Landroid/os/Bundle;
invoke-virtual {v0}, Landroid/os/Bundle;->keySet()Ljava/util/Set;
move-result-object v0
invoke-interface {v0}, Ljava/util/Set;->iterator()Ljava/util/Iterator;
move-result-object v3
:cond_25
:goto_25
invoke-interface {v3}, Ljava/util/Iterator;->hasNext()Z
move-result v0
if-eqz v0, :cond_50
invoke-interface {v3}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/lang/String;
.line 29
const-string v4, "GlideModule"
iget-object v5, v2, Landroid/content/pm/ApplicationInfo;->metaData:Landroid/os/Bundle;
invoke-virtual {v5, v0}, Landroid/os/Bundle;->get(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v5
invoke-virtual {v4, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v4
if-eqz v4, :cond_25
.line 30
invoke-static {v0}, Lcom/bumptech/glide/d/b;->O(Ljava/lang/String;)Lcom/bumptech/glide/d/a;
move-result-object v0
invoke-interface {v1, v0}, Ljava/util/List;->add(Ljava/lang/Object;)Z
:try_end_46
.catch Landroid/content/pm/PackageManager$NameNotFoundException; {:try_start_5 .. :try_end_46} :catch_47
goto :goto_25
.line 34
:catch_47
move-exception v0
.line 35
new-instance v1, Ljava/lang/RuntimeException;
const-string v2, "Unable to find metadata to parse GlideModules"
invoke-direct {v1, v2, v0}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw v1
.line 38
:cond_50
return-object v1
.end method