StringLoader.smali
.class public Lcom/bumptech/glide/load/model/StringLoader;
.super Ljava/lang/Object;
.source "StringLoader.java"
# interfaces
.implements Lcom/bumptech/glide/load/model/ModelLoader;
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/bumptech/glide/load/model/StringLoader$AssetFileDescriptorFactory;,
Lcom/bumptech/glide/load/model/StringLoader$FileDescriptorFactory;,
Lcom/bumptech/glide/load/model/StringLoader$StreamFactory;
}
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"<Data:",
"Ljava/lang/Object;",
">",
"Ljava/lang/Object;",
"Lcom/bumptech/glide/load/model/ModelLoader<",
"Ljava/lang/String;",
"TData;>;"
}
.end annotation
# instance fields
.field private final uriLoader:Lcom/bumptech/glide/load/model/ModelLoader;
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/bumptech/glide/load/model/ModelLoader<",
"Landroid/net/Uri;",
"TData;>;"
}
.end annotation
.end field
# direct methods
.method static constructor <clinit>()V
.registers 1
return-void
.end method
.method public constructor <init>(Lcom/bumptech/glide/load/model/ModelLoader;)V
.registers 2
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/bumptech/glide/load/model/ModelLoader<",
"Landroid/net/Uri;",
"TData;>;)V"
}
.end annotation
.line 24
.local p0, "this":Lcom/bumptech/glide/load/model/StringLoader;, "Lcom/bumptech/glide/load/model/StringLoader<TData;>;"
.local p1, "uriLoader":Lcom/bumptech/glide/load/model/ModelLoader;, "Lcom/bumptech/glide/load/model/ModelLoader<Landroid/net/Uri;TData;>;"
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 25
iput-object p1, p0, Lcom/bumptech/glide/load/model/StringLoader;->uriLoader:Lcom/bumptech/glide/load/model/ModelLoader;
.line 26
return-void
.end method
.method private static parseUri(Ljava/lang/String;)Landroid/net/Uri;
.registers 3
.param p0, "model" # Ljava/lang/String;
.line 48
invoke-static {p0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v0
if-eqz v0, :cond_8
.line 49
const/4 v0, 0x0
return-object v0
.line 51
:cond_8
const/4 v0, 0x0
invoke-virtual {p0, v0}, Ljava/lang/String;->charAt(I)C
move-result v0
const/16 v1, 0x2f
if-ne v0, v1, :cond_16
.line 52
invoke-static {p0}, Lcom/bumptech/glide/load/model/StringLoader;->toFileUri(Ljava/lang/String;)Landroid/net/Uri;
move-result-object v0
.local v0, "uri":Landroid/net/Uri;
goto :goto_24
.line 54
.end local v0 # "uri":Landroid/net/Uri;
:cond_16
invoke-static {p0}, Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;
move-result-object v0
.line 55
.restart local v0 # "uri":Landroid/net/Uri;
invoke-virtual {v0}, Landroid/net/Uri;->getScheme()Ljava/lang/String;
move-result-object v1
.line 56
.local v1, "scheme":Ljava/lang/String;
if-nez v1, :cond_24
.line 57
invoke-static {p0}, Lcom/bumptech/glide/load/model/StringLoader;->toFileUri(Ljava/lang/String;)Landroid/net/Uri;
move-result-object v0
.line 60
.end local v1 # "scheme":Ljava/lang/String;
:cond_24
:goto_24
return-object v0
.end method
.method private static toFileUri(Ljava/lang/String;)Landroid/net/Uri;
.registers 2
.param p0, "path" # Ljava/lang/String;
.line 64
new-instance v0, Ljava/io/File;
invoke-direct {v0, p0}, Ljava/io/File;-><init>(Ljava/lang/String;)V
invoke-static {v0}, Landroid/net/Uri;->fromFile(Ljava/io/File;)Landroid/net/Uri;
move-result-object v0
return-object v0
.end method
# virtual methods
.method public bridge synthetic buildLoadData(Ljava/lang/Object;IILcom/bumptech/glide/load/Options;)Lcom/bumptech/glide/load/model/ModelLoader$LoadData;
.registers 5
.line 19
.local p0, "this":Lcom/bumptech/glide/load/model/StringLoader;, "Lcom/bumptech/glide/load/model/StringLoader<TData;>;"
check-cast p1, Ljava/lang/String;
invoke-virtual {p0, p1, p2, p3, p4}, Lcom/bumptech/glide/load/model/StringLoader;->buildLoadData(Ljava/lang/String;IILcom/bumptech/glide/load/Options;)Lcom/bumptech/glide/load/model/ModelLoader$LoadData;
move-result-object p1
return-object p1
.end method
.method public buildLoadData(Ljava/lang/String;IILcom/bumptech/glide/load/Options;)Lcom/bumptech/glide/load/model/ModelLoader$LoadData;
.registers 7
.param p1, "model" # Ljava/lang/String;
.param p2, "width" # I
.param p3, "height" # I
.param p4, "options" # Lcom/bumptech/glide/load/Options;
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/String;",
"II",
"Lcom/bumptech/glide/load/Options;",
")",
"Lcom/bumptech/glide/load/model/ModelLoader$LoadData<",
"TData;>;"
}
.end annotation
.line 31
.local p0, "this":Lcom/bumptech/glide/load/model/StringLoader;, "Lcom/bumptech/glide/load/model/StringLoader<TData;>;"
invoke-static {p1}, Lcom/bumptech/glide/load/model/StringLoader;->parseUri(Ljava/lang/String;)Landroid/net/Uri;
move-result-object v0
.line 32
.local v0, "uri":Landroid/net/Uri;
if-eqz v0, :cond_16
iget-object v1, p0, Lcom/bumptech/glide/load/model/StringLoader;->uriLoader:Lcom/bumptech/glide/load/model/ModelLoader;
invoke-interface {v1, v0}, Lcom/bumptech/glide/load/model/ModelLoader;->handles(Ljava/lang/Object;)Z
move-result v1
if-nez v1, :cond_f
goto :goto_16
.line 35
:cond_f
iget-object v1, p0, Lcom/bumptech/glide/load/model/StringLoader;->uriLoader:Lcom/bumptech/glide/load/model/ModelLoader;
invoke-interface {v1, v0, p2, p3, p4}, Lcom/bumptech/glide/load/model/ModelLoader;->buildLoadData(Ljava/lang/Object;IILcom/bumptech/glide/load/Options;)Lcom/bumptech/glide/load/model/ModelLoader$LoadData;
move-result-object v1
return-object v1
.line 33
:cond_16
:goto_16
const/4 v1, 0x0
return-object v1
.end method
.method public bridge synthetic handles(Ljava/lang/Object;)Z
.registers 2
.line 19
.local p0, "this":Lcom/bumptech/glide/load/model/StringLoader;, "Lcom/bumptech/glide/load/model/StringLoader<TData;>;"
check-cast p1, Ljava/lang/String;
invoke-virtual {p0, p1}, Lcom/bumptech/glide/load/model/StringLoader;->handles(Ljava/lang/String;)Z
move-result p1
return p1
.end method
.method public handles(Ljava/lang/String;)Z
.registers 3
.param p1, "model" # Ljava/lang/String;
.line 42
.local p0, "this":Lcom/bumptech/glide/load/model/StringLoader;, "Lcom/bumptech/glide/load/model/StringLoader<TData;>;"
const/4 v0, 0x1
return v0
.end method