ModelLoaderRegistry$ModelLoaderCache.smali
.class Lcom/bumptech/glide/load/model/ModelLoaderRegistry$ModelLoaderCache;
.super Ljava/lang/Object;
.source "ModelLoaderRegistry.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/bumptech/glide/load/model/ModelLoaderRegistry;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0xa
name = "ModelLoaderCache"
.end annotation
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/bumptech/glide/load/model/ModelLoaderRegistry$ModelLoaderCache$Entry;
}
.end annotation
# instance fields
.field private final cachedModelLoaders:Ljava/util/Map;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/Map<",
"Ljava/lang/Class<",
"*>;",
"Lcom/bumptech/glide/load/model/ModelLoaderRegistry$ModelLoaderCache$Entry<",
"*>;>;"
}
.end annotation
.end field
# direct methods
.method static constructor <clinit>()V
.registers 1
return-void
.end method
.method constructor <init>()V
.registers 2
.line 123
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 120
new-instance v0, Ljava/util/HashMap;
invoke-direct {v0}, Ljava/util/HashMap;-><init>()V
iput-object v0, p0, Lcom/bumptech/glide/load/model/ModelLoaderRegistry$ModelLoaderCache;->cachedModelLoaders:Ljava/util/Map;
.line 123
return-void
.end method
# virtual methods
.method public clear()V
.registers 2
.line 126
iget-object v0, p0, Lcom/bumptech/glide/load/model/ModelLoaderRegistry$ModelLoaderCache;->cachedModelLoaders:Ljava/util/Map;
invoke-interface {v0}, Ljava/util/Map;->clear()V
.line 127
return-void
.end method
.method public get(Ljava/lang/Class;)Ljava/util/List;
.registers 4
.annotation system Ldalvik/annotation/Signature;
value = {
"<Model:",
"Ljava/lang/Object;",
">(",
"Ljava/lang/Class<",
"TModel;>;)",
"Ljava/util/List<",
"Lcom/bumptech/glide/load/model/ModelLoader<",
"TModel;*>;>;"
}
.end annotation
.line 139
.local p1, "modelClass":Ljava/lang/Class;, "Ljava/lang/Class<TModel;>;"
iget-object v0, p0, Lcom/bumptech/glide/load/model/ModelLoaderRegistry$ModelLoaderCache;->cachedModelLoaders:Ljava/util/Map;
invoke-interface {v0, p1}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/bumptech/glide/load/model/ModelLoaderRegistry$ModelLoaderCache$Entry;
.line 140
.local v0, "entry":Lcom/bumptech/glide/load/model/ModelLoaderRegistry$ModelLoaderCache$Entry;, "Lcom/bumptech/glide/load/model/ModelLoaderRegistry$ModelLoaderCache$Entry<TModel;>;"
if-nez v0, :cond_c
const/4 v1, 0x0
goto :goto_e
:cond_c
iget-object v1, v0, Lcom/bumptech/glide/load/model/ModelLoaderRegistry$ModelLoaderCache$Entry;->loaders:Ljava/util/List;
:goto_e
return-object v1
.end method
.method public put(Ljava/lang/Class;Ljava/util/List;)V
.registers 7
.annotation system Ldalvik/annotation/Signature;
value = {
"<Model:",
"Ljava/lang/Object;",
">(",
"Ljava/lang/Class<",
"TModel;>;",
"Ljava/util/List<",
"Lcom/bumptech/glide/load/model/ModelLoader<",
"TModel;*>;>;)V"
}
.end annotation
.line 130
.local p1, "modelClass":Ljava/lang/Class;, "Ljava/lang/Class<TModel;>;"
.local p2, "loaders":Ljava/util/List;, "Ljava/util/List<Lcom/bumptech/glide/load/model/ModelLoader<TModel;*>;>;"
iget-object v0, p0, Lcom/bumptech/glide/load/model/ModelLoaderRegistry$ModelLoaderCache;->cachedModelLoaders:Ljava/util/Map;
new-instance v1, Lcom/bumptech/glide/load/model/ModelLoaderRegistry$ModelLoaderCache$Entry;
invoke-direct {v1, p2}, Lcom/bumptech/glide/load/model/ModelLoaderRegistry$ModelLoaderCache$Entry;-><init>(Ljava/util/List;)V
invoke-interface {v0, p1, v1}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/bumptech/glide/load/model/ModelLoaderRegistry$ModelLoaderCache$Entry;
.line 131
.local v0, "previous":Lcom/bumptech/glide/load/model/ModelLoaderRegistry$ModelLoaderCache$Entry;, "Lcom/bumptech/glide/load/model/ModelLoaderRegistry$ModelLoaderCache$Entry<*>;"
if-nez v0, :cond_10
.line 134
return-void
.line 132
:cond_10
new-instance v1, Ljava/lang/IllegalStateException;
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, "Already cached loaders for model: "
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
invoke-direct {v1, v2}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v1
.end method