w.smali
.class Lcom/bumptech/glide/load/engine/w;
.super Ljava/lang/Object;
.source "EngineResource.java"
# interfaces
.implements Lcom/bumptech/glide/load/engine/C;
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/bumptech/glide/load/engine/w$a;
}
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"<Z:",
"Ljava/lang/Object;",
">",
"Ljava/lang/Object;",
"Lcom/bumptech/glide/load/engine/C<",
"TZ;>;"
}
.end annotation
# instance fields
.field private final a:Z
.field private final b:Z
.field private final c:Lcom/bumptech/glide/load/engine/C;
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/bumptech/glide/load/engine/C<",
"TZ;>;"
}
.end annotation
.end field
.field private final d:Lcom/bumptech/glide/load/engine/w$a;
.field private final e:Lcom/bumptech/glide/load/h;
.field private f:I
.field private g:Z
# direct methods
.method constructor <init>(Lcom/bumptech/glide/load/engine/C;ZZLcom/bumptech/glide/load/h;Lcom/bumptech/glide/load/engine/w$a;)V
.registers 6
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/bumptech/glide/load/engine/C<",
"TZ;>;ZZ",
"Lcom/bumptech/glide/load/h;",
"Lcom/bumptech/glide/load/engine/w$a;",
")V"
}
.end annotation
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 2
invoke-static {p1}, Lcom/bumptech/glide/e/l;->a(Ljava/lang/Object;)Ljava/lang/Object;
check-cast p1, Lcom/bumptech/glide/load/engine/C;
iput-object p1, p0, Lcom/bumptech/glide/load/engine/w;->c:Lcom/bumptech/glide/load/engine/C;
.line 3
iput-boolean p2, p0, Lcom/bumptech/glide/load/engine/w;->a:Z
.line 4
iput-boolean p3, p0, Lcom/bumptech/glide/load/engine/w;->b:Z
.line 5
iput-object p4, p0, Lcom/bumptech/glide/load/engine/w;->e:Lcom/bumptech/glide/load/h;
.line 6
invoke-static {p5}, Lcom/bumptech/glide/e/l;->a(Ljava/lang/Object;)Ljava/lang/Object;
check-cast p5, Lcom/bumptech/glide/load/engine/w$a;
iput-object p5, p0, Lcom/bumptech/glide/load/engine/w;->d:Lcom/bumptech/glide/load/engine/w$a;
return-void
.end method
# virtual methods
.method public a()Ljava/lang/Class;
.registers 2
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/lang/Class<",
"TZ;>;"
}
.end annotation
.line 1
iget-object v0, p0, Lcom/bumptech/glide/load/engine/w;->c:Lcom/bumptech/glide/load/engine/C;
invoke-interface {v0}, Lcom/bumptech/glide/load/engine/C;->a()Ljava/lang/Class;
move-result-object v0
return-object v0
.end method
.method declared-synchronized b()V
.registers 3
monitor-enter p0
.line 1
:try_start_1
iget-boolean v0, p0, Lcom/bumptech/glide/load/engine/w;->g:Z
if-nez v0, :cond_d
.line 2
iget v0, p0, Lcom/bumptech/glide/load/engine/w;->f:I
add-int/lit8 v0, v0, 0x1
iput v0, p0, Lcom/bumptech/glide/load/engine/w;->f:I
:try_end_b
.catchall {:try_start_1 .. :try_end_b} :catchall_15
.line 3
monitor-exit p0
return-void
.line 4
:cond_d
:try_start_d
new-instance v0, Ljava/lang/IllegalStateException;
const-string v1, "Cannot acquire a recycled resource"
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
:try_end_15
.catchall {:try_start_d .. :try_end_15} :catchall_15
:catchall_15
move-exception v0
monitor-exit p0
throw v0
.end method
.method c()Lcom/bumptech/glide/load/engine/C;
.registers 2
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Lcom/bumptech/glide/load/engine/C<",
"TZ;>;"
}
.end annotation
.line 1
iget-object v0, p0, Lcom/bumptech/glide/load/engine/w;->c:Lcom/bumptech/glide/load/engine/C;
return-object v0
.end method
.method d()Z
.registers 2
.line 1
iget-boolean v0, p0, Lcom/bumptech/glide/load/engine/w;->a:Z
return v0
.end method
.method e()V
.registers 3
.line 1
monitor-enter p0
.line 2
:try_start_1
iget v0, p0, Lcom/bumptech/glide/load/engine/w;->f:I
if-lez v0, :cond_1a
.line 3
iget v0, p0, Lcom/bumptech/glide/load/engine/w;->f:I
const/4 v1, 0x1
sub-int/2addr v0, v1
iput v0, p0, Lcom/bumptech/glide/load/engine/w;->f:I
if-nez v0, :cond_e
goto :goto_f
:cond_e
const/4 v1, 0x0
.line 4
:goto_f
monitor-exit p0
:try_end_10
.catchall {:try_start_1 .. :try_end_10} :catchall_22
if-eqz v1, :cond_19
.line 5
iget-object v0, p0, Lcom/bumptech/glide/load/engine/w;->d:Lcom/bumptech/glide/load/engine/w$a;
iget-object v1, p0, Lcom/bumptech/glide/load/engine/w;->e:Lcom/bumptech/glide/load/h;
invoke-interface {v0, v1, p0}, Lcom/bumptech/glide/load/engine/w$a;->a(Lcom/bumptech/glide/load/h;Lcom/bumptech/glide/load/engine/w;)V
:cond_19
return-void
.line 6
:cond_1a
:try_start_1a
new-instance v0, Ljava/lang/IllegalStateException;
const-string v1, "Cannot release a recycled or not yet acquired resource"
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
:catchall_22
move-exception v0
.line 7
monitor-exit p0
:try_end_24
.catchall {:try_start_1a .. :try_end_24} :catchall_22
throw v0
.end method
.method public get()Ljava/lang/Object;
.registers 2
.annotation system Ldalvik/annotation/Signature;
value = {
"()TZ;"
}
.end annotation
.line 1
iget-object v0, p0, Lcom/bumptech/glide/load/engine/w;->c:Lcom/bumptech/glide/load/engine/C;
invoke-interface {v0}, Lcom/bumptech/glide/load/engine/C;->get()Ljava/lang/Object;
move-result-object v0
return-object v0
.end method
.method public getSize()I
.registers 2
.line 1
iget-object v0, p0, Lcom/bumptech/glide/load/engine/w;->c:Lcom/bumptech/glide/load/engine/C;
invoke-interface {v0}, Lcom/bumptech/glide/load/engine/C;->getSize()I
move-result v0
return v0
.end method
.method public declared-synchronized recycle()V
.registers 3
monitor-enter p0
.line 1
:try_start_1
iget v0, p0, Lcom/bumptech/glide/load/engine/w;->f:I
if-gtz v0, :cond_1f
.line 2
iget-boolean v0, p0, Lcom/bumptech/glide/load/engine/w;->g:Z
if-nez v0, :cond_17
const/4 v0, 0x1
.line 3
iput-boolean v0, p0, Lcom/bumptech/glide/load/engine/w;->g:Z
.line 4
iget-boolean v0, p0, Lcom/bumptech/glide/load/engine/w;->b:Z
if-eqz v0, :cond_15
.line 5
iget-object v0, p0, Lcom/bumptech/glide/load/engine/w;->c:Lcom/bumptech/glide/load/engine/C;
invoke-interface {v0}, Lcom/bumptech/glide/load/engine/C;->recycle()V
:try_end_15
.catchall {:try_start_1 .. :try_end_15} :catchall_27
.line 6
:cond_15
monitor-exit p0
return-void
.line 7
:cond_17
:try_start_17
new-instance v0, Ljava/lang/IllegalStateException;
const-string v1, "Cannot recycle a resource that has already been recycled"
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
.line 8
:cond_1f
new-instance v0, Ljava/lang/IllegalStateException;
const-string v1, "Cannot recycle a resource while it is still acquired"
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
:try_end_27
.catchall {:try_start_17 .. :try_end_27} :catchall_27
:catchall_27
move-exception v0
monitor-exit p0
throw v0
.end method
.method public declared-synchronized toString()Ljava/lang/String;
.registers 3
monitor-enter p0
.line 1
:try_start_1
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "EngineResource{isMemoryCacheable="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-boolean v1, p0, Lcom/bumptech/glide/load/engine/w;->a:Z
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
const-string v1, ", listener="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v1, p0, Lcom/bumptech/glide/load/engine/w;->d:Lcom/bumptech/glide/load/engine/w$a;
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v1, ", key="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v1, p0, Lcom/bumptech/glide/load/engine/w;->e:Lcom/bumptech/glide/load/h;
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v1, ", acquired="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget v1, p0, Lcom/bumptech/glide/load/engine/w;->f:I
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string v1, ", isRecycled="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-boolean v1, p0, Lcom/bumptech/glide/load/engine/w;->g:Z
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
const-string v1, ", resource="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v1, p0, Lcom/bumptech/glide/load/engine/w;->c:Lcom/bumptech/glide/load/engine/C;
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const/16 v1, 0x7d
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
:try_end_4b
.catchall {:try_start_1 .. :try_end_4b} :catchall_4d
monitor-exit p0
return-object v0
:catchall_4d
move-exception v0
monitor-exit p0
throw v0
.end method