SpectrumPluginJpeg.smali
.class public Lcom/facebook/spectrum/plugins/SpectrumPluginJpeg;
.super Lcom/facebook/spectrum/plugins/SpectrumPlugin;
.source "SpectrumPluginJpeg.java"
# static fields
.field public static sInstance:Lcom/facebook/spectrum/plugins/SpectrumPluginJpeg;
# instance fields
.field public mHybridData:Lcom/facebook/jni/HybridData;
.annotation build Lcom/facebook/jni/annotations/DoNotStrip;
.end annotation
.annotation runtime Ljavax/annotation/Nullable;
.end annotation
.end field
# direct methods
.method static constructor <clinit>()V
.registers 1
return-void
.end method
.method public constructor <init>()V
.registers 1
invoke-direct {p0}, Lcom/facebook/spectrum/plugins/SpectrumPlugin;-><init>()V
return-void
.end method
.method public static get()Lcom/facebook/spectrum/plugins/SpectrumPluginJpeg;
.registers 2
const-class v0, Lcom/facebook/spectrum/plugins/SpectrumPluginJpeg;
monitor-enter v0
:try_start_3
sget-object v1, Lcom/facebook/spectrum/plugins/SpectrumPluginJpeg;->sInstance:Lcom/facebook/spectrum/plugins/SpectrumPluginJpeg;
if-eqz v1, :cond_b
sget-object v1, Lcom/facebook/spectrum/plugins/SpectrumPluginJpeg;->sInstance:Lcom/facebook/spectrum/plugins/SpectrumPluginJpeg;
monitor-exit v0
return-object v1
:cond_b
new-instance v1, Lcom/facebook/spectrum/plugins/SpectrumPluginJpeg;
invoke-direct {v1}, Lcom/facebook/spectrum/plugins/SpectrumPluginJpeg;-><init>()V
sput-object v1, Lcom/facebook/spectrum/plugins/SpectrumPluginJpeg;->sInstance:Lcom/facebook/spectrum/plugins/SpectrumPluginJpeg;
invoke-virtual {v1}, Lcom/facebook/spectrum/plugins/SpectrumPluginJpeg;->ensureLoadedAndInitialized()V
sget-object v1, Lcom/facebook/spectrum/plugins/SpectrumPluginJpeg;->sInstance:Lcom/facebook/spectrum/plugins/SpectrumPluginJpeg;
monitor-exit v0
return-object v1
:catchall_19
move-exception v1
monitor-exit v0
:try_end_1b
.catchall {:try_start_3 .. :try_end_1b} :catchall_19
throw v1
.end method
.method private native initHybrid()Lcom/facebook/jni/HybridData;
.annotation build Lcom/facebook/jni/annotations/DoNotStrip;
.end annotation
.end method
.method private native nativeCreatePlugin()J
.annotation build Lcom/facebook/jni/annotations/DoNotStrip;
.end annotation
.end method
# virtual methods
.method public createPlugin()J
.registers 3
invoke-direct {p0}, Lcom/facebook/spectrum/plugins/SpectrumPluginJpeg;->nativeCreatePlugin()J
move-result-wide v0
return-wide v0
.end method
.method public declared-synchronized ensureLoadedAndInitialized()V
.registers 2
monitor-enter p0
:try_start_1
iget-object v0, p0, Lcom/facebook/spectrum/plugins/SpectrumPluginJpeg;->mHybridData:Lcom/facebook/jni/HybridData;
if-eqz v0, :cond_f
iget-object v0, p0, Lcom/facebook/spectrum/plugins/SpectrumPluginJpeg;->mHybridData:Lcom/facebook/jni/HybridData;
invoke-virtual {v0}, Lcom/facebook/jni/HybridData;->isValid()Z
move-result v0
:try_end_b
.catchall {:try_start_1 .. :try_end_b} :catchall_1c
if-eqz v0, :cond_f
monitor-exit p0
return-void
:cond_f
:try_start_f
const-string v0, "spectrumpluginjpeg"
invoke-static {v0}, Lcom/facebook/spectrum/SpectrumSoLoader;->loadLibrary(Ljava/lang/String;)V
invoke-direct {p0}, Lcom/facebook/spectrum/plugins/SpectrumPluginJpeg;->initHybrid()Lcom/facebook/jni/HybridData;
move-result-object v0
iput-object v0, p0, Lcom/facebook/spectrum/plugins/SpectrumPluginJpeg;->mHybridData:Lcom/facebook/jni/HybridData;
:try_end_1a
.catchall {:try_start_f .. :try_end_1a} :catchall_1c
monitor-exit p0
return-void
:catchall_1c
move-exception v0
monitor-exit p0
throw v0
.end method