NativeLoader.smali
.class public Lcom/facebook/soloader/nativeloader/NativeLoader;
.super Ljava/lang/Object;
.source "NativeLoader.java"
# static fields
.field public static sDelegate:Lcom/facebook/soloader/nativeloader/NativeLoaderDelegate;
# direct methods
.method static constructor <clinit>()V
.registers 1
return-void
.end method
.method public constructor <init>()V
.registers 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static declared-synchronized init(Lcom/facebook/soloader/nativeloader/NativeLoaderDelegate;)V
.registers 3
const-class v0, Lcom/facebook/soloader/nativeloader/NativeLoader;
monitor-enter v0
:try_start_3
sget-object v1, Lcom/facebook/soloader/nativeloader/NativeLoader;->sDelegate:Lcom/facebook/soloader/nativeloader/NativeLoaderDelegate;
if-nez v1, :cond_b
sput-object p0, Lcom/facebook/soloader/nativeloader/NativeLoader;->sDelegate:Lcom/facebook/soloader/nativeloader/NativeLoaderDelegate;
:try_end_9
.catchall {:try_start_3 .. :try_end_9} :catchall_13
monitor-exit v0
return-void
:cond_b
:try_start_b
new-instance p0, Ljava/lang/IllegalStateException;
const-string v1, "Cannot re-initialize NativeLoader."
invoke-direct {p0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p0
:try_end_13
.catchall {:try_start_b .. :try_end_13} :catchall_13
:catchall_13
move-exception p0
monitor-exit v0
throw p0
.end method
.method public static declared-synchronized isInitialized()Z
.registers 2
const-class v0, Lcom/facebook/soloader/nativeloader/NativeLoader;
monitor-enter v0
:try_start_3
sget-object v1, Lcom/facebook/soloader/nativeloader/NativeLoader;->sDelegate:Lcom/facebook/soloader/nativeloader/NativeLoaderDelegate;
:try_end_5
.catchall {:try_start_3 .. :try_end_5} :catchall_c
if-eqz v1, :cond_9
const/4 v1, 0x1
goto :goto_a
:cond_9
const/4 v1, 0x0
:goto_a
monitor-exit v0
return v1
:catchall_c
move-exception v1
monitor-exit v0
throw v1
.end method
.method public static loadLibrary(Ljava/lang/String;)Z
.registers 3
const-class v0, Lcom/facebook/soloader/nativeloader/NativeLoader;
monitor-enter v0
:try_start_3
sget-object v1, Lcom/facebook/soloader/nativeloader/NativeLoader;->sDelegate:Lcom/facebook/soloader/nativeloader/NativeLoaderDelegate;
if-eqz v1, :cond_f
monitor-exit v0
:try_end_8
.catchall {:try_start_3 .. :try_end_8} :catchall_17
sget-object v0, Lcom/facebook/soloader/nativeloader/NativeLoader;->sDelegate:Lcom/facebook/soloader/nativeloader/NativeLoaderDelegate;
invoke-interface {v0, p0}, Lcom/facebook/soloader/nativeloader/NativeLoaderDelegate;->loadLibrary(Ljava/lang/String;)Z
move-result p0
return p0
:cond_f
:try_start_f
new-instance p0, Ljava/lang/IllegalStateException;
const-string v1, "NativeLoader has not been initialized. To use standard native library loading, call NativeLoader.init(new SystemDelegate())."
invoke-direct {p0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p0
:catchall_17
move-exception p0
monitor-exit v0
:try_end_19
.catchall {:try_start_f .. :try_end_19} :catchall_17
throw p0
.end method