CLoganProtocol.smali
.class public Lcom/dianping/logan/CLoganProtocol;
.super Ljava/lang/Object;
.source "CLoganProtocol.java"
# interfaces
.implements La2/e;
# static fields
.field public static e:Lcom/dianping/logan/CLoganProtocol;
.field public static f:Z
# instance fields
.field public a:Z
.field public b:Z
.field public c:La2/g;
.field public d:Ljava/util/Set;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/Set<",
"Ljava/lang/Integer;",
">;"
}
.end annotation
.end field
# direct methods
.method public static constructor <clinit>()V
.registers 1
:try_start_0
const-string v0, "logan"
invoke-static {v0}, Ljava/lang/System;->loadLibrary(Ljava/lang/String;)V
const/4 v0, 0x1
sput-boolean v0, Lcom/dianping/logan/CLoganProtocol;->f:Z
:try_end_8
.catchall {:try_start_0 .. :try_end_8} :catchall_9
goto :goto_10
:catchall_9
move-exception v0
invoke-virtual {v0}, Ljava/lang/Throwable;->printStackTrace()V
const/4 v0, 0x0
sput-boolean v0, Lcom/dianping/logan/CLoganProtocol;->f:Z
:goto_10
return-void
.end method
.method public constructor <init>()V
.registers 2
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
new-instance v0, Ljava/util/HashSet;
invoke-direct {v0}, Ljava/util/HashSet;-><init>()V
invoke-static {v0}, Ljava/util/Collections;->synchronizedSet(Ljava/util/Set;)Ljava/util/Set;
move-result-object v0
iput-object v0, p0, Lcom/dianping/logan/CLoganProtocol;->d:Ljava/util/Set;
return-void
.end method
.method public static b()Z
.registers 1
sget-boolean v0, Lcom/dianping/logan/CLoganProtocol;->f:Z
return v0
.end method
.method public static c()Lcom/dianping/logan/CLoganProtocol;
.registers 2
sget-object v0, Lcom/dianping/logan/CLoganProtocol;->e:Lcom/dianping/logan/CLoganProtocol;
if-nez v0, :cond_17
const-class v0, Lcom/dianping/logan/CLoganProtocol;
monitor-enter v0
:try_start_7
sget-object v1, Lcom/dianping/logan/CLoganProtocol;->e:Lcom/dianping/logan/CLoganProtocol;
if-nez v1, :cond_12
new-instance v1, Lcom/dianping/logan/CLoganProtocol;
invoke-direct {v1}, Lcom/dianping/logan/CLoganProtocol;-><init>()V
sput-object v1, Lcom/dianping/logan/CLoganProtocol;->e:Lcom/dianping/logan/CLoganProtocol;
:cond_12
monitor-exit v0
goto :goto_17
:catchall_14
move-exception v1
monitor-exit v0
:try_end_16
.catchall {:try_start_7 .. :try_end_16} :catchall_14
throw v1
:cond_17
:goto_17
sget-object v0, Lcom/dianping/logan/CLoganProtocol;->e:Lcom/dianping/logan/CLoganProtocol;
return-object v0
.end method
.method private native clogan_debug(Z)V
.end method
.method private native clogan_flush()V
.end method
.method private native clogan_init(Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)I
.end method
.method private native clogan_open(Ljava/lang/String;)I
.end method
.method private native clogan_write(ILjava/lang/String;JLjava/lang/String;JI)I
.end method
# virtual methods
.method public a()V
.registers 2
iget-boolean v0, p0, Lcom/dianping/logan/CLoganProtocol;->b:Z
if-eqz v0, :cond_11
sget-boolean v0, Lcom/dianping/logan/CLoganProtocol;->f:Z
if-nez v0, :cond_9
goto :goto_11
:cond_9
:try_start_9
invoke-direct {p0}, Lcom/dianping/logan/CLoganProtocol;->clogan_flush()V
:try_end_c
.catch Ljava/lang/UnsatisfiedLinkError; {:try_start_9 .. :try_end_c} :catch_d
goto :goto_11
:catch_d
move-exception v0
invoke-virtual {v0}, Ljava/lang/UnsatisfiedLinkError;->printStackTrace()V
:cond_11
:goto_11
return-void
.end method
.method public a(ILjava/lang/String;JLjava/lang/String;JZ)V
.registers 21
move-object v10, p0
const-string v11, "clogan_write"
iget-boolean v0, v10, Lcom/dianping/logan/CLoganProtocol;->b:Z
if-eqz v0, :cond_34
sget-boolean v0, Lcom/dianping/logan/CLoganProtocol;->f:Z
if-nez v0, :cond_c
goto :goto_34
:cond_c
if-eqz p8, :cond_11
const/4 v0, 0x1
const/4 v9, 0x1
goto :goto_13
:cond_11
const/4 v0, 0x0
const/4 v9, 0x0
:goto_13
move-object v1, p0
move v2, p1
move-object v3, p2
move-wide v4, p3
move-object/from16 v6, p5
move-wide/from16 v7, p6
:try_start_1b
invoke-direct/range {v1 .. v9}, Lcom/dianping/logan/CLoganProtocol;->clogan_write(ILjava/lang/String;JLjava/lang/String;JI)I
move-result v0
const/16 v1, -0xfaa
if-ne v0, v1, :cond_27
sget-boolean v1, La2/a;->c:Z
if-eqz v1, :cond_34
:cond_27
invoke-virtual {p0, v11, v0}, Lcom/dianping/logan/CLoganProtocol;->a(Ljava/lang/String;I)V
:try_end_2a
.catch Ljava/lang/UnsatisfiedLinkError; {:try_start_1b .. :try_end_2a} :catch_2b
goto :goto_34
:catch_2b
move-exception v0
invoke-virtual {v0}, Ljava/lang/UnsatisfiedLinkError;->printStackTrace()V
const/16 v0, -0xfdc
invoke-virtual {p0, v11, v0}, Lcom/dianping/logan/CLoganProtocol;->a(Ljava/lang/String;I)V
:cond_34
:goto_34
return-void
.end method
.method public a(La2/g;)V
.registers 2
iput-object p1, p0, Lcom/dianping/logan/CLoganProtocol;->c:La2/g;
return-void
.end method
.method public a(Ljava/lang/String;)V
.registers 4
const-string v0, "clogan_open"
iget-boolean v1, p0, Lcom/dianping/logan/CLoganProtocol;->a:Z
if-eqz v1, :cond_1f
sget-boolean v1, Lcom/dianping/logan/CLoganProtocol;->f:Z
if-nez v1, :cond_b
goto :goto_1f
:cond_b
:try_start_b
invoke-direct {p0, p1}, Lcom/dianping/logan/CLoganProtocol;->clogan_open(Ljava/lang/String;)I
move-result p1
const/4 v1, 0x1
iput-boolean v1, p0, Lcom/dianping/logan/CLoganProtocol;->b:Z
invoke-virtual {p0, v0, p1}, Lcom/dianping/logan/CLoganProtocol;->a(Ljava/lang/String;I)V
:try_end_15
.catch Ljava/lang/UnsatisfiedLinkError; {:try_start_b .. :try_end_15} :catch_16
goto :goto_1f
:catch_16
move-exception p1
invoke-virtual {p1}, Ljava/lang/UnsatisfiedLinkError;->printStackTrace()V
const/16 p1, -0x816
invoke-virtual {p0, v0, p1}, Lcom/dianping/logan/CLoganProtocol;->a(Ljava/lang/String;I)V
:cond_1f
:goto_1f
return-void
.end method
.method public final a(Ljava/lang/String;I)V
.registers 5
if-gez p2, :cond_2b
const-string v0, "clogan_write"
invoke-virtual {v0, p1}, Ljava/lang/String;->endsWith(Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_24
const/16 v0, -0xfdc
if-eq p2, v0, :cond_24
iget-object v0, p0, Lcom/dianping/logan/CLoganProtocol;->d:Ljava/util/Set;
invoke-static {p2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v1
invoke-interface {v0, v1}, Ljava/util/Set;->contains(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_1b
return-void
:cond_1b
iget-object v0, p0, Lcom/dianping/logan/CLoganProtocol;->d:Ljava/util/Set;
invoke-static {p2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v1
invoke-interface {v0, v1}, Ljava/util/Set;->add(Ljava/lang/Object;)Z
:cond_24
iget-object v0, p0, Lcom/dianping/logan/CLoganProtocol;->c:La2/g;
if-eqz v0, :cond_2b
invoke-interface {v0, p1, p2}, La2/g;->a(Ljava/lang/String;I)V
:cond_2b
return-void
.end method
.method public a(Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)V
.registers 8
const-string v0, "clogan_init"
iget-boolean v1, p0, Lcom/dianping/logan/CLoganProtocol;->a:Z
if-eqz v1, :cond_7
return-void
:cond_7
sget-boolean v1, Lcom/dianping/logan/CLoganProtocol;->f:Z
if-nez v1, :cond_13
const/16 p1, -0x139c
const-string p2, "logan_loadso"
invoke-virtual {p0, p2, p1}, Lcom/dianping/logan/CLoganProtocol;->a(Ljava/lang/String;I)V
return-void
:cond_13
:try_start_13
invoke-direct/range {p0 .. p5}, Lcom/dianping/logan/CLoganProtocol;->clogan_init(Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)I
move-result p1
const/4 p2, 0x1
iput-boolean p2, p0, Lcom/dianping/logan/CLoganProtocol;->a:Z
invoke-virtual {p0, v0, p1}, Lcom/dianping/logan/CLoganProtocol;->a(Ljava/lang/String;I)V
:try_end_1d
.catch Ljava/lang/UnsatisfiedLinkError; {:try_start_13 .. :try_end_1d} :catch_1e
goto :goto_27
:catch_1e
move-exception p1
invoke-virtual {p1}, Ljava/lang/UnsatisfiedLinkError;->printStackTrace()V
const/16 p1, -0x424
invoke-virtual {p0, v0, p1}, Lcom/dianping/logan/CLoganProtocol;->a(Ljava/lang/String;I)V
:goto_27
return-void
.end method
.method public a(Z)V
.registers 3
iget-boolean v0, p0, Lcom/dianping/logan/CLoganProtocol;->a:Z
if-eqz v0, :cond_11
sget-boolean v0, Lcom/dianping/logan/CLoganProtocol;->f:Z
if-nez v0, :cond_9
goto :goto_11
:cond_9
:try_start_9
invoke-direct {p0, p1}, Lcom/dianping/logan/CLoganProtocol;->clogan_debug(Z)V
:try_end_c
.catch Ljava/lang/UnsatisfiedLinkError; {:try_start_9 .. :try_end_c} :catch_d
goto :goto_11
:catch_d
move-exception p1
invoke-virtual {p1}, Ljava/lang/UnsatisfiedLinkError;->printStackTrace()V
:cond_11
:goto_11
return-void
.end method