ModelToResourceClassCache.smali
.class public Lcom/bumptech/glide/provider/ModelToResourceClassCache;
.super Ljava/lang/Object;
.source "ModelToResourceClassCache.java"
# instance fields
.field private final registeredResourceClassCache:Landroidx/collection/ArrayMap;
.annotation system Ldalvik/annotation/Signature;
value = {
"Landroidx/collection/ArrayMap<",
"Lcom/bumptech/glide/util/MultiClassKey;",
"Ljava/util/List<",
"Ljava/lang/Class<",
"*>;>;>;"
}
.end annotation
.end field
.field private final resourceClassKeyRef:Ljava/util/concurrent/atomic/AtomicReference;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/concurrent/atomic/AtomicReference<",
"Lcom/bumptech/glide/util/MultiClassKey;",
">;"
}
.end annotation
.end field
# direct methods
.method public constructor <init>()V
.registers 2
.line 14
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 15
new-instance v0, Ljava/util/concurrent/atomic/AtomicReference;
invoke-direct {v0}, Ljava/util/concurrent/atomic/AtomicReference;-><init>()V
iput-object v0, p0, Lcom/bumptech/glide/provider/ModelToResourceClassCache;->resourceClassKeyRef:Ljava/util/concurrent/atomic/AtomicReference;
.line 16
new-instance v0, Landroidx/collection/ArrayMap;
invoke-direct {v0}, Landroidx/collection/ArrayMap;-><init>()V
iput-object v0, p0, Lcom/bumptech/glide/provider/ModelToResourceClassCache;->registeredResourceClassCache:Landroidx/collection/ArrayMap;
return-void
.end method
# virtual methods
.method public clear()V
.registers 3
.line 50
iget-object v0, p0, Lcom/bumptech/glide/provider/ModelToResourceClassCache;->registeredResourceClassCache:Landroidx/collection/ArrayMap;
monitor-enter v0
.line 51
:try_start_3
iget-object v1, p0, Lcom/bumptech/glide/provider/ModelToResourceClassCache;->registeredResourceClassCache:Landroidx/collection/ArrayMap;
invoke-virtual {v1}, Landroidx/collection/ArrayMap;->clear()V
.line 52
monitor-exit v0
return-void
:catchall_a
move-exception v1
monitor-exit v0
:try_end_c
.catchall {:try_start_3 .. :try_end_c} :catchall_a
throw v1
.end method
.method public get(Ljava/lang/Class;Ljava/lang/Class;Ljava/lang/Class;)Ljava/util/List;
.registers 6
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/Class<",
"*>;",
"Ljava/lang/Class<",
"*>;",
"Ljava/lang/Class<",
"*>;)",
"Ljava/util/List<",
"Ljava/lang/Class<",
"*>;>;"
}
.end annotation
.line 24
iget-object v0, p0, Lcom/bumptech/glide/provider/ModelToResourceClassCache;->resourceClassKeyRef:Ljava/util/concurrent/atomic/AtomicReference;
const/4 v1, 0x0
invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicReference;->getAndSet(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/bumptech/glide/util/MultiClassKey;
if-nez v0, :cond_11
.line 26
new-instance v0, Lcom/bumptech/glide/util/MultiClassKey;
invoke-direct {v0, p1, p2, p3}, Lcom/bumptech/glide/util/MultiClassKey;-><init>(Ljava/lang/Class;Ljava/lang/Class;Ljava/lang/Class;)V
goto :goto_14
.line 28
:cond_11
invoke-virtual {v0, p1, p2, p3}, Lcom/bumptech/glide/util/MultiClassKey;->set(Ljava/lang/Class;Ljava/lang/Class;Ljava/lang/Class;)V
.line 31
:goto_14
iget-object p1, p0, Lcom/bumptech/glide/provider/ModelToResourceClassCache;->registeredResourceClassCache:Landroidx/collection/ArrayMap;
monitor-enter p1
.line 32
:try_start_17
iget-object p2, p0, Lcom/bumptech/glide/provider/ModelToResourceClassCache;->registeredResourceClassCache:Landroidx/collection/ArrayMap;
invoke-virtual {p2, v0}, Landroidx/collection/ArrayMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p2
check-cast p2, Ljava/util/List;
.line 33
monitor-exit p1
:try_end_20
.catchall {:try_start_17 .. :try_end_20} :catchall_26
.line 34
iget-object p1, p0, Lcom/bumptech/glide/provider/ModelToResourceClassCache;->resourceClassKeyRef:Ljava/util/concurrent/atomic/AtomicReference;
invoke-virtual {p1, v0}, Ljava/util/concurrent/atomic/AtomicReference;->set(Ljava/lang/Object;)V
return-object p2
:catchall_26
move-exception p2
.line 33
:try_start_27
monitor-exit p1
:try_end_28
.catchall {:try_start_27 .. :try_end_28} :catchall_26
throw p2
.end method
.method public put(Ljava/lang/Class;Ljava/lang/Class;Ljava/lang/Class;Ljava/util/List;)V
.registers 8
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/Class<",
"*>;",
"Ljava/lang/Class<",
"*>;",
"Ljava/lang/Class<",
"*>;",
"Ljava/util/List<",
"Ljava/lang/Class<",
"*>;>;)V"
}
.end annotation
.line 43
iget-object v0, p0, Lcom/bumptech/glide/provider/ModelToResourceClassCache;->registeredResourceClassCache:Landroidx/collection/ArrayMap;
monitor-enter v0
.line 44
:try_start_3
iget-object v1, p0, Lcom/bumptech/glide/provider/ModelToResourceClassCache;->registeredResourceClassCache:Landroidx/collection/ArrayMap;
new-instance v2, Lcom/bumptech/glide/util/MultiClassKey;
invoke-direct {v2, p1, p2, p3}, Lcom/bumptech/glide/util/MultiClassKey;-><init>(Ljava/lang/Class;Ljava/lang/Class;Ljava/lang/Class;)V
.line 45
invoke-virtual {v1, v2, p4}, Landroidx/collection/ArrayMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
.line 46
monitor-exit v0
return-void
:catchall_f
move-exception p1
monitor-exit v0
:try_end_11
.catchall {:try_start_3 .. :try_end_11} :catchall_f
throw p1
.end method