BaseBitmapReferenceDataSubscriber.smali
.class public abstract Lcom/facebook/imagepipeline/datasource/BaseBitmapReferenceDataSubscriber;
.super Lcom/facebook/datasource/BaseDataSubscriber;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/facebook/datasource/BaseDataSubscriber<",
"Lcom/facebook/common/references/CloseableReference<",
"Lcom/facebook/imagepipeline/image/CloseableImage;",
">;>;"
}
.end annotation
# direct methods
.method public constructor <init>()V
.registers 1
.line 45
invoke-direct {p0}, Lcom/facebook/datasource/BaseDataSubscriber;-><init>()V
return-void
.end method
# virtual methods
.method protected abstract onNewResultImpl(Lcom/facebook/common/references/CloseableReference;)V
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/facebook/common/references/CloseableReference<",
"Landroid/graphics/Bitmap;",
">;)V"
}
.end annotation
.end method
.method public onNewResultImpl(Lcom/facebook/datasource/DataSource;)V
.registers 4
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/facebook/datasource/DataSource<",
"Lcom/facebook/common/references/CloseableReference<",
"Lcom/facebook/imagepipeline/image/CloseableImage;",
">;>;)V"
}
.end annotation
.line 50
invoke-interface {p1}, Lcom/facebook/datasource/DataSource;->isFinished()Z
move-result v0
if-nez v0, :cond_7
return-void
.line 54
:cond_7
invoke-interface {p1}, Lcom/facebook/datasource/DataSource;->getResult()Ljava/lang/Object;
move-result-object p1
check-cast p1, Lcom/facebook/common/references/CloseableReference;
const/4 v0, 0x0
if-eqz p1, :cond_22
.line 56
invoke-virtual {p1}, Lcom/facebook/common/references/CloseableReference;->get()Ljava/lang/Object;
move-result-object v1
instance-of v1, v1, Lcom/facebook/imagepipeline/image/CloseableStaticBitmap;
if-eqz v1, :cond_22
.line 58
invoke-virtual {p1}, Lcom/facebook/common/references/CloseableReference;->get()Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/facebook/imagepipeline/image/CloseableStaticBitmap;
invoke-virtual {v0}, Lcom/facebook/imagepipeline/image/CloseableStaticBitmap;->cloneUnderlyingBitmapReference()Lcom/facebook/common/references/CloseableReference;
move-result-object v0
.line 62
:cond_22
:try_start_22
invoke-virtual {p0, v0}, Lcom/facebook/imagepipeline/datasource/BaseBitmapReferenceDataSubscriber;->onNewResultImpl(Lcom/facebook/common/references/CloseableReference;)V
:try_end_25
.catchall {:try_start_22 .. :try_end_25} :catchall_2c
.line 64
invoke-static {v0}, Lcom/facebook/common/references/CloseableReference;->closeSafely(Lcom/facebook/common/references/CloseableReference;)V
.line 65
invoke-static {p1}, Lcom/facebook/common/references/CloseableReference;->closeSafely(Lcom/facebook/common/references/CloseableReference;)V
return-void
:catchall_2c
move-exception v1
.line 64
invoke-static {v0}, Lcom/facebook/common/references/CloseableReference;->closeSafely(Lcom/facebook/common/references/CloseableReference;)V
.line 65
invoke-static {p1}, Lcom/facebook/common/references/CloseableReference;->closeSafely(Lcom/facebook/common/references/CloseableReference;)V
throw v1
.end method