BasePostprocessor.smali
.class public abstract Lcom/facebook/imagepipeline/request/BasePostprocessor;
.super Ljava/lang/Object;
.source "BasePostprocessor.java"
# interfaces
.implements Lcom/facebook/imagepipeline/request/Postprocessor;
# static fields
.field public static final FALLBACK_BITMAP_CONFIGURATION:Landroid/graphics/Bitmap$Config;
.field private static sCopyBitmap:Ljava/lang/reflect/Method;
# direct methods
.method static constructor <clinit>()V
.registers 1
.line 33
sget-object v0, Landroid/graphics/Bitmap$Config;->ARGB_8888:Landroid/graphics/Bitmap$Config;
sput-object v0, Lcom/facebook/imagepipeline/request/BasePostprocessor;->FALLBACK_BITMAP_CONFIGURATION:Landroid/graphics/Bitmap$Config;
return-void
.end method
.method public constructor <init>()V
.registers 1
.line 27
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method private static internalCopyBitmap(Landroid/graphics/Bitmap;Landroid/graphics/Bitmap;)V
.registers 11
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0,
0x0
}
names = {
"destBitmap",
"sourceBitmap"
}
.end annotation
const-string v0, "Wrong Native code setup, reflection failed."
.line 119
invoke-static {}, Lcom/facebook/imagepipeline/core/NativeCodeSetup;->getUseNativeCode()Z
move-result v1
const/4 v2, 0x0
if-eqz v1, :cond_5a
invoke-virtual {p0}, Landroid/graphics/Bitmap;->getConfig()Landroid/graphics/Bitmap$Config;
move-result-object v1
invoke-virtual {p1}, Landroid/graphics/Bitmap;->getConfig()Landroid/graphics/Bitmap$Config;
move-result-object v3
if-ne v1, v3, :cond_5a
.line 121
:try_start_13
sget-object v1, Lcom/facebook/imagepipeline/request/BasePostprocessor;->sCopyBitmap:Ljava/lang/reflect/Method;
const/4 v3, 0x1
const/4 v4, 0x0
const/4 v5, 0x2
if-nez v1, :cond_32
const-string v1, "com.facebook.imagepipeline.nativecode.Bitmaps"
.line 122
invoke-static {v1}, Ljava/lang/Class;->forName(Ljava/lang/String;)Ljava/lang/Class;
move-result-object v1
const-string v6, "copyBitmap"
new-array v7, v5, [Ljava/lang/Class;
.line 123
const-class v8, Landroid/graphics/Bitmap;
aput-object v8, v7, v4
const-class v8, Landroid/graphics/Bitmap;
aput-object v8, v7, v3
invoke-virtual {v1, v6, v7}, Ljava/lang/Class;->getDeclaredMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
move-result-object v1
sput-object v1, Lcom/facebook/imagepipeline/request/BasePostprocessor;->sCopyBitmap:Ljava/lang/reflect/Method;
.line 125
:cond_32
sget-object v1, Lcom/facebook/imagepipeline/request/BasePostprocessor;->sCopyBitmap:Ljava/lang/reflect/Method;
new-array v5, v5, [Ljava/lang/Object;
aput-object p0, v5, v4
aput-object p1, v5, v3
invoke-virtual {v1, v2, v5}, Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
:try_end_3d
.catch Ljava/lang/ClassNotFoundException; {:try_start_13 .. :try_end_3d} :catch_53
.catch Ljava/lang/IllegalAccessException; {:try_start_13 .. :try_end_3d} :catch_4c
.catch Ljava/lang/NoSuchMethodException; {:try_start_13 .. :try_end_3d} :catch_45
.catch Ljava/lang/reflect/InvocationTargetException; {:try_start_13 .. :try_end_3d} :catch_3e
return-void
:catch_3e
move-exception p0
.line 134
new-instance p1, Ljava/lang/RuntimeException;
invoke-direct {p1, v0, p0}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw p1
:catch_45
move-exception p0
.line 132
new-instance p1, Ljava/lang/RuntimeException;
invoke-direct {p1, v0, p0}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw p1
:catch_4c
move-exception p0
.line 130
new-instance p1, Ljava/lang/RuntimeException;
invoke-direct {p1, v0, p0}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw p1
:catch_53
move-exception p0
.line 128
new-instance p1, Ljava/lang/RuntimeException;
invoke-direct {p1, v0, p0}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw p1
.line 143
:cond_5a
new-instance v0, Landroid/graphics/Canvas;
invoke-direct {v0, p0}, Landroid/graphics/Canvas;-><init>(Landroid/graphics/Bitmap;)V
const/4 p0, 0x0
.line 144
invoke-virtual {v0, p1, p0, p0, v2}, Landroid/graphics/Canvas;->drawBitmap(Landroid/graphics/Bitmap;FFLandroid/graphics/Paint;)V
return-void
.end method
# virtual methods
.method public getName()Ljava/lang/String;
.registers 2
const-string v0, "Unknown postprocessor"
return-object v0
.end method
.method public getPostprocessorCacheKey()Lcom/facebook/cache/common/CacheKey;
.registers 2
.annotation runtime Ljavax/annotation/Nullable;
.end annotation
const/4 v0, 0x0
return-object v0
.end method
.method public process(Landroid/graphics/Bitmap;Lcom/facebook/imagepipeline/bitmaps/PlatformBitmapFactory;)Lcom/facebook/common/references/CloseableReference;
.registers 6
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0,
0x0
}
names = {
"sourceBitmap",
"bitmapFactory"
}
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroid/graphics/Bitmap;",
"Lcom/facebook/imagepipeline/bitmaps/PlatformBitmapFactory;",
")",
"Lcom/facebook/common/references/CloseableReference<",
"Landroid/graphics/Bitmap;",
">;"
}
.end annotation
.line 58
invoke-virtual {p1}, Landroid/graphics/Bitmap;->getConfig()Landroid/graphics/Bitmap$Config;
move-result-object v0
.line 61
invoke-virtual {p1}, Landroid/graphics/Bitmap;->getWidth()I
move-result v1
.line 62
invoke-virtual {p1}, Landroid/graphics/Bitmap;->getHeight()I
move-result v2
if-eqz v0, :cond_f
goto :goto_11
:cond_f
sget-object v0, Lcom/facebook/imagepipeline/request/BasePostprocessor;->FALLBACK_BITMAP_CONFIGURATION:Landroid/graphics/Bitmap$Config;
.line 60
:goto_11
invoke-virtual {p2, v1, v2, v0}, Lcom/facebook/imagepipeline/bitmaps/PlatformBitmapFactory;->createBitmapInternal(IILandroid/graphics/Bitmap$Config;)Lcom/facebook/common/references/CloseableReference;
move-result-object p2
.line 65
:try_start_15
invoke-virtual {p2}, Lcom/facebook/common/references/CloseableReference;->get()Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/graphics/Bitmap;
invoke-virtual {p0, v0, p1}, Lcom/facebook/imagepipeline/request/BasePostprocessor;->process(Landroid/graphics/Bitmap;Landroid/graphics/Bitmap;)V
.line 66
invoke-virtual {p2}, Lcom/facebook/common/references/CloseableReference;->clone()Lcom/facebook/common/references/CloseableReference;
move-result-object p1
:try_end_22
.catchall {:try_start_15 .. :try_end_22} :catchall_26
.line 68
invoke-static {p2}, Lcom/facebook/common/references/CloseableReference;->closeSafely(Lcom/facebook/common/references/CloseableReference;)V
return-object p1
:catchall_26
move-exception p1
invoke-static {p2}, Lcom/facebook/common/references/CloseableReference;->closeSafely(Lcom/facebook/common/references/CloseableReference;)V
.line 69
throw p1
.end method
.method public process(Landroid/graphics/Bitmap;)V
.registers 2
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0
}
names = {
"bitmap"
}
.end annotation
return-void
.end method
.method public process(Landroid/graphics/Bitmap;Landroid/graphics/Bitmap;)V
.registers 3
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0,
0x0
}
names = {
"destBitmap",
"sourceBitmap"
}
.end annotation
.line 88
invoke-static {p1, p2}, Lcom/facebook/imagepipeline/request/BasePostprocessor;->internalCopyBitmap(Landroid/graphics/Bitmap;Landroid/graphics/Bitmap;)V
.line 89
invoke-virtual {p0, p1}, Lcom/facebook/imagepipeline/request/BasePostprocessor;->process(Landroid/graphics/Bitmap;)V
return-void
.end method