RongIMClient$ChatRoomCacheRunnable.smali
.class Lio/rong/imlib/RongIMClient$ChatRoomCacheRunnable;
.super Ljava/lang/Object;
.source "RongIMClient.java"
# interfaces
.implements Ljava/lang/Runnable;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lio/rong/imlib/RongIMClient;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x2
name = "ChatRoomCacheRunnable"
.end annotation
# instance fields
.field chatRoomId:Ljava/lang/String;
.field chatRoomIdExist:Z
.field count:I
.field onceSuccess:Z
.field final synthetic this$0:Lio/rong/imlib/RongIMClient;
# direct methods
.method constructor <init>(Lio/rong/imlib/RongIMClient;Ljava/lang/String;IZ)V
.registers 5
.line 1
iput-object p1, p0, Lio/rong/imlib/RongIMClient$ChatRoomCacheRunnable;->this$0:Lio/rong/imlib/RongIMClient;
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 2
iput p3, p0, Lio/rong/imlib/RongIMClient$ChatRoomCacheRunnable;->count:I
.line 3
iput-object p2, p0, Lio/rong/imlib/RongIMClient$ChatRoomCacheRunnable;->chatRoomId:Ljava/lang/String;
.line 4
iput-boolean p4, p0, Lio/rong/imlib/RongIMClient$ChatRoomCacheRunnable;->chatRoomIdExist:Z
return-void
.end method
# virtual methods
.method public run()V
.registers 20
move-object/from16 v1, p0
.line 1
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "re-join chatroom "
invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
const-string v2, "RongIMClient"
invoke-static {v2, v0}, Lio/rong/common/rlog/RLog;->d(Ljava/lang/String;Ljava/lang/String;)I
.line 2
iget-object v0, v1, Lio/rong/imlib/RongIMClient$ChatRoomCacheRunnable;->this$0:Lio/rong/imlib/RongIMClient;
# getter for: Lio/rong/imlib/RongIMClient;->mRetryCRCache:Ljava/util/HashMap;
invoke-static {v0}, Lio/rong/imlib/RongIMClient;->access$3200(Lio/rong/imlib/RongIMClient;)Ljava/util/HashMap;
move-result-object v0
iget-object v3, v1, Lio/rong/imlib/RongIMClient$ChatRoomCacheRunnable;->chatRoomId:Ljava/lang/String;
invoke-virtual {v0, v3}, Ljava/util/HashMap;->remove(Ljava/lang/Object;)Ljava/lang/Object;
.line 3
iget-object v0, v1, Lio/rong/imlib/RongIMClient$ChatRoomCacheRunnable;->this$0:Lio/rong/imlib/RongIMClient;
# getter for: Lio/rong/imlib/RongIMClient;->mLibHandler:Lio/rong/imlib/IHandler;
invoke-static {v0}, Lio/rong/imlib/RongIMClient;->access$400(Lio/rong/imlib/RongIMClient;)Lio/rong/imlib/IHandler;
move-result-object v0
if-eqz v0, :cond_113
iget-object v0, v1, Lio/rong/imlib/RongIMClient$ChatRoomCacheRunnable;->this$0:Lio/rong/imlib/RongIMClient;
# getter for: Lio/rong/imlib/RongIMClient;->mConnectionStatus:Lio/rong/imlib/RongIMClient$ConnectionStatusListener$ConnectionStatus;
invoke-static {v0}, Lio/rong/imlib/RongIMClient;->access$600(Lio/rong/imlib/RongIMClient;)Lio/rong/imlib/RongIMClient$ConnectionStatusListener$ConnectionStatus;
move-result-object v0
sget-object v3, Lio/rong/imlib/RongIMClient$ConnectionStatusListener$ConnectionStatus;->CONNECTED:Lio/rong/imlib/RongIMClient$ConnectionStatusListener$ConnectionStatus;
invoke-virtual {v0, v3}, Ljava/lang/Enum;->equals(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_113
const/4 v3, 0x2
const/4 v4, 0x0
const/4 v5, 0x3
const/4 v7, 0x1
.line 4
:try_start_3d
new-instance v10, Lio/rong/imlib/ipc/IpcCallbackProxy;
const/4 v0, 0x0
invoke-direct {v10, v0}, Lio/rong/imlib/ipc/IpcCallbackProxy;-><init>(Ljava/lang/Object;)V
.line 5
# getter for: Lio/rong/imlib/RongIMClient;->chatRoomActionListener:Ljava/util/concurrent/atomic/AtomicReference;
invoke-static {}, Lio/rong/imlib/RongIMClient;->access$3900()Ljava/util/concurrent/atomic/AtomicReference;
move-result-object v0
invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicReference;->get()Ljava/lang/Object;
move-result-object v0
check-cast v0, Lio/rong/imlib/RongIMClient$ChatRoomActionListener;
if-eqz v0, :cond_54
.line 6
iget-object v8, v1, Lio/rong/imlib/RongIMClient$ChatRoomCacheRunnable;->chatRoomId:Ljava/lang/String;
invoke-interface {v0, v8}, Lio/rong/imlib/RongIMClient$ChatRoomActionListener;->onJoining(Ljava/lang/String;)V
.line 7
:cond_54
sget-object v0, Lio/rong/common/fwlog/FwLog$LogTag;->A_REJOIN_CHATROOM_T:Lio/rong/common/fwlog/FwLog$LogTag;
invoke-virtual {v0}, Lio/rong/common/fwlog/FwLog$LogTag;->getTag()Ljava/lang/String;
move-result-object v0
const-string v8, "room_id|existed|count"
new-array v9, v5, [Ljava/lang/Object;
iget-object v11, v1, Lio/rong/imlib/RongIMClient$ChatRoomCacheRunnable;->chatRoomId:Ljava/lang/String;
aput-object v11, v9, v4
iget-boolean v11, v1, Lio/rong/imlib/RongIMClient$ChatRoomCacheRunnable;->chatRoomIdExist:Z
invoke-static {v11}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
move-result-object v11
aput-object v11, v9, v7
iget-boolean v11, v1, Lio/rong/imlib/RongIMClient$ChatRoomCacheRunnable;->onceSuccess:Z
if-eqz v11, :cond_70
const/4 v11, -0x1
goto :goto_72
:cond_70
iget v11, v1, Lio/rong/imlib/RongIMClient$ChatRoomCacheRunnable;->count:I
:goto_72
invoke-static {v11}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v11
aput-object v11, v9, v3
invoke-static {v5, v7, v0, v8, v9}, Lio/rong/common/fwlog/FwLog;->write(IILjava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V
.line 8
iget-boolean v0, v1, Lio/rong/imlib/RongIMClient$ChatRoomCacheRunnable;->chatRoomIdExist:Z
if-eqz v0, :cond_ba
.line 9
iget-object v0, v1, Lio/rong/imlib/RongIMClient$ChatRoomCacheRunnable;->this$0:Lio/rong/imlib/RongIMClient;
# getter for: Lio/rong/imlib/RongIMClient;->mLibHandler:Lio/rong/imlib/IHandler;
invoke-static {v0}, Lio/rong/imlib/RongIMClient;->access$400(Lio/rong/imlib/RongIMClient;)Lio/rong/imlib/IHandler;
move-result-object v0
iget-object v15, v1, Lio/rong/imlib/RongIMClient$ChatRoomCacheRunnable;->chatRoomId:Ljava/lang/String;
iget-boolean v8, v1, Lio/rong/imlib/RongIMClient$ChatRoomCacheRunnable;->onceSuccess:Z
if-eqz v8, :cond_8d
const/4 v14, -0x1
goto :goto_90
:cond_8d
iget v8, v1, Lio/rong/imlib/RongIMClient$ChatRoomCacheRunnable;->count:I
move v14, v8
:goto_90
new-instance v13, Lio/rong/imlib/RongIMClient$JoinChatRoomCallback;
iget-object v9, v1, Lio/rong/imlib/RongIMClient$ChatRoomCacheRunnable;->this$0:Lio/rong/imlib/RongIMClient;
iget-object v11, v1, Lio/rong/imlib/RongIMClient$ChatRoomCacheRunnable;->chatRoomId:Ljava/lang/String;
iget v12, v1, Lio/rong/imlib/RongIMClient$ChatRoomCacheRunnable;->count:I
iget-object v8, v1, Lio/rong/imlib/RongIMClient$ChatRoomCacheRunnable;->this$0:Lio/rong/imlib/RongIMClient;
# getter for: Lio/rong/imlib/RongIMClient;->mLibHandler:Lio/rong/imlib/IHandler;
invoke-static {v8}, Lio/rong/imlib/RongIMClient;->access$400(Lio/rong/imlib/RongIMClient;)Lio/rong/imlib/IHandler;
move-result-object v8
invoke-interface {v8}, Lio/rong/imlib/IHandler;->getJoinMultiChatRoomEnable()Z
move-result v16
iget-boolean v8, v1, Lio/rong/imlib/RongIMClient$ChatRoomCacheRunnable;->chatRoomIdExist:Z
const/16 v17, 0x1
move/from16 v18, v8
move-object v8, v13
move-object v3, v13
move/from16 v13, v16
move v4, v14
move/from16 v14, v18
move-object v6, v15
move/from16 v15, v17
invoke-direct/range {v8 .. v15}, Lio/rong/imlib/RongIMClient$JoinChatRoomCallback;-><init>(Lio/rong/imlib/RongIMClient;Lio/rong/imlib/ipc/IpcCallbackProxy;Ljava/lang/String;IZZZ)V
invoke-interface {v0, v6, v4, v3, v7}, Lio/rong/imlib/IHandler;->joinExistChatRoom(Ljava/lang/String;ILio/rong/imlib/IOperationCallback;Z)V
goto/16 :goto_13b
.line 10
:cond_ba
iget-object v0, v1, Lio/rong/imlib/RongIMClient$ChatRoomCacheRunnable;->this$0:Lio/rong/imlib/RongIMClient;
# getter for: Lio/rong/imlib/RongIMClient;->mLibHandler:Lio/rong/imlib/IHandler;
invoke-static {v0}, Lio/rong/imlib/RongIMClient;->access$400(Lio/rong/imlib/RongIMClient;)Lio/rong/imlib/IHandler;
move-result-object v0
iget-object v3, v1, Lio/rong/imlib/RongIMClient$ChatRoomCacheRunnable;->chatRoomId:Ljava/lang/String;
iget-boolean v4, v1, Lio/rong/imlib/RongIMClient$ChatRoomCacheRunnable;->onceSuccess:Z
if-eqz v4, :cond_c8
const/4 v6, -0x1
goto :goto_ca
:cond_c8
iget v6, v1, Lio/rong/imlib/RongIMClient$ChatRoomCacheRunnable;->count:I
:goto_ca
new-instance v4, Lio/rong/imlib/RongIMClient$JoinChatRoomCallback;
iget-object v9, v1, Lio/rong/imlib/RongIMClient$ChatRoomCacheRunnable;->this$0:Lio/rong/imlib/RongIMClient;
iget-object v11, v1, Lio/rong/imlib/RongIMClient$ChatRoomCacheRunnable;->chatRoomId:Ljava/lang/String;
iget v12, v1, Lio/rong/imlib/RongIMClient$ChatRoomCacheRunnable;->count:I
iget-object v8, v1, Lio/rong/imlib/RongIMClient$ChatRoomCacheRunnable;->this$0:Lio/rong/imlib/RongIMClient;
# getter for: Lio/rong/imlib/RongIMClient;->mLibHandler:Lio/rong/imlib/IHandler;
invoke-static {v8}, Lio/rong/imlib/RongIMClient;->access$400(Lio/rong/imlib/RongIMClient;)Lio/rong/imlib/IHandler;
move-result-object v8
invoke-interface {v8}, Lio/rong/imlib/IHandler;->getJoinMultiChatRoomEnable()Z
move-result v13
iget-boolean v14, v1, Lio/rong/imlib/RongIMClient$ChatRoomCacheRunnable;->chatRoomIdExist:Z
const/4 v15, 0x1
move-object v8, v4
invoke-direct/range {v8 .. v15}, Lio/rong/imlib/RongIMClient$JoinChatRoomCallback;-><init>(Lio/rong/imlib/RongIMClient;Lio/rong/imlib/ipc/IpcCallbackProxy;Ljava/lang/String;IZZZ)V
invoke-interface {v0, v3, v6, v4}, Lio/rong/imlib/IHandler;->reJoinChatRoom(Ljava/lang/String;ILio/rong/imlib/IOperationCallback;)V
:try_end_e6
.catch Ljava/lang/Exception; {:try_start_3d .. :try_end_e6} :catch_e7
goto :goto_13b
:catch_e7
move-exception v0
.line 11
sget-object v3, Lio/rong/common/fwlog/FwLog$LogTag;->A_REJOIN_CHATROOM_R:Lio/rong/common/fwlog/FwLog$LogTag;
invoke-virtual {v3}, Lio/rong/common/fwlog/FwLog$LogTag;->getTag()Ljava/lang/String;
move-result-object v3
new-array v4, v5, [Ljava/lang/Object;
const/4 v5, -0x1
invoke-static {v5}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v5
const/4 v6, 0x0
aput-object v5, v4, v6
iget-object v5, v1, Lio/rong/imlib/RongIMClient$ChatRoomCacheRunnable;->chatRoomId:Ljava/lang/String;
aput-object v5, v4, v7
invoke-static {v0}, Lio/rong/common/fwlog/FwLog;->stackToString(Ljava/lang/Throwable;)Ljava/lang/String;
move-result-object v5
const/4 v6, 0x2
aput-object v5, v4, v6
const-string v5, "code|room_id|stacks"
invoke-static {v7, v7, v3, v5, v4}, Lio/rong/common/fwlog/FwLog;->write(IILjava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V
const-string v3, "ChatRoomCacheRunnable"
.line 12
invoke-static {v2, v3, v0}, Lio/rong/common/rlog/RLog;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
const-string v0, "re-join chatroom exception"
.line 13
invoke-static {v2, v0}, Lio/rong/common/rlog/RLog;->e(Ljava/lang/String;Ljava/lang/String;)I
goto :goto_13b
.line 14
:cond_113
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, "re-join chatroom error : "
invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v3, v1, Lio/rong/imlib/RongIMClient$ChatRoomCacheRunnable;->this$0:Lio/rong/imlib/RongIMClient;
# getter for: Lio/rong/imlib/RongIMClient;->mConnectionStatus:Lio/rong/imlib/RongIMClient$ConnectionStatusListener$ConnectionStatus;
invoke-static {v3}, Lio/rong/imlib/RongIMClient;->access$600(Lio/rong/imlib/RongIMClient;)Lio/rong/imlib/RongIMClient$ConnectionStatusListener$ConnectionStatus;
move-result-object v3
invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v3, ", mLibHandler = "
invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v3, v1, Lio/rong/imlib/RongIMClient$ChatRoomCacheRunnable;->this$0:Lio/rong/imlib/RongIMClient;
# getter for: Lio/rong/imlib/RongIMClient;->mLibHandler:Lio/rong/imlib/IHandler;
invoke-static {v3}, Lio/rong/imlib/RongIMClient;->access$400(Lio/rong/imlib/RongIMClient;)Lio/rong/imlib/IHandler;
move-result-object v3
invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-static {v2, v0}, Lio/rong/common/rlog/RLog;->e(Ljava/lang/String;Ljava/lang/String;)I
:goto_13b
return-void
.end method
.method public toString()Ljava/lang/String;
.registers 4
.line 1
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "ChatRoomCacheRunnable{chatRoomId=\'"
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v1, p0, Lio/rong/imlib/RongIMClient$ChatRoomCacheRunnable;->chatRoomId:Ljava/lang/String;
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const/16 v1, 0x27
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
const-string v2, ", count="
invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget v2, p0, Lio/rong/imlib/RongIMClient$ChatRoomCacheRunnable;->count:I
invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string v2, ", onceSuccess="
invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-boolean v2, p0, Lio/rong/imlib/RongIMClient$ChatRoomCacheRunnable;->onceSuccess:Z
invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
const-string v2, ", chatRoomIdExist="
invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-boolean v2, p0, Lio/rong/imlib/RongIMClient$ChatRoomCacheRunnable;->chatRoomIdExist:Z
invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
const-string v2, ", state=\'"
invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v2, p0, Lio/rong/imlib/RongIMClient$ChatRoomCacheRunnable;->this$0:Lio/rong/imlib/RongIMClient;
.line 2
# getter for: Lio/rong/imlib/RongIMClient;->mConnectionStatus:Lio/rong/imlib/RongIMClient$ConnectionStatusListener$ConnectionStatus;
invoke-static {v2}, Lio/rong/imlib/RongIMClient;->access$600(Lio/rong/imlib/RongIMClient;)Lio/rong/imlib/RongIMClient$ConnectionStatusListener$ConnectionStatus;
move-result-object v2
invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
const/16 v1, 0x7d
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
return-object v0
.end method