WXDomModule.smali
.class public final Lcom/taobao/weex/ui/module/WXDomModule;
.super Lcom/taobao/weex/common/WXModule;
.source "WXDomModule.java"
# static fields
.field public static final ADD_RULE:Ljava/lang/String; = "addRule"
.field public static final BATCH_BEGIN:Ljava/lang/String; = "beginBatchMark"
.field public static final BATCH_END:Ljava/lang/String; = "endBatchMark"
.field public static final GET_COMPONENT_DIRECTION:Ljava/lang/String; = "getLayoutDirection"
.field public static final GET_COMPONENT_RECT:Ljava/lang/String; = "getComponentRect"
.field public static final INVOKE_METHOD:Ljava/lang/String; = "invokeMethod"
.field public static final METHODS:[Ljava/lang/String;
.field public static final SCROLL_TO_ELEMENT:Ljava/lang/String; = "scrollToElement"
.field public static final UPDATE_COMPONENT_DATA:Ljava/lang/String; = "updateComponentData"
.field public static final WXDOM:Ljava/lang/String; = "dom"
# direct methods
.method static constructor <clinit>()V
.registers 7
const-string v0, "scrollToElement"
const-string v1, "addRule"
const-string v2, "getComponentRect"
const-string v3, "invokeMethod"
const-string v4, "getLayoutDirection"
const-string v5, "beginBatchMark"
const-string v6, "endBatchMark"
.line 63
filled-new-array/range {v0 .. v6}, [Ljava/lang/String;
move-result-object v0
sput-object v0, Lcom/taobao/weex/ui/module/WXDomModule;->METHODS:[Ljava/lang/String;
return-void
.end method
.method public constructor <init>(Lcom/taobao/weex/WXSDKInstance;)V
.registers 2
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0
}
names = {
"instance"
}
.end annotation
.line 66
invoke-direct {p0}, Lcom/taobao/weex/common/WXModule;-><init>()V
.line 67
iput-object p1, p0, Lcom/taobao/weex/ui/module/WXDomModule;->mWXSDKInstance:Lcom/taobao/weex/WXSDKInstance;
.line 68
iput-object p1, p0, Lcom/taobao/weex/ui/module/WXDomModule;->mUniSDKInstance:Lio/dcloud/feature/uniapp/AbsSDKInstance;
return-void
.end method
# virtual methods
.method public varargs callDomMethod(Ljava/lang/String;Lcom/alibaba/fastjson/JSONArray;[J)Ljava/lang/Object;
.registers 10
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0,
0x0,
0x0
}
names = {
"method",
"args",
"parseNanos"
}
.end annotation
const/4 p3, 0x0
if-nez p1, :cond_4
return-object p3
:cond_4
const/4 v0, -0x1
.line 87
:try_start_5
invoke-virtual {p1}, Ljava/lang/String;->hashCode()I
move-result v1
const/4 v2, 0x3
const/4 v3, 0x2
const/4 v4, 0x0
const/4 v5, 0x1
sparse-switch v1, :sswitch_data_160
goto :goto_60
:sswitch_11
const-string v1, "getLayoutDirection"
invoke-virtual {p1, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result p1
if-eqz p1, :cond_60
move v0, v4
goto :goto_60
:sswitch_1b
const-string v1, "updateComponentData"
invoke-virtual {p1, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result p1
if-eqz p1, :cond_60
const/4 v0, 0x5
goto :goto_60
:sswitch_25
const-string v1, "getComponentRect"
invoke-virtual {p1, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result p1
if-eqz p1, :cond_60
move v0, v2
goto :goto_60
:sswitch_2f
const-string v1, "beginBatchMark"
invoke-virtual {p1, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result p1
if-eqz p1, :cond_60
const/4 v0, 0x6
goto :goto_60
:sswitch_39
const-string v1, "invokeMethod"
invoke-virtual {p1, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result p1
if-eqz p1, :cond_60
const/4 v0, 0x4
goto :goto_60
:sswitch_43
const-string v1, "scrollToElement"
invoke-virtual {p1, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result p1
if-eqz p1, :cond_60
move v0, v5
goto :goto_60
:sswitch_4d
const-string v1, "addRule"
invoke-virtual {p1, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result p1
if-eqz p1, :cond_60
move v0, v3
goto :goto_60
:sswitch_57
const-string v1, "endBatchMark"
invoke-virtual {p1, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result p1
if-eqz p1, :cond_60
const/4 v0, 0x7
:cond_60
:goto_60
packed-switch v0, :pswitch_data_182
const-string p1, "Unknown dom action."
goto/16 :goto_14c
.line 146
:pswitch_67
invoke-virtual {p2}, Lcom/alibaba/fastjson/JSONArray;->size()I
move-result p1
if-lt p1, v5, :cond_72
invoke-virtual {p2, v4}, Lcom/alibaba/fastjson/JSONArray;->getString(I)Ljava/lang/String;
move-result-object p1
goto :goto_73
:cond_72
move-object p1, p3
.line 147
:goto_73
new-instance p2, Lcom/taobao/weex/ui/action/GraphicActionBatchEnd;
iget-object v0, p0, Lcom/taobao/weex/ui/module/WXDomModule;->mWXSDKInstance:Lcom/taobao/weex/WXSDKInstance;
invoke-direct {p2, v0, p1}, Lcom/taobao/weex/ui/action/GraphicActionBatchEnd;-><init>(Lcom/taobao/weex/WXSDKInstance;Ljava/lang/String;)V
invoke-virtual {p2}, Lcom/taobao/weex/ui/action/GraphicActionBatchEnd;->executeActionOnRender()V
goto/16 :goto_15f
:pswitch_7f
if-nez p2, :cond_82
return-object p3
.line 141
:cond_82
invoke-virtual {p2}, Lcom/alibaba/fastjson/JSONArray;->size()I
move-result p1
if-lt p1, v5, :cond_8d
invoke-virtual {p2, v4}, Lcom/alibaba/fastjson/JSONArray;->getString(I)Ljava/lang/String;
move-result-object p1
goto :goto_8e
:cond_8d
move-object p1, p3
.line 142
:goto_8e
new-instance p2, Lcom/taobao/weex/ui/action/GraphicActionBatchBegin;
iget-object v0, p0, Lcom/taobao/weex/ui/module/WXDomModule;->mWXSDKInstance:Lcom/taobao/weex/WXSDKInstance;
invoke-direct {p2, v0, p1}, Lcom/taobao/weex/ui/action/GraphicActionBatchBegin;-><init>(Lcom/taobao/weex/WXSDKInstance;Ljava/lang/String;)V
invoke-virtual {p2}, Lcom/taobao/weex/ui/action/GraphicActionBatchBegin;->executeActionOnRender()V
goto/16 :goto_15f
:pswitch_9a
if-eqz p2, :cond_bf
.line 132
invoke-virtual {p2}, Lcom/alibaba/fastjson/JSONArray;->size()I
move-result p1
if-ge p1, v2, :cond_a3
goto :goto_bf
.line 135
:cond_a3
new-instance p1, Lcom/taobao/weex/ui/action/UpdateComponentDataAction;
iget-object v0, p0, Lcom/taobao/weex/ui/module/WXDomModule;->mWXSDKInstance:Lcom/taobao/weex/WXSDKInstance;
invoke-virtual {p2, v4}, Lcom/alibaba/fastjson/JSONArray;->getString(I)Ljava/lang/String;
move-result-object v1
invoke-virtual {p2, v5}, Lcom/alibaba/fastjson/JSONArray;->get(I)Ljava/lang/Object;
move-result-object v2
invoke-static {v2}, Lcom/taobao/weex/dom/binding/JSONUtils;->toJSON(Ljava/lang/Object;)Lcom/alibaba/fastjson/JSONObject;
move-result-object v2
invoke-virtual {p2, v3}, Lcom/alibaba/fastjson/JSONArray;->getString(I)Ljava/lang/String;
move-result-object p2
invoke-direct {p1, v0, v1, v2, p2}, Lcom/taobao/weex/ui/action/UpdateComponentDataAction;-><init>(Lcom/taobao/weex/WXSDKInstance;Ljava/lang/String;Lcom/alibaba/fastjson/JSONObject;Ljava/lang/String;)V
invoke-virtual {p1}, Lcom/taobao/weex/ui/action/UpdateComponentDataAction;->executeAction()V
goto/16 :goto_15f
:cond_bf
:goto_bf
return-object p3
:pswitch_c0
if-nez p2, :cond_c3
return-object p3
.line 127
:cond_c3
new-instance p1, Lcom/taobao/weex/ui/action/ActionInvokeMethod;
iget-object v0, p0, Lcom/taobao/weex/ui/module/WXDomModule;->mWXSDKInstance:Lcom/taobao/weex/WXSDKInstance;
invoke-virtual {v0}, Lcom/taobao/weex/WXSDKInstance;->getInstanceId()Ljava/lang/String;
move-result-object v0
invoke-virtual {p2, v4}, Lcom/alibaba/fastjson/JSONArray;->getString(I)Ljava/lang/String;
move-result-object v1
invoke-virtual {p2, v5}, Lcom/alibaba/fastjson/JSONArray;->getString(I)Ljava/lang/String;
move-result-object v2
invoke-virtual {p2, v3}, Lcom/alibaba/fastjson/JSONArray;->getJSONArray(I)Lcom/alibaba/fastjson/JSONArray;
move-result-object p2
invoke-direct {p1, v0, v1, v2, p2}, Lcom/taobao/weex/ui/action/ActionInvokeMethod;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/alibaba/fastjson/JSONArray;)V
.line 128
invoke-virtual {p1}, Lcom/taobao/weex/ui/action/ActionInvokeMethod;->executeAction()V
goto/16 :goto_15f
:pswitch_df
if-nez p2, :cond_e2
return-object p3
.line 118
:cond_e2
new-instance p1, Lcom/taobao/weex/ui/action/ActionGetComponentRect;
iget-object v0, p0, Lcom/taobao/weex/ui/module/WXDomModule;->mWXSDKInstance:Lcom/taobao/weex/WXSDKInstance;
invoke-virtual {p2, v4}, Lcom/alibaba/fastjson/JSONArray;->getString(I)Ljava/lang/String;
move-result-object v1
invoke-virtual {p2, v5}, Lcom/alibaba/fastjson/JSONArray;->getString(I)Ljava/lang/String;
move-result-object p2
invoke-direct {p1, v0, v1, p2}, Lcom/taobao/weex/ui/action/ActionGetComponentRect;-><init>(Lcom/taobao/weex/WXSDKInstance;Ljava/lang/String;Ljava/lang/String;)V
.line 119
invoke-virtual {p1}, Lcom/taobao/weex/ui/action/ActionGetComponentRect;->executeActionOnRender()V
goto/16 :goto_15f
:pswitch_f6
if-nez p2, :cond_f9
return-object p3
.line 110
:cond_f9
new-instance p1, Lcom/taobao/weex/ui/action/ActionAddRule;
iget-object v0, p0, Lcom/taobao/weex/ui/module/WXDomModule;->mWXSDKInstance:Lcom/taobao/weex/WXSDKInstance;
invoke-virtual {v0}, Lcom/taobao/weex/WXSDKInstance;->getInstanceId()Ljava/lang/String;
move-result-object v0
invoke-virtual {p2, v4}, Lcom/alibaba/fastjson/JSONArray;->getString(I)Ljava/lang/String;
move-result-object v1
invoke-virtual {p2, v5}, Lcom/alibaba/fastjson/JSONArray;->getJSONObject(I)Lcom/alibaba/fastjson/JSONObject;
move-result-object p2
invoke-direct {p1, v0, v1, p2}, Lcom/taobao/weex/ui/action/ActionAddRule;-><init>(Ljava/lang/String;Ljava/lang/String;Lcom/alibaba/fastjson/JSONObject;)V
.line 111
invoke-virtual {p1}, Lcom/taobao/weex/ui/action/ActionAddRule;->executeAction()V
goto :goto_15f
:pswitch_110
if-nez p2, :cond_113
return-object p3
.line 100
:cond_113
invoke-virtual {p2}, Lcom/alibaba/fastjson/JSONArray;->size()I
move-result p1
if-lt p1, v5, :cond_11e
invoke-virtual {p2, v4}, Lcom/alibaba/fastjson/JSONArray;->getString(I)Ljava/lang/String;
move-result-object p1
goto :goto_11f
:cond_11e
move-object p1, p3
.line 101
:goto_11f
invoke-virtual {p2}, Lcom/alibaba/fastjson/JSONArray;->size()I
move-result v0
if-lt v0, v3, :cond_12a
invoke-virtual {p2, v5}, Lcom/alibaba/fastjson/JSONArray;->getJSONObject(I)Lcom/alibaba/fastjson/JSONObject;
move-result-object p2
goto :goto_12b
:cond_12a
move-object p2, p3
.line 102
:goto_12b
new-instance v0, Lcom/taobao/weex/ui/action/GraphicActionScrollToElement;
iget-object v1, p0, Lcom/taobao/weex/ui/module/WXDomModule;->mWXSDKInstance:Lcom/taobao/weex/WXSDKInstance;
invoke-direct {v0, v1, p1, p2}, Lcom/taobao/weex/ui/action/GraphicActionScrollToElement;-><init>(Lcom/taobao/weex/WXSDKInstance;Ljava/lang/String;Lcom/alibaba/fastjson/JSONObject;)V
.line 103
invoke-virtual {v0}, Lcom/taobao/weex/ui/action/GraphicActionScrollToElement;->executeActionOnRender()V
goto :goto_15f
:pswitch_136
if-nez p2, :cond_139
return-object p3
.line 92
:cond_139
new-instance p1, Lcom/taobao/weex/ui/action/ActionGetLayoutDirection;
iget-object v0, p0, Lcom/taobao/weex/ui/module/WXDomModule;->mWXSDKInstance:Lcom/taobao/weex/WXSDKInstance;
invoke-virtual {p2, v4}, Lcom/alibaba/fastjson/JSONArray;->getString(I)Ljava/lang/String;
move-result-object v1
invoke-virtual {p2, v5}, Lcom/alibaba/fastjson/JSONArray;->getString(I)Ljava/lang/String;
move-result-object p2
invoke-direct {p1, v0, v1, p2}, Lcom/taobao/weex/ui/action/ActionGetLayoutDirection;-><init>(Lcom/taobao/weex/WXSDKInstance;Ljava/lang/String;Ljava/lang/String;)V
.line 93
invoke-virtual {p1}, Lcom/taobao/weex/ui/action/ActionGetLayoutDirection;->executeActionOnRender()V
goto :goto_15f
.line 151
:goto_14c
invoke-static {p1}, Lcom/taobao/weex/utils/WXLogUtils;->e(Ljava/lang/String;)V
:try_end_14f
.catch Ljava/lang/IndexOutOfBoundsException; {:try_start_5 .. :try_end_14f} :catch_156
.catch Ljava/lang/ClassCastException; {:try_start_5 .. :try_end_14f} :catch_150
goto :goto_15f
:catch_150
const-string p1, "Dom module call arguments format error!!"
.line 187
invoke-static {p1}, Lcom/taobao/weex/utils/WXLogUtils;->e(Ljava/lang/String;)V
goto :goto_15f
:catch_156
move-exception p1
.line 184
invoke-virtual {p1}, Ljava/lang/IndexOutOfBoundsException;->printStackTrace()V
const-string p1, "Dom module call miss arguments."
.line 185
invoke-static {p1}, Lcom/taobao/weex/utils/WXLogUtils;->e(Ljava/lang/String;)V
:goto_15f
return-object p3
:sswitch_data_160
.sparse-switch
-0x52dd7d74 -> :sswitch_57
-0x4476b4c3 -> :sswitch_4d
-0x2ca0f84c -> :sswitch_43
-0x273a3887 -> :sswitch_39
-0x107a8582 -> :sswitch_2f
0x2314e0cb -> :sswitch_25
0x628bfffe -> :sswitch_1b
0x6fcfed3f -> :sswitch_11
.end sparse-switch
:pswitch_data_182
.packed-switch 0x0
:pswitch_136
:pswitch_110
:pswitch_f6
:pswitch_df
:pswitch_c0
:pswitch_9a
:pswitch_7f
:pswitch_67
.end packed-switch
.end method
.method public varargs callDomMethod(Lcom/alibaba/fastjson/JSONObject;[J)V
.registers 5
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0,
0x0
}
names = {
"task",
"parseNanos"
}
.end annotation
if-nez p1, :cond_3
return-void
:cond_3
const-string v0, "method"
.line 75
invoke-virtual {p1, v0}, Lcom/alibaba/fastjson/JSONObject;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/lang/String;
const-string v1, "args"
.line 76
invoke-virtual {p1, v1}, Lcom/alibaba/fastjson/JSONObject;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p1
check-cast p1, Lcom/alibaba/fastjson/JSONArray;
.line 77
invoke-virtual {p0, v0, p1, p2}, Lcom/taobao/weex/ui/module/WXDomModule;->callDomMethod(Ljava/lang/String;Lcom/alibaba/fastjson/JSONArray;[J)Ljava/lang/Object;
return-void
.end method
.method public invokeMethod(Ljava/lang/String;Ljava/lang/String;Lcom/alibaba/fastjson/JSONArray;)V
.registers 6
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0,
0x0,
0x0
}
names = {
"ref",
"method",
"args"
}
.end annotation
if-eqz p1, :cond_13
if-nez p2, :cond_5
goto :goto_13
.line 196
:cond_5
new-instance v0, Lcom/taobao/weex/ui/action/ActionInvokeMethod;
iget-object v1, p0, Lcom/taobao/weex/ui/module/WXDomModule;->mWXSDKInstance:Lcom/taobao/weex/WXSDKInstance;
invoke-virtual {v1}, Lcom/taobao/weex/WXSDKInstance;->getInstanceId()Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1, p1, p2, p3}, Lcom/taobao/weex/ui/action/ActionInvokeMethod;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/alibaba/fastjson/JSONArray;)V
.line 197
invoke-virtual {v0}, Lcom/taobao/weex/ui/action/ActionInvokeMethod;->executeAction()V
:cond_13
:goto_13
return-void
.end method