MultiTransformation.smali
.class public Lcom/bumptech/glide/load/MultiTransformation;
.super Ljava/lang/Object;
.source "MultiTransformation.java"
# interfaces
.implements Lcom/bumptech/glide/load/Transformation;
# annotations
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">",
"Ljava/lang/Object;",
"Lcom/bumptech/glide/load/Transformation<",
"TT;>;"
}
.end annotation
# instance fields
.field private final transformations:Ljava/util/Collection;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/Collection<",
"+",
"Lcom/bumptech/glide/load/Transformation<",
"TT;>;>;"
}
.end annotation
.end field
# direct methods
.method static constructor <clinit>()V
.registers 1
return-void
.end method
.method public constructor <init>(Ljava/util/Collection;)V
.registers 4
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/Collection<",
"+",
"Lcom/bumptech/glide/load/Transformation<",
"TT;>;>;)V"
}
.end annotation
.line 28
.local p0, "this":Lcom/bumptech/glide/load/MultiTransformation;, "Lcom/bumptech/glide/load/MultiTransformation<TT;>;"
.local p1, "transformationList":Ljava/util/Collection;, "Ljava/util/Collection<+Lcom/bumptech/glide/load/Transformation<TT;>;>;"
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 29
invoke-interface {p1}, Ljava/util/Collection;->isEmpty()Z
move-result v0
if-nez v0, :cond_c
.line 33
iput-object p1, p0, Lcom/bumptech/glide/load/MultiTransformation;->transformations:Ljava/util/Collection;
.line 34
return-void
.line 30
:cond_c
new-instance v0, Ljava/lang/IllegalArgumentException;
const-string v1, "MultiTransformation must contain at least one Transformation"
invoke-direct {v0, v1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method public varargs constructor <init>([Lcom/bumptech/glide/load/Transformation;)V
.registers 4
.annotation system Ldalvik/annotation/Signature;
value = {
"([",
"Lcom/bumptech/glide/load/Transformation<",
"TT;>;)V"
}
.end annotation
.annotation runtime Ljava/lang/SafeVarargs;
.end annotation
.line 20
.local p0, "this":Lcom/bumptech/glide/load/MultiTransformation;, "Lcom/bumptech/glide/load/MultiTransformation<TT;>;"
.local p1, "transformations":[Lcom/bumptech/glide/load/Transformation;, "[Lcom/bumptech/glide/load/Transformation<TT;>;"
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 21
array-length v0, p1
if-eqz v0, :cond_d
.line 25
invoke-static {p1}, Ljava/util/Arrays;->asList([Ljava/lang/Object;)Ljava/util/List;
move-result-object v0
iput-object v0, p0, Lcom/bumptech/glide/load/MultiTransformation;->transformations:Ljava/util/Collection;
.line 26
return-void
.line 22
:cond_d
new-instance v0, Ljava/lang/IllegalArgumentException;
const-string v1, "MultiTransformation must contain at least one Transformation"
invoke-direct {v0, v1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v0
.end method
# virtual methods
.method public equals(Ljava/lang/Object;)Z
.registers 5
.param p1, "o" # Ljava/lang/Object;
.line 54
.local p0, "this":Lcom/bumptech/glide/load/MultiTransformation;, "Lcom/bumptech/glide/load/MultiTransformation<TT;>;"
instance-of v0, p1, Lcom/bumptech/glide/load/MultiTransformation;
if-eqz v0, :cond_10
.line 55
move-object v0, p1
check-cast v0, Lcom/bumptech/glide/load/MultiTransformation;
.line 56
.local v0, "other":Lcom/bumptech/glide/load/MultiTransformation;, "Lcom/bumptech/glide/load/MultiTransformation<*>;"
iget-object v1, p0, Lcom/bumptech/glide/load/MultiTransformation;->transformations:Ljava/util/Collection;
iget-object v2, v0, Lcom/bumptech/glide/load/MultiTransformation;->transformations:Ljava/util/Collection;
invoke-interface {v1, v2}, Ljava/util/Collection;->equals(Ljava/lang/Object;)Z
move-result v1
return v1
.line 58
.end local v0 # "other":Lcom/bumptech/glide/load/MultiTransformation;, "Lcom/bumptech/glide/load/MultiTransformation<*>;"
:cond_10
const/4 v0, 0x0
return v0
.end method
.method public hashCode()I
.registers 2
.line 63
.local p0, "this":Lcom/bumptech/glide/load/MultiTransformation;, "Lcom/bumptech/glide/load/MultiTransformation<TT;>;"
iget-object v0, p0, Lcom/bumptech/glide/load/MultiTransformation;->transformations:Ljava/util/Collection;
invoke-interface {v0}, Ljava/util/Collection;->hashCode()I
move-result v0
return v0
.end method
.method public transform(Landroid/content/Context;Lcom/bumptech/glide/load/engine/Resource;II)Lcom/bumptech/glide/load/engine/Resource;
.registers 10
.param p1, "context" # Landroid/content/Context;
.param p3, "outWidth" # I
.param p4, "outHeight" # I
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroid/content/Context;",
"Lcom/bumptech/glide/load/engine/Resource<",
"TT;>;II)",
"Lcom/bumptech/glide/load/engine/Resource<",
"TT;>;"
}
.end annotation
.line 40
.local p0, "this":Lcom/bumptech/glide/load/MultiTransformation;, "Lcom/bumptech/glide/load/MultiTransformation<TT;>;"
.local p2, "resource":Lcom/bumptech/glide/load/engine/Resource;, "Lcom/bumptech/glide/load/engine/Resource<TT;>;"
move-object v0, p2
.line 42
.local v0, "previous":Lcom/bumptech/glide/load/engine/Resource;, "Lcom/bumptech/glide/load/engine/Resource<TT;>;"
iget-object v1, p0, Lcom/bumptech/glide/load/MultiTransformation;->transformations:Ljava/util/Collection;
invoke-interface {v1}, Ljava/util/Collection;->iterator()Ljava/util/Iterator;
move-result-object v1
:goto_7
invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z
move-result v2
if-eqz v2, :cond_2a
invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v2
check-cast v2, Lcom/bumptech/glide/load/Transformation;
.line 43
.local v2, "transformation":Lcom/bumptech/glide/load/Transformation;, "Lcom/bumptech/glide/load/Transformation<TT;>;"
invoke-interface {v2, p1, v0, p3, p4}, Lcom/bumptech/glide/load/Transformation;->transform(Landroid/content/Context;Lcom/bumptech/glide/load/engine/Resource;II)Lcom/bumptech/glide/load/engine/Resource;
move-result-object v3
.line 44
.local v3, "transformed":Lcom/bumptech/glide/load/engine/Resource;, "Lcom/bumptech/glide/load/engine/Resource<TT;>;"
if-eqz v0, :cond_28
invoke-virtual {v0, p2}, Ljava/lang/Object;->equals(Ljava/lang/Object;)Z
move-result v4
if-nez v4, :cond_28
invoke-virtual {v0, v3}, Ljava/lang/Object;->equals(Ljava/lang/Object;)Z
move-result v4
if-nez v4, :cond_28
.line 45
invoke-interface {v0}, Lcom/bumptech/glide/load/engine/Resource;->recycle()V
.line 47
:cond_28
move-object v0, v3
.line 48
.end local v2 # "transformation":Lcom/bumptech/glide/load/Transformation;, "Lcom/bumptech/glide/load/Transformation<TT;>;"
.end local v3 # "transformed":Lcom/bumptech/glide/load/engine/Resource;, "Lcom/bumptech/glide/load/engine/Resource<TT;>;"
goto :goto_7
.line 49
:cond_2a
return-object v0
.end method
.method public updateDiskCacheKey(Ljava/security/MessageDigest;)V
.registers 4
.param p1, "messageDigest" # Ljava/security/MessageDigest;
.line 68
.local p0, "this":Lcom/bumptech/glide/load/MultiTransformation;, "Lcom/bumptech/glide/load/MultiTransformation<TT;>;"
iget-object v0, p0, Lcom/bumptech/glide/load/MultiTransformation;->transformations:Ljava/util/Collection;
invoke-interface {v0}, Ljava/util/Collection;->iterator()Ljava/util/Iterator;
move-result-object v0
:goto_6
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_16
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Lcom/bumptech/glide/load/Transformation;
.line 69
.local v1, "transformation":Lcom/bumptech/glide/load/Transformation;, "Lcom/bumptech/glide/load/Transformation<TT;>;"
invoke-interface {v1, p1}, Lcom/bumptech/glide/load/Transformation;->updateDiskCacheKey(Ljava/security/MessageDigest;)V
.line 70
.end local v1 # "transformation":Lcom/bumptech/glide/load/Transformation;, "Lcom/bumptech/glide/load/Transformation<TT;>;"
goto :goto_6
.line 71
:cond_16
return-void
.end method