HandleRTCMsgTools$2.smali
.class Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools$2;
.super Lcn/rongcloud/rtc/api/callback/IRCRTCResultCallback;
.source "HandleRTCMsgTools.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools;->handlePublishResourceMessage(Lio/rong/imlib/model/Message;Lcn/rongcloud/rtc/proxy/message/PublishResourceMessage;)V
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x0
name = null
.end annotation
# instance fields
.field final synthetic this$0:Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools;
.field final synthetic val$finalRemoteUser:Lcn/rongcloud/rtc/center/RCRemoteUserImpl;
.field final synthetic val$publishResourceList:Ljava/util/List;
# direct methods
.method constructor <init>(Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools;Lcn/rongcloud/rtc/center/RCRemoteUserImpl;Ljava/util/List;)V
.registers 4
.line 1
iput-object p1, p0, Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools$2;->this$0:Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools;
iput-object p2, p0, Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools$2;->val$finalRemoteUser:Lcn/rongcloud/rtc/center/RCRemoteUserImpl;
iput-object p3, p0, Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools$2;->val$publishResourceList:Ljava/util/List;
invoke-direct {p0}, Lcn/rongcloud/rtc/api/callback/IRCRTCResultCallback;-><init>()V
return-void
.end method
# virtual methods
.method public onFailed(Lcn/rongcloud/rtc/base/RTCErrorCode;)V
.registers 3
const-string p1, "HandleRTCMsgTools"
const-string v0, "PublishResourceMessage unsubscribeAVStream failed"
.line 1
invoke-static {p1, v0}, Lcn/rongcloud/rtc/utils/FinLog;->e(Ljava/lang/String;Ljava/lang/String;)V
return-void
.end method
.method public onSuccess()V
.registers 11
.line 1
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
.line 2
iget-object v1, p0, Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools$2;->val$finalRemoteUser:Lcn/rongcloud/rtc/center/RCRemoteUserImpl;
invoke-virtual {v1}, Lcn/rongcloud/rtc/center/RCRemoteUserImpl;->getStreams()Ljava/util/List;
move-result-object v1
.line 3
iget-object v2, p0, Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools$2;->val$publishResourceList:Ljava/util/List;
invoke-interface {v2}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v2
:cond_11
:goto_11
invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z
move-result v3
const/4 v4, 0x0
const/4 v5, 0x1
if-eqz v3, :cond_a0
invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v3
check-cast v3, Lcn/rongcloud/rtc/proxy/message/messagebeans/MediaResourceInfo;
.line 4
invoke-interface {v1}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v6
:cond_23
:goto_23
invoke-interface {v6}, Ljava/util/Iterator;->hasNext()Z
move-result v7
if-eqz v7, :cond_64
invoke-interface {v6}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v7
check-cast v7, Lcn/rongcloud/rtc/api/stream/RCRTCInputStream;
.line 5
invoke-interface {v7}, Lcn/rongcloud/rtc/base/RCRTCStream;->getMediaType()Lcn/rongcloud/rtc/base/RCRTCMediaType;
move-result-object v8
invoke-virtual {v3}, Lcn/rongcloud/rtc/proxy/message/messagebeans/MediaResourceInfo;->getType()Lcn/rongcloud/rtc/base/RCRTCMediaType;
move-result-object v9
if-ne v8, v9, :cond_23
invoke-virtual {v3}, Lcn/rongcloud/rtc/proxy/message/messagebeans/MediaResourceInfo;->getTag()Ljava/lang/String;
move-result-object v8
invoke-interface {v7}, Lcn/rongcloud/rtc/base/RCRTCStream;->getTag()Ljava/lang/String;
move-result-object v9
invoke-virtual {v8, v9}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v8
if-eqz v8, :cond_23
.line 6
move-object v5, v7
check-cast v5, Lcn/rongcloud/rtc/center/stream/RCInputStreamImpl;
.line 7
invoke-virtual {v3}, Lcn/rongcloud/rtc/proxy/message/messagebeans/MediaResourceInfo;->getStreamId()Ljava/lang/String;
move-result-object v8
invoke-virtual {v5, v8}, Lcn/rongcloud/rtc/center/stream/RCInputStreamImpl;->setStreamId(Ljava/lang/String;)V
.line 8
invoke-virtual {v3}, Lcn/rongcloud/rtc/proxy/message/messagebeans/MediaResourceInfo;->getUri()Ljava/lang/String;
move-result-object v8
invoke-virtual {v5, v8}, Lcn/rongcloud/rtc/center/stream/RCStreamImpl;->setUri(Ljava/lang/String;)V
.line 9
invoke-virtual {v3}, Lcn/rongcloud/rtc/proxy/message/messagebeans/MediaResourceInfo;->getRCRTCResourceState()Lcn/rongcloud/rtc/base/RCRTCResourceState;
move-result-object v8
invoke-virtual {v5, v8}, Lcn/rongcloud/rtc/center/stream/RCStreamImpl;->setResourceState(Lcn/rongcloud/rtc/base/RCRTCResourceState;)V
.line 10
invoke-interface {v0, v7}, Ljava/util/List;->add(Ljava/lang/Object;)Z
const/4 v5, 0x0
goto :goto_23
:cond_64
if-eqz v5, :cond_11
.line 11
iget-object v4, p0, Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools$2;->this$0:Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools;
iget-object v5, p0, Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools$2;->val$finalRemoteUser:Lcn/rongcloud/rtc/center/RCRemoteUserImpl;
invoke-virtual {v5}, Lcn/rongcloud/rtc/center/RCUserImpl;->getUserId()Ljava/lang/String;
move-result-object v5
# invokes: Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools;->createRTCInputStream(Ljava/lang/String;Lcn/rongcloud/rtc/proxy/message/messagebeans/MediaResourceInfo;)Lcn/rongcloud/rtc/api/stream/RCRTCInputStream;
invoke-static {v4, v5, v3}, Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools;->access$000(Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools;Ljava/lang/String;Lcn/rongcloud/rtc/proxy/message/messagebeans/MediaResourceInfo;)Lcn/rongcloud/rtc/api/stream/RCRTCInputStream;
move-result-object v4
.line 12
invoke-interface {v0, v4}, Ljava/util/List;->add(Ljava/lang/Object;)Z
.line 13
iget-object v5, p0, Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools$2;->val$finalRemoteUser:Lcn/rongcloud/rtc/center/RCRemoteUserImpl;
invoke-virtual {v5, v4}, Lcn/rongcloud/rtc/center/RCRemoteUserImpl;->addStream(Lcn/rongcloud/rtc/api/stream/RCRTCInputStream;)Z
.line 14
new-instance v4, Ljava/lang/StringBuilder;
invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
const-string v5, "remote-user-"
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v5, p0, Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools$2;->val$finalRemoteUser:Lcn/rongcloud/rtc/center/RCRemoteUserImpl;
invoke-virtual {v5}, Lcn/rongcloud/rtc/center/RCUserImpl;->getUserId()Ljava/lang/String;
move-result-object v5
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v5, " publish: "
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v4, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v3
const-string v4, "HandleRTCMsgTools"
invoke-static {v4, v3}, Lcn/rongcloud/rtc/utils/FinLog;->i(Ljava/lang/String;Ljava/lang/String;)V
goto/16 :goto_11
.line 15
:cond_a0
invoke-interface {v1}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v1
:cond_a4
:goto_a4
invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z
move-result v2
if-eqz v2, :cond_ed
invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v2
check-cast v2, Lcn/rongcloud/rtc/api/stream/RCRTCInputStream;
.line 16
iget-object v3, p0, Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools$2;->val$publishResourceList:Ljava/util/List;
invoke-interface {v3}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v3
:cond_b6
invoke-interface {v3}, Ljava/util/Iterator;->hasNext()Z
move-result v6
if-eqz v6, :cond_dc
invoke-interface {v3}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v6
check-cast v6, Lcn/rongcloud/rtc/proxy/message/messagebeans/MediaResourceInfo;
.line 17
invoke-interface {v2}, Lcn/rongcloud/rtc/base/RCRTCStream;->getMediaType()Lcn/rongcloud/rtc/base/RCRTCMediaType;
move-result-object v7
invoke-virtual {v6}, Lcn/rongcloud/rtc/proxy/message/messagebeans/MediaResourceInfo;->getType()Lcn/rongcloud/rtc/base/RCRTCMediaType;
move-result-object v8
if-ne v7, v8, :cond_b6
invoke-interface {v2}, Lcn/rongcloud/rtc/base/RCRTCStream;->getTag()Ljava/lang/String;
move-result-object v7
invoke-virtual {v6}, Lcn/rongcloud/rtc/proxy/message/messagebeans/MediaResourceInfo;->getTag()Ljava/lang/String;
move-result-object v6
invoke-static {v7, v6}, Landroid/text/TextUtils;->equals(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z
move-result v6
if-eqz v6, :cond_b6
const/4 v3, 0x1
goto :goto_dd
:cond_dc
const/4 v3, 0x0
:goto_dd
if-nez v3, :cond_a4
.line 18
iget-object v3, p0, Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools$2;->val$finalRemoteUser:Lcn/rongcloud/rtc/center/RCRemoteUserImpl;
invoke-interface {v2}, Lcn/rongcloud/rtc/base/RCRTCStream;->getStreamId()Ljava/lang/String;
move-result-object v6
invoke-interface {v2}, Lcn/rongcloud/rtc/base/RCRTCStream;->getMediaType()Lcn/rongcloud/rtc/base/RCRTCMediaType;
move-result-object v2
invoke-virtual {v3, v6, v2}, Lcn/rongcloud/rtc/center/RCRemoteUserImpl;->removeStream(Ljava/lang/String;Lcn/rongcloud/rtc/base/RCRTCMediaType;)V
goto :goto_a4
.line 19
:cond_ed
iget-object v1, p0, Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools$2;->this$0:Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools;
# getter for: Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools;->mBaseRoom:Lcn/rongcloud/rtc/api/RCRTCBaseRoom;
invoke-static {v1}, Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools;->access$100(Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools;)Lcn/rongcloud/rtc/api/RCRTCBaseRoom;
move-result-object v1
invoke-interface {v1}, Lcn/rongcloud/rtc/api/RCRTCBaseRoom;->getRoomId()Ljava/lang/String;
move-result-object v1
iget-object v2, p0, Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools$2;->val$finalRemoteUser:Lcn/rongcloud/rtc/center/RCRemoteUserImpl;
invoke-virtual {v2}, Lcn/rongcloud/rtc/center/RCUserImpl;->getUserId()Ljava/lang/String;
move-result-object v2
invoke-static {v5, v1, v2, v0}, Lcn/rongcloud/rtc/utils/ReportUtil;->reportRemoteUserResource(ZLjava/lang/String;Ljava/lang/String;Ljava/util/List;)V
.line 20
iget-object v1, p0, Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools$2;->this$0:Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools;
# getter for: Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools;->mBaseRoom:Lcn/rongcloud/rtc/api/RCRTCBaseRoom;
invoke-static {v1}, Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools;->access$100(Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools;)Lcn/rongcloud/rtc/api/RCRTCBaseRoom;
move-result-object v1
if-eqz v1, :cond_13b
.line 21
iget-object v1, p0, Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools$2;->this$0:Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools;
# getter for: Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools;->mBaseRoom:Lcn/rongcloud/rtc/api/RCRTCBaseRoom;
invoke-static {v1}, Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools;->access$100(Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools;)Lcn/rongcloud/rtc/api/RCRTCBaseRoom;
move-result-object v1
instance-of v1, v1, Lcn/rongcloud/rtc/api/RCRTCRoom;
if-eqz v1, :cond_126
.line 22
iget-object v1, p0, Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools$2;->this$0:Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools;
# getter for: Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools;->mBaseRoom:Lcn/rongcloud/rtc/api/RCRTCBaseRoom;
invoke-static {v1}, Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools;->access$100(Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools;)Lcn/rongcloud/rtc/api/RCRTCBaseRoom;
move-result-object v1
check-cast v1, Lcn/rongcloud/rtc/center/RCRoomImpl;
invoke-virtual {v1}, Lcn/rongcloud/rtc/center/RCRoomImpl;->getEventsListener()Lcn/rongcloud/rtc/api/callback/IRCRTCRoomEventsListener;
move-result-object v1
if-eqz v1, :cond_13b
.line 23
iget-object v2, p0, Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools$2;->val$finalRemoteUser:Lcn/rongcloud/rtc/center/RCRemoteUserImpl;
invoke-virtual {v1, v2, v0}, Lcn/rongcloud/rtc/api/callback/IRCRTCRoomEventsListener;->onRemoteUserPublishResource(Lcn/rongcloud/rtc/api/RCRTCRemoteUser;Ljava/util/List;)V
goto :goto_13b
.line 24
:cond_126
iget-object v0, p0, Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools$2;->this$0:Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools;
# getter for: Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools;->mBaseRoom:Lcn/rongcloud/rtc/api/RCRTCBaseRoom;
invoke-static {v0}, Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools;->access$100(Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools;)Lcn/rongcloud/rtc/api/RCRTCBaseRoom;
move-result-object v0
instance-of v0, v0, Lcn/rongcloud/rtc/api/RCRTCOtherRoom;
if-eqz v0, :cond_13b
.line 25
iget-object v0, p0, Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools$2;->this$0:Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools;
# getter for: Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools;->mBaseRoom:Lcn/rongcloud/rtc/api/RCRTCBaseRoom;
invoke-static {v0}, Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools;->access$100(Lcn/rongcloud/rtc/engine/tools/HandleRTCMsgTools;)Lcn/rongcloud/rtc/api/RCRTCBaseRoom;
move-result-object v0
check-cast v0, Lcn/rongcloud/rtc/center/RCOtherRoomImpl;
invoke-virtual {v0}, Lcn/rongcloud/rtc/center/RCOtherRoomImpl;->getRCRoomListener()Lcn/rongcloud/rtc/api/callback/IRCRTCOtherRoomEventsListener;
:cond_13b
:goto_13b
return-void
.end method