gc.smali
.class public abstract Lcom/xiaomi/push/gc;
.super Lcom/xiaomi/push/fv;
# instance fields
.field protected o:Ljava/lang/Exception;
.field protected p:Ljava/net/Socket;
.field q:Ljava/lang/String;
.field protected r:Lcom/xiaomi/push/service/XMPushService;
.field protected volatile s:J
.field protected volatile t:J
.field protected volatile u:J
.field private v:Ljava/lang/String;
.field private w:I
# direct methods
.method public constructor <init>(Lcom/xiaomi/push/service/XMPushService;Lcom/xiaomi/push/fw;)V
.registers 6
const/4 v2, 0x0
const-wide/16 v0, 0x0
invoke-direct {p0, p1, p2}, Lcom/xiaomi/push/fv;-><init>(Lcom/xiaomi/push/service/XMPushService;Lcom/xiaomi/push/fw;)V
iput-object v2, p0, Lcom/xiaomi/push/gc;->o:Ljava/lang/Exception;
iput-object v2, p0, Lcom/xiaomi/push/gc;->q:Ljava/lang/String;
iput-wide v0, p0, Lcom/xiaomi/push/gc;->s:J
iput-wide v0, p0, Lcom/xiaomi/push/gc;->t:J
iput-wide v0, p0, Lcom/xiaomi/push/gc;->u:J
iput-object p1, p0, Lcom/xiaomi/push/gc;->r:Lcom/xiaomi/push/service/XMPushService;
return-void
.end method
.method private a(Lcom/xiaomi/push/fw;)V
.registers 4
invoke-virtual {p1}, Lcom/xiaomi/push/fw;->e()Ljava/lang/String;
move-result-object v0
invoke-virtual {p1}, Lcom/xiaomi/push/fw;->d()I
move-result v1
invoke-direct {p0, v0, v1}, Lcom/xiaomi/push/gc;->a(Ljava/lang/String;I)V
return-void
.end method
.method private a(Ljava/lang/String;I)V
.registers 19
const/4 v4, 0x0
const/4 v2, 0x0
move-object/from16 v0, p0
iput-object v2, v0, Lcom/xiaomi/push/gc;->o:Ljava/lang/Exception;
new-instance v3, Ljava/util/ArrayList;
invoke-direct {v3}, Ljava/util/ArrayList;-><init>()V
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string v5, "get bucket for host : "
invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
move-object/from16 v0, p1
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
invoke-static {v2}, Lcom/xiaomi/a/a/a/c;->e(Ljava/lang/String;)Ljava/lang/Integer;
move-result-object v2
invoke-virtual {v2}, Ljava/lang/Integer;->intValue()I
move-result v5
invoke-virtual/range {p0 .. p1}, Lcom/xiaomi/push/gc;->b(Ljava/lang/String;)Lcom/xiaomi/push/cv;
move-result-object v2
invoke-static {v5}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v5
invoke-static {v5}, Lcom/xiaomi/a/a/a/c;->a(Ljava/lang/Integer;)V
if-eqz v2, :cond_3a
const/4 v3, 0x1
invoke-virtual {v2, v3}, Lcom/xiaomi/push/cv;->a(Z)Ljava/util/ArrayList;
move-result-object v3
:cond_3a
invoke-virtual {v3}, Ljava/util/ArrayList;->isEmpty()Z
move-result v5
if-eqz v5, :cond_45
move-object/from16 v0, p1
invoke-virtual {v3, v0}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
:cond_45
const-wide/16 v6, 0x0
move-object/from16 v0, p0
iput-wide v6, v0, Lcom/xiaomi/push/gc;->u:J
move-object/from16 v0, p0
iget-object v5, v0, Lcom/xiaomi/push/gc;->r:Lcom/xiaomi/push/service/XMPushService;
invoke-static {v5}, Lcom/xiaomi/push/z;->k(Landroid/content/Context;)Ljava/lang/String;
move-result-object v11
new-instance v12, Ljava/lang/StringBuilder;
invoke-direct {v12}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v3}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object v10
:goto_5c
invoke-interface {v10}, Ljava/util/Iterator;->hasNext()Z
move-result v3
if-eqz v3, :cond_285
invoke-interface {v10}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v3
check-cast v3, Ljava/lang/String;
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
move-result-wide v14
move-object/from16 v0, p0
iget v5, v0, Lcom/xiaomi/push/gc;->b:I
add-int/lit8 v5, v5, 0x1
move-object/from16 v0, p0
iput v5, v0, Lcom/xiaomi/push/gc;->b:I
:try_start_76
new-instance v5, Ljava/lang/StringBuilder;
invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
const-string v6, "begin to connect to "
invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v5
invoke-virtual {v5, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v5
invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v5
invoke-static {v5}, Lcom/xiaomi/a/a/a/c;->a(Ljava/lang/String;)V
invoke-virtual/range {p0 .. p0}, Lcom/xiaomi/push/gc;->s()Ljava/net/Socket;
move-result-object v5
move-object/from16 v0, p0
iput-object v5, v0, Lcom/xiaomi/push/gc;->p:Ljava/net/Socket;
move/from16 v0, p2
invoke-static {v3, v0}, Lcom/xiaomi/push/cx;->b(Ljava/lang/String;I)Ljava/net/InetSocketAddress;
move-result-object v5
move-object/from16 v0, p0
iget-object v6, v0, Lcom/xiaomi/push/gc;->p:Ljava/net/Socket;
const/16 v7, 0x1f40
invoke-virtual {v6, v5, v7}, Ljava/net/Socket;->connect(Ljava/net/SocketAddress;I)V
const-string v5, "tcp connected"
invoke-static {v5}, Lcom/xiaomi/a/a/a/c;->a(Ljava/lang/String;)V
move-object/from16 v0, p0
iget-object v5, v0, Lcom/xiaomi/push/gc;->p:Ljava/net/Socket;
const/4 v6, 0x1
invoke-virtual {v5, v6}, Ljava/net/Socket;->setTcpNoDelay(Z)V
move-object/from16 v0, p0
iput-object v3, v0, Lcom/xiaomi/push/gc;->v:Ljava/lang/String;
invoke-virtual/range {p0 .. p0}, Lcom/xiaomi/push/gc;->c()V
:try_end_b7
.catch Ljava/lang/Exception; {:try_start_76 .. :try_end_b7} :catch_10f
.catch Ljava/lang/Throwable; {:try_start_76 .. :try_end_b7} :catch_188
.catchall {:try_start_76 .. :try_end_b7} :catchall_209
const/4 v9, 0x1
:try_start_b8
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
move-result-wide v4
sub-long/2addr v4, v14
move-object/from16 v0, p0
iput-wide v4, v0, Lcom/xiaomi/push/gc;->c:J
move-object/from16 v0, p0
iput-object v11, v0, Lcom/xiaomi/push/gc;->j:Ljava/lang/String;
if-eqz v2, :cond_d0
move-object/from16 v0, p0
iget-wide v4, v0, Lcom/xiaomi/push/gc;->c:J
const-wide/16 v6, 0x0
invoke-virtual/range {v2 .. v7}, Lcom/xiaomi/push/cv;->b(Ljava/lang/String;JJ)V
:cond_d0
invoke-static {}, Landroid/os/SystemClock;->elapsedRealtime()J
move-result-wide v4
move-object/from16 v0, p0
iput-wide v4, v0, Lcom/xiaomi/push/gc;->u:J
new-instance v4, Ljava/lang/StringBuilder;
invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
const-string v5, "connected to "
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
const-string v5, " in "
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
move-object/from16 v0, p0
iget-wide v6, v0, Lcom/xiaomi/push/gc;->c:J
invoke-virtual {v4, v6, v7}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v4
invoke-static {v4}, Lcom/xiaomi/a/a/a/c;->a(Ljava/lang/String;)V
:try_end_fc
.catch Ljava/lang/Exception; {:try_start_b8 .. :try_end_fc} :catch_282
.catch Ljava/lang/Throwable; {:try_start_b8 .. :try_end_fc} :catch_27f
.catchall {:try_start_b8 .. :try_end_fc} :catchall_27c
:cond_fc
:goto_fc
invoke-static {}, Lcom/xiaomi/push/cz;->a()Lcom/xiaomi/push/cz;
move-result-object v2
invoke-virtual {v2}, Lcom/xiaomi/push/cz;->i()V
if-nez v9, :cond_27b
new-instance v2, Lcom/xiaomi/push/hb;
invoke-virtual {v12}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v3
invoke-direct {v2, v3}, Lcom/xiaomi/push/hb;-><init>(Ljava/lang/String;)V
throw v2
:catch_10f
move-exception v5
move v9, v4
move-object v4, v5
:goto_112
:try_start_112
move-object/from16 v0, p0
iput-object v4, v0, Lcom/xiaomi/push/gc;->o:Ljava/lang/Exception;
:try_end_116
.catchall {:try_start_112 .. :try_end_116} :catchall_27c
if-nez v9, :cond_184
new-instance v4, Ljava/lang/StringBuilder;
invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
const-string v5, "SMACK: Could not connect to:"
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v4
invoke-static {v4}, Lcom/xiaomi/a/a/a/c;->d(Ljava/lang/String;)V
const-string v4, "SMACK: Could not connect to "
invoke-virtual {v12, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
const-string v5, " port:"
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
move/from16 v0, p2
invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v4
const-string v5, " err:"
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
move-object/from16 v0, p0
iget-object v5, v0, Lcom/xiaomi/push/gc;->o:Ljava/lang/Exception;
invoke-virtual {v5}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v5
invoke-virtual {v5}, Ljava/lang/Class;->getSimpleName()Ljava/lang/String;
move-result-object v5
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
const-string v5, "\n"
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-object/from16 v0, p0
iget-object v4, v0, Lcom/xiaomi/push/gc;->o:Ljava/lang/Exception;
invoke-static {v3, v4}, Lcom/xiaomi/push/ho;->a(Ljava/lang/String;Ljava/lang/Exception;)V
if-eqz v2, :cond_176
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
move-result-wide v4
sub-long/2addr v4, v14
const-wide/16 v6, 0x0
move-object/from16 v0, p0
iget-object v8, v0, Lcom/xiaomi/push/gc;->o:Ljava/lang/Exception;
invoke-virtual/range {v2 .. v8}, Lcom/xiaomi/push/cv;->b(Ljava/lang/String;JJLjava/lang/Exception;)V
:cond_176
move-object/from16 v0, p0
iget-object v3, v0, Lcom/xiaomi/push/gc;->r:Lcom/xiaomi/push/service/XMPushService;
invoke-static {v3}, Lcom/xiaomi/push/z;->k(Landroid/content/Context;)Ljava/lang/String;
move-result-object v3
invoke-static {v11, v3}, Landroid/text/TextUtils;->equals(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z
move-result v3
if-eqz v3, :cond_fc
:cond_184
move v3, v9
move v4, v3
goto/16 :goto_5c
:catch_188
move-exception v5
move v9, v4
move-object v4, v5
:goto_18b
:try_start_18b
new-instance v5, Ljava/lang/Exception;
const-string v6, "abnormal exception"
invoke-direct {v5, v6, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
move-object/from16 v0, p0
iput-object v5, v0, Lcom/xiaomi/push/gc;->o:Ljava/lang/Exception;
invoke-static {v4}, Lcom/xiaomi/a/a/a/c;->a(Ljava/lang/Throwable;)V
:try_end_199
.catchall {:try_start_18b .. :try_end_199} :catchall_27c
if-nez v9, :cond_184
new-instance v4, Ljava/lang/StringBuilder;
invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
const-string v5, "SMACK: Could not connect to:"
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v4
invoke-static {v4}, Lcom/xiaomi/a/a/a/c;->d(Ljava/lang/String;)V
const-string v4, "SMACK: Could not connect to "
invoke-virtual {v12, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
const-string v5, " port:"
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
move/from16 v0, p2
invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v4
const-string v5, " err:"
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
move-object/from16 v0, p0
iget-object v5, v0, Lcom/xiaomi/push/gc;->o:Ljava/lang/Exception;
invoke-virtual {v5}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v5
invoke-virtual {v5}, Ljava/lang/Class;->getSimpleName()Ljava/lang/String;
move-result-object v5
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
const-string v5, "\n"
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-object/from16 v0, p0
iget-object v4, v0, Lcom/xiaomi/push/gc;->o:Ljava/lang/Exception;
invoke-static {v3, v4}, Lcom/xiaomi/push/ho;->a(Ljava/lang/String;Ljava/lang/Exception;)V
if-eqz v2, :cond_1f9
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
move-result-wide v4
sub-long/2addr v4, v14
const-wide/16 v6, 0x0
move-object/from16 v0, p0
iget-object v8, v0, Lcom/xiaomi/push/gc;->o:Ljava/lang/Exception;
invoke-virtual/range {v2 .. v8}, Lcom/xiaomi/push/cv;->b(Ljava/lang/String;JJLjava/lang/Exception;)V
:cond_1f9
move-object/from16 v0, p0
iget-object v3, v0, Lcom/xiaomi/push/gc;->r:Lcom/xiaomi/push/service/XMPushService;
invoke-static {v3}, Lcom/xiaomi/push/z;->k(Landroid/content/Context;)Ljava/lang/String;
move-result-object v3
invoke-static {v11, v3}, Landroid/text/TextUtils;->equals(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z
move-result v3
if-nez v3, :cond_184
goto/16 :goto_fc
:catchall_209
move-exception v5
move-object v10, v5
move v9, v4
:goto_20c
if-nez v9, :cond_27a
new-instance v4, Ljava/lang/StringBuilder;
invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
const-string v5, "SMACK: Could not connect to:"
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v4
invoke-static {v4}, Lcom/xiaomi/a/a/a/c;->d(Ljava/lang/String;)V
const-string v4, "SMACK: Could not connect to "
invoke-virtual {v12, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
const-string v5, " port:"
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
move/from16 v0, p2
invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v4
const-string v5, " err:"
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
move-object/from16 v0, p0
iget-object v5, v0, Lcom/xiaomi/push/gc;->o:Ljava/lang/Exception;
invoke-virtual {v5}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v5
invoke-virtual {v5}, Ljava/lang/Class;->getSimpleName()Ljava/lang/String;
move-result-object v5
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
const-string v5, "\n"
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-object/from16 v0, p0
iget-object v4, v0, Lcom/xiaomi/push/gc;->o:Ljava/lang/Exception;
invoke-static {v3, v4}, Lcom/xiaomi/push/ho;->a(Ljava/lang/String;Ljava/lang/Exception;)V
if-eqz v2, :cond_26c
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
move-result-wide v4
sub-long/2addr v4, v14
const-wide/16 v6, 0x0
move-object/from16 v0, p0
iget-object v8, v0, Lcom/xiaomi/push/gc;->o:Ljava/lang/Exception;
invoke-virtual/range {v2 .. v8}, Lcom/xiaomi/push/cv;->b(Ljava/lang/String;JJLjava/lang/Exception;)V
:cond_26c
move-object/from16 v0, p0
iget-object v2, v0, Lcom/xiaomi/push/gc;->r:Lcom/xiaomi/push/service/XMPushService;
invoke-static {v2}, Lcom/xiaomi/push/z;->k(Landroid/content/Context;)Ljava/lang/String;
move-result-object v2
invoke-static {v11, v2}, Landroid/text/TextUtils;->equals(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z
move-result v2
if-eqz v2, :cond_fc
:cond_27a
throw v10
:cond_27b
return-void
:catchall_27c
move-exception v4
move-object v10, v4
goto :goto_20c
:catch_27f
move-exception v4
goto/16 :goto_18b
:catch_282
move-exception v4
goto/16 :goto_112
:cond_285
move v9, v4
goto/16 :goto_fc
.end method
# virtual methods
.method protected declared-synchronized a(ILjava/lang/Exception;)V
.registers 5
const/4 v1, 0x2
monitor-enter p0
:try_start_2
invoke-virtual {p0}, Lcom/xiaomi/push/gc;->l()I
:try_end_5
.catchall {:try_start_2 .. :try_end_5} :catchall_20
move-result v0
if-ne v0, v1, :cond_a
:goto_8
monitor-exit p0
return-void
:cond_a
const/4 v0, 0x2
:try_start_b
invoke-virtual {p0, v0, p1, p2}, Lcom/xiaomi/push/gc;->a(IILjava/lang/Exception;)V
const-string v0, ""
iput-object v0, p0, Lcom/xiaomi/push/gc;->i:Ljava/lang/String;
:try_end_12
.catchall {:try_start_b .. :try_end_12} :catchall_20
:try_start_12
iget-object v0, p0, Lcom/xiaomi/push/gc;->p:Ljava/net/Socket;
invoke-virtual {v0}, Ljava/net/Socket;->close()V
:try_end_17
.catch Ljava/lang/Throwable; {:try_start_12 .. :try_end_17} :catch_23
.catchall {:try_start_12 .. :try_end_17} :catchall_20
:goto_17
const-wide/16 v0, 0x0
:try_start_19
iput-wide v0, p0, Lcom/xiaomi/push/gc;->s:J
const-wide/16 v0, 0x0
iput-wide v0, p0, Lcom/xiaomi/push/gc;->t:J
:try_end_1f
.catchall {:try_start_19 .. :try_end_1f} :catchall_20
goto :goto_8
:catchall_20
move-exception v0
monitor-exit p0
throw v0
:catch_23
move-exception v0
goto :goto_17
.end method
.method protected a(Ljava/lang/Exception;)V
.registers 7
const/4 v4, 0x0
invoke-static {}, Landroid/os/SystemClock;->elapsedRealtime()J
move-result-wide v0
iget-wide v2, p0, Lcom/xiaomi/push/gc;->u:J
sub-long/2addr v0, v2
const-wide/32 v2, 0x493e0
cmp-long v0, v0, v2
if-gez v0, :cond_44
iget-object v0, p0, Lcom/xiaomi/push/gc;->r:Lcom/xiaomi/push/service/XMPushService;
invoke-static {v0}, Lcom/xiaomi/push/z;->c(Landroid/content/Context;)Z
move-result v0
if-eqz v0, :cond_43
iget v0, p0, Lcom/xiaomi/push/gc;->w:I
add-int/lit8 v0, v0, 0x1
iput v0, p0, Lcom/xiaomi/push/gc;->w:I
iget v0, p0, Lcom/xiaomi/push/gc;->w:I
const/4 v1, 0x2
if-lt v0, v1, :cond_43
invoke-virtual {p0}, Lcom/xiaomi/push/gc;->e()Ljava/lang/String;
move-result-object v0
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "max short conn time reached, sink down current host:"
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-static {v1}, Lcom/xiaomi/a/a/a/c;->a(Ljava/lang/String;)V
const-wide/16 v2, 0x0
invoke-virtual {p0, v0, v2, v3, p1}, Lcom/xiaomi/push/gc;->a(Ljava/lang/String;JLjava/lang/Exception;)V
iput v4, p0, Lcom/xiaomi/push/gc;->w:I
:cond_43
:goto_43
return-void
:cond_44
iput v4, p0, Lcom/xiaomi/push/gc;->w:I
goto :goto_43
.end method
.method protected a(Ljava/lang/String;JLjava/lang/Exception;)V
.registers 13
invoke-static {}, Lcom/xiaomi/push/fw;->a()Ljava/lang/String;
move-result-object v0
invoke-static {}, Lcom/xiaomi/push/cz;->a()Lcom/xiaomi/push/cz;
move-result-object v1
const/4 v2, 0x0
invoke-virtual {v1, v0, v2}, Lcom/xiaomi/push/cz;->a(Ljava/lang/String;Z)Lcom/xiaomi/push/cv;
move-result-object v0
if-eqz v0, :cond_1e
const-wide/16 v4, 0x0
move-object v1, p1
move-wide v2, p2
move-object v6, p4
invoke-virtual/range {v0 .. v6}, Lcom/xiaomi/push/cv;->b(Ljava/lang/String;JJLjava/lang/Exception;)V
invoke-static {}, Lcom/xiaomi/push/cz;->a()Lcom/xiaomi/push/cz;
move-result-object v0
invoke-virtual {v0}, Lcom/xiaomi/push/cz;->i()V
:cond_1e
return-void
.end method
.method protected abstract a(Z)V
.end method
.method public a([Lcom/xiaomi/push/fn;)V
.registers 4
new-instance v0, Lcom/xiaomi/push/hb;
const-string v1, "Don\'t support send Blob"
invoke-direct {v0, v1}, Lcom/xiaomi/push/hb;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method b(Ljava/lang/String;)Lcom/xiaomi/push/cv;
.registers 4
invoke-static {}, Lcom/xiaomi/push/cz;->a()Lcom/xiaomi/push/cz;
move-result-object v0
const/4 v1, 0x0
invoke-virtual {v0, p1, v1}, Lcom/xiaomi/push/cz;->a(Ljava/lang/String;Z)Lcom/xiaomi/push/cv;
move-result-object v0
invoke-virtual {v0}, Lcom/xiaomi/push/cv;->b()Z
move-result v1
if-nez v1, :cond_17
new-instance v1, Lcom/xiaomi/push/gj;
invoke-direct {v1, p0, p1}, Lcom/xiaomi/push/gj;-><init>(Lcom/xiaomi/push/gc;Ljava/lang/String;)V
invoke-static {v1}, Lcom/xiaomi/push/ha;->a(Ljava/lang/Runnable;)V
:cond_17
return-object v0
.end method
.method public b(ILjava/lang/Exception;)V
.registers 7
invoke-virtual {p0, p1, p2}, Lcom/xiaomi/push/gc;->a(ILjava/lang/Exception;)V
if-nez p2, :cond_9
const/16 v0, 0x12
if-ne p1, v0, :cond_14
:cond_9
iget-wide v0, p0, Lcom/xiaomi/push/gc;->u:J
const-wide/16 v2, 0x0
cmp-long v0, v0, v2
if-eqz v0, :cond_14
invoke-virtual {p0, p2}, Lcom/xiaomi/push/gc;->a(Ljava/lang/Exception;)V
:cond_14
return-void
.end method
.method public b(Z)V
.registers 7
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
move-result-wide v0
invoke-virtual {p0, p1}, Lcom/xiaomi/push/gc;->a(Z)V
if-nez p1, :cond_17
iget-object v2, p0, Lcom/xiaomi/push/gc;->r:Lcom/xiaomi/push/service/XMPushService;
new-instance v3, Lcom/xiaomi/push/gd;
const/16 v4, 0xd
invoke-direct {v3, p0, v4, v0, v1}, Lcom/xiaomi/push/gd;-><init>(Lcom/xiaomi/push/gc;IJ)V
const-wide/16 v0, 0x2710
invoke-virtual {v2, v3, v0, v1}, Lcom/xiaomi/push/service/XMPushService;->a(Lcom/xiaomi/push/service/XMPushService$i;J)V
:cond_17
return-void
.end method
.method protected declared-synchronized c()V
.registers 1
monitor-enter p0
monitor-exit p0
return-void
.end method
.method public c(ILjava/lang/Exception;)V
.registers 6
iget-object v0, p0, Lcom/xiaomi/push/gc;->r:Lcom/xiaomi/push/service/XMPushService;
new-instance v1, Lcom/xiaomi/push/gi;
const/4 v2, 0x2
invoke-direct {v1, p0, v2, p1, p2}, Lcom/xiaomi/push/gi;-><init>(Lcom/xiaomi/push/gc;IILjava/lang/Exception;)V
invoke-virtual {v0, v1}, Lcom/xiaomi/push/service/XMPushService;->a(Lcom/xiaomi/push/service/XMPushService$i;)V
return-void
.end method
.method public e()Ljava/lang/String;
.registers 2
iget-object v0, p0, Lcom/xiaomi/push/gc;->v:Ljava/lang/String;
return-object v0
.end method
.method public q()Ljava/lang/String;
.registers 2
iget-object v0, p0, Lcom/xiaomi/push/gc;->i:Ljava/lang/String;
return-object v0
.end method
.method public declared-synchronized r()V
.registers 4
monitor-enter p0
:try_start_1
invoke-virtual {p0}, Lcom/xiaomi/push/gc;->j()Z
move-result v0
if-nez v0, :cond_d
invoke-virtual {p0}, Lcom/xiaomi/push/gc;->i()Z
move-result v0
if-eqz v0, :cond_14
:cond_d
const-string v0, "WARNING: current xmpp has connected"
invoke-static {v0}, Lcom/xiaomi/a/a/a/c;->a(Ljava/lang/String;)V
:try_end_12
.catch Ljava/io/IOException; {:try_start_1 .. :try_end_12} :catch_20
.catchall {:try_start_1 .. :try_end_12} :catchall_27
:goto_12
monitor-exit p0
return-void
:cond_14
const/4 v0, 0x0
const/4 v1, 0x0
const/4 v2, 0x0
:try_start_17
invoke-virtual {p0, v0, v1, v2}, Lcom/xiaomi/push/gc;->a(IILjava/lang/Exception;)V
iget-object v0, p0, Lcom/xiaomi/push/gc;->l:Lcom/xiaomi/push/fw;
invoke-direct {p0, v0}, Lcom/xiaomi/push/gc;->a(Lcom/xiaomi/push/fw;)V
:try_end_1f
.catch Ljava/io/IOException; {:try_start_17 .. :try_end_1f} :catch_20
.catchall {:try_start_17 .. :try_end_1f} :catchall_27
goto :goto_12
:catch_20
move-exception v0
:try_start_21
new-instance v1, Lcom/xiaomi/push/hb;
invoke-direct {v1, v0}, Lcom/xiaomi/push/hb;-><init>(Ljava/lang/Throwable;)V
throw v1
:try_end_27
.catchall {:try_start_21 .. :try_end_27} :catchall_27
:catchall_27
move-exception v0
monitor-exit p0
throw v0
.end method
.method public s()Ljava/net/Socket;
.registers 2
new-instance v0, Ljava/net/Socket;
invoke-direct {v0}, Ljava/net/Socket;-><init>()V
return-object v0
.end method
.method public t()V
.registers 3
invoke-static {}, Landroid/os/SystemClock;->elapsedRealtime()J
move-result-wide v0
iput-wide v0, p0, Lcom/xiaomi/push/gc;->s:J
return-void
.end method
.method public u()V
.registers 3
invoke-static {}, Landroid/os/SystemClock;->elapsedRealtime()J
move-result-wide v0
iput-wide v0, p0, Lcom/xiaomi/push/gc;->t:J
return-void
.end method