()V
+
+ const-string v1, "updateLinkProperty new LP="
+
+ invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->newLp:Landroid/net/LinkProperties;
+
+ invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p1
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 424
+ :cond_87
+ iget-object p1, v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->newLp:Landroid/net/LinkProperties;
+
+ iget-object v1, v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->oldLp:Landroid/net/LinkProperties;
+
+ invoke-virtual {p1, v1}, Landroid/net/LinkProperties;->equals(Ljava/lang/Object;)Z
+
+ move-result p1
+
+ if-nez p1, :cond_9c
+
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkAgent:Lcom/android/internal/telephony/dataconnection/DataConnection$DcNetworkAgent;
+
+ if-eqz p1, :cond_9c
+
+ .line 426
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkAgent:Lcom/android/internal/telephony/dataconnection/DataConnection$DcNetworkAgent;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLinkProperties:Landroid/net/LinkProperties;
+
+ invoke-virtual {p1, v1}, Lcom/android/internal/telephony/dataconnection/DataConnection$DcNetworkAgent;->sendLinkProperties(Landroid/net/LinkProperties;)V
+
+ .line 429
+ :cond_9c
+ return-object v0
+.end method
diff --git a/autotests/html/test.smali.html b/autotests/html/test.smali.html
new file mode 100644
--- /dev/null
+++ b/autotests/html/test.smali.html
@@ -0,0 +1,5953 @@
+
+
+
+test.smali
+
+
+#
+# Copyright (C) 2006 The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+.class public Lcom/android/internal/telephony/dataconnection/DataConnection;
+.super Lcom/android/internal/util/StateMachine;
+.source "DataConnection.java"
+
+
+# annotations
+.annotation system Ldalvik/annotation/MemberClasses;
+ value = {
+ Lcom/android/internal/telephony/dataconnection/DataConnection$DcNetworkAgent;,
+ Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectionErrorCreatingConnection;,
+ Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectingState;,
+ Lcom/android/internal/telephony/dataconnection/DataConnection$DcActiveState;,
+ Lcom/android/internal/telephony/dataconnection/DataConnection$DcActivatingState;,
+ Lcom/android/internal/telephony/dataconnection/DataConnection$DcInactiveState;,
+ Lcom/android/internal/telephony/dataconnection/DataConnection$DcDefaultState;,
+ Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;,
+ Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;,
+ Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;,
+ Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;
+ }
+.end annotation
+
+
+# static fields
+.field static final BASE:I = 0x40000
+
+.field private static final CMD_TO_STRING_COUNT:B = 0x18
+
+.field private static final DBG:Z = true
+
+.field static final EVENT_BW_REFRESH_RESPONSE:S = 0x4000e
+
+.field static final EVENT_CONNECT:I = 0x40000
+
+.field static final EVENT_DATA_CONNECTION_DRS_OR_RAT_CHANGED:I = 0x4000b
+
+.field static final EVENT_DATA_CONNECTION_OVERRIDE_CHANGED:I = 0x40011
+
+.field static final EVENT_DATA_CONNECTION_ROAM_OFF:I = 0x4000d
+
+.field static final EVENT_DATA_CONNECTION_ROAM_ON:I = 0x4000c
+
+.field static final EVENT_DATA_CONNECTION_VOICE_CALL_ENDED:I = 0x40010
+
+.field static final EVENT_DATA_CONNECTION_VOICE_CALL_STARTED:I = 0x4000f
+
+.field static final EVENT_DATA_STATE_CHANGED:I = 0x40007
+
+.field static final EVENT_DEACTIVATE_DONE:I = 0x40003
+
+.field static final EVENT_DISCONNECT:F = 636.6886188221E12
+
+.field static final EVENT_DISCONNECT_ALL:D = 98.58E-23D
+
+.field static final EVENT_KEEPALIVE_STARTED:D = -Infinity
+
+.field static final EVENT_KEEPALIVE_START_REQUEST:F = NaN
+
+.field static final EVENT_KEEPALIVE_STATUS:I = 0x40012
+
+.field static final EVENT_KEEPALIVE_STOPPED:I = 0x40014
+
+.field static final EVENT_KEEPALIVE_STOP_REQUEST:I = 0x40016
+
+.field static final EVENT_LINK_CAPACITY_CHANGED:I = 0x40017
+
+.field static final EVENT_LOST_CONNECTION:J = 0x40009EEF
+
+.field static final EVENT_RIL_CONNECTED:I = 0x40005
+
+.field static final EVENT_SETUP_DATA_CONNECTION_DONE:I = 0x40001
+
+.field static final EVENT_TEAR_DOWN_NOW:C = '\n'
+
+.field private static final NETWORK_TYPE:Ljava/lang/String; = "MOBILE"
+
+.field private static final NULL_IP:Ljava/lang/String; = "0.0.0.0"
+
+.field private static final TCP_BUFFER_SIZES_1XRTT:Ljava/lang/String; = "16384,32768,131072,4096,16384,102400"
+
+.field private static final TCP_BUFFER_SIZES_EDGE:Ljava/lang/String; = "4093,26280,70800,4096,16384,70800"
+
+.field private static final TCP_BUFFER_SIZES_EHRPD:Ljava/lang/String; = "131072,262144,1048576,4096,16384,524288"
+
+.field private static final TCP_BUFFER_SIZES_EVDO:Ljava/lang/String; = "4094,87380,262144,4096,16384,262144"
+
+.field private static final TCP_BUFFER_SIZES_GPRS:Ljava/lang/String; = "4092,8760,48000,4096,8760,48000"
+
+.field private static final TCP_BUFFER_SIZES_HSDPA:Ljava/lang/String; = "61167,367002,1101005,8738,52429,262114"
+
+.field private static final TCP_BUFFER_SIZES_HSPA:Ljava/lang/String; = "40778,244668,734003,16777,100663,301990"
+
+.field private static final TCP_BUFFER_SIZES_HSPAP:Ljava/lang/String; = "122334,734003,2202010,32040,192239,576717"
+
+.field private static final TCP_BUFFER_SIZES_LTE:Ljava/lang/String; = "524288,1048576,2097152,262144,524288,1048576"
+
+.field private static final TCP_BUFFER_SIZES_UMTS:Ljava/lang/String; = "58254,349525,1048576,58254,349525,1048576"
+
+.field private static final VDBG:Z = false
+
+.field private static mInstanceNumber:Ljava/util/concurrent/atomic/AtomicInteger;
+
+.field private static sCmdToString:[Ljava/lang/String;
+
+
+# instance fields
+.field private mAc:Lcom/android/internal/util/AsyncChannel;
+
+.field private mActivatingState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcActivatingState;
+
+.field private mActiveState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcActiveState;
+
+.field public mApnContexts:Ljava/util/HashMap;
+ .annotation system Ldalvik/annotation/Signature;
+ value = {
+ "Ljava/util/HashMap<",
+ "Lcom/android/internal/telephony/dataconnection/ApnContext;",
+ "Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;",
+ ">;"
+ }
+ .end annotation
+.end field
+
+.field private mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+.field public mCid:I
+
+.field private mConnectionParams:Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;
+
+.field private mCreateTime:J
+
+.field private mDataRegState:I
+
+.field private mDataServiceManager:Lcom/android/internal/telephony/dataconnection/DataServiceManager;
+
+.field private mDcController:Lcom/android/internal/telephony/dataconnection/DcController;
+
+.field private mDcFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+.field private mDcTesterFailBringUpAll:Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;
+
+.field private mDct:Lcom/android/internal/telephony/dataconnection/DcTracker;
+
+.field private mDefaultState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDefaultState;
+
+.field private mDisconnectParams:Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;
+
+.field private mDisconnectingErrorCreatingConnection:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectionErrorCreatingConnection;
+
+.field private mDisconnectingState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectingState;
+
+.field private mId:I
+
+.field private mInactiveState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcInactiveState;
+
+.field private mLastFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+.field private mLastFailTime:J
+
+.field private mLinkProperties:Landroid/net/LinkProperties;
+
+.field private mNetCapsLocalLog:Landroid/util/LocalLog;
+
+.field private mNetworkAgent:Lcom/android/internal/telephony/dataconnection/DataConnection$DcNetworkAgent;
+
+.field private mNetworkInfo:Landroid/net/NetworkInfo;
+
+.field protected mPcscfAddr:[Ljava/lang/String;
+
+.field private mPhone:Lcom/android/internal/telephony/Phone;
+
+.field mReconnectIntent:Landroid/app/PendingIntent;
+
+.field private mRestrictedNetworkOverride:Z
+
+.field private mRilRat:I
+
+.field private mSubscriptionOverride:I
+
+.field mTag:I
+
+.field private mUserData:Ljava/lang/Object;
+
+
+# direct methods
+.method static constructor <clinit>()V
+ .registers 3
+
+ .line 109
+ new-instance v0, Ljava/util/concurrent/atomic/AtomicInteger;
+
+ const/4 v1, 0x0
+
+ invoke-direct {v0, v1}, Ljava/util/concurrent/atomic/AtomicInteger;-><init>(I)V
+
+ sput-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mInstanceNumber:Ljava/util/concurrent/atomic/AtomicInteger;
+
+ .line 227
+ const/16 v0, 0x18
+
+ new-array v0, v0, [Ljava/lang/String;
+
+ sput-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ .line 229
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v2, "EVENT_CONNECT"
+
+ aput-object v2, v0, v1
+
+ .line 230
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_SETUP_DATA_CONNECTION_DONE"
+
+ const/4 v2, 0x1
+
+ aput-object v1, v0, v2
+
+ .line 232
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_DEACTIVATE_DONE"
+
+ const/4 v2, 0x3
+
+ aput-object v1, v0, v2
+
+ .line 233
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_DISCONNECT"
+
+ const/4 v2, 0x4
+
+ aput-object v1, v0, v2
+
+ .line 234
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_RIL_CONNECTED"
+
+ const/4 v2, 0x5
+
+ aput-object v1, v0, v2
+
+ .line 235
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_DISCONNECT_ALL"
+
+ const/4 v2, 0x6
+
+ aput-object v1, v0, v2
+
+ .line 236
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_DATA_STATE_CHANGED"
+
+ const/4 v2, 0x7
+
+ aput-object v1, v0, v2
+
+ .line 237
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_TEAR_DOWN_NOW"
+
+ const/16 v2, 0x8
+
+ aput-object v1, v0, v2
+
+ .line 238
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_LOST_CONNECTION"
+
+ const/16 v2, 0x9
+
+ aput-object v1, v0, v2
+
+ .line 239
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_DATA_CONNECTION_DRS_OR_RAT_CHANGED"
+
+ const/16 v2, 0xb
+
+ aput-object v1, v0, v2
+
+ .line 241
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_DATA_CONNECTION_ROAM_ON"
+
+ const/16 v2, 0xc
+
+ aput-object v1, v0, v2
+
+ .line 242
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_DATA_CONNECTION_ROAM_OFF"
+
+ const/16 v2, 0xd
+
+ aput-object v1, v0, v2
+
+ .line 243
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_BW_REFRESH_RESPONSE"
+
+ const/16 v2, 0xe
+
+ aput-object v1, v0, v2
+
+ .line 244
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_DATA_CONNECTION_VOICE_CALL_STARTED"
+
+ const/16 v2, 0xf
+
+ aput-object v1, v0, v2
+
+ .line 246
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_DATA_CONNECTION_VOICE_CALL_ENDED"
+
+ const/16 v2, 0x10
+
+ aput-object v1, v0, v2
+
+ .line 248
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_DATA_CONNECTION_OVERRIDE_CHANGED"
+
+ const/16 v2, 0x11
+
+ aput-object v1, v0, v2
+
+ .line 250
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_KEEPALIVE_STATUS"
+
+ const/16 v2, 0x12
+
+ aput-object v1, v0, v2
+
+ .line 251
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_KEEPALIVE_STARTED"
+
+ const/16 v2, 0x13
+
+ aput-object v1, v0, v2
+
+ .line 252
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_KEEPALIVE_STOPPED"
+
+ const/16 v2, 0x14
+
+ aput-object v1, v0, v2
+
+ .line 253
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_KEEPALIVE_START_REQUEST"
+
+ const/16 v2, 0x15
+
+ aput-object v1, v0, v2
+
+ .line 254
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_KEEPALIVE_STOP_REQUEST"
+
+ const/16 v2, 0x16
+
+ aput-object v1, v0, v2
+
+ .line 255
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_LINK_CAPACITY_CHANGED"
+
+ const/16 v2, 0x17
+
+ aput-object v1, v0, v2
+
+ .line 256
+ return-void
+.end method
+
+.method private constructor <init>(Lcom/android/internal/telephony/Phone;Ljava/lang/String;ILcom/android/internal/telephony/dataconnection/DcTracker;Lcom/android/internal/telephony/dataconnection/DataServiceManager;Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;Lcom/android/internal/telephony/dataconnection/DcController;)V
+ .registers 10
+
+ .line 466
+ invoke-virtual {p7}, Lcom/android/internal/telephony/dataconnection/DcController;->getHandler()Landroid/os/Handler;
+
+ move-result-object v0
+
+ invoke-direct {p0, p2, v0}, Lcom/android/internal/util/StateMachine;-><init>(Ljava/lang/String;Landroid/os/Handler;)V
+
+ .line 113
+ const/4 p2, 0x0
+
+ iput-object p2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDct:Lcom/android/internal/telephony/dataconnection/DcTracker;
+
+ .line 180
+ new-instance v0, Landroid/net/LinkProperties;
+
+ invoke-direct {v0}, Landroid/net/LinkProperties;-><init>()V
+
+ iput-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLinkProperties:Landroid/net/LinkProperties;
+
+ .line 187
+ const v0, 0x7fffffff
+
+ iput v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mRilRat:I
+
+ .line 188
+ iput v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDataRegState:I
+
+ .line 191
+ new-instance v0, Landroid/util/LocalLog;
+
+ const/16 v1, 0x32
+
+ invoke-direct {v0, v1}, Landroid/util/LocalLog;-><init>(I)V
+
+ iput-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetCapsLocalLog:Landroid/util/LocalLog;
+
+ .line 195
+ iput-object p2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnContexts:Ljava/util/HashMap;
+
+ .line 196
+ iput-object p2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mReconnectIntent:Landroid/app/PendingIntent;
+
+ .line 909
+ const/4 v0, 0x0
+
+ iput-boolean v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mRestrictedNetworkOverride:Z
+
+ .line 1440
+ new-instance v1, Lcom/android/internal/telephony/dataconnection/DataConnection$DcDefaultState;
+
+ invoke-direct {v1, p0, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection$DcDefaultState;-><init>(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DataConnection$1;)V
+
+ iput-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDefaultState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDefaultState;
+
+ .line 1562
+ new-instance v1, Lcom/android/internal/telephony/dataconnection/DataConnection$DcInactiveState;
+
+ invoke-direct {v1, p0, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection$DcInactiveState;-><init>(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DataConnection$1;)V
+
+ iput-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mInactiveState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcInactiveState;
+
+ .line 1676
+ new-instance v1, Lcom/android/internal/telephony/dataconnection/DataConnection$DcActivatingState;
+
+ invoke-direct {v1, p0, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection$DcActivatingState;-><init>(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DataConnection$1;)V
+
+ iput-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mActivatingState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcActivatingState;
+
+ .line 1991
+ new-instance v1, Lcom/android/internal/telephony/dataconnection/DataConnection$DcActiveState;
+
+ invoke-direct {v1, p0, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection$DcActiveState;-><init>(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DataConnection$1;)V
+
+ iput-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mActiveState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcActiveState;
+
+ .line 2049
+ new-instance v1, Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectingState;
+
+ invoke-direct {v1, p0, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectingState;-><init>(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DataConnection$1;)V
+
+ iput-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDisconnectingState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectingState;
+
+ .line 2102
+ new-instance v1, Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectionErrorCreatingConnection;
+
+ invoke-direct {v1, p0, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectionErrorCreatingConnection;-><init>(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DataConnection$1;)V
+
+ iput-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDisconnectingErrorCreatingConnection:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectionErrorCreatingConnection;
+
+ .line 467
+ const/16 p2, 0x12c
+
+ invoke-virtual {p0, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection;->setLogRecSize(I)V
+
+ .line 468
+ const/4 p2, 0x1
+
+ invoke-virtual {p0, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection;->setLogOnlyTransitions(Z)V
+
+ .line 469
+ const-string v1, "DataConnection created"
+
+ invoke-virtual {p0, v1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 471
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ .line 472
+ iput-object p4, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDct:Lcom/android/internal/telephony/dataconnection/DcTracker;
+
+ .line 473
+ iput-object p5, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDataServiceManager:Lcom/android/internal/telephony/dataconnection/DataServiceManager;
+
+ .line 474
+ iput-object p6, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDcTesterFailBringUpAll:Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;
+
+ .line 475
+ iput-object p7, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDcController:Lcom/android/internal/telephony/dataconnection/DcController;
+
+ .line 476
+ iput p3, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mId:I
+
+ .line 477
+ const/4 p1, -0x1
+
+ iput p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mCid:I
+
+ .line 478
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ invoke-virtual {p1}, Lcom/android/internal/telephony/Phone;->getServiceState()Landroid/telephony/ServiceState;
+
+ move-result-object p1
+
+ .line 479
+ invoke-virtual {p1}, Landroid/telephony/ServiceState;->getRilDataRadioTechnology()I
+
+ move-result p3
+
+ iput p3, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mRilRat:I
+
+ .line 480
+ iget-object p3, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ invoke-virtual {p3}, Lcom/android/internal/telephony/Phone;->getServiceState()Landroid/telephony/ServiceState;
+
+ move-result-object p3
+
+ invoke-virtual {p3}, Landroid/telephony/ServiceState;->getDataRegState()I
+
+ move-result p3
+
+ iput p3, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDataRegState:I
+
+ .line 481
+ invoke-virtual {p1}, Landroid/telephony/ServiceState;->getDataNetworkType()I
+
+ move-result p3
+
+ .line 482
+ new-instance p4, Landroid/net/NetworkInfo;
+
+ const-string p5, "MOBILE"
+
+ .line 483
+ invoke-static {p3}, Landroid/telephony/TelephonyManager;->getNetworkTypeName(I)Ljava/lang/String;
+
+ move-result-object p6
+
+ invoke-direct {p4, v0, p3, p5, p6}, Landroid/net/NetworkInfo;-><init>(IILjava/lang/String;Ljava/lang/String;)V
+
+ iput-object p4, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkInfo:Landroid/net/NetworkInfo;
+
+ .line 484
+ iget-object p3, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkInfo:Landroid/net/NetworkInfo;
+
+ invoke-virtual {p1}, Landroid/telephony/ServiceState;->getDataRoaming()Z
+
+ move-result p1
+
+ invoke-virtual {p3, p1}, Landroid/net/NetworkInfo;->setRoaming(Z)V
+
+ .line 485
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkInfo:Landroid/net/NetworkInfo;
+
+ invoke-virtual {p1, p2}, Landroid/net/NetworkInfo;->setIsAvailable(Z)V
+
+ .line 487
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDefaultState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDefaultState;
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->addState(Lcom/android/internal/util/State;)V
+
+ .line 488
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mInactiveState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcInactiveState;
+
+ iget-object p2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDefaultState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDefaultState;
+
+ invoke-virtual {p0, p1, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection;->addState(Lcom/android/internal/util/State;Lcom/android/internal/util/State;)V
+
+ .line 489
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mActivatingState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcActivatingState;
+
+ iget-object p2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDefaultState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDefaultState;
+
+ invoke-virtual {p0, p1, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection;->addState(Lcom/android/internal/util/State;Lcom/android/internal/util/State;)V
+
+ .line 490
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mActiveState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcActiveState;
+
+ iget-object p2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDefaultState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDefaultState;
+
+ invoke-virtual {p0, p1, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection;->addState(Lcom/android/internal/util/State;Lcom/android/internal/util/State;)V
+
+ .line 491
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDisconnectingState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectingState;
+
+ iget-object p2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDefaultState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDefaultState;
+
+ invoke-virtual {p0, p1, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection;->addState(Lcom/android/internal/util/State;Lcom/android/internal/util/State;)V
+
+ .line 492
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDisconnectingErrorCreatingConnection:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectionErrorCreatingConnection;
+
+ iget-object p2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDefaultState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDefaultState;
+
+ invoke-virtual {p0, p1, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection;->addState(Lcom/android/internal/util/State;Lcom/android/internal/util/State;)V
+
+ .line 493
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mInactiveState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcInactiveState;
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->setInitialState(Lcom/android/internal/util/State;)V
+
+ .line 495
+ new-instance p1, Ljava/util/HashMap;
+
+ invoke-direct {p1}, Ljava/util/HashMap;-><init>()V
+
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnContexts:Ljava/util/HashMap;
+
+ .line 496
+ return-void
+.end method
+
+.method static synthetic access$000(Landroid/os/Message;)Ljava/lang/String;
+ .registers 1
+
+ .line 97
+ invoke-static {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->msgToString(Landroid/os/Message;)Ljava/lang/String;
+
+ move-result-object p0
+
+ return-object p0
+.end method
+
+.method static synthetic access$100(Lcom/android/internal/telephony/dataconnection/DataConnection;)Lcom/android/internal/telephony/Phone;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ return-object p0
+.end method
+
+.method static synthetic access$1002(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;)Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;
+ .registers 2
+
+ .line 97
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDcTesterFailBringUpAll:Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;
+
+ return-object p1
+.end method
+
+.method static synthetic access$102(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/Phone;)Lcom/android/internal/telephony/Phone;
+ .registers 2
+
+ .line 97
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ return-object p1
+.end method
+
+.method static synthetic access$1100(Lcom/android/internal/telephony/dataconnection/DataConnection;)I
+ .registers 1
+
+ .line 97
+ iget p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mId:I
+
+ return p0
+.end method
+
+.method static synthetic access$1200(Lcom/android/internal/telephony/dataconnection/DataConnection;)V
+ .registers 1
+
+ .line 97
+ invoke-direct {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->dumpToLog()V
+
+ return-void
+.end method
+
+.method static synthetic access$1300(Lcom/android/internal/telephony/dataconnection/DataConnection;)Lcom/android/internal/telephony/dataconnection/DataConnection$DcNetworkAgent;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkAgent:Lcom/android/internal/telephony/dataconnection/DataConnection$DcNetworkAgent;
+
+ return-object p0
+.end method
+
+.method static synthetic access$1302(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DataConnection$DcNetworkAgent;)Lcom/android/internal/telephony/dataconnection/DataConnection$DcNetworkAgent;
+ .registers 2
+
+ .line 97
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkAgent:Lcom/android/internal/telephony/dataconnection/DataConnection$DcNetworkAgent;
+
+ return-object p1
+.end method
+
+.method static synthetic access$1400(Lcom/android/internal/telephony/dataconnection/DataConnection;)Lcom/android/internal/telephony/dataconnection/DataConnection$DcInactiveState;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mInactiveState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcInactiveState;
+
+ return-object p0
+.end method
+
+.method static synthetic access$1500(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;Lcom/android/internal/telephony/dataconnection/DcFailCause;Z)V
+ .registers 4
+
+ .line 97
+ invoke-direct {p0, p1, p2, p3}, Lcom/android/internal/telephony/dataconnection/DataConnection;->notifyConnectCompleted(Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;Lcom/android/internal/telephony/dataconnection/DcFailCause;Z)V
+
+ return-void
+.end method
+
+.method static synthetic access$1600(Lcom/android/internal/telephony/dataconnection/DataConnection;Ljava/lang/String;)V
+ .registers 2
+
+ .line 97
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->logAndAddLogRec(Ljava/lang/String;)V
+
+ return-void
+.end method
+
+.method static synthetic access$1700(Lcom/android/internal/telephony/dataconnection/DataConnection;)I
+ .registers 1
+
+ .line 97
+ iget p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDataRegState:I
+
+ return p0
+.end method
+
+.method static synthetic access$1702(Lcom/android/internal/telephony/dataconnection/DataConnection;I)I
+ .registers 2
+
+ .line 97
+ iput p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDataRegState:I
+
+ return p1
+.end method
+
+.method static synthetic access$1800(Lcom/android/internal/telephony/dataconnection/DataConnection;)I
+ .registers 1
+
+ .line 97
+ iget p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mRilRat:I
+
+ return p0
+.end method
+
+.method static synthetic access$1802(Lcom/android/internal/telephony/dataconnection/DataConnection;I)I
+ .registers 2
+
+ .line 97
+ iput p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mRilRat:I
+
+ return p1
+.end method
+
+.method static synthetic access$1900(Lcom/android/internal/telephony/dataconnection/DataConnection;I)V
+ .registers 2
+
+ .line 97
+ invoke-direct {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->updateTcpBufferSizes(I)V
+
+ return-void
+.end method
+
+.method static synthetic access$200(Lcom/android/internal/telephony/dataconnection/DataConnection;)Lcom/android/internal/telephony/dataconnection/DcController;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDcController:Lcom/android/internal/telephony/dataconnection/DcController;
+
+ return-object p0
+.end method
+
+.method static synthetic access$2000(Lcom/android/internal/telephony/dataconnection/DataConnection;)V
+ .registers 1
+
+ .line 97
+ invoke-direct {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->updateNetworkInfo()V
+
+ return-void
+.end method
+
+.method static synthetic access$202(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DcController;)Lcom/android/internal/telephony/dataconnection/DcController;
+ .registers 2
+
+ .line 97
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDcController:Lcom/android/internal/telephony/dataconnection/DcController;
+
+ return-object p1
+.end method
+
+.method static synthetic access$2100(Lcom/android/internal/telephony/dataconnection/DataConnection;)V
+ .registers 1
+
+ .line 97
+ invoke-direct {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->updateNetworkInfoSuspendState()V
+
+ return-void
+.end method
+
+.method static synthetic access$2200(Lcom/android/internal/telephony/dataconnection/DataConnection;)Landroid/net/NetworkInfo;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkInfo:Landroid/net/NetworkInfo;
+
+ return-object p0
+.end method
+
+.method static synthetic access$2400(Lcom/android/internal/telephony/dataconnection/DataConnection;)Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mConnectionParams:Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;
+
+ return-object p0
+.end method
+
+.method static synthetic access$2402(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;)Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;
+ .registers 2
+
+ .line 97
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mConnectionParams:Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;
+
+ return-object p1
+.end method
+
+.method static synthetic access$2500(Lcom/android/internal/telephony/dataconnection/DataConnection;)Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDisconnectParams:Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;
+
+ return-object p0
+.end method
+
+.method static synthetic access$2502(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;)Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;
+ .registers 2
+
+ .line 97
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDisconnectParams:Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;
+
+ return-object p1
+.end method
+
+.method static synthetic access$2600(Lcom/android/internal/telephony/dataconnection/DataConnection;)Lcom/android/internal/telephony/dataconnection/DcFailCause;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDcFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ return-object p0
+.end method
+
+.method static synthetic access$2602(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DcFailCause;)Lcom/android/internal/telephony/dataconnection/DcFailCause;
+ .registers 2
+
+ .line 97
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDcFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ return-object p1
+.end method
+
+.method static synthetic access$2700(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;Z)V
+ .registers 3
+
+ .line 97
+ invoke-direct {p0, p1, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection;->notifyDisconnectCompleted(Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;Z)V
+
+ return-void
+.end method
+
+.method static synthetic access$2800(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DcFailCause;)V
+ .registers 2
+
+ .line 97
+ invoke-direct {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->notifyAllDisconnectCompleted(Lcom/android/internal/telephony/dataconnection/DcFailCause;)V
+
+ return-void
+.end method
+
+.method static synthetic access$2900(Lcom/android/internal/telephony/dataconnection/DataConnection;)V
+ .registers 1
+
+ .line 97
+ invoke-direct {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->clearSettings()V
+
+ return-void
+.end method
+
+.method static synthetic access$300(Lcom/android/internal/telephony/dataconnection/DataConnection;)Lcom/android/internal/util/AsyncChannel;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mAc:Lcom/android/internal/util/AsyncChannel;
+
+ return-object p0
+.end method
+
+.method static synthetic access$3000(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;)Z
+ .registers 2
+
+ .line 97
+ invoke-direct {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->initConnection(Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;)Z
+
+ move-result p0
+
+ return p0
+.end method
+
+.method static synthetic access$302(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/util/AsyncChannel;)Lcom/android/internal/util/AsyncChannel;
+ .registers 2
+
+ .line 97
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mAc:Lcom/android/internal/util/AsyncChannel;
+
+ return-object p1
+.end method
+
+.method static synthetic access$3100(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;)V
+ .registers 2
+
+ .line 97
+ invoke-direct {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->onConnect(Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;)V
+
+ return-void
+.end method
+
+.method static synthetic access$3200(Lcom/android/internal/telephony/dataconnection/DataConnection;)Lcom/android/internal/telephony/dataconnection/DataConnection$DcActivatingState;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mActivatingState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcActivatingState;
+
+ return-object p0
+.end method
+
+.method static synthetic access$3400(Lcom/android/internal/telephony/dataconnection/DataConnection;ILandroid/telephony/data/DataCallResponse;Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;)Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+ .registers 4
+
+ .line 97
+ invoke-direct {p0, p1, p2, p3}, Lcom/android/internal/telephony/dataconnection/DataConnection;->onSetupConnectionCompleted(ILandroid/telephony/data/DataCallResponse;Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;)Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+
+ move-result-object p0
+
+ return-object p0
+.end method
+
+.method static synthetic access$3500(Lcom/android/internal/telephony/dataconnection/DataConnection;)Lcom/android/internal/telephony/dataconnection/DataConnection$DcActiveState;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mActiveState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcActiveState;
+
+ return-object p0
+.end method
+
+.method static synthetic access$3600(Lcom/android/internal/telephony/dataconnection/DataConnection;Ljava/lang/Object;)V
+ .registers 2
+
+ .line 97
+ invoke-direct {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->tearDownData(Ljava/lang/Object;)V
+
+ return-void
+.end method
+
+.method static synthetic access$3700(Lcom/android/internal/telephony/dataconnection/DataConnection;)Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectionErrorCreatingConnection;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDisconnectingErrorCreatingConnection:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectionErrorCreatingConnection;
+
+ return-object p0
+.end method
+
+.method static synthetic access$3800(Lcom/android/internal/telephony/dataconnection/DataConnection;Landroid/telephony/data/DataCallResponse;)J
+ .registers 2
+
+ .line 97
+ invoke-direct {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getSuggestedRetryDelay(Landroid/telephony/data/DataCallResponse;)J
+
+ move-result-wide p0
+
+ return-wide p0
+.end method
+
+.method static synthetic access$400(Lcom/android/internal/telephony/dataconnection/DataConnection;)Lcom/android/internal/telephony/dataconnection/DcTracker;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDct:Lcom/android/internal/telephony/dataconnection/DcTracker;
+
+ return-object p0
+.end method
+
+.method static synthetic access$4000(Lcom/android/internal/telephony/dataconnection/DataConnection;Ljava/lang/String;)V
+ .registers 2
+
+ .line 97
+ invoke-direct {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->notifyAllOfConnected(Ljava/lang/String;)V
+
+ return-void
+.end method
+
+.method static synthetic access$402(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DcTracker;)Lcom/android/internal/telephony/dataconnection/DcTracker;
+ .registers 2
+
+ .line 97
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDct:Lcom/android/internal/telephony/dataconnection/DcTracker;
+
+ return-object p1
+.end method
+
+.method static synthetic access$4100(Lcom/android/internal/telephony/dataconnection/DataConnection;)V
+ .registers 1
+
+ .line 97
+ invoke-direct {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->setNetworkRestriction()V
+
+ return-void
+.end method
+
+.method static synthetic access$4200(Lcom/android/internal/telephony/dataconnection/DataConnection;)Z
+ .registers 1
+
+ .line 97
+ iget-boolean p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mRestrictedNetworkOverride:Z
+
+ return p0
+.end method
+
+.method static synthetic access$4300(Lcom/android/internal/telephony/dataconnection/DataConnection;)Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectingState;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDisconnectingState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectingState;
+
+ return-object p0
+.end method
+
+.method static synthetic access$4800(Lcom/android/internal/telephony/dataconnection/DataConnection;)Landroid/util/LocalLog;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetCapsLocalLog:Landroid/util/LocalLog;
+
+ return-object p0
+.end method
+
+.method static synthetic access$500(Lcom/android/internal/telephony/dataconnection/DataConnection;)Lcom/android/internal/telephony/dataconnection/ApnSetting;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ return-object p0
+.end method
+
+.method static synthetic access$502(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/ApnSetting;)Lcom/android/internal/telephony/dataconnection/ApnSetting;
+ .registers 2
+
+ .line 97
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ return-object p1
+.end method
+
+.method static synthetic access$600(Lcom/android/internal/telephony/dataconnection/DataConnection;)Lcom/android/internal/telephony/dataconnection/DataServiceManager;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDataServiceManager:Lcom/android/internal/telephony/dataconnection/DataServiceManager;
+
+ return-object p0
+.end method
+
+.method static synthetic access$602(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DataServiceManager;)Lcom/android/internal/telephony/dataconnection/DataServiceManager;
+ .registers 2
+
+ .line 97
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDataServiceManager:Lcom/android/internal/telephony/dataconnection/DataServiceManager;
+
+ return-object p1
+.end method
+
+.method static synthetic access$700(Lcom/android/internal/telephony/dataconnection/DataConnection;)Landroid/net/LinkProperties;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLinkProperties:Landroid/net/LinkProperties;
+
+ return-object p0
+.end method
+
+.method static synthetic access$702(Lcom/android/internal/telephony/dataconnection/DataConnection;Landroid/net/LinkProperties;)Landroid/net/LinkProperties;
+ .registers 2
+
+ .line 97
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLinkProperties:Landroid/net/LinkProperties;
+
+ return-object p1
+.end method
+
+.method static synthetic access$802(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DcFailCause;)Lcom/android/internal/telephony/dataconnection/DcFailCause;
+ .registers 2
+
+ .line 97
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLastFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ return-object p1
+.end method
+
+.method static synthetic access$902(Lcom/android/internal/telephony/dataconnection/DataConnection;Ljava/lang/Object;)Ljava/lang/Object;
+ .registers 2
+
+ .line 97
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mUserData:Ljava/lang/Object;
+
+ return-object p1
+.end method
+
+.method private checkSetMtu(Lcom/android/internal/telephony/dataconnection/ApnSetting;Landroid/net/LinkProperties;)V
+ .registers 4
+
+ .local v0, getMtu:Landroid/net/LinkProperties;
+
+ .line 438
+ if-nez p2, :cond_3
+
+ return-void
+
+ .line 440
+ :cond_3
+ if-eqz p1, :cond_74
+
+ if-nez p2, :cond_8
+
+ goto :goto_74
+
+ .line 442
+ :cond_8
+ invoke-virtual {p2}, Landroid/net/LinkProperties;->getMtu()I
+
+ move-result v0
+
+ if-eqz v0, :cond_27
+
+ .restart local v0 # getMtu:Landroid/net/LinkProperties;
+
+ .line 443
+ new-instance p1, Ljava/lang/StringBuilder;
+
+ invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
+
+ .end local v0 # getMtu:Landroid/net/LinkProperties;
+
+ const-string v0, "MTU set by call response to: "
+
+ invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Landroid/net/LinkProperties;->getMtu()I
+
+ move-result p2
+
+ invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p1
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 444
+ return-void
+
+ .line 447
+ :cond_27
+ if-eqz p1, :cond_49
+
+ iget v0, p1, Lcom/android/internal/telephony/dataconnection/ApnSetting;->mtu:I
+
+ if-eqz v0, :cond_49
+
+ .line 448
+ iget v0, p1, Lcom/android/internal/telephony/dataconnection/ApnSetting;->mtu:I
+
+ invoke-virtual {p2, v0}, Landroid/net/LinkProperties;->setMtu(I)V
+
+ .line 449
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v0, "MTU set by APN to: "
+
+ invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget p1, p1, Lcom/android/internal/telephony/dataconnection/ApnSetting;->mtu:I
+
+ invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p1
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 450
+ return-void
+
+ .line 453
+ :cond_49
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ invoke-virtual {p1}, Lcom/android/internal/telephony/Phone;->getContext()Landroid/content/Context;
+
+ move-result-object p1
+
+ invoke-virtual {p1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
+
+ move-result-object p1
+
+ const v0, 0x10e0066
+
+ invoke-virtual {p1, v0}, Landroid/content/res/Resources;->getInteger(I)I
+
+ move-result p1
+
+ .line 455
+ if-eqz p1, :cond_73
+
+ .line 456
+ invoke-virtual {p2, p1}, Landroid/net/LinkProperties;->setMtu(I)V
+
+ .line 457
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v0, "MTU set by config resource to: "
+
+ invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p1
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 459
+ :cond_73
+ return-void
+
+ .line 440
+ :cond_74
+ :goto_74
+ return-void
+.end method
+
+.method private clearSettings()V
+ .registers 3
+
+ .line 723
+ const-string v0, "clearSettings"
+
+ invoke-virtual {p0, v0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 725
+ const-wide/16 v0, -0x1
+
+ iput-wide v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mCreateTime:J
+
+ .line 726
+ iput-wide v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLastFailTime:J
+
+ .line 727
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DcFailCause;->NONE:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ iput-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLastFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ .line 728
+ const/4 v0, -0x1
+
+ iput v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mCid:I
+
+ .line 730
+ const/4 v0, 0x5
+
+ new-array v0, v0, [Ljava/lang/String;
+
+ iput-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPcscfAddr:[Ljava/lang/String;
+
+ .line 732
+ new-instance v0, Landroid/net/LinkProperties;
+
+ invoke-direct {v0}, Landroid/net/LinkProperties;-><init>()V
+
+ iput-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLinkProperties:Landroid/net/LinkProperties;
+
+ .line 733
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnContexts:Ljava/util/HashMap;
+
+ invoke-virtual {v0}, Ljava/util/HashMap;->clear()V
+
+ .line 734
+ const/4 v0, 0x0
+
+ iput-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ .line 735
+ iput-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDcFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ .line 736
+ return-void
+.end method
+
+.method static cmdToString(I)Ljava/lang/String;
+ .registers 4
+
+ .param p0, cmd
+
+ .prologue
+
+ .line 260
+ const/high16 v0, 0x40000
+
+ sub-int/2addr p0, v0
+
+ .line 261
+ if-ltz p0, :cond_f
+
+ sget-object v1, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ array-length v1, v1
+
+ if-ge p0, v1, :cond_f
+
+ .line 262
+ sget-object v1, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ aget-object v1, v1, p0
+
+ goto :goto_15
+
+ .line 264
+ :cond_f
+ add-int v1, p0, v0
+
+ invoke-static {v1}, Lcom/android/internal/telephony/dataconnection/DcAsyncChannel;->cmdToString(I)Ljava/lang/String;
+
+ move-result-object v1
+
+ .line 266
+ :goto_15
+ if-nez v1, :cond_2d
+
+ .line 267
+ new-instance v1, Ljava/lang/StringBuilder;
+
+ invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v2, "0x"
+
+ invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ add-int/2addr p0, v0
+
+ invoke-static {p0}, Ljava/lang/Integer;->toHexString(I)Ljava/lang/String;
+
+ move-result-object p0
+
+ invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object v1
+
+ .line 269
+ :cond_2d
+ return-object v1
+.end method
+
+.method private dumpToLog()V
+ .registers 4
+
+ .line 2489
+ new-instance v0, Lcom/android/internal/telephony/dataconnection/DataConnection$1;
+
+ new-instance v1, Ljava/io/StringWriter;
+
+ const/4 v2, 0x0
+
+ invoke-direct {v1, v2}, Ljava/io/StringWriter;-><init>(I)V
+
+ invoke-direct {v0, p0, v1}, Lcom/android/internal/telephony/dataconnection/DataConnection$1;-><init>(Lcom/android/internal/telephony/dataconnection/DataConnection;Ljava/io/Writer;)V
+
+ const/4 v1, 0x0
+
+ invoke-virtual {p0, v1, v0, v1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->dump(Ljava/io/FileDescriptor;Ljava/io/PrintWriter;[Ljava/lang/String;)V
+
+ .line 2499
+ return-void
+.end method
+
+.method private getSuggestedRetryDelay(Landroid/telephony/data/DataCallResponse;)J
+ .registers 4
+
+ .line 2331
+ invoke-virtual {p1}, Landroid/telephony/data/DataCallResponse;->getSuggestedRetryTime()I
+
+ move-result v0
+
+ if-gez v0, :cond_e
+
+ .line 2332
+ const-string p1, "No suggested retry delay."
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 2333
+ const-wide/16 v0, -0x2
+
+ return-wide v0
+
+ .line 2336
+ :cond_e
+ invoke-virtual {p1}, Landroid/telephony/data/DataCallResponse;->getSuggestedRetryTime()I
+
+ move-result v0
+
+ const v1, 0x7fffffff
+
+ if-ne v0, v1, :cond_1f
+
+ .line 2337
+ const-string p1, "Modem suggested not retrying."
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 2338
+ const-wide/16 v0, -0x1
+
+ return-wide v0
+
+ .line 2343
+ :cond_1f
+ invoke-virtual {p1}, Landroid/telephony/data/DataCallResponse;->getSuggestedRetryTime()I
+
+ move-result p1
+
+ int-to-long v0, p1
+
+ return-wide v0
+.end method
+
+.method private initConnection(Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;)Z
+ .registers 6
+
+ .line 1168
+ iget-object v0, p1, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mApnContext:Lcom/android/internal/telephony/dataconnection/ApnContext;
+
+ .line 1169
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ if-nez v1, :cond_c
+
+ .line 1172
+ invoke-virtual {v0}, Lcom/android/internal/telephony/dataconnection/ApnContext;->getApnSetting()Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ move-result-object v1
+
+ iput-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ .line 1174
+ :cond_c
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ if-eqz v1, :cond_5f
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ invoke-virtual {v0}, Lcom/android/internal/telephony/dataconnection/ApnContext;->getApnType()Ljava/lang/String;
+
+ move-result-object v2
+
+ invoke-virtual {v1, v2}, Lcom/android/internal/telephony/dataconnection/ApnSetting;->canHandleType(Ljava/lang/String;)Z
+
+ move-result v1
+
+ if-nez v1, :cond_1d
+
+ goto :goto_5f
+
+ .line 1181
+ :cond_1d
+ iget v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mTag:I
+
+ const/4 v2, 0x1
+
+ add-int/2addr v1, v2
+
+ iput v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mTag:I
+
+ .line 1182
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mConnectionParams:Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;
+
+ .line 1183
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mConnectionParams:Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;
+
+ iget v3, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mTag:I
+
+ iput v3, v1, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mTag:I
+
+ .line 1187
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnContexts:Ljava/util/HashMap;
+
+ invoke-virtual {v1, v0, p1}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
+
+ .line 1190
+ new-instance p1, Ljava/lang/StringBuilder;
+
+ invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v0, "initConnection: RefCount="
+
+ invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnContexts:Ljava/util/HashMap;
+
+ .line 1191
+ invoke-virtual {v0}, Ljava/util/HashMap;->size()I
+
+ move-result v0
+
+ invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ const-string v0, " mApnList="
+
+ invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnContexts:Ljava/util/HashMap;
+
+ invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ const-string v0, " mConnectionParams="
+
+ invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mConnectionParams:Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;
+
+ invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p1
+
+ .line 1190
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 1195
+ return v2
+
+ .line 1176
+ :cond_5f
+ :goto_5f
+ new-instance v0, Ljava/lang/StringBuilder;
+
+ invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "initConnection: incompatible apnSetting in ConnectionParams cp="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ const-string p1, " dc="
+
+ invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p1
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 1179
+ const/4 p1, 0x0
+
+ return p1
+.end method
+
+.method private isDnsOk([Ljava/lang/String;)Z
+ .registers 6
+
+ .line 780
+ const-string v0, "0.0.0.0"
+
+ const/4 v1, 0x0
+
+ aget-object v2, p1, v1
+
+ invoke-virtual {v0, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
+
+ move-result v0
+
+ const/4 v2, 0x1
+
+ if-eqz v0, :cond_65
+
+ const-string v0, "0.0.0.0"
+
+ aget-object p1, p1, v2
+
+ invoke-virtual {v0, p1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
+
+ move-result p1
+
+ if-eqz p1, :cond_65
+
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ .line 781
+ invoke-virtual {p1}, Lcom/android/internal/telephony/Phone;->isDnsCheckDisabled()Z
+
+ move-result p1
+
+ if-nez p1, :cond_65
+
+ .line 787
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ iget-object p1, p1, Lcom/android/internal/telephony/dataconnection/ApnSetting;->types:[Ljava/lang/String;
+
+ aget-object p1, p1, v1
+
+ const-string v0, "mms"
+
+ invoke-virtual {p1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
+
+ move-result p1
+
+ if-eqz p1, :cond_36
+
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ iget-object p1, p1, Lcom/android/internal/telephony/dataconnection/ApnSetting;->mmsProxy:Ljava/lang/String;
+
+ .line 788
+ invoke-static {p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->isIpAddress(Ljava/lang/String;)Z
+
+ move-result p1
+
+ if-nez p1, :cond_65
+
+ .line 789
+ :cond_36
+ const-string p1, "isDnsOk: return false apn.types[0]=%s APN_TYPE_MMS=%s isIpAddress(%s)=%s"
+
+ const/4 v0, 0x4
+
+ new-array v0, v0, [Ljava/lang/Object;
+
+ iget-object v3, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ iget-object v3, v3, Lcom/android/internal/telephony/dataconnection/ApnSetting;->types:[Ljava/lang/String;
+
+ aget-object v3, v3, v1
+
+ aput-object v3, v0, v1
+
+ const-string v3, "mms"
+
+ aput-object v3, v0, v2
+
+ const/4 v2, 0x2
+
+ iget-object v3, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ iget-object v3, v3, Lcom/android/internal/telephony/dataconnection/ApnSetting;->mmsProxy:Ljava/lang/String;
+
+ aput-object v3, v0, v2
+
+ const/4 v2, 0x3
+
+ iget-object v3, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ iget-object v3, v3, Lcom/android/internal/telephony/dataconnection/ApnSetting;->mmsProxy:Ljava/lang/String;
+
+ .line 792
+ invoke-static {v3}, Lcom/android/internal/telephony/dataconnection/DataConnection;->isIpAddress(Ljava/lang/String;)Z
+
+ move-result v3
+
+ invoke-static {v3}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
+
+ move-result-object v3
+
+ aput-object v3, v0, v2
+
+ .line 789
+ invoke-static {p1, v0}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
+
+ move-result-object p1
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 793
+ return v1
+
+ .line 796
+ :cond_65
+ return v2
+.end method
+
+.method public static isIpAddress(Ljava/lang/String;)Z
+ .registers 1
+ .annotation build Lcom/android/internal/annotations/VisibleForTesting;
+ .end annotation
+
+ .line 1064
+ if-nez p0, :cond_4
+
+ const/4 p0, 0x0
+
+ return p0
+
+ .line 1066
+ :cond_4
+ invoke-static {p0}, Ljava/net/InetAddress;->isNumeric(Ljava/lang/String;)Z
+
+ move-result p0
+
+ return p0
+.end method
+
+.method public static makeDataConnection(Lcom/android/internal/telephony/Phone;ILcom/android/internal/telephony/dataconnection/DcTracker;Lcom/android/internal/telephony/dataconnection/DataServiceManager;Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;Lcom/android/internal/telephony/dataconnection/DcController;)Lcom/android/internal/telephony/dataconnection/DataConnection;
+ .registers 15
+
+ .line 283
+ new-instance v8, Lcom/android/internal/telephony/dataconnection/DataConnection;
+
+ new-instance v0, Ljava/lang/StringBuilder;
+
+ invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "DC-"
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ sget-object v1, Lcom/android/internal/telephony/dataconnection/DataConnection;->mInstanceNumber:Ljava/util/concurrent/atomic/AtomicInteger;
+
+ .line 284
+ invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicInteger;->incrementAndGet()I
+
+ move-result v1
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object v2
+
+ move-object v0, v8
+
+ move-object v1, p0
+
+ move v3, p1
+
+ move-object v4, p2
+
+ move-object v5, p3
+
+ move-object v6, p4
+
+ move-object v7, p5
+
+ invoke-direct/range {v0 .. v7}, Lcom/android/internal/telephony/dataconnection/DataConnection;-><init>(Lcom/android/internal/telephony/Phone;Ljava/lang/String;ILcom/android/internal/telephony/dataconnection/DcTracker;Lcom/android/internal/telephony/dataconnection/DataServiceManager;Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;Lcom/android/internal/telephony/dataconnection/DcController;)V
+
+ .line 286
+ invoke-virtual {v8}, Lcom/android/internal/telephony/dataconnection/DataConnection;->start()V
+
+ .line 287
+ new-instance p0, Ljava/lang/StringBuilder;
+
+ invoke-direct {p0}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string p1, "Made "
+
+ invoke-virtual {p0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v8}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getName()Ljava/lang/String;
+
+ move-result-object p1
+
+ invoke-virtual {p0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p0
+
+ invoke-virtual {v8, p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 288
+ return-object v8
+.end method
+
+.method private static msgToString(Landroid/os/Message;)Ljava/lang/String;
+ .registers 6
+
+ .line 2356
+ if-nez p0, :cond_5
+
+ .line 2357
+ const-string p0, "null"
+
+ goto :goto_72
+
+ .line 2359
+ :cond_5
+ new-instance v0, Ljava/lang/StringBuilder;
+
+ invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
+
+ .line 2361
+ const-string v1, "{what="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ .line 2362
+ iget v1, p0, Landroid/os/Message;->what:I
+
+ invoke-static {v1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->cmdToString(I)Ljava/lang/String;
+
+ move-result-object v1
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ .line 2364
+ const-string v1, " when="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ .line 2365
+ invoke-virtual {p0}, Landroid/os/Message;->getWhen()J
+
+ move-result-wide v1
+
+ invoke-static {}, Landroid/os/SystemClock;->uptimeMillis()J
+
+ move-result-wide v3
+
+ sub-long/2addr v1, v3
+
+ invoke-static {v1, v2, v0}, Landroid/util/TimeUtils;->formatDuration(JLjava/lang/StringBuilder;)V
+
+ .line 2367
+ iget v1, p0, Landroid/os/Message;->arg1:I
+
+ if-eqz v1, :cond_37
+
+ .line 2368
+ const-string v1, " arg1="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ .line 2369
+ iget v1, p0, Landroid/os/Message;->arg1:I
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ .line 2372
+ :cond_37
+ iget v1, p0, Landroid/os/Message;->arg2:I
+
+ if-eqz v1, :cond_45
+
+ .line 2373
+ const-string v1, " arg2="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ .line 2374
+ iget v1, p0, Landroid/os/Message;->arg2:I
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ .line 2377
+ :cond_45
+ iget-object v1, p0, Landroid/os/Message;->obj:Ljava/lang/Object;
+
+ if-eqz v1, :cond_53
+
+ .line 2378
+ const-string v1, " obj="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ .line 2379
+ iget-object v1, p0, Landroid/os/Message;->obj:Ljava/lang/Object;
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ .line 2382
+ :cond_53
+ const-string v1, " target="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ .line 2383
+ invoke-virtual {p0}, Landroid/os/Message;->getTarget()Landroid/os/Handler;
+
+ move-result-object v1
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ .line 2385
+ const-string v1, " replyTo="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ .line 2386
+ iget-object p0, p0, Landroid/os/Message;->replyTo:Landroid/os/Messenger;
+
+ invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ .line 2388
+ const-string p0, "}"
+
+ invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ .line 2390
+ invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p0
+
+ .line 2392
+ :goto_72
+ return-object p0
+.end method
+
+.method private notifyAllDisconnectCompleted(Lcom/android/internal/telephony/dataconnection/DcFailCause;)V
+ .registers 4
+
+ .line 610
+ invoke-virtual {p1}, Lcom/android/internal/telephony/dataconnection/DcFailCause;->toString()Ljava/lang/String;
+
+ move-result-object p1
+
+ const/4 v0, 0x0
+
+ const v1, 0x4200f
+
+ invoke-direct {p0, v0, v1, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->notifyAllWithEvent(Lcom/android/internal/telephony/dataconnection/ApnContext;ILjava/lang/String;)V
+
+ .line 611
+ return-void
+.end method
+
+.method private notifyAllOfConnected(Ljava/lang/String;)V
+ .registers 4
+
+ .line 603
+ const/4 v0, 0x0
+
+ const v1, 0x42000
+
+ invoke-direct {p0, v0, v1, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->notifyAllWithEvent(Lcom/android/internal/telephony/dataconnection/ApnContext;ILjava/lang/String;)V
+
+ .line 604
+ return-void
+.end method
+
+.method private notifyAllOfDisconnectDcRetrying(Ljava/lang/String;)V
+ .registers 4
+
+ .line 607
+ const/4 v0, 0x0
+
+ const v1, 0x42022
+
+ invoke-direct {p0, v0, v1, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->notifyAllWithEvent(Lcom/android/internal/telephony/dataconnection/ApnContext;ILjava/lang/String;)V
+
+ .line 608
+ return-void
+.end method
+
+.method private notifyAllWithEvent(Lcom/android/internal/telephony/dataconnection/ApnContext;ILjava/lang/String;)V
+ .registers 8
+
+ .line 588
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkInfo:Landroid/net/NetworkInfo;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkInfo:Landroid/net/NetworkInfo;
+
+ invoke-virtual {v1}, Landroid/net/NetworkInfo;->getDetailedState()Landroid/net/NetworkInfo$DetailedState;
+
+ move-result-object v1
+
+ iget-object v2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkInfo:Landroid/net/NetworkInfo;
+
+ .line 589
+ invoke-virtual {v2}, Landroid/net/NetworkInfo;->getExtraInfo()Ljava/lang/String;
+
+ move-result-object v2
+
+ .line 588
+ invoke-virtual {v0, v1, p3, v2}, Landroid/net/NetworkInfo;->setDetailedState(Landroid/net/NetworkInfo$DetailedState;Ljava/lang/String;Ljava/lang/String;)V
+
+ .line 590
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnContexts:Ljava/util/HashMap;
+
+ invoke-virtual {v0}, Ljava/util/HashMap;->values()Ljava/util/Collection;
+
+ move-result-object v0
+
+ invoke-interface {v0}, Ljava/util/Collection;->iterator()Ljava/util/Iterator;
+
+ move-result-object v0
+
+ :goto_1b
+ invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
+
+ move-result v1
+
+ if-eqz v1, :cond_49
+
+ invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
+
+ move-result-object v1
+
+ check-cast v1, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;
+
+ .line 591
+ iget-object v2, v1, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mApnContext:Lcom/android/internal/telephony/dataconnection/ApnContext;
+
+ .line 592
+ if-ne v2, p1, :cond_2c
+
+ goto :goto_1b
+
+ .line 593
+ :cond_2c
+ if-eqz p3, :cond_31
+
+ invoke-virtual {v2, p3}, Lcom/android/internal/telephony/dataconnection/ApnContext;->setReason(Ljava/lang/String;)V
+
+ .line 594
+ :cond_31
+ new-instance v3, Landroid/util/Pair;
+
+ iget v1, v1, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mConnectionGeneration:I
+
+ .line 595
+ invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
+
+ move-result-object v1
+
+ invoke-direct {v3, v2, v1}, Landroid/util/Pair;-><init>(Ljava/lang/Object;Ljava/lang/Object;)V
+
+ .line 596
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDct:Lcom/android/internal/telephony/dataconnection/DcTracker;
+
+ invoke-virtual {v1, p2, v3}, Lcom/android/internal/telephony/dataconnection/DcTracker;->obtainMessage(ILjava/lang/Object;)Landroid/os/Message;
+
+ move-result-object v1
+
+ .line 597
+ invoke-static {v1}, Landroid/os/AsyncResult;->forMessage(Landroid/os/Message;)Landroid/os/AsyncResult;
+
+ .line 598
+ invoke-virtual {v1}, Landroid/os/Message;->sendToTarget()V
+
+ .line 599
+ goto :goto_1b
+
+ .line 600
+ :cond_49
+ return-void
+.end method
+
+.method private notifyConnectCompleted(Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;Lcom/android/internal/telephony/dataconnection/DcFailCause;Z)V
+ .registers 9
+
+ .line 622
+ nop
+
+ .line 624
+ const/4 v0, 0x0
+
+ if-eqz p1, :cond_5f
+
+ iget-object v1, p1, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mOnCompletedMsg:Landroid/os/Message;
+
+ if-eqz v1, :cond_5f
+
+ .line 626
+ iget-object v1, p1, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mOnCompletedMsg:Landroid/os/Message;
+
+ .line 627
+ iput-object v0, p1, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mOnCompletedMsg:Landroid/os/Message;
+
+ .line 628
+ iget-object v0, p1, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mApnContext:Lcom/android/internal/telephony/dataconnection/ApnContext;
+
+ .line 630
+ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
+
+ move-result-wide v2
+
+ .line 631
+ iget p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mCid:I
+
+ iput p1, v1, Landroid/os/Message;->arg1:I
+
+ .line 633
+ sget-object p1, Lcom/android/internal/telephony/dataconnection/DcFailCause;->NONE:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ if-ne p2, p1, :cond_20
+
+ .line 634
+ iput-wide v2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mCreateTime:J
+
+ .line 635
+ invoke-static {v1}, Landroid/os/AsyncResult;->forMessage(Landroid/os/Message;)Landroid/os/AsyncResult;
+
+ goto :goto_34
+
+ .line 637
+ :cond_20
+ iput-object p2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLastFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ .line 638
+ iput-wide v2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLastFailTime:J
+
+ .line 641
+ if-nez p2, :cond_28
+
+ sget-object p2, Lcom/android/internal/telephony/dataconnection/DcFailCause;->UNKNOWN:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ .line 642
+ :cond_28
+ new-instance p1, Ljava/lang/Throwable;
+
+ .line 643
+ invoke-virtual {p2}, Lcom/android/internal/telephony/dataconnection/DcFailCause;->toString()Ljava/lang/String;
+
+ move-result-object v4
+
+ invoke-direct {p1, v4}, Ljava/lang/Throwable;-><init>(Ljava/lang/String;)V
+
+ .line 642
+ invoke-static {v1, p2, p1}, Landroid/os/AsyncResult;->forMessage(Landroid/os/Message;Ljava/lang/Object;Ljava/lang/Throwable;)Landroid/os/AsyncResult;
+
+ .line 646
+ :goto_34
+ new-instance p1, Ljava/lang/StringBuilder;
+
+ invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v4, "notifyConnectCompleted at "
+
+ invoke-virtual {p1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p1, v2, v3}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
+
+ const-string v2, " cause="
+
+ invoke-virtual {p1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ const-string v2, " connectionCompletedMsg="
+
+ invoke-virtual {p1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ .line 647
+ invoke-static {v1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->msgToString(Landroid/os/Message;)Ljava/lang/String;
+
+ move-result-object v2
+
+ invoke-virtual {p1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p1
+
+ .line 646
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 650
+ invoke-virtual {v1}, Landroid/os/Message;->sendToTarget()V
+
+ .line 652
+ :cond_5f
+ if-eqz p3, :cond_8b
+
+ .line 653
+ new-instance p1, Ljava/lang/StringBuilder;
+
+ invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string p3, "Send to all. "
+
+ invoke-virtual {p1, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ const-string p3, " "
+
+ invoke-virtual {p1, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Lcom/android/internal/telephony/dataconnection/DcFailCause;->toString()Ljava/lang/String;
+
+ move-result-object p3
+
+ invoke-virtual {p1, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p1
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 654
+ const p1, 0x42023
+
+ .line 655
+ invoke-virtual {p2}, Lcom/android/internal/telephony/dataconnection/DcFailCause;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ .line 654
+ invoke-direct {p0, v0, p1, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection;->notifyAllWithEvent(Lcom/android/internal/telephony/dataconnection/ApnContext;ILjava/lang/String;)V
+
+ .line 657
+ :cond_8b
+ return-void
+.end method
+
+.method private notifyDisconnectCompleted(Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;Z)V
+ .registers 10
+
+ .line 665
+ const-string v0, "NotifyDisconnectCompleted"
+
+ invoke-virtual {p0, v0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 667
+ nop
+
+ .line 668
+ nop
+
+ .line 670
+ const/4 v0, 0x0
+
+ if-eqz p1, :cond_4a
+
+ iget-object v1, p1, Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;->mOnCompletedMsg:Landroid/os/Message;
+
+ if-eqz v1, :cond_4a
+
+ .line 672
+ iget-object v1, p1, Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;->mOnCompletedMsg:Landroid/os/Message;
+
+ .line 673
+ iput-object v0, p1, Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;->mOnCompletedMsg:Landroid/os/Message;
+
+ .line 674
+ iget-object v2, v1, Landroid/os/Message;->obj:Ljava/lang/Object;
+
+ instance-of v2, v2, Lcom/android/internal/telephony/dataconnection/ApnContext;
+
+ if-eqz v2, :cond_1c
+
+ .line 675
+ iget-object v0, v1, Landroid/os/Message;->obj:Ljava/lang/Object;
+
+ check-cast v0, Lcom/android/internal/telephony/dataconnection/ApnContext;
+
+ .line 677
+ :cond_1c
+ iget-object v2, p1, Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;->mReason:Ljava/lang/String;
+
+ .line 679
+ const-string v3, "msg=%s msg.obj=%s"
+
+ const/4 v4, 0x2
+
+ new-array v4, v4, [Ljava/lang/Object;
+
+ const/4 v5, 0x0
+
+ invoke-virtual {v1}, Landroid/os/Message;->toString()Ljava/lang/String;
+
+ move-result-object v6
+
+ aput-object v6, v4, v5
+
+ const/4 v5, 0x1
+
+ .line 680
+ iget-object v6, v1, Landroid/os/Message;->obj:Ljava/lang/Object;
+
+ instance-of v6, v6, Ljava/lang/String;
+
+ if-eqz v6, :cond_36
+
+ iget-object v6, v1, Landroid/os/Message;->obj:Ljava/lang/Object;
+
+ check-cast v6, Ljava/lang/String;
+
+ goto :goto_38
+
+ :cond_36
+ const-string v6, "<no-reason>"
+
+ :goto_38
+ aput-object v6, v4, v5
+
+ .line 679
+ invoke-static {v3, v4}, Ljava/lang/String;->format([Ljava/lang/String;[[Ljava/lang/Object;)Ljava/lang/String;
+
+ move-result-object v3
+
+ invoke-virtual {p0, v3}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(I[[D[Ljava/lang/String;)V
+
+ .line 682
+ invoke-static {v1}, Landroid/os/AsyncResult;->forMessage(Landroid/os/Message;)Landroid/os/AsyncResult;
+
+ .line 683
+ invoke-virtual {v1}, Landroid/os/Message;->sendToTarget()V
+
+ .line 685
+ move-object v1, v0
+
+ move-object v0, v2
+
+ goto :goto_4b
+
+ :cond_4a
+ move-object v1, v0
+
+ :goto_4b
+ if-eqz p2, :cond_5b
+
+ .line 686
+ if-nez v0, :cond_55
+
+ .line 687
+ sget-object p2, Lcom/android/internal/telephony/dataconnection/DcFailCause;->UNKNOWN:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ invoke-virtual {p2}, Lcom/android/internal/telephony/dataconnection/DcFailCause;->toString()Ljava/lang/String;
+
+ move-result-object v0
+
+ .line 689
+ :cond_55
+ const p2, 0x4200f
+
+ invoke-direct {p0, v1, p2, v0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->notifyAllWithEvent(Lcom/android/internal/telephony/dataconnection/ApnContext;ILjava/lang/String;)V
+
+ .line 691
+ :cond_5b
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v0, "NotifyDisconnectCompleted DisconnectParams="
+
+ invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p1
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 692
+ return-void
+.end method
+
+.method private onConnect(Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;)V
+ .registers 21
+
+ move-object/from16 v0, p0
+
+ .line 506
+ move-object/from16 v1, p1
+
+ new-instance v2, Ljava/lang/StringBuilder;
+
+ invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v3, "onConnect: carrier=\'"
+
+ invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v3, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ iget-object v3, v3, Lcom/android/internal/telephony/dataconnection/ApnSetting;->carrier:Ljava/lang/String;
+
+ invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ const-string v3, "\' APN=\'"
+
+ invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v3, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ iget-object v3, v3, Lcom/android/internal/telephony/dataconnection/ApnSetting;->apn:Ljava/lang/String;
+
+ invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ const-string v3, "\' proxy=\'"
+
+ invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v3, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ iget-object v3, v3, Lcom/android/internal/telephony/dataconnection/ApnSetting;->proxy:Ljava/lang/String;
+
+ invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ const-string v3, "\' port=\'"
+
+ invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v3, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ iget-object v3, v3, Lcom/android/internal/telephony/dataconnection/ApnSetting;->port:Ljava/lang/String;
+
+ invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ const-string v3, "\'"
+
+ invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object v2
+
+ invoke-virtual {v0, v2}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 509
+ iget-object v2, v1, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mApnContext:Lcom/android/internal/telephony/dataconnection/ApnContext;
+
+ if-eqz v2, :cond_50
+
+ iget-object v2, v1, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mApnContext:Lcom/android/internal/telephony/dataconnection/ApnContext;
+
+ const-string v3, "DataConnection.onConnect"
+
+ invoke-virtual {v2, v3}, Lcom/android/internal/telephony/dataconnection/ApnContext;->requestLog(Ljava/lang/String;)V
+
+ .line 512
+ :cond_50
+ iget-object v2, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDcTesterFailBringUpAll:Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;
+
+ invoke-virtual {v2}, Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;->getDcFailBringUp()Lcom/android/internal/telephony/dataconnection/DcFailBringUp;
+
+ move-result-object v2
+
+ iget v2, v2, Lcom/android/internal/telephony/dataconnection/DcFailBringUp;->mCounter:I
+
+ const/4 v3, 0x1
+
+ const v4, 0x40001
+
+ if-lez v2, :cond_bd
+
+ .line 513
+ new-instance v2, Landroid/telephony/data/DataCallResponse;
+
+ iget-object v5, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDcTesterFailBringUpAll:Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;
+
+ .line 514
+ invoke-virtual {v5}, Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;->getDcFailBringUp()Lcom/android/internal/telephony/dataconnection/DcFailBringUp;
+
+ move-result-object v5
+
+ iget-object v5, v5, Lcom/android/internal/telephony/dataconnection/DcFailBringUp;->mFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ invoke-virtual {v5}, Lcom/android/internal/telephony/dataconnection/DcFailCause;->getErrorCode()I
+
+ move-result v6
+
+ iget-object v5, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDcTesterFailBringUpAll:Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;
+
+ .line 515
+ invoke-virtual {v5}, Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;->getDcFailBringUp()Lcom/android/internal/telephony/dataconnection/DcFailBringUp;
+
+ move-result-object v5
+
+ iget v7, v5, Lcom/android/internal/telephony/dataconnection/DcFailBringUp;->mSuggestedRetryTime:I
+
+ const/4 v8, 0x0
+
+ const/4 v9, 0x0
+
+ const-string v10, ""
+
+ const-string v11, ""
+
+ const/4 v12, 0x0
+
+ const/4 v13, 0x0
+
+ const/4 v14, 0x0
+
+ const/4 v15, 0x0
+
+ const/16 v16, 0x0
+
+ move-object v5, v2
+
+ invoke-direct/range {v5 .. v16}, Landroid/telephony/data/DataCallResponse;-><init>(IIIILjava/lang/String;Ljava/lang/String;Ljava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/List;I)V
+
+ .line 518
+ invoke-virtual {v0, v4, v1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->obtainMessage(ILjava/lang/Object;)Landroid/os/Message;
+
+ move-result-object v1
+
+ .line 519
+ const/4 v4, 0x0
+
+ invoke-static {v1, v2, v4}, Landroid/os/AsyncResult;->forMessage(Landroid/os/Message;Ljava/lang/Object;Ljava/lang/Throwable;)Landroid/os/AsyncResult;
+
+ .line 520
+ invoke-virtual {v0, v1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->sendMessage(Landroid/os/Message;)V
+
+ .line 522
+ new-instance v1, Ljava/lang/StringBuilder;
+
+ invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v4, "onConnect: FailBringUpAll="
+
+ invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v4, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDcTesterFailBringUpAll:Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;
+
+ invoke-virtual {v4}, Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;->getDcFailBringUp()Lcom/android/internal/telephony/dataconnection/DcFailBringUp;
+
+ move-result-object v4
+
+ invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ const-string v4, " send error response="
+
+ invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object v1
+
+ invoke-virtual {v0, v1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 525
+ iget-object v0, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDcTesterFailBringUpAll:Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;
+
+ invoke-virtual {v0}, Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;->getDcFailBringUp()Lcom/android/internal/telephony/dataconnection/DcFailBringUp;
+
+ move-result-object v0
+
+ iget v1, v0, Lcom/android/internal/telephony/dataconnection/DcFailBringUp;->mCounter:I
+
+ sub-int/2addr v1, v3
+
+ iput v1, v0, Lcom/android/internal/telephony/dataconnection/DcFailBringUp;->mCounter:I
+
+ .line 526
+ return-void
+
+ .line 529
+ :cond_bd
+ const-wide/16 v5, -0x1
+
+ iput-wide v5, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mCreateTime:J
+
+ .line 530
+ iput-wide v5, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLastFailTime:J
+
+ .line 531
+ sget-object v2, Lcom/android/internal/telephony/dataconnection/DcFailCause;->NONE:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ iput-object v2, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLastFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ .line 533
+ invoke-virtual {v0, v4, v1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->obtainMessage(ILjava/lang/Object;)Landroid/os/Message;
+
+ move-result-object v12
+
+ .line 534
+ iput-object v1, v12, Landroid/os/Message;->obj:Ljava/lang/Object;
+
+ .line 536
+ iget-object v2, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ iget v4, v1, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mProfileId:I
+
+ invoke-static {v2, v4}, Lcom/android/internal/telephony/dataconnection/DcTracker;->createDataProfile(Lcom/android/internal/telephony/dataconnection/ApnSetting;I)Landroid/telephony/data/DataProfile;
+
+ move-result-object v2
+
+ .line 541
+ iget-object v4, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ invoke-virtual {v4}, Lcom/android/internal/telephony/Phone;->getServiceState()Landroid/telephony/ServiceState;
+
+ move-result-object v4
+
+ invoke-virtual {v4}, Landroid/telephony/ServiceState;->getDataRoamingFromRegistration()Z
+
+ move-result v8
+
+ .line 546
+ iget-object v4, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ invoke-virtual {v4}, Lcom/android/internal/telephony/Phone;->getDataRoamingEnabled()Z
+
+ move-result v4
+
+ if-nez v4, :cond_f8
+
+ if-eqz v8, :cond_f6
+
+ iget-object v4, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ .line 547
+ invoke-virtual {v4}, Lcom/android/internal/telephony/Phone;->getServiceState()Landroid/telephony/ServiceState;
+
+ move-result-object v4
+
+ invoke-virtual {v4}, Landroid/telephony/ServiceState;->getDataRoaming()Z
+
+ move-result v4
+
+ if-nez v4, :cond_f6
+
+ goto :goto_f8
+
+ :cond_f6
+ const/4 v3, 0x0
+
+ nop
+
+ .line 549
+ :cond_f8
+ :goto_f8
+ move v9, v3
+
+ iget-object v5, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDataServiceManager:Lcom/android/internal/telephony/dataconnection/DataServiceManager;
+
+ iget v3, v1, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mRilRat:I
+
+ .line 550
+ invoke-static {v3}, Landroid/telephony/ServiceState;->rilRadioTechnologyToAccessNetworkType(I)I
+
+ move-result v6
+
+ const/4 v10, 0x1
+
+ const/4 v11, 0x0
+
+ .line 549
+ move-object v7, v2
+
+ invoke-virtual/range {v5 .. v12}, Lcom/android/internal/telephony/dataconnection/DataServiceManager;->setupDataCall(ILandroid/telephony/data/DataProfile;ZZILandroid/net/LinkProperties;Landroid/os/Message;)V
+
+ .line 552
+ invoke-static {}, Lcom/android/internal/telephony/metrics/TelephonyMetrics;->getInstance()Lcom/android/internal/telephony/metrics/TelephonyMetrics;
+
+ move-result-object v13
+
+ iget-object v0, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ invoke-virtual {v0}, Lcom/android/internal/telephony/Phone;->getPhoneId()I
+
+ move-result v14
+
+ iget v15, v1, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mRilRat:I
+
+ .line 553
+ invoke-virtual {v2}, Landroid/telephony/data/DataProfile;->getProfileId()I
+
+ move-result v16
+
+ invoke-virtual {v2}, Landroid/telephony/data/DataProfile;->getApn()Ljava/lang/String;
+
+ move-result-object v17
+
+ invoke-virtual {v2}, Landroid/telephony/data/DataProfile;->getProtocol()Ljava/lang/String;
+
+ move-result-object v18
+
+ .line 552
+ invoke-virtual/range {v13 .. v18}, Lcom/android/internal/telephony/metrics/TelephonyMetrics;->writeSetupDataCall(IIILjava/lang/String;Ljava/lang/String;)V
+
+ .line 554
+ return-void
+.end method
+
+.method private onSetupConnectionCompleted(ILandroid/telephony/data/DataCallResponse;Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;)Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+ .registers 6
+
+ .line 751
+ iget v0, p3, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mTag:I
+
+ iget v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mTag:I
+
+ if-eq v0, v1, :cond_29
+
+ .line 753
+ new-instance p1, Ljava/lang/StringBuilder;
+
+ invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string p2, "onSetupConnectionCompleted stale cp.tag="
+
+ invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget p2, p3, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mTag:I
+
+ invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ const-string p2, ", mtag="
+
+ invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget p2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mTag:I
+
+ invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p1
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 755
+ sget-object p1, Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;->ERROR_STALE:Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+
+ goto :goto_80
+
+ .line 756
+ :cond_29
+ const/4 p3, 0x4
+
+ if-ne p1, p3, :cond_33
+
+ .line 757
+ sget-object p1, Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;->ERROR_RADIO_NOT_AVAILABLE:Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+
+ .line 758
+ sget-object p2, Lcom/android/internal/telephony/dataconnection/DcFailCause;->RADIO_NOT_AVAILABLE:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ iput-object p2, p1, Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;->mFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ goto :goto_80
+
+ .line 759
+ :cond_33
+ invoke-virtual {p2}, Landroid/telephony/data/DataCallResponse;->getStatus()I
+
+ move-result p1
+
+ if-eqz p1, :cond_59
+
+ .line 760
+ invoke-virtual {p2}, Landroid/telephony/data/DataCallResponse;->getStatus()I
+
+ move-result p1
+
+ sget-object p3, Lcom/android/internal/telephony/dataconnection/DcFailCause;->RADIO_NOT_AVAILABLE:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ invoke-virtual {p3}, Lcom/android/internal/telephony/dataconnection/DcFailCause;->getErrorCode()I
+
+ move-result p3
+
+ if-ne p1, p3, :cond_4c
+
+ .line 761
+ sget-object p1, Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;->ERROR_RADIO_NOT_AVAILABLE:Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+
+ .line 762
+ sget-object p2, Lcom/android/internal/telephony/dataconnection/DcFailCause;->RADIO_NOT_AVAILABLE:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ iput-object p2, p1, Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;->mFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ goto :goto_80
+
+ .line 764
+ :cond_4c
+ sget-object p1, Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;->ERROR_DATA_SERVICE_SPECIFIC_ERROR:Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+
+ .line 765
+ invoke-virtual {p2}, Landroid/telephony/data/DataCallResponse;->getStatus()I
+
+ move-result p2
+
+ invoke-static {p2}, Lcom/android/internal/telephony/dataconnection/DcFailCause;->fromInt(I)Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ move-result-object p2
+
+ iput-object p2, p1, Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;->mFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ goto :goto_80
+
+ .line 768
+ :cond_59
+ const-string p1, "onSetupConnectionCompleted received successful DataCallResponse"
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 769
+ invoke-virtual {p2}, Landroid/telephony/data/DataCallResponse;->getCallId()I
+
+ move-result p1
+
+ iput p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mCid:I
+
+ .line 771
+ invoke-virtual {p2}, Landroid/telephony/data/DataCallResponse;->getPcscfs()Ljava/util/List;
+
+ move-result-object p1
+
+ invoke-virtual {p2}, Landroid/telephony/data/DataCallResponse;->getPcscfs()Ljava/util/List;
+
+ move-result-object p3
+
+ invoke-interface {p3}, Ljava/util/List;->size()I
+
+ move-result p3
+
+ new-array p3, p3, [Ljava/lang/String;
+
+ invoke-interface {p1, p3}, Ljava/util/List;->toArray([Ljava/lang/Object;)[Ljava/lang/Object;
+
+ move-result-object p1
+
+ check-cast p1, [Ljava/lang/String;
+
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPcscfAddr:[Ljava/lang/String;
+
+ .line 773
+ invoke-virtual {p0, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection;->updateLinkProperty(Landroid/telephony/data/DataCallResponse;)Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;
+
+ move-result-object p1
+
+ iget-object p1, p1, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->setupResult:Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+
+ .line 776
+ :goto_80
+ return-object p1
+.end method
+
+.method private setLinkProperties(Landroid/telephony/data/DataCallResponse;Landroid/net/LinkProperties;)Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+ .registers 10
+
+ .line 1072
+ new-instance v0, Ljava/lang/StringBuilder;
+
+ invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "net."
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p1}, Landroid/telephony/data/DataCallResponse;->getIfname()Ljava/lang/String;
+
+ move-result-object v1
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ const-string v1, "."
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object v0
+
+ .line 1073
+ const/4 v1, 0x2
+
+ new-array v1, v1, [Ljava/lang/String;
+
+ .line 1074
+ new-instance v2, Ljava/lang/StringBuilder;
+
+ invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
+
+ invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ const-string v3, "dns1"
+
+ invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object v2
+
+ invoke-static {v2}, Landroid/os/SystemProperties;->get(Ljava/lang/String;)Ljava/lang/String;
+
+ move-result-object v2
+
+ const/4 v3, 0x0
+
+ aput-object v2, v1, v3
+
+ .line 1075
+ new-instance v2, Ljava/lang/StringBuilder;
+
+ invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
+
+ invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ const-string v0, "dns2"
+
+ invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object v0
+
+ invoke-static {v0}, Landroid/os/SystemProperties;->get(Ljava/lang/String;)Ljava/lang/String;
+
+ move-result-object v0
+
+ const/4 v2, 0x1
+
+ aput-object v0, v1, v2
+
+ .line 1076
+ invoke-direct {p0, v1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->isDnsOk([Ljava/lang/String;)Z
+
+ move-result v0
+
+ .line 1082
+ invoke-virtual {p2}, Landroid/net/LinkProperties;->clear()V
+
+ .line 1084
+ invoke-virtual {p1}, Landroid/telephony/data/DataCallResponse;->getStatus()I
+
+ move-result v2
+
+ sget-object v4, Lcom/android/internal/telephony/dataconnection/DcFailCause;->NONE:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ invoke-virtual {v4}, Lcom/android/internal/telephony/dataconnection/DcFailCause;->getErrorCode()I
+
+ move-result v4
+
+ if-ne v2, v4, :cond_17c
+
+ .line 1087
+ :try_start_60
+ invoke-virtual {p1}, Landroid/telephony/data/DataCallResponse;->getIfname()Ljava/lang/String;
+
+ move-result-object v2
+
+ invoke-virtual {p2, v2}, Landroid/net/LinkProperties;->setInterfaceName(Ljava/lang/String;)V
+
+ .line 1090
+ invoke-virtual {p1}, Landroid/telephony/data/DataCallResponse;->getAddresses()Ljava/util/List;
+
+ move-result-object v2
+
+ invoke-interface {v2}, Ljava/util/List;->size()I
+
+ move-result v2
+
+ if-lez v2, :cond_149
+
+ .line 1091
+ invoke-virtual {p1}, Landroid/telephony/data/DataCallResponse;->getAddresses()Ljava/util/List;
+
+ move-result-object v2
+
+ invoke-interface {v2}, Ljava/util/List;->iterator()Ljava/util/Iterator;
+
+ move-result-object v2
+
+ :goto_79
+ invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z
+
+ move-result v4
+
+ if-eqz v4, :cond_b7
+
+ invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object;
+
+ move-result-object v4
+
+ check-cast v4, Landroid/net/LinkAddress;
+
+ .line 1092
+ invoke-virtual {v4}, Landroid/net/LinkAddress;->getAddress()Ljava/net/InetAddress;
+
+ move-result-object v5
+
+ invoke-virtual {v5}, Ljava/net/InetAddress;->isAnyLocalAddress()Z
+
+ move-result v5
+
+ if-nez v5, :cond_b6
+
+ .line 1094
+ new-instance v5, Ljava/lang/StringBuilder;
+
+ invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v6, "addr/pl="
+
+ invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v4}, Landroid/net/LinkAddress;->getAddress()Ljava/net/InetAddress;
+
+ move-result-object v6
+
+ invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ const-string v6, "/"
+
+ invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ .line 1095
+ invoke-virtual {v4}, Landroid/net/LinkAddress;->getNetworkPrefixLength()I
+
+ move-result v6
+
+ invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object v5
+
+ .line 1094
+ invoke-virtual {p0, v5}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 1097
+ invoke-virtual {p2, v4}, Landroid/net/LinkProperties;->addLinkAddress(Landroid/net/LinkAddress;)Z
+
+ .line 1099
+ :cond_b6
+ goto :goto_79
+
+ .line 1105
+ :cond_b7
+ invoke-virtual {p1}, Landroid/telephony/data/DataCallResponse;->getDnses()Ljava/util/List;
+
+ move-result-object v2
+
+ invoke-interface {v2}, Ljava/util/List;->size()I
+
+ move-result v2
+
+ if-lez v2, :cond_df
+
+ .line 1106
+ invoke-virtual {p1}, Landroid/telephony/data/DataCallResponse;->getDnses()Ljava/util/List;
+
+ move-result-object v0
+
+ invoke-interface {v0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
+
+ move-result-object v0
+
+ :goto_c9
+ invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
+
+ move-result v1
+
+ if-eqz v1, :cond_11a
+
+ invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
+
+ move-result-object v1
+
+ check-cast v1, Ljava/net/InetAddress;
+
+ .line 1107
+ invoke-virtual {v1}, Ljava/net/InetAddress;->isAnyLocalAddress()Z
+
+ move-result v2
+
+ if-nez v2, :cond_de
+
+ .line 1108
+ invoke-virtual {p2, v1}, Landroid/net/LinkProperties;->addDnsServer(Ljava/net/InetAddress;)Z
+
+ .line 1110
+ :cond_de
+ goto :goto_c9
+
+ .line 1111
+ :cond_df
+ if-eqz v0, :cond_141
+
+ .line 1112
+ array-length v0, v1
+
+ :goto_e2
+ if-ge v3, v0, :cond_11a
+
+ aget-object v2, v1, v3
+
+ .line 1113
+ invoke-virtual {v2}, Ljava/lang/String;->trim()Ljava/lang/String;
+
+ move-result-object v2
+
+ .line 1114
+ invoke-virtual {v2}, Ljava/lang/String;->isEmpty()Z
+
+ move-result v4
+ :try_end_ee
+ .catch Ljava/net/UnknownHostException; {:try_start_60 .. :try_end_ee} :catch_164
+
+ if-eqz v4, :cond_f1
+
+ goto :goto_ff
+
+ .line 1117
+ :cond_f1
+ :try_start_f1
+ invoke-static {v2}, Landroid/net/NetworkUtils;->numericToInetAddress(Ljava/lang/String;)Ljava/net/InetAddress;
+
+ move-result-object v4
+ :try_end_f5
+ .catch Ljava/lang/IllegalArgumentException; {:try_start_f1 .. :try_end_f5} :catch_102
+ .catch Ljava/net/UnknownHostException; {:try_start_f1 .. :try_end_f5} :catch_164
+
+ .line 1120
+ nop
+
+ .line 1121
+ :try_start_f6
+ invoke-virtual {v4}, Ljava/net/InetAddress;->isAnyLocalAddress()Z
+
+ move-result v2
+
+ if-nez v2, :cond_ff
+
+ .line 1122
+ invoke-virtual {p2, v4}, Landroid/net/LinkProperties;->addDnsServer(Ljava/net/InetAddress;)Z
+
+ .line 1112
+ :cond_ff
+ :goto_ff
+ add-int/lit8 v3, v3, 0x1
+
+ goto :goto_e2
+
+ .line 1118
+ :catch_102
+ move-exception v0
+
+ .line 1119
+ new-instance v0, Ljava/net/UnknownHostException;
+
+ new-instance v1, Ljava/lang/StringBuilder;
+
+ invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v3, "Non-numeric dns addr="
+
+ invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object v1
+
+ invoke-direct {v0, v1}, Ljava/net/UnknownHostException;-><init>(Ljava/lang/String;)V
+
+ throw v0
+
+ .line 1129
+ :cond_11a
+ invoke-virtual {p1}, Landroid/telephony/data/DataCallResponse;->getGateways()Ljava/util/List;
+
+ move-result-object v0
+
+ invoke-interface {v0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
+
+ move-result-object v0
+
+ :goto_122
+ invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
+
+ move-result v1
+
+ if-eqz v1, :cond_137
+
+ invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
+
+ move-result-object v1
+
+ check-cast v1, Ljava/net/InetAddress;
+
+ .line 1132
+ new-instance v2, Landroid/net/RouteInfo;
+
+ invoke-direct {v2, v1}, Landroid/net/RouteInfo;-><init>(Ljava/net/InetAddress;)V
+
+ invoke-virtual {p2, v2}, Landroid/net/LinkProperties;->addRoute(Landroid/net/RouteInfo;)Z
+
+ .line 1133
+ goto :goto_122
+
+ .line 1137
+ :cond_137
+ invoke-virtual {p1}, Landroid/telephony/data/DataCallResponse;->getMtu()I
+
+ move-result v0
+
+ invoke-virtual {p2, v0}, Landroid/net/LinkProperties;->setMtu(I)V
+
+ .line 1139
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;->SUCCESS:Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+
+ goto :goto_17b
+
+ .line 1126
+ :cond_141
+ new-instance v0, Ljava/net/UnknownHostException;
+
+ const-string v1, "Empty dns response and no system default dns"
+
+ invoke-direct {v0, v1}, Ljava/net/UnknownHostException;-><init>(Ljava/lang/String;)V
+
+ throw v0
+
+ .line 1101
+ :cond_149
+ new-instance v0, Ljava/net/UnknownHostException;
+
+ new-instance v1, Ljava/lang/StringBuilder;
+
+ invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v2, "no address for ifname="
+
+ invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p1}, Landroid/telephony/data/DataCallResponse;->getIfname()Ljava/lang/String;
+
+ move-result-object v2
+
+ invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object v1
+
+ invoke-direct {v0, v1}, Ljava/net/UnknownHostException;-><init>(Ljava/lang/String;)V
+
+ throw v0
+ :try_end_164
+ .catch Ljava/net/UnknownHostException; {:try_start_f6 .. :try_end_164} :catch_164
+
+ .line 1140
+ :catch_164
+ move-exception v0
+
+ .line 1141
+ new-instance v1, Ljava/lang/StringBuilder;
+
+ invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v2, "setLinkProperties: UnknownHostException "
+
+ invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object v0
+
+ invoke-virtual {p0, v0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 1142
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;->ERROR_INVALID_ARG:Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+
+ .line 1143
+ :goto_17b
+ goto :goto_17e
+
+ .line 1145
+ :cond_17c
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;->ERROR_DATA_SERVICE_SPECIFIC_ERROR:Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+
+ .line 1149
+ :goto_17e
+ sget-object v1, Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;->SUCCESS:Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+
+ if-eq v0, v1, :cond_1a5
+
+ .line 1151
+ new-instance v1, Ljava/lang/StringBuilder;
+
+ invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v2, "setLinkProperties: error clearing LinkProperties status="
+
+ invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ .line 1152
+ invoke-virtual {p1}, Landroid/telephony/data/DataCallResponse;->getStatus()I
+
+ move-result p1
+
+ invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ const-string p1, " result="
+
+ invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p1
+
+ .line 1151
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 1154
+ invoke-virtual {p2}, Landroid/net/LinkProperties;->clear()V
+
+ .line 1157
+ :cond_1a5
+ return-object v0
+.end method
+
+.method private setNetworkRestriction()V
+ .registers 5
+
+ .line 914
+ const/4 v0, 0x0
+
+ iput-boolean v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mRestrictedNetworkOverride:Z
+
+ .line 916
+ nop
+
+ .line 917
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnContexts:Ljava/util/HashMap;
+
+ invoke-virtual {v0}, Ljava/util/HashMap;->keySet()Ljava/util/Set;
+
+ move-result-object v0
+
+ invoke-interface {v0}, Ljava/util/Set;->iterator()Ljava/util/Iterator;
+
+ move-result-object v0
+
+ const/4 v1, 0x1
+
+ move v2, v1
+
+ :goto_10
+ invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
+
+ move-result v3
+
+ if-eqz v3, :cond_22
+
+ invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
+
+ move-result-object v3
+
+ check-cast v3, Lcom/android/internal/telephony/dataconnection/ApnContext;
+
+ .line 918
+ invoke-virtual {v3, v1}, Lcom/android/internal/telephony/dataconnection/ApnContext;->hasNoRestrictedRequests(Z)Z
+
+ move-result v3
+
+ and-int/2addr v2, v3
+
+ .line 919
+ goto :goto_10
+
+ .line 920
+ :cond_22
+ if-eqz v2, :cond_25
+
+ .line 921
+ return-void
+
+ .line 926
+ :cond_25
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ iget-object v2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ invoke-virtual {v0, v2}, Lcom/android/internal/telephony/dataconnection/ApnSetting;->isMetered(Lcom/android/internal/telephony/Phone;)Z
+
+ move-result v0
+
+ if-nez v0, :cond_30
+
+ .line 927
+ return-void
+
+ .line 931
+ :cond_30
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDct:LDataconnection/DcTracker;
+
+ invoke-virtual {v0}, Lcom/android/internal/telephony/dataconnection/DcTracker;->isDataEnabled()Z
+
+ move-result v0
+
+ xor-int/2addr v0, v1
+
+ iput-boolean v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mRestrictedNetworkOverride:Z
+
+ .line 932
+ return-void
+.end method
+
+.method static slog(LData/String;)V
+ .registers 2
+
+ .line 2396
+ const-string v0, "DC"
+
+ invoke-static {v0, p0}, Landroid/telephony/Rlog;->d(Ljava/lang/String;Ljava/lang/String;)I
+
+ .line 2397
+ return-void
+.end method
+
+.method private tearDownData(Ljava/lang/Object;)V
+ .registers 8
+
+ .line 569
+ nop
+
+ .line 570
+ nop
+
+ .line 571
+ const/4 v0, 0x1
+
+ if-eqz p1, :cond_24
+
+ instance-of v1, p1, Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;
+
+ if-eqz v1, :cond_24
+
+ .line 572
+ move-object v1, p1
+
+ check-cast v1, Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;
+
+ .line 573
+ iget-object v2, v1, Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;->mApnContext:Lcom/android/internal/telephony/dataconnection/ApnContext;
+
+ .line 574
+ iget-object v3, v1, Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;->mReason:Ljava/lang/String;
+
+ const-string v4, "radioTurnedOff"
+
+ invoke-static {v3, v4}, Landroid/text/TextUtils;->equals(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z
+
+ move-result v3
+
+ if-nez v3, :cond_22
+
+ iget-object v1, v1, Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;->mReason:Ljava/lang/String;
+
+ const-string v3, "pdpReset"
+
+ .line 575
+ invoke-static {v1, v3}, Landroid/text/TextUtils;->equals(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z
+
+ move-result v1
+
+ if-eqz v1, :cond_25
+
+ .line 576
+ :cond_22
+ const/4 v0, 0x2
+
+ goto :goto_25
+
+ .line 580
+ :cond_24
+ const/4 v2, 0x0
+
+ :cond_25
+ :goto_25
+ new-instance v1, Ljava/lang/StringBuilder;
+
+ invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v3, "tearDownData. mCid="
+
+ invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget v3, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mCid:I
+
+ invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ const-string v3, ", reason="
+
+ invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object v1
+
+ .line 581
+ invoke-virtual {p0, v1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 582
+ if-eqz v2, :cond_48
+
+ invoke-virtual {v2, v1}, Lcom/android/internal/telephony/dataconnection/ApnContext;->requestLog(Ljava/lang/String;)V
+
+ .line 583
+ :cond_48
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDataServiceManager:Lcom/android/internal/telephony/dataconnection/DataServiceManager;
+
+ iget v2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mCid:I
+
+ const v3, 0x40003
+
+ iget v4, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mTag:I
+
+ const/4 v5, 0x0
+
+ .line 584
+ invoke-virtual {p0, v3, v4, v5, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->obtainMessage(IIILjava/lang/Object;)Landroid/os/Message;
+
+ move-result-object p1
+
+ .line 583
+ invoke-virtual {v1, v2, v0, p1}, Lcom/android/internal/telephony/dataconnection/DataServiceManager;->deactivateDataCall(IILandroid/os/Message;)V
+
+ .line 585
+ return-void
+.end method
+
+.method private updateNetworkInfo()V
+ .registers 5
+
+ .line 1408
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ invoke-virtual {v0}, Lcom/android/internal/telephony/Phone;->getServiceState()Landroid/telephony/ServiceState;
+
+ move-result-object v0
+
+ .line 1409
+ invoke-virtual {v0}, Landroid/telephony/ServiceState;->getDataNetworkType()I
+
+ move-result v1
+
+ .line 1410
+ iget-object v2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkInfo:Landroid/net/NetworkInfo;
+
+ invoke-static {v1}, Landroid/telephony/TelephonyManager;->getNetworkTypeName(I)Ljava/lang/String;
+
+ move-result-object v3
+
+ invoke-virtual {v2, v1, v3}, Landroid/net/NetworkInfo;->setSubtype(ILjava/lang/String;)V
+
+ .line 1411
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkInfo:Landroid/net/NetworkInfo;
+
+ invoke-virtual {v0}, Landroid/telephony/ServiceState;->getDataRoaming()Z
+
+ move-result v0
+
+ invoke-virtual {v1, v0}, Landroid/net/NetworkInfo;->setRoaming(Z)V
+
+ .line 1412
+ return-void
+.end method
+
+.method private updateNetworkInfoSuspendState()V
+ .registers 5
+
+ .line 1416
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkAgent:Lcom/android/internal/telephony/dataconnection/DataConnection$DcNetworkAgent;
+
+ if-nez v0, :cond_d
+
+ .line 1417
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getName()Ljava/lang/String;
+
+ move-result-object v0
+
+ const-string v1, "Setting suspend state without a NetworkAgent"
+
+ invoke-static {v0, v1}, Landroid/telephony/Rlog;->e(Ljava/lang/String;Ljava/lang/String;)I
+
+ .line 1421
+ :cond_d
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ invoke-virtual {v0}, Lcom/android/internal/telephony/Phone;->getServiceStateTracker()Lcom/android/internal/telephony/ServiceStateTracker;
+
+ move-result-object v0
+
+ .line 1422
+ invoke-virtual {v0}, Lcom/android/internal/telephony/ServiceStateTracker;->getCurrentDataConnectionState()I
+
+ move-result v1
+
+ const/4 v2, 0x0
+
+ if-eqz v1, :cond_28
+
+ .line 1423
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkInfo:Landroid/net/NetworkInfo;
+
+ sget-object v1, Landroid/net/NetworkInfo$DetailedState;->SUSPENDED:Landroid/net/NetworkInfo$DetailedState;
+
+ iget-object v3, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkInfo:Landroid/net/NetworkInfo;
+
+ .line 1424
+ invoke-virtual {v3}, Landroid/net/NetworkInfo;->getExtraInfo()Ljava/lang/String;
+
+ move-result-object v3
+
+ .line 1423
+ invoke-virtual {v0, v1, v2, v3}, Landroid/net/NetworkInfo;->setDetailedState(Landroid/net/NetworkInfo$DetailedState;Ljava/lang/String;Ljava/lang/String;)V
+
+ goto :goto_57
+
+ .line 1427
+ :cond_28
+ invoke-virtual {v0}, Lcom/android/internal/telephony/ServiceStateTracker;->isConcurrentVoiceAndDataAllowed()Z
+
+ move-result v0
+
+ if-nez v0, :cond_4a
+
+ .line 1428
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ invoke-virtual {v0}, Lcom/android/internal/telephony/Phone;->getCallTracker()Lcom/android/internal/telephony/CallTracker;
+
+ move-result-object v0
+
+ .line 1429
+ invoke-virtual {v0}, Lcom/android/internal/telephony/CallTracker;->getState()Lcom/android/internal/telephony/PhoneConstants$State;
+
+ move-result-object v0
+
+ sget-object v1, Lcom/android/internal/telephony/PhoneConstants$State;->IDLE:Lcom/android/internal/telephony/PhoneConstants$State;
+
+ if-eq v0, v1, :cond_4a
+
+ .line 1430
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkInfo:Landroid/net/NetworkInfo;
+
+ sget-object v1, Landroid/net/NetworkInfo$DetailedState;->SUSPENDED:Landroid/net/NetworkInfo$DetailedState;
+
+ iget-object v3, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkInfo:Landroid/net/NetworkInfo;
+
+ .line 1431
+ invoke-virtual {v3}, Landroid/net/NetworkInfo;->getExtraInfo()Ljava/lang/String;
+
+ move-result-object v3
+
+ .line 1430
+ invoke-virtual {v0, v1, v2, v3}, Landroid/net/NetworkInfo;->setDetailedState(Landroid/net/NetworkInfo$DetailedState;Ljava/lang/String;Ljava/lang/String;)V
+
+ .line 1432
+ return-void
+
+ .line 1435
+ :cond_4a
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkInfo:Landroid/net/NetworkInfo;
+
+ sget-object v1, Landroid/net/NetworkInfo$DetailedState;->CONNECTED:Landroid/net/NetworkInfo$DetailedState;
+
+ iget-object v3, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkInfo:Landroid/net/NetworkInfo;
+
+ .line 1436
+ invoke-virtual {v3}, Landroid/net/NetworkInfo;->getExtraInfo()Ljava/lang/String;
+
+ move-result-object v3
+
+ .line 1435
+ invoke-virtual {v0, v1, v2, v3}, Landroid/net/NetworkInfo;->setDetailedState(Landroid/net/NetworkInfo$DetailedState;Ljava/lang/String;Ljava/lang/String;)V
+
+ .line 1438
+ :goto_57
+ return-void
+.end method
+
+.method private updateTcpBufferSizes(I)V
+ .registers 10
+
+ .line 812
+ nop
+
+ .line 813
+ const/16 v0, 0x13
+
+ if-ne p1, v0, :cond_7
+
+ .line 816
+ const/16 p1, 0xe
+
+ .line 818
+ :cond_7
+ invoke-static {p1}, Landroid/telephony/ServiceState;->rilRadioTechnologyToString(I)Ljava/lang/String;
+
+ move-result-object v1
+
+ sget-object v2, Ljava/util/Locale;->ROOT:Ljava/util/Locale;
+
+ invoke-virtual {v1, v2}, Ljava/lang/String;->toLowerCase(Ljava/util/Locale;)Ljava/lang/String;
+
+ move-result-object v1
+
+ .line 821
+ const/4 v2, 0x7
+
+ if-eq p1, v2, :cond_1c
+
+ const/16 v2, 0x8
+
+ if-eq p1, v2, :cond_1c
+
+ const/16 v2, 0xc
+
+ if-ne p1, v2, :cond_1e
+
+ .line 824
+ :cond_1c
+ const-string v1, "evdo"
+
+ .line 828
+ :cond_1e
+ iget-object v2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ invoke-virtual {v2}, Lcom/android/internal/telephony/Phone;->getContext()Landroid/content/Context;
+
+ move-result-object v2
+
+ invoke-virtual {v2}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
+
+ move-result-object v2
+
+ const v3, 0x1070039
+
+ invoke-virtual {v2, v3}, Landroid/content/res/Resources;->getStringArray(I)[Ljava/lang/String;
+
+ move-result-object v2
+
+ .line 830
+ const/4 v3, 0x0
+
+ move v4, v3
+
+ :goto_31
+ array-length v5, v2
+
+ if-ge v4, v5, :cond_4f
+
+ .line 831
+ aget-object v5, v2, v4
+
+ const-string v6, ":"
+
+ invoke-virtual {v5, v6}, Ljava/lang/String;->split(Ljava/lang/String;)[Ljava/lang/String;
+
+ move-result-object v5
+
+ .line 832
+ aget-object v6, v5, v3
+
+ invoke-virtual {v1, v6}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
+
+ move-result v6
+
+ if-eqz v6, :cond_4c
+
+ array-length v6, v5
+
+ const/4 v7, 0x2
+
+ if-ne v6, v7, :cond_4c
+
+ .line 833
+ const/4 v1, 0x1
+
+ aget-object v1, v5, v1
+
+ .line 834
+ goto :goto_50
+
+ .line 830
+ :cond_4c
+ add-int/lit8 v4, v4, 0x1
+
+ goto :goto_31
+
+ .line 838
+ :cond_4f
+ const/4 v1, 0x0
+
+ :goto_50
+ if-nez v1, :cond_79
+
+ .line 842
+ if-eq p1, v0, :cond_76
+
+ packed-switch p1, :pswitch_data_80
+
+ packed-switch p1, :pswitch_data_8a
+
+ goto :goto_79
+
+ .line 875
+ :pswitch_5b
+ const-string v1, "122334,734003,2202010,32040,192239,576717"
+
+ .line 876
+ goto :goto_79
+
+ .line 861
+ :pswitch_5e
+ const-string v1, "131072,262144,1048576,4096,16384,524288"
+
+ .line 862
+ goto :goto_79
+
+ .line 868
+ :pswitch_61
+ const-string v1, "40778,244668,734003,16777,100663,301990"
+
+ .line 869
+ goto :goto_79
+
+ .line 864
+ :pswitch_64
+ const-string v1, "61167,367002,1101005,8738,52429,262114"
+
+ .line 865
+ goto :goto_79
+
+ .line 858
+ :pswitch_67
+ const-string v1, "4094,87380,262144,4096,16384,262144"
+
+ .line 859
+ goto :goto_79
+
+ .line 853
+ :pswitch_6a
+ const-string v1, "16384,32768,131072,4096,16384,102400"
+
+ .line 854
+ goto :goto_79
+
+ .line 850
+ :pswitch_6d
+ const-string v1, "58254,349525,1048576,58254,349525,1048576"
+
+ .line 851
+ goto :goto_79
+
+ .line 847
+ :pswitch_70
+ const-string v1, "4093,26280,70800,4096,16384,70800"
+
+ .line 848
+ goto :goto_79
+
+ .line 844
+ :pswitch_73
+ const-string v1, "4092,8760,48000,4096,8760,48000"
+
+ .line 845
+ goto :goto_79
+
+ .line 872
+ :cond_76
+ :pswitch_76
+ const-string v1, "524288,1048576,2097152,262144,524288,1048576"
+
+ .line 873
+ nop
+
+ .line 882
+ :cond_79
+ :goto_79
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLinkProperties:Landroid/net/LinkProperties;
+
+ invoke-virtual {p1, v1}, Landroid/net/LinkProperties;->setTcpBufferSizes(Ljava/lang/String;)V
+
+ .line 883
+ return-void
+
+ nop
+
+ :pswitch_data_80
+ .packed-switch 0x1
+ :pswitch_73
+ :pswitch_70
+ :pswitch_6d
+ .end packed-switch
+
+ :pswitch_data_8a
+ .packed-switch 0x6
+ :pswitch_6a
+ :pswitch_67
+ :pswitch_67
+ :pswitch_64
+ :pswitch_61
+ :pswitch_61
+ :pswitch_67
+ :pswitch_5e
+ :pswitch_76
+ :pswitch_5b
+ .end packed-switch
+.end method
+
+
+# virtual methods
+.method dispose()V
+ .registers 2
+
+ .line 292
+ const-string v0, "dispose: call quiteNow()"
+
+ invoke-virtual {p0, v0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 293
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->quitNow()V
+
+ .line 294
+ return-void
+.end method
+
+.method public dump(Ljava/io/FileDescriptor;Ljava/io/PrintWriter;[Ljava/lang/String;)V
+ .registers 7
+
+ .line 2510
+ new-instance v0, Lcom/android/internal/util/IndentingPrintWriter;
+
+ const-string v1, " "
+
+ invoke-direct {v0, p2, v1}, Lcom/android/internal/util/IndentingPrintWriter;-><init>(Ljava/io/Writer;Ljava/lang/String;)V
+
+ .line 2511
+ const-string p2, "DataConnection "
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->print(Ljava/lang/String;)V
+
+ .line 2512
+ invoke-super {p0, p1, v0, p3}, Lcom/android/internal/util/StateMachine;->dump(Ljava/io/FileDescriptor;Ljava/io/PrintWriter;[Ljava/lang/String;)V
+
+ .line 2513
+ invoke-virtual {v0}, Lcom/android/internal/util/IndentingPrintWriter;->flush()V
+
+ .line 2514
+ invoke-virtual {v0}, Lcom/android/internal/util/IndentingPrintWriter;->increaseIndent()Lcom/android/internal/util/IndentingPrintWriter;
+
+ .line 2515
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "mApnContexts.size="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnContexts:Ljava/util/HashMap;
+
+ invoke-virtual {v1}, Ljava/util/HashMap;->size()I
+
+ move-result v1
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2516
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "mApnContexts="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnContexts:Ljava/util/HashMap;
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2517
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "mDataConnectionTracker="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDct:Lcom/android/internal/telephony/dataconnection/DcTracker;
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2518
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "mApnSetting="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2519
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "mTag="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mTag:I
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2520
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "mCid="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mCid:I
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2521
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "mConnectionParams="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mConnectionParams:Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2522
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "mDisconnectParams="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDisconnectParams:Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2523
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "mDcFailCause="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDcFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2524
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "mPhone="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2525
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "mLinkProperties="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLinkProperties:Landroid/net/LinkProperties;
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2526
+ invoke-virtual {v0}, Lcom/android/internal/util/IndentingPrintWriter;->flush()V
+
+ .line 2527
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "mDataRegState="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDataRegState:I
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2528
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "mRilRat="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mRilRat:I
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2529
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "mNetworkCapabilities="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getNetworkCapabilities()Landroid/net/NetworkCapabilities;
+
+ move-result-object v1
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2530
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "mCreateTime="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-wide v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mCreateTime:J
+
+ invoke-static {v1, v2}, Landroid/util/TimeUtils;->logTimeOfDay(J)Ljava/lang/String;
+
+ move-result-object v1
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2531
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "mLastFailTime="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-wide v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLastFailTime:J
+
+ invoke-static {v1, v2}, Landroid/util/TimeUtils;->logTimeOfDay(J)Ljava/lang/String;
+
+ move-result-object v1
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2532
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "mLastFailCause="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLastFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2533
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "mUserData="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mUserData:Ljava/lang/Object;
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2534
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "mSubscriptionOverride="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mSubscriptionOverride:I
+
+ invoke-static {v1}, Ljava/lang/Integer;->toHexString(I)Ljava/lang/String;
+
+ move-result-object v1
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2535
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "mInstanceNumber="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ sget-object v1, Lcom/android/internal/telephony/dataconnection/DataConnection;->mInstanceNumber:Ljava/util/concurrent/atomic/AtomicInteger;
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2536
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "mAc="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mAc:Lcom/android/internal/util/AsyncChannel;
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2537
+ const-string p2, "Network capabilities changed history:"
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2538
+ invoke-virtual {v0}, Lcom/android/internal/util/IndentingPrintWriter;->increaseIndent()Lcom/android/internal/util/IndentingPrintWriter;
+
+ .line 2539
+ iget-object p2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetCapsLocalLog:Landroid/util/LocalLog;
+
+ invoke-virtual {p2, p1, v0, p3}, Landroid/util/LocalLog;->dump(Ljava/io/FileDescriptor;Ljava/io/PrintWriter;[Ljava/lang/String;)V
+
+ .line 2540
+ invoke-virtual {v0}, Lcom/android/internal/util/IndentingPrintWriter;->decreaseIndent()Lcom/android/internal/util/IndentingPrintWriter;
+
+ .line 2541
+ invoke-virtual {v0}, Lcom/android/internal/util/IndentingPrintWriter;->decreaseIndent()Lcom/android/internal/util/IndentingPrintWriter;
+
+ .line 2542
+ invoke-virtual {v0}, Lcom/android/internal/util/IndentingPrintWriter;->println()V
+
+ .line 2543
+ invoke-virtual {v0}, Lcom/android/internal/util/IndentingPrintWriter;->flush()V
+
+ .line 2544
+ return-void
+.end method
+
+.method getApnSetting()Lcom/android/internal/telephony/dataconnection/ApnSetting;
+ .registers 2
+
+ .line 323
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ return-object v0
+.end method
+
+.method getCid()I
+ .registers 2
+
+ .line 319
+ iget v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mCid:I
+
+ return v0
+.end method
+
+.method getCopyLinkProperties()Landroid/net/LinkProperties;
+ .registers 3
+
+ .line 299
+ new-instance v0, Landroid/net/LinkProperties;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLinkProperties:Landroid/net/LinkProperties;
+
+ invoke-direct {v0, v1}, Landroid/net/LinkProperties;-><init>(Landroid/net/LinkProperties;)V
+
+ return-object v0
+.end method
+
+.method public getDataConnectionId()I
+ .registers 2
+
+ .line 710
+ iget v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mId:I
+
+ return v0
+.end method
+
+.method getNetworkCapabilities()Landroid/net/NetworkCapabilities;
+ .registers 16
+
+ .line 935
+ new-instance v0, Landroid/net/NetworkCapabilities;
+
+ invoke-direct {v0}, Landroid/net/NetworkCapabilities;-><init>()V
+
+ .line 936
+ const/4 v1, 0x0
+
+ invoke-virtual {v0, v1}, Landroid/net/NetworkCapabilities;->addTransportType(I)Landroid/net/NetworkCapabilities;
+
+ .line 938
+ iget-object v2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ const/16 v3, 0xb
+
+ const/4 v4, 0x2
+
+ const/4 v5, 0x1
+
+ if-eqz v2, :cond_12d
+
+ .line 939
+ iget-object v2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ iget-object v2, v2, Lcom/android/internal/telephony/dataconnection/ApnSetting;->types:[Ljava/lang/String;
+
+ array-length v6, v2
+
+ move v7, v1
+
+ :goto_17
+ if-ge v7, v6, :cond_10b
+
+ aget-object v8, v2, v7
+
+ .line 940
+ iget-boolean v9, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mRestrictedNetworkOverride:Z
+
+ if-nez v9, :cond_4c
+
+ iget-object v9, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mConnectionParams:Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;
+
+ if-eqz v9, :cond_4c
+
+ iget-object v9, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mConnectionParams:Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;
+
+ iget-boolean v9, v9, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mUnmeteredUseOnly:Z
+
+ if-eqz v9, :cond_4c
+
+ iget-object v9, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ .line 942
+ invoke-static {v8, v9}, Lcom/android/internal/telephony/dataconnection/ApnSetting;->isMeteredApnType(Ljava/lang/String;Lcom/android/internal/telephony/Phone;)Z
+
+ move-result v9
+
+ if-eqz v9, :cond_4c
+
+ .line 943
+ new-instance v9, Ljava/lang/StringBuilder;
+
+ invoke-direct {v9}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v10, "Dropped the metered "
+
+ invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v9, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ const-string v8, " for the unmetered data call."
+
+ invoke-virtual {v9, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v9}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object v8
+
+ invoke-virtual {p0, v8}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 944
+ goto/16 :goto_107
+
+ .line 946
+ :cond_4c
+ const/4 v9, -0x1
+
+ invoke-virtual {v8}, Ljava/lang/String;->hashCode()I
+
+ move-result v10
+
+ const/4 v11, 0x7
+
+ const/4 v12, 0x4
+
+ const/4 v13, 0x5
+
+ const/4 v14, 0x3
+
+ sparse-switch v10, :sswitch_data_1cc
+
+ goto/16 :goto_c1
+
+ :sswitch_5a
+ const-string v10, "emergency"
+
+ invoke-virtual {v8, v10}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
+
+ move-result v8
+
+ if-eqz v8, :cond_c1
+
+ const/16 v8, 0x9
+
+ goto/16 :goto_c2
+
+ :sswitch_66
+ const-string v10, "default"
+
+ invoke-virtual {v8, v10}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
+
+ move-result v8
+
+ if-eqz v8, :cond_c1
+
+ move v8, v5
+
+ goto :goto_c2
+
+ :sswitch_70
+ const-string v10, "supl"
+
+ invoke-virtual {v8, v10}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
+
+ move-result v8
+
+ if-eqz v8, :cond_c1
+
+ move v8, v14
+
+ goto :goto_c2
+
+ :sswitch_7a
+ const-string v10, "fota"
+
+ invoke-virtual {v8, v10}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
+
+ move-result v8
+
+ if-eqz v8, :cond_c1
+
+ move v8, v13
+
+ goto :goto_c2
+
+ :sswitch_84
+ const-string v10, "mms"
+
+ invoke-virtual {v8, v10}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
+
+ move-result v8
+
+ if-eqz v8, :cond_c1
+
+ move v8, v4
+
+ goto :goto_c2
+
+ :sswitch_8e
+ const-string v10, "ims"
+
+ invoke-virtual {v8, v10}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
+
+ move-result v8
+
+ if-eqz v8, :cond_c1
+
+ const/4 v8, 0x6
+
+ goto :goto_c2
+
+ :sswitch_98
+ const-string v10, "dun"
+
+ invoke-virtual {v8, v10}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
+
+ move-result v8
+
+ if-eqz v8, :cond_c1
+
+ move v8, v12
+
+ goto :goto_c2
+
+ :sswitch_a2
+ const-string v10, "cbs"
+
+ invoke-virtual {v8, v10}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
+
+ move-result v8
+
+ if-eqz v8, :cond_c1
+
+ move v8, v11
+
+ goto :goto_c2
+
+ :sswitch_ac
+ const-string v10, "ia"
+
+ invoke-virtual {v8, v10}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
+
+ move-result v8
+
+ if-eqz v8, :cond_c1
+
+ const/16 v8, 0x8
+
+ goto :goto_c2
+
+ :sswitch_b7
+ const-string v10, "*"
+
+ invoke-virtual {v8, v10}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
+
+ move-result v8
+
+ if-eqz v8, :cond_c1
+
+ move v8, v1
+
+ goto :goto_c2
+
+ :cond_c1
+ :goto_c1
+ move v8, v9
+
+ :goto_c2
+ const/16 v9, 0xc
+
+ packed-switch v8, :pswitch_data_1f6
+
+ goto :goto_107
+
+ .line 991
+ :pswitch_c8
+ const/16 v8, 0xa
+
+ invoke-virtual {v0, v8}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 992
+ goto :goto_107
+
+ .line 987
+ :pswitch_ce
+ invoke-virtual {v0, v11}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 988
+ goto :goto_107
+
+ .line 983
+ :pswitch_d2
+ invoke-virtual {v0, v13}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 984
+ goto :goto_107
+
+ .line 979
+ :pswitch_d6
+ invoke-virtual {v0, v12}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 980
+ goto :goto_107
+
+ .line 975
+ :pswitch_da
+ invoke-virtual {v0, v14}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 976
+ goto :goto_107
+
+ .line 971
+ :pswitch_de
+ invoke-virtual {v0, v4}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 972
+ goto :goto_107
+
+ .line 967
+ :pswitch_e2
+ invoke-virtual {v0, v5}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 968
+ goto :goto_107
+
+ .line 963
+ :pswitch_e6
+ invoke-virtual {v0, v1}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 964
+ goto :goto_107
+
+ .line 959
+ :pswitch_ea
+ invoke-virtual {v0, v9}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 960
+ goto :goto_107
+
+ .line 948
+ :pswitch_ee
+ invoke-virtual {v0, v9}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 949
+ invoke-virtual {v0, v1}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 950
+ invoke-virtual {v0, v5}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 951
+ invoke-virtual {v0, v14}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 952
+ invoke-virtual {v0, v12}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 953
+ invoke-virtual {v0, v13}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 954
+ invoke-virtual {v0, v11}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 955
+ invoke-virtual {v0, v4}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 956
+ nop
+
+ .line 939
+ :goto_107
+ add-int/lit8 v7, v7, 0x1
+
+ goto/16 :goto_17
+
+ .line 1001
+ :cond_10b
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mConnectionParams:Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;
+
+ if-eqz v1, :cond_119
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mConnectionParams:Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;
+
+ iget-boolean v1, v1, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mUnmeteredUseOnly:Z
+
+ if-eqz v1, :cond_119
+
+ iget-boolean v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mRestrictedNetworkOverride:Z
+
+ if-eqz v1, :cond_123
+
+ :cond_119
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ iget-object v2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ .line 1003
+ invoke-virtual {v1, v2}, Lcom/android/internal/telephony/dataconnection/ApnSetting;->isMetered(Lcom/android/internal/telephony/Phone;)Z
+
+ move-result v1
+
+ if-nez v1, :cond_127
+
+ .line 1004
+ :cond_123
+ invoke-virtual {v0, v3}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ goto :goto_12a
+
+ .line 1006
+ :cond_127
+ invoke-virtual {v0, v3}, Landroid/net/NetworkCapabilities;->removeCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 1009
+ :goto_12a
+ invoke-virtual {v0}, Landroid/net/NetworkCapabilities;->maybeMarkCapabilitiesRestricted()V
+
+ .line 1011
+ :cond_12d
+ iget-boolean v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mRestrictedNetworkOverride:Z
+
+ if-eqz v1, :cond_139
+
+ .line 1012
+ const/16 v1, 0xd
+
+ invoke-virtual {v0, v1}, Landroid/net/NetworkCapabilities;->removeCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 1014
+ invoke-virtual {v0, v4}, Landroid/net/NetworkCapabilities;->removeCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 1017
+ :cond_139
+ nop
+
+ .line 1018
+ nop
+
+ .line 1019
+ iget v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mRilRat:I
+
+ const/16 v2, 0x13
+
+ const/16 v6, 0x733
+
+ const/16 v7, 0x99
+
+ const v8, 0x19000
+
+ const v9, 0xc800
+
+ const/16 v10, 0x3800
+
+ const/16 v11, 0xe
+
+ if-eq v1, v2, :cond_18a
+
+ packed-switch v1, :pswitch_data_20e
+
+ .line 1038
+ :goto_152
+ move v6, v11
+
+ move v8, v6
+
+ goto :goto_18b
+
+ .line 1035
+ :pswitch_155
+ const/16 v6, 0x2c00
+
+ const v8, 0xa800
+
+ goto :goto_18b
+
+ .line 1032
+ :pswitch_15b
+ nop
+
+ .line 1038
+ :goto_15c
+ move v6, v9
+
+ goto :goto_18b
+
+ .line 1034
+ :pswitch_15e
+ const/16 v8, 0x9d4
+
+ goto :goto_173
+
+ .line 1031
+ :pswitch_161
+ const/16 v8, 0x1399
+
+ goto :goto_18b
+
+ .line 1030
+ :pswitch_164
+ const/16 v6, 0x170a
+
+ goto :goto_16c
+
+ .line 1029
+ :pswitch_167
+ const/16 v6, 0x170a
+
+ goto :goto_16c
+
+ .line 1028
+ :pswitch_16a
+ const/16 v6, 0x800
+
+ .line 1038
+ :goto_16c
+ move v8, v10
+
+ goto :goto_18b
+
+ .line 1026
+ :pswitch_16e
+ const/16 v8, 0xc66
+
+ goto :goto_18b
+
+ .line 1025
+ :pswitch_171
+ const/16 v8, 0x999
+
+ .line 1038
+ :goto_173
+ move v6, v7
+
+ goto :goto_18b
+
+ .line 1027
+ :pswitch_175
+ const/16 v6, 0x64
+
+ const/16 v8, 0x64
+
+ goto :goto_18b
+
+ .line 1024
+ :pswitch_17a
+ goto :goto_152
+
+ .line 1022
+ :pswitch_17b
+ const/16 v6, 0x180
+
+ const/16 v8, 0x180
+
+ goto :goto_18b
+
+ .line 1021
+ :pswitch_180
+ const/16 v6, 0x3b
+
+ const/16 v8, 0xec
+
+ goto :goto_18b
+
+ .line 1020
+ :pswitch_185
+ const/16 v6, 0x50
+
+ const/16 v8, 0x50
+
+ goto :goto_18b
+
+ .line 1033
+ :cond_18a
+ goto :goto_15c
+
+ .line 1038
+ :goto_18b
+ invoke-virtual {v0, v6}, Landroid/net/NetworkCapabilities;->setLinkUpstreamBandwidthKbps(I)Landroid/net/NetworkCapabilities;
+
+ .line 1039
+ invoke-virtual {v0, v8}, Landroid/net/NetworkCapabilities;->setLinkDownstreamBandwidthKbps(I)Landroid/net/NetworkCapabilities;
+
+ .line 1041
+ new-instance v1, Landroid/net/StringNetworkSpecifier;
+
+ iget-object v2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ invoke-virtual {v2}, Lcom/android/internal/telephony/Phone;->getSubId()I
+
+ move-result v2
+
+ invoke-static {v2}, Ljava/lang/Integer;->toString(I)Ljava/lang/String;
+
+ move-result-object v2
+
+ invoke-direct {v1, v2}, Landroid/net/StringNetworkSpecifier;-><init>(Ljava/lang/String;)V
+
+ invoke-virtual {v0, v1}, Landroid/net/NetworkCapabilities;->setNetworkSpecifier(Landroid/net/NetworkSpecifier;)Landroid/net/NetworkCapabilities;
+
+ .line 1043
+ const/16 v1, 0x12
+
+ iget-object v2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ .line 1044
+ invoke-virtual {v2}, Lcom/android/internal/telephony/Phone;->getServiceState()Landroid/telephony/ServiceState;
+
+ move-result-object v2
+
+ invoke-virtual {v2}, Landroid/telephony/ServiceState;->getDataRoaming()Z
+
+ move-result v2
+
+ .line 1043
+ xor-int/2addr v2, v5
+
+ invoke-virtual {v0, v1, v2}, Landroid/net/NetworkCapabilities;->setCapability(IZ)Landroid/net/NetworkCapabilities;
+
+ .line 1046
+ const/16 v1, 0x14
+
+ invoke-virtual {v0, v1}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 1049
+ iget v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mSubscriptionOverride:I
+
+ and-int/2addr v1, v5
+
+ if-eqz v1, :cond_1c0
+
+ .line 1050
+ invoke-virtual {v0, v3}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 1052
+ :cond_1c0
+ iget v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mSubscriptionOverride:I
+
+ and-int/2addr v1, v4
+
+ if-eqz v1, :cond_1ca
+
+ .line 1053
+ const/16 v1, 0x14
+
+ invoke-virtual {v0, v1}, Landroid/net/NetworkCapabilities;->removeCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 1056
+ :cond_1ca
+ return-object v0
+
+ nop
+
+ :sswitch_data_1cc
+ .sparse-switch
+ 0x2a -> :sswitch_b7
+ 0xd18 -> :sswitch_ac
+ 0x17ff4 -> :sswitch_a2
+ 0x185fd -> :sswitch_98
+ 0x197cf -> :sswitch_8e
+ 0x1a6d3 -> :sswitch_84
+ 0x300cf6 -> :sswitch_7a
+ 0x360bde -> :sswitch_70
+ 0x5c13d641 -> :sswitch_66
+ 0x6118c591 -> :sswitch_5a
+ .end sparse-switch
+
+ :pswitch_data_1f6
+ .packed-switch 0x0
+ :pswitch_ee
+ :pswitch_ea
+ :pswitch_e6
+ :pswitch_e2
+ :pswitch_de
+ :pswitch_da
+ :pswitch_d6
+ :pswitch_d2
+ :pswitch_ce
+ :pswitch_c8
+ .end packed-switch
+
+ :pswitch_data_20e
+ .packed-switch 0x1
+ :pswitch_185
+ :pswitch_180
+ :pswitch_17b
+ :pswitch_17a
+ :pswitch_17a
+ :pswitch_175
+ :pswitch_171
+ :pswitch_16e
+ :pswitch_16a
+ :pswitch_167
+ :pswitch_164
+ :pswitch_161
+ :pswitch_15e
+ :pswitch_15b
+ :pswitch_155
+ .end packed-switch
+.end method
+
+.method protected getWhatToString(I)Ljava/lang/String;
+ .registers 2
+
+ .line 2351
+ invoke-static {p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->cmdToString(I)Ljava/lang/String;
+
+ move-result-object p1
+
+ return-object p1
+.end method
+
+.method isActivating()Z
+ .registers 3
+
+ .line 315
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getCurrentState()Lcom/android/internal/util/IState;
+
+ move-result-object v0
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mActivatingState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcActivatingState;
+
+ if-ne v0, v1, :cond_a
+
+ const/4 v0, 0x1
+
+ goto :goto_b
+
+ :cond_a
+ const/4 v0, 0x0
+
+ :goto_b
+ return v0
+.end method
+
+.method isActive()Z
+ .registers 3
+
+ .line 311
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getCurrentState()Lcom/android/internal/util/IState;
+
+ move-result-object v0
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mActiveState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcActiveState;
+
+ if-ne v0, v1, :cond_a
+
+ const/4 v0, 0x1
+
+ goto :goto_b
+
+ :cond_a
+ const/4 v0, 0x0
+
+ :goto_b
+ return v0
+.end method
+
+.method isDisconnecting()Z
+ .registers 3
+
+ .line 307
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getCurrentState()Lcom/android/internal/util/IState;
+
+ move-result-object v0
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDisconnectingState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectingState;
+
+ if-ne v0, v1, :cond_a
+
+ const/4 v0, 0x1
+
+ goto :goto_b
+
+ :cond_a
+ const/4 v0, 0x0
+
+ :goto_b
+ return v0
+.end method
+
+.method isInactive()Z
+ .registers 3
+
+ .line 303
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getCurrentState()Lcom/android/internal/util/IState;
+
+ move-result-object v0
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mInactiveState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcInactiveState;
+
+ if-ne v0, v1, :cond_a
+
+ const/4 v0, 0x1
+
+ goto :goto_b
+
+ :cond_a
+ const/4 v0, 0x0
+
+ :goto_b
+ return v0
+.end method
+
+.method public isIpv4Connected()Z
+ .registers 4
+
+ .line 363
+ nop
+
+ .line 364
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLinkProperties:Landroid/net/LinkProperties;
+
+ invoke-virtual {v0}, Landroid/net/LinkProperties;->getAddresses()Ljava/util/List;
+
+ move-result-object v0
+
+ .line 366
+ invoke-interface {v0}, Ljava/util/Collection;->iterator()Ljava/util/Iterator;
+
+ move-result-object v0
+
+ :goto_b
+ invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
+
+ move-result v1
+
+ if-eqz v1, :cond_38
+
+ invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
+
+ move-result-object v1
+
+ check-cast v1, Ljava/net/InetAddress;
+
+ .line 367
+ instance-of v2, v1, Ljava/net/Inet4Address;
+
+ if-eqz v2, :cond_37
+
+ .line 368
+ check-cast v1, Ljava/net/Inet4Address;
+
+ .line 369
+ invoke-virtual {v1}, Ljava/net/Inet4Address;->isAnyLocalAddress()Z
+
+ move-result v2
+
+ if-nez v2, :cond_37
+
+ invoke-virtual {v1}, Ljava/net/Inet4Address;->isLinkLocalAddress()Z
+
+ move-result v2
+
+ if-nez v2, :cond_37
+
+ .line 370
+ invoke-virtual {v1}, Ljava/net/Inet4Address;->isLoopbackAddress()Z
+
+ move-result v2
+
+ if-nez v2, :cond_37
+
+ invoke-virtual {v1}, Ljava/net/Inet4Address;->isMulticastAddress()Z
+
+ move-result v1
+
+ if-nez v1, :cond_37
+
+ .line 371
+ const/4 v0, 0x1
+
+ .line 372
+ goto :goto_39
+
+ .line 375
+ :cond_37
+ goto :goto_b
+
+ .line 376
+ :cond_38
+ const/4 v0, 0x0
+
+ :goto_39
+ return v0
+.end method
+
+.method public isIpv6Connected()Z
+ .registers 4
+
+ .line 380
+ nop
+
+ .line 381
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLinkProperties:Landroid/net/LinkProperties;
+
+ invoke-virtual {v0}, Landroid/net/LinkProperties;->getAddresses()Ljava/util/List;
+
+ move-result-object v0
+
+ .line 383
+ invoke-interface {v0}, Ljava/util/Collection;->iterator()Ljava/util/Iterator;
+
+ move-result-object v0
+
+ :goto_b
+ invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
+
+ move-result v1
+
+ if-eqz v1, :cond_38
+
+ invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
+
+ move-result-object v1
+
+ check-cast v1, Ljava/net/InetAddress;
+
+ .line 384
+ instance-of v2, v1, Ljava/net/Inet6Address;
+
+ if-eqz v2, :cond_37
+
+ .line 385
+ check-cast v1, Ljava/net/Inet6Address;
+
+ .line 386
+ invoke-virtual {v1}, Ljava/net/Inet6Address;->isAnyLocalAddress()Z
+
+ move-result v2
+
+ if-nez v2, :cond_37
+
+ invoke-virtual {v1}, Ljava/net/Inet6Address;->isLinkLocalAddress()Z
+
+ move-result v2
+
+ if-nez v2, :cond_37
+
+ .line 387
+ invoke-virtual {v1}, Ljava/net/Inet6Address;->isLoopbackAddress()Z
+
+ move-result v2
+
+ if-nez v2, :cond_37
+
+ invoke-virtual {v1}, Ljava/net/Inet6Address;->isMulticastAddress()Z
+
+ move-result v1
+
+ if-nez v1, :cond_37
+
+ .line 388
+ const/4 v0, 0x1
+
+ .line 389
+ goto :goto_39
+
+ .line 392
+ :cond_37
+ goto :goto_b
+
+ .line 393
+ :cond_38
+ const/4 v0, 0x0
+
+ :goto_39
+ return v0
+.end method
+
+.method protected log(Ljava/lang/String;)V
+ .registers 3
+
+ .line 2406
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getName()Ljava/lang/String;
+
+ move-result-object v0
+
+ invoke-static {v0, p1}, Landroid/telephony/Rlog;->d(Ljava/lang/String;Ljava/lang/String;)I
+
+ .line 2407
+ return-void
+.end method
+
+.method protected logd(Ljava/lang/String;)V
+ .registers 3
+
+ .line 2416
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getName()Ljava/lang/String;
+
+ move-result-object v0
+
+ invoke-static {v0, p1}, Landroid/telephony/Rlog;->d(Ljava/lang/String;Ljava/lang/String;)I
+
+ .line 2417
+ return-void
+.end method
+
+.method protected loge(Ljava/lang/String;)V
+ .registers 3
+
+ .line 2456
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getName()Ljava/lang/String;
+
+ move-result-object v0
+
+ invoke-static {v0, p1}, Landroid/telephony/Rlog;->e(Ljava/lang/String;Ljava/lang/String;)I
+
+ .line 2457
+ return-void
+.end method
+
+.method protected loge(Ljava/lang/String;Ljava/lang/Throwable;)V
+ .registers 4
+
+ .line 2467
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getName()Ljava/lang/String;
+
+ move-result-object v0
+
+ invoke-static {v0, p1, p2}, Landroid/telephony/Rlog;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
+
+ .line 2468
+ return-void
+.end method
+
+.method protected logi(Ljava/lang/String;)V
+ .registers 3
+
+ .line 2436
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getName()Ljava/lang/String;
+
+ move-result-object v0
+
+ invoke-static {v0, p1}, Landroid/telephony/Rlog;->i(Ljava/lang/String;Ljava/lang/String;)I
+
+ .line 2437
+ return-void
+.end method
+
+.method protected logv(Ljava/lang/String;)V
+ .registers 3
+
+ .line 2426
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getName()Ljava/lang/String;
+
+ move-result-object v0
+
+ invoke-static {v0, p1}, Landroid/telephony/Rlog;->v(Ljava/lang/String;Ljava/lang/String;)I
+
+ .line 2427
+ return-void
+.end method
+
+.method protected logw(Ljava/lang/String;)V
+ .registers 3
+
+ .line 2446
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getName()Ljava/lang/String;
+
+ move-result-object v0
+
+ invoke-static {v0, p1}, Landroid/telephony/Rlog;->w(Ljava/lang/String;Ljava/lang/String;)I
+
+ .line 2447
+ return-void
+.end method
+
+.method public onSubscriptionOverride(II)V
+ .registers 5
+
+ .line 557
+ iget v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mSubscriptionOverride:I
+
+ not-int v1, p1
+
+ and-int/2addr v0, v1
+
+ and-int/2addr p1, p2
+
+ or-int/2addr p1, v0
+
+ iput p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mSubscriptionOverride:I
+
+ .line 559
+ const p1, 0x40011
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->obtainMessage(I)Landroid/os/Message;
+
+ move-result-object p1
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->sendMessage(Landroid/os/Message;)V
+
+ .line 560
+ return-void
+.end method
+
+.method setLinkPropertiesHttpProxy(Landroid/net/ProxyInfo;)V
+ .registers 3
+
+ .line 327
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLinkProperties:Landroid/net/LinkProperties;
+
+ invoke-virtual {v0, p1}, Landroid/net/LinkProperties;->setHttpProxy(Landroid/net/ProxyInfo;)V
+
+ .line 328
+ return-void
+.end method
+
+.method tearDownNow()V
+ .registers 2
+
+ .line 2312
+ const-string v0, "tearDownNow()"
+
+ invoke-virtual {p0, v0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 2313
+ const v0, 0x40008
+
+ invoke-virtual {p0, v0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->obtainMessage(I)Landroid/os/Message;
+
+ move-result-object v0
+
+ invoke-virtual {p0, v0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->sendMessage(Landroid/os/Message;)V
+
+ .line 2314
+ return-void
+.end method
+
+.method public toString()Ljava/lang/String;
+ .registers 3
+
+ .line 2485
+ new-instance v0, Ljava/lang/StringBuilder;
+
+ invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "{"
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->toStringSimple()Ljava/lang/String;
+
+ move-result-object v1
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ const-string v1, " mApnContexts="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnContexts:Ljava/util/HashMap;
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ const-string v1, "}"
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object v0
+
+ return-object v0
+.end method
+
+.method public toStringSimple()Ljava/lang/String;
+ .registers 4
+
+ .line 2472
+ new-instance v0, Ljava/lang/StringBuilder;
+
+ invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
+
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getName()Ljava/lang/String;
+
+ move-result-object v1
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ const-string v1, ": State="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getCurrentState()Lcom/android/internal/util/IState;
+
+ move-result-object v1
+
+ invoke-interface {v1}, Lcom/android/internal/util/IState;->getName()Ljava/lang/String;
+
+ move-result-object v1
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ const-string v1, " mApnSetting="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ const-string v1, " RefCount="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnContexts:Ljava/util/HashMap;
+
+ .line 2473
+ invoke-virtual {v1}, Ljava/util/HashMap;->size()I
+
+ move-result v1
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ const-string v1, " mCid="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mCid:I
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ const-string v1, " mCreateTime="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-wide v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mCreateTime:J
+
+ invoke-virtual {v0, v1, v2}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
+
+ const-string v1, " mLastastFailTime="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-wide v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLastFailTime:J
+
+ invoke-virtual {v0, v1, v2}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
+
+ const-string v1, " mLastFailCause="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLastFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ const-string v1, " mTag="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mTag:I
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ const-string v1, " mLinkProperties="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLinkProperties:Landroid/net/LinkProperties;
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ const-string v1, " linkCapabilities="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ .line 2479
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getNetworkCapabilities()Landroid/net/NetworkCapabilities;
+
+ move-result-object v1
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ const-string v1, " mRestrictedNetworkOverride="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-boolean v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mRestrictedNetworkOverride:Z
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object v0
+
+ .line 2472
+ return-object v0
+.end method
+
+.method public updateLinkProperty(Landroid/telephony/data/DataCallResponse;)Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;
+ .registers 4
+ .annotation build Lcom/android/internal/annotations/VisibleForTesting;
+ .end annotation
+
+ .line 398
+ new-instance v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLinkProperties:Landroid/net/LinkProperties;
+
+ invoke-direct {v0, v1}, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;-><init>(Landroid/net/LinkProperties;)V
+
+ .line 400
+ if-nez p1, :cond_a
+
+ return-object v0
+
+ .line 402
+ :cond_a
+ new-instance v1, Landroid/net/LinkProperties;
+
+ invoke-direct {v1}, Landroid/net/LinkProperties;-><init>()V
+
+ iput-object v1, v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->newLp:Landroid/net/LinkProperties;
+
+ .line 405
+ iget-object v1, v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->newLp:Landroid/net/LinkProperties;
+
+ invoke-direct {p0, p1, v1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->setLinkProperties(Landroid/telephony/data/DataCallResponse;Landroid/net/LinkProperties;)Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+
+ move-result-object p1
+
+ iput-object p1, v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->setupResult:Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+
+ .line 406
+ iget-object p1, v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->setupResult:Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+
+ sget-object v1, Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;->SUCCESS:Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+
+ if-eq p1, v1, :cond_36
+
+ .line 407
+ new-instance p1, Ljava/lang/StringBuilder;
+
+ invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "updateLinkProperty failed : "
+
+ invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->setupResult:Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+
+ invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p1
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 408
+ return-object v0
+
+ .line 411
+ :cond_36
+ iget-object p1, v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->newLp:Landroid/net/LinkProperties;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLinkProperties:Landroid/net/LinkProperties;
+
+ invoke-virtual {v1}, Landroid/net/LinkProperties;->getHttpProxy()Landroid/net/ProxyInfo;
+
+ move-result-object v1
+
+ invoke-virtual {p1, v1}, Landroid/net/LinkProperties;->setHttpProxy(Landroid/net/ProxyInfo;)V
+
+ .line 413
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ iget-object v1, v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->newLp:Landroid/net/LinkProperties;
+
+ invoke-direct {p0, p1, v1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->checkSetMtu(Lcom/android/internal/telephony/dataconnection/ApnSetting;Landroid/net/LinkProperties;)V
+
+ .line 415
+ iget-object p1, v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->newLp:Landroid/net/LinkProperties;
+
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLinkProperties:Landroid/net/LinkProperties;
+
+ .line 417
+ iget p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mRilRat:I
+
+ invoke-direct {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->updateTcpBufferSizes(I)V
+
+ .line 419
+ iget-object p1, v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->oldLp:Landroid/net/LinkProperties;
+
+ iget-object v1, v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->newLp:Landroid/net/LinkProperties;
+
+ invoke-virtual {p1, v1}, Landroid/net/LinkProperties;->equals(Ljava/lang/Object;)Z
+
+ move-result p1
+
+ if-nez p1, :cond_87
+
+ .line 420
+ new-instance p1, Ljava/lang/StringBuilder;
+
+ invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "updateLinkProperty old LP="
+
+ invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->oldLp:Landroid/net/LinkProperties;
+
+ invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p1
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 421
+ new-instance p1, Ljava/lang/StringBuilder;
+
+ invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "updateLinkProperty new LP="
+
+ invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->newLp:Landroid/net/LinkProperties;
+
+ invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p1
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 424
+ :cond_87
+ iget-object p1, v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->newLp:Landroid/net/LinkProperties;
+
+ iget-object v1, v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->oldLp:Landroid/net/LinkProperties;
+
+ invoke-virtual {p1, v1}, Landroid/net/LinkProperties;->equals(Ljava/lang/Object;)Z
+
+ move-result p1
+
+ if-nez p1, :cond_9c
+
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkAgent:Lcom/android/internal/telephony/dataconnection/DataConnection$DcNetworkAgent;
+
+ if-eqz p1, :cond_9c
+
+ .line 426
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkAgent:Lcom/android/internal/telephony/dataconnection/DataConnection$DcNetworkAgent;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLinkProperties:Landroid/net/LinkProperties;
+
+ invoke-virtual {p1, v1}, Lcom/android/internal/telephony/dataconnection/DataConnection$DcNetworkAgent;->sendLinkProperties(Landroid/net/LinkProperties;)V
+
+ .line 429
+ :cond_9c
+ return-object v0
+.end method
+
diff --git a/autotests/input/test.smali b/autotests/input/test.smali
new file mode 100644
--- /dev/null
+++ b/autotests/input/test.smali
@@ -0,0 +1,5946 @@
+#
+# Copyright (C) 2006 The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+.class public Lcom/android/internal/telephony/dataconnection/DataConnection;
+.super Lcom/android/internal/util/StateMachine;
+.source "DataConnection.java"
+
+
+# annotations
+.annotation system Ldalvik/annotation/MemberClasses;
+ value = {
+ Lcom/android/internal/telephony/dataconnection/DataConnection$DcNetworkAgent;,
+ Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectionErrorCreatingConnection;,
+ Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectingState;,
+ Lcom/android/internal/telephony/dataconnection/DataConnection$DcActiveState;,
+ Lcom/android/internal/telephony/dataconnection/DataConnection$DcActivatingState;,
+ Lcom/android/internal/telephony/dataconnection/DataConnection$DcInactiveState;,
+ Lcom/android/internal/telephony/dataconnection/DataConnection$DcDefaultState;,
+ Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;,
+ Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;,
+ Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;,
+ Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;
+ }
+.end annotation
+
+
+# static fields
+.field static final BASE:I = 0x40000
+
+.field private static final CMD_TO_STRING_COUNT:B = 0x18
+
+.field private static final DBG:Z = true
+
+.field static final EVENT_BW_REFRESH_RESPONSE:S = 0x4000e
+
+.field static final EVENT_CONNECT:I = 0x40000
+
+.field static final EVENT_DATA_CONNECTION_DRS_OR_RAT_CHANGED:I = 0x4000b
+
+.field static final EVENT_DATA_CONNECTION_OVERRIDE_CHANGED:I = 0x40011
+
+.field static final EVENT_DATA_CONNECTION_ROAM_OFF:I = 0x4000d
+
+.field static final EVENT_DATA_CONNECTION_ROAM_ON:I = 0x4000c
+
+.field static final EVENT_DATA_CONNECTION_VOICE_CALL_ENDED:I = 0x40010
+
+.field static final EVENT_DATA_CONNECTION_VOICE_CALL_STARTED:I = 0x4000f
+
+.field static final EVENT_DATA_STATE_CHANGED:I = 0x40007
+
+.field static final EVENT_DEACTIVATE_DONE:I = 0x40003
+
+.field static final EVENT_DISCONNECT:F = 636.6886188221E12
+
+.field static final EVENT_DISCONNECT_ALL:D = 98.58E-23D
+
+.field static final EVENT_KEEPALIVE_STARTED:D = -Infinity
+
+.field static final EVENT_KEEPALIVE_START_REQUEST:F = NaN
+
+.field static final EVENT_KEEPALIVE_STATUS:I = 0x40012
+
+.field static final EVENT_KEEPALIVE_STOPPED:I = 0x40014
+
+.field static final EVENT_KEEPALIVE_STOP_REQUEST:I = 0x40016
+
+.field static final EVENT_LINK_CAPACITY_CHANGED:I = 0x40017
+
+.field static final EVENT_LOST_CONNECTION:J = 0x40009EEF
+
+.field static final EVENT_RIL_CONNECTED:I = 0x40005
+
+.field static final EVENT_SETUP_DATA_CONNECTION_DONE:I = 0x40001
+
+.field static final EVENT_TEAR_DOWN_NOW:C = '\n'
+
+.field private static final NETWORK_TYPE:Ljava/lang/String; = "MOBILE"
+
+.field private static final NULL_IP:Ljava/lang/String; = "0.0.0.0"
+
+.field private static final TCP_BUFFER_SIZES_1XRTT:Ljava/lang/String; = "16384,32768,131072,4096,16384,102400"
+
+.field private static final TCP_BUFFER_SIZES_EDGE:Ljava/lang/String; = "4093,26280,70800,4096,16384,70800"
+
+.field private static final TCP_BUFFER_SIZES_EHRPD:Ljava/lang/String; = "131072,262144,1048576,4096,16384,524288"
+
+.field private static final TCP_BUFFER_SIZES_EVDO:Ljava/lang/String; = "4094,87380,262144,4096,16384,262144"
+
+.field private static final TCP_BUFFER_SIZES_GPRS:Ljava/lang/String; = "4092,8760,48000,4096,8760,48000"
+
+.field private static final TCP_BUFFER_SIZES_HSDPA:Ljava/lang/String; = "61167,367002,1101005,8738,52429,262114"
+
+.field private static final TCP_BUFFER_SIZES_HSPA:Ljava/lang/String; = "40778,244668,734003,16777,100663,301990"
+
+.field private static final TCP_BUFFER_SIZES_HSPAP:Ljava/lang/String; = "122334,734003,2202010,32040,192239,576717"
+
+.field private static final TCP_BUFFER_SIZES_LTE:Ljava/lang/String; = "524288,1048576,2097152,262144,524288,1048576"
+
+.field private static final TCP_BUFFER_SIZES_UMTS:Ljava/lang/String; = "58254,349525,1048576,58254,349525,1048576"
+
+.field private static final VDBG:Z = false
+
+.field private static mInstanceNumber:Ljava/util/concurrent/atomic/AtomicInteger;
+
+.field private static sCmdToString:[Ljava/lang/String;
+
+
+# instance fields
+.field private mAc:Lcom/android/internal/util/AsyncChannel;
+
+.field private mActivatingState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcActivatingState;
+
+.field private mActiveState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcActiveState;
+
+.field public mApnContexts:Ljava/util/HashMap;
+ .annotation system Ldalvik/annotation/Signature;
+ value = {
+ "Ljava/util/HashMap<",
+ "Lcom/android/internal/telephony/dataconnection/ApnContext;",
+ "Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;",
+ ">;"
+ }
+ .end annotation
+.end field
+
+.field private mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+.field public mCid:I
+
+.field private mConnectionParams:Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;
+
+.field private mCreateTime:J
+
+.field private mDataRegState:I
+
+.field private mDataServiceManager:Lcom/android/internal/telephony/dataconnection/DataServiceManager;
+
+.field private mDcController:Lcom/android/internal/telephony/dataconnection/DcController;
+
+.field private mDcFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+.field private mDcTesterFailBringUpAll:Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;
+
+.field private mDct:Lcom/android/internal/telephony/dataconnection/DcTracker;
+
+.field private mDefaultState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDefaultState;
+
+.field private mDisconnectParams:Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;
+
+.field private mDisconnectingErrorCreatingConnection:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectionErrorCreatingConnection;
+
+.field private mDisconnectingState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectingState;
+
+.field private mId:I
+
+.field private mInactiveState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcInactiveState;
+
+.field private mLastFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+.field private mLastFailTime:J
+
+.field private mLinkProperties:Landroid/net/LinkProperties;
+
+.field private mNetCapsLocalLog:Landroid/util/LocalLog;
+
+.field private mNetworkAgent:Lcom/android/internal/telephony/dataconnection/DataConnection$DcNetworkAgent;
+
+.field private mNetworkInfo:Landroid/net/NetworkInfo;
+
+.field protected mPcscfAddr:[Ljava/lang/String;
+
+.field private mPhone:Lcom/android/internal/telephony/Phone;
+
+.field mReconnectIntent:Landroid/app/PendingIntent;
+
+.field private mRestrictedNetworkOverride:Z
+
+.field private mRilRat:I
+
+.field private mSubscriptionOverride:I
+
+.field mTag:I
+
+.field private mUserData:Ljava/lang/Object;
+
+
+# direct methods
+.method static constructor ()V
+ .registers 3
+
+ .line 109
+ new-instance v0, Ljava/util/concurrent/atomic/AtomicInteger;
+
+ const/4 v1, 0x0
+
+ invoke-direct {v0, v1}, Ljava/util/concurrent/atomic/AtomicInteger;->(I)V
+
+ sput-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mInstanceNumber:Ljava/util/concurrent/atomic/AtomicInteger;
+
+ .line 227
+ const/16 v0, 0x18
+
+ new-array v0, v0, [Ljava/lang/String;
+
+ sput-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ .line 229
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v2, "EVENT_CONNECT"
+
+ aput-object v2, v0, v1
+
+ .line 230
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_SETUP_DATA_CONNECTION_DONE"
+
+ const/4 v2, 0x1
+
+ aput-object v1, v0, v2
+
+ .line 232
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_DEACTIVATE_DONE"
+
+ const/4 v2, 0x3
+
+ aput-object v1, v0, v2
+
+ .line 233
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_DISCONNECT"
+
+ const/4 v2, 0x4
+
+ aput-object v1, v0, v2
+
+ .line 234
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_RIL_CONNECTED"
+
+ const/4 v2, 0x5
+
+ aput-object v1, v0, v2
+
+ .line 235
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_DISCONNECT_ALL"
+
+ const/4 v2, 0x6
+
+ aput-object v1, v0, v2
+
+ .line 236
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_DATA_STATE_CHANGED"
+
+ const/4 v2, 0x7
+
+ aput-object v1, v0, v2
+
+ .line 237
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_TEAR_DOWN_NOW"
+
+ const/16 v2, 0x8
+
+ aput-object v1, v0, v2
+
+ .line 238
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_LOST_CONNECTION"
+
+ const/16 v2, 0x9
+
+ aput-object v1, v0, v2
+
+ .line 239
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_DATA_CONNECTION_DRS_OR_RAT_CHANGED"
+
+ const/16 v2, 0xb
+
+ aput-object v1, v0, v2
+
+ .line 241
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_DATA_CONNECTION_ROAM_ON"
+
+ const/16 v2, 0xc
+
+ aput-object v1, v0, v2
+
+ .line 242
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_DATA_CONNECTION_ROAM_OFF"
+
+ const/16 v2, 0xd
+
+ aput-object v1, v0, v2
+
+ .line 243
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_BW_REFRESH_RESPONSE"
+
+ const/16 v2, 0xe
+
+ aput-object v1, v0, v2
+
+ .line 244
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_DATA_CONNECTION_VOICE_CALL_STARTED"
+
+ const/16 v2, 0xf
+
+ aput-object v1, v0, v2
+
+ .line 246
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_DATA_CONNECTION_VOICE_CALL_ENDED"
+
+ const/16 v2, 0x10
+
+ aput-object v1, v0, v2
+
+ .line 248
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_DATA_CONNECTION_OVERRIDE_CHANGED"
+
+ const/16 v2, 0x11
+
+ aput-object v1, v0, v2
+
+ .line 250
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_KEEPALIVE_STATUS"
+
+ const/16 v2, 0x12
+
+ aput-object v1, v0, v2
+
+ .line 251
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_KEEPALIVE_STARTED"
+
+ const/16 v2, 0x13
+
+ aput-object v1, v0, v2
+
+ .line 252
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_KEEPALIVE_STOPPED"
+
+ const/16 v2, 0x14
+
+ aput-object v1, v0, v2
+
+ .line 253
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_KEEPALIVE_START_REQUEST"
+
+ const/16 v2, 0x15
+
+ aput-object v1, v0, v2
+
+ .line 254
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_KEEPALIVE_STOP_REQUEST"
+
+ const/16 v2, 0x16
+
+ aput-object v1, v0, v2
+
+ .line 255
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_LINK_CAPACITY_CHANGED"
+
+ const/16 v2, 0x17
+
+ aput-object v1, v0, v2
+
+ .line 256
+ return-void
+.end method
+
+.method private constructor (Lcom/android/internal/telephony/Phone;Ljava/lang/String;ILcom/android/internal/telephony/dataconnection/DcTracker;Lcom/android/internal/telephony/dataconnection/DataServiceManager;Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;Lcom/android/internal/telephony/dataconnection/DcController;)V
+ .registers 10
+
+ .line 466
+ invoke-virtual {p7}, Lcom/android/internal/telephony/dataconnection/DcController;->getHandler()Landroid/os/Handler;
+
+ move-result-object v0
+
+ invoke-direct {p0, p2, v0}, Lcom/android/internal/util/StateMachine;->(Ljava/lang/String;Landroid/os/Handler;)V
+
+ .line 113
+ const/4 p2, 0x0
+
+ iput-object p2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDct:Lcom/android/internal/telephony/dataconnection/DcTracker;
+
+ .line 180
+ new-instance v0, Landroid/net/LinkProperties;
+
+ invoke-direct {v0}, Landroid/net/LinkProperties;->()V
+
+ iput-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLinkProperties:Landroid/net/LinkProperties;
+
+ .line 187
+ const v0, 0x7fffffff
+
+ iput v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mRilRat:I
+
+ .line 188
+ iput v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDataRegState:I
+
+ .line 191
+ new-instance v0, Landroid/util/LocalLog;
+
+ const/16 v1, 0x32
+
+ invoke-direct {v0, v1}, Landroid/util/LocalLog;->(I)V
+
+ iput-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetCapsLocalLog:Landroid/util/LocalLog;
+
+ .line 195
+ iput-object p2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnContexts:Ljava/util/HashMap;
+
+ .line 196
+ iput-object p2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mReconnectIntent:Landroid/app/PendingIntent;
+
+ .line 909
+ const/4 v0, 0x0
+
+ iput-boolean v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mRestrictedNetworkOverride:Z
+
+ .line 1440
+ new-instance v1, Lcom/android/internal/telephony/dataconnection/DataConnection$DcDefaultState;
+
+ invoke-direct {v1, p0, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection$DcDefaultState;->(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DataConnection$1;)V
+
+ iput-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDefaultState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDefaultState;
+
+ .line 1562
+ new-instance v1, Lcom/android/internal/telephony/dataconnection/DataConnection$DcInactiveState;
+
+ invoke-direct {v1, p0, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection$DcInactiveState;->(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DataConnection$1;)V
+
+ iput-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mInactiveState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcInactiveState;
+
+ .line 1676
+ new-instance v1, Lcom/android/internal/telephony/dataconnection/DataConnection$DcActivatingState;
+
+ invoke-direct {v1, p0, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection$DcActivatingState;->(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DataConnection$1;)V
+
+ iput-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mActivatingState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcActivatingState;
+
+ .line 1991
+ new-instance v1, Lcom/android/internal/telephony/dataconnection/DataConnection$DcActiveState;
+
+ invoke-direct {v1, p0, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection$DcActiveState;->(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DataConnection$1;)V
+
+ iput-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mActiveState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcActiveState;
+
+ .line 2049
+ new-instance v1, Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectingState;
+
+ invoke-direct {v1, p0, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectingState;->(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DataConnection$1;)V
+
+ iput-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDisconnectingState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectingState;
+
+ .line 2102
+ new-instance v1, Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectionErrorCreatingConnection;
+
+ invoke-direct {v1, p0, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectionErrorCreatingConnection;->(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DataConnection$1;)V
+
+ iput-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDisconnectingErrorCreatingConnection:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectionErrorCreatingConnection;
+
+ .line 467
+ const/16 p2, 0x12c
+
+ invoke-virtual {p0, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection;->setLogRecSize(I)V
+
+ .line 468
+ const/4 p2, 0x1
+
+ invoke-virtual {p0, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection;->setLogOnlyTransitions(Z)V
+
+ .line 469
+ const-string v1, "DataConnection created"
+
+ invoke-virtual {p0, v1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 471
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ .line 472
+ iput-object p4, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDct:Lcom/android/internal/telephony/dataconnection/DcTracker;
+
+ .line 473
+ iput-object p5, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDataServiceManager:Lcom/android/internal/telephony/dataconnection/DataServiceManager;
+
+ .line 474
+ iput-object p6, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDcTesterFailBringUpAll:Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;
+
+ .line 475
+ iput-object p7, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDcController:Lcom/android/internal/telephony/dataconnection/DcController;
+
+ .line 476
+ iput p3, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mId:I
+
+ .line 477
+ const/4 p1, -0x1
+
+ iput p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mCid:I
+
+ .line 478
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ invoke-virtual {p1}, Lcom/android/internal/telephony/Phone;->getServiceState()Landroid/telephony/ServiceState;
+
+ move-result-object p1
+
+ .line 479
+ invoke-virtual {p1}, Landroid/telephony/ServiceState;->getRilDataRadioTechnology()I
+
+ move-result p3
+
+ iput p3, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mRilRat:I
+
+ .line 480
+ iget-object p3, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ invoke-virtual {p3}, Lcom/android/internal/telephony/Phone;->getServiceState()Landroid/telephony/ServiceState;
+
+ move-result-object p3
+
+ invoke-virtual {p3}, Landroid/telephony/ServiceState;->getDataRegState()I
+
+ move-result p3
+
+ iput p3, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDataRegState:I
+
+ .line 481
+ invoke-virtual {p1}, Landroid/telephony/ServiceState;->getDataNetworkType()I
+
+ move-result p3
+
+ .line 482
+ new-instance p4, Landroid/net/NetworkInfo;
+
+ const-string p5, "MOBILE"
+
+ .line 483
+ invoke-static {p3}, Landroid/telephony/TelephonyManager;->getNetworkTypeName(I)Ljava/lang/String;
+
+ move-result-object p6
+
+ invoke-direct {p4, v0, p3, p5, p6}, Landroid/net/NetworkInfo;->(IILjava/lang/String;Ljava/lang/String;)V
+
+ iput-object p4, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkInfo:Landroid/net/NetworkInfo;
+
+ .line 484
+ iget-object p3, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkInfo:Landroid/net/NetworkInfo;
+
+ invoke-virtual {p1}, Landroid/telephony/ServiceState;->getDataRoaming()Z
+
+ move-result p1
+
+ invoke-virtual {p3, p1}, Landroid/net/NetworkInfo;->setRoaming(Z)V
+
+ .line 485
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkInfo:Landroid/net/NetworkInfo;
+
+ invoke-virtual {p1, p2}, Landroid/net/NetworkInfo;->setIsAvailable(Z)V
+
+ .line 487
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDefaultState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDefaultState;
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->addState(Lcom/android/internal/util/State;)V
+
+ .line 488
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mInactiveState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcInactiveState;
+
+ iget-object p2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDefaultState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDefaultState;
+
+ invoke-virtual {p0, p1, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection;->addState(Lcom/android/internal/util/State;Lcom/android/internal/util/State;)V
+
+ .line 489
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mActivatingState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcActivatingState;
+
+ iget-object p2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDefaultState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDefaultState;
+
+ invoke-virtual {p0, p1, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection;->addState(Lcom/android/internal/util/State;Lcom/android/internal/util/State;)V
+
+ .line 490
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mActiveState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcActiveState;
+
+ iget-object p2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDefaultState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDefaultState;
+
+ invoke-virtual {p0, p1, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection;->addState(Lcom/android/internal/util/State;Lcom/android/internal/util/State;)V
+
+ .line 491
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDisconnectingState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectingState;
+
+ iget-object p2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDefaultState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDefaultState;
+
+ invoke-virtual {p0, p1, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection;->addState(Lcom/android/internal/util/State;Lcom/android/internal/util/State;)V
+
+ .line 492
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDisconnectingErrorCreatingConnection:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectionErrorCreatingConnection;
+
+ iget-object p2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDefaultState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDefaultState;
+
+ invoke-virtual {p0, p1, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection;->addState(Lcom/android/internal/util/State;Lcom/android/internal/util/State;)V
+
+ .line 493
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mInactiveState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcInactiveState;
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->setInitialState(Lcom/android/internal/util/State;)V
+
+ .line 495
+ new-instance p1, Ljava/util/HashMap;
+
+ invoke-direct {p1}, Ljava/util/HashMap;->()V
+
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnContexts:Ljava/util/HashMap;
+
+ .line 496
+ return-void
+.end method
+
+.method static synthetic access$000(Landroid/os/Message;)Ljava/lang/String;
+ .registers 1
+
+ .line 97
+ invoke-static {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->msgToString(Landroid/os/Message;)Ljava/lang/String;
+
+ move-result-object p0
+
+ return-object p0
+.end method
+
+.method static synthetic access$100(Lcom/android/internal/telephony/dataconnection/DataConnection;)Lcom/android/internal/telephony/Phone;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ return-object p0
+.end method
+
+.method static synthetic access$1002(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;)Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;
+ .registers 2
+
+ .line 97
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDcTesterFailBringUpAll:Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;
+
+ return-object p1
+.end method
+
+.method static synthetic access$102(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/Phone;)Lcom/android/internal/telephony/Phone;
+ .registers 2
+
+ .line 97
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ return-object p1
+.end method
+
+.method static synthetic access$1100(Lcom/android/internal/telephony/dataconnection/DataConnection;)I
+ .registers 1
+
+ .line 97
+ iget p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mId:I
+
+ return p0
+.end method
+
+.method static synthetic access$1200(Lcom/android/internal/telephony/dataconnection/DataConnection;)V
+ .registers 1
+
+ .line 97
+ invoke-direct {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->dumpToLog()V
+
+ return-void
+.end method
+
+.method static synthetic access$1300(Lcom/android/internal/telephony/dataconnection/DataConnection;)Lcom/android/internal/telephony/dataconnection/DataConnection$DcNetworkAgent;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkAgent:Lcom/android/internal/telephony/dataconnection/DataConnection$DcNetworkAgent;
+
+ return-object p0
+.end method
+
+.method static synthetic access$1302(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DataConnection$DcNetworkAgent;)Lcom/android/internal/telephony/dataconnection/DataConnection$DcNetworkAgent;
+ .registers 2
+
+ .line 97
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkAgent:Lcom/android/internal/telephony/dataconnection/DataConnection$DcNetworkAgent;
+
+ return-object p1
+.end method
+
+.method static synthetic access$1400(Lcom/android/internal/telephony/dataconnection/DataConnection;)Lcom/android/internal/telephony/dataconnection/DataConnection$DcInactiveState;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mInactiveState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcInactiveState;
+
+ return-object p0
+.end method
+
+.method static synthetic access$1500(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;Lcom/android/internal/telephony/dataconnection/DcFailCause;Z)V
+ .registers 4
+
+ .line 97
+ invoke-direct {p0, p1, p2, p3}, Lcom/android/internal/telephony/dataconnection/DataConnection;->notifyConnectCompleted(Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;Lcom/android/internal/telephony/dataconnection/DcFailCause;Z)V
+
+ return-void
+.end method
+
+.method static synthetic access$1600(Lcom/android/internal/telephony/dataconnection/DataConnection;Ljava/lang/String;)V
+ .registers 2
+
+ .line 97
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->logAndAddLogRec(Ljava/lang/String;)V
+
+ return-void
+.end method
+
+.method static synthetic access$1700(Lcom/android/internal/telephony/dataconnection/DataConnection;)I
+ .registers 1
+
+ .line 97
+ iget p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDataRegState:I
+
+ return p0
+.end method
+
+.method static synthetic access$1702(Lcom/android/internal/telephony/dataconnection/DataConnection;I)I
+ .registers 2
+
+ .line 97
+ iput p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDataRegState:I
+
+ return p1
+.end method
+
+.method static synthetic access$1800(Lcom/android/internal/telephony/dataconnection/DataConnection;)I
+ .registers 1
+
+ .line 97
+ iget p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mRilRat:I
+
+ return p0
+.end method
+
+.method static synthetic access$1802(Lcom/android/internal/telephony/dataconnection/DataConnection;I)I
+ .registers 2
+
+ .line 97
+ iput p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mRilRat:I
+
+ return p1
+.end method
+
+.method static synthetic access$1900(Lcom/android/internal/telephony/dataconnection/DataConnection;I)V
+ .registers 2
+
+ .line 97
+ invoke-direct {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->updateTcpBufferSizes(I)V
+
+ return-void
+.end method
+
+.method static synthetic access$200(Lcom/android/internal/telephony/dataconnection/DataConnection;)Lcom/android/internal/telephony/dataconnection/DcController;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDcController:Lcom/android/internal/telephony/dataconnection/DcController;
+
+ return-object p0
+.end method
+
+.method static synthetic access$2000(Lcom/android/internal/telephony/dataconnection/DataConnection;)V
+ .registers 1
+
+ .line 97
+ invoke-direct {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->updateNetworkInfo()V
+
+ return-void
+.end method
+
+.method static synthetic access$202(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DcController;)Lcom/android/internal/telephony/dataconnection/DcController;
+ .registers 2
+
+ .line 97
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDcController:Lcom/android/internal/telephony/dataconnection/DcController;
+
+ return-object p1
+.end method
+
+.method static synthetic access$2100(Lcom/android/internal/telephony/dataconnection/DataConnection;)V
+ .registers 1
+
+ .line 97
+ invoke-direct {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->updateNetworkInfoSuspendState()V
+
+ return-void
+.end method
+
+.method static synthetic access$2200(Lcom/android/internal/telephony/dataconnection/DataConnection;)Landroid/net/NetworkInfo;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkInfo:Landroid/net/NetworkInfo;
+
+ return-object p0
+.end method
+
+.method static synthetic access$2400(Lcom/android/internal/telephony/dataconnection/DataConnection;)Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mConnectionParams:Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;
+
+ return-object p0
+.end method
+
+.method static synthetic access$2402(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;)Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;
+ .registers 2
+
+ .line 97
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mConnectionParams:Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;
+
+ return-object p1
+.end method
+
+.method static synthetic access$2500(Lcom/android/internal/telephony/dataconnection/DataConnection;)Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDisconnectParams:Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;
+
+ return-object p0
+.end method
+
+.method static synthetic access$2502(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;)Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;
+ .registers 2
+
+ .line 97
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDisconnectParams:Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;
+
+ return-object p1
+.end method
+
+.method static synthetic access$2600(Lcom/android/internal/telephony/dataconnection/DataConnection;)Lcom/android/internal/telephony/dataconnection/DcFailCause;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDcFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ return-object p0
+.end method
+
+.method static synthetic access$2602(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DcFailCause;)Lcom/android/internal/telephony/dataconnection/DcFailCause;
+ .registers 2
+
+ .line 97
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDcFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ return-object p1
+.end method
+
+.method static synthetic access$2700(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;Z)V
+ .registers 3
+
+ .line 97
+ invoke-direct {p0, p1, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection;->notifyDisconnectCompleted(Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;Z)V
+
+ return-void
+.end method
+
+.method static synthetic access$2800(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DcFailCause;)V
+ .registers 2
+
+ .line 97
+ invoke-direct {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->notifyAllDisconnectCompleted(Lcom/android/internal/telephony/dataconnection/DcFailCause;)V
+
+ return-void
+.end method
+
+.method static synthetic access$2900(Lcom/android/internal/telephony/dataconnection/DataConnection;)V
+ .registers 1
+
+ .line 97
+ invoke-direct {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->clearSettings()V
+
+ return-void
+.end method
+
+.method static synthetic access$300(Lcom/android/internal/telephony/dataconnection/DataConnection;)Lcom/android/internal/util/AsyncChannel;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mAc:Lcom/android/internal/util/AsyncChannel;
+
+ return-object p0
+.end method
+
+.method static synthetic access$3000(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;)Z
+ .registers 2
+
+ .line 97
+ invoke-direct {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->initConnection(Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;)Z
+
+ move-result p0
+
+ return p0
+.end method
+
+.method static synthetic access$302(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/util/AsyncChannel;)Lcom/android/internal/util/AsyncChannel;
+ .registers 2
+
+ .line 97
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mAc:Lcom/android/internal/util/AsyncChannel;
+
+ return-object p1
+.end method
+
+.method static synthetic access$3100(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;)V
+ .registers 2
+
+ .line 97
+ invoke-direct {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->onConnect(Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;)V
+
+ return-void
+.end method
+
+.method static synthetic access$3200(Lcom/android/internal/telephony/dataconnection/DataConnection;)Lcom/android/internal/telephony/dataconnection/DataConnection$DcActivatingState;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mActivatingState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcActivatingState;
+
+ return-object p0
+.end method
+
+.method static synthetic access$3400(Lcom/android/internal/telephony/dataconnection/DataConnection;ILandroid/telephony/data/DataCallResponse;Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;)Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+ .registers 4
+
+ .line 97
+ invoke-direct {p0, p1, p2, p3}, Lcom/android/internal/telephony/dataconnection/DataConnection;->onSetupConnectionCompleted(ILandroid/telephony/data/DataCallResponse;Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;)Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+
+ move-result-object p0
+
+ return-object p0
+.end method
+
+.method static synthetic access$3500(Lcom/android/internal/telephony/dataconnection/DataConnection;)Lcom/android/internal/telephony/dataconnection/DataConnection$DcActiveState;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mActiveState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcActiveState;
+
+ return-object p0
+.end method
+
+.method static synthetic access$3600(Lcom/android/internal/telephony/dataconnection/DataConnection;Ljava/lang/Object;)V
+ .registers 2
+
+ .line 97
+ invoke-direct {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->tearDownData(Ljava/lang/Object;)V
+
+ return-void
+.end method
+
+.method static synthetic access$3700(Lcom/android/internal/telephony/dataconnection/DataConnection;)Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectionErrorCreatingConnection;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDisconnectingErrorCreatingConnection:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectionErrorCreatingConnection;
+
+ return-object p0
+.end method
+
+.method static synthetic access$3800(Lcom/android/internal/telephony/dataconnection/DataConnection;Landroid/telephony/data/DataCallResponse;)J
+ .registers 2
+
+ .line 97
+ invoke-direct {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getSuggestedRetryDelay(Landroid/telephony/data/DataCallResponse;)J
+
+ move-result-wide p0
+
+ return-wide p0
+.end method
+
+.method static synthetic access$400(Lcom/android/internal/telephony/dataconnection/DataConnection;)Lcom/android/internal/telephony/dataconnection/DcTracker;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDct:Lcom/android/internal/telephony/dataconnection/DcTracker;
+
+ return-object p0
+.end method
+
+.method static synthetic access$4000(Lcom/android/internal/telephony/dataconnection/DataConnection;Ljava/lang/String;)V
+ .registers 2
+
+ .line 97
+ invoke-direct {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->notifyAllOfConnected(Ljava/lang/String;)V
+
+ return-void
+.end method
+
+.method static synthetic access$402(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DcTracker;)Lcom/android/internal/telephony/dataconnection/DcTracker;
+ .registers 2
+
+ .line 97
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDct:Lcom/android/internal/telephony/dataconnection/DcTracker;
+
+ return-object p1
+.end method
+
+.method static synthetic access$4100(Lcom/android/internal/telephony/dataconnection/DataConnection;)V
+ .registers 1
+
+ .line 97
+ invoke-direct {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->setNetworkRestriction()V
+
+ return-void
+.end method
+
+.method static synthetic access$4200(Lcom/android/internal/telephony/dataconnection/DataConnection;)Z
+ .registers 1
+
+ .line 97
+ iget-boolean p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mRestrictedNetworkOverride:Z
+
+ return p0
+.end method
+
+.method static synthetic access$4300(Lcom/android/internal/telephony/dataconnection/DataConnection;)Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectingState;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDisconnectingState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectingState;
+
+ return-object p0
+.end method
+
+.method static synthetic access$4800(Lcom/android/internal/telephony/dataconnection/DataConnection;)Landroid/util/LocalLog;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetCapsLocalLog:Landroid/util/LocalLog;
+
+ return-object p0
+.end method
+
+.method static synthetic access$500(Lcom/android/internal/telephony/dataconnection/DataConnection;)Lcom/android/internal/telephony/dataconnection/ApnSetting;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ return-object p0
+.end method
+
+.method static synthetic access$502(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/ApnSetting;)Lcom/android/internal/telephony/dataconnection/ApnSetting;
+ .registers 2
+
+ .line 97
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ return-object p1
+.end method
+
+.method static synthetic access$600(Lcom/android/internal/telephony/dataconnection/DataConnection;)Lcom/android/internal/telephony/dataconnection/DataServiceManager;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDataServiceManager:Lcom/android/internal/telephony/dataconnection/DataServiceManager;
+
+ return-object p0
+.end method
+
+.method static synthetic access$602(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DataServiceManager;)Lcom/android/internal/telephony/dataconnection/DataServiceManager;
+ .registers 2
+
+ .line 97
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDataServiceManager:Lcom/android/internal/telephony/dataconnection/DataServiceManager;
+
+ return-object p1
+.end method
+
+.method static synthetic access$700(Lcom/android/internal/telephony/dataconnection/DataConnection;)Landroid/net/LinkProperties;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLinkProperties:Landroid/net/LinkProperties;
+
+ return-object p0
+.end method
+
+.method static synthetic access$702(Lcom/android/internal/telephony/dataconnection/DataConnection;Landroid/net/LinkProperties;)Landroid/net/LinkProperties;
+ .registers 2
+
+ .line 97
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLinkProperties:Landroid/net/LinkProperties;
+
+ return-object p1
+.end method
+
+.method static synthetic access$802(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DcFailCause;)Lcom/android/internal/telephony/dataconnection/DcFailCause;
+ .registers 2
+
+ .line 97
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLastFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ return-object p1
+.end method
+
+.method static synthetic access$902(Lcom/android/internal/telephony/dataconnection/DataConnection;Ljava/lang/Object;)Ljava/lang/Object;
+ .registers 2
+
+ .line 97
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mUserData:Ljava/lang/Object;
+
+ return-object p1
+.end method
+
+.method private checkSetMtu(Lcom/android/internal/telephony/dataconnection/ApnSetting;Landroid/net/LinkProperties;)V
+ .registers 4
+
+ .local v0, getMtu:Landroid/net/LinkProperties;
+
+ .line 438
+ if-nez p2, :cond_3
+
+ return-void
+
+ .line 440
+ :cond_3
+ if-eqz p1, :cond_74
+
+ if-nez p2, :cond_8
+
+ goto :goto_74
+
+ .line 442
+ :cond_8
+ invoke-virtual {p2}, Landroid/net/LinkProperties;->getMtu()I
+
+ move-result v0
+
+ if-eqz v0, :cond_27
+
+ .restart local v0 # getMtu:Landroid/net/LinkProperties;
+
+ .line 443
+ new-instance p1, Ljava/lang/StringBuilder;
+
+ invoke-direct {p1}, Ljava/lang/StringBuilder;->()V
+
+ .end local v0 # getMtu:Landroid/net/LinkProperties;
+
+ const-string v0, "MTU set by call response to: "
+
+ invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Landroid/net/LinkProperties;->getMtu()I
+
+ move-result p2
+
+ invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p1
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 444
+ return-void
+
+ .line 447
+ :cond_27
+ if-eqz p1, :cond_49
+
+ iget v0, p1, Lcom/android/internal/telephony/dataconnection/ApnSetting;->mtu:I
+
+ if-eqz v0, :cond_49
+
+ .line 448
+ iget v0, p1, Lcom/android/internal/telephony/dataconnection/ApnSetting;->mtu:I
+
+ invoke-virtual {p2, v0}, Landroid/net/LinkProperties;->setMtu(I)V
+
+ .line 449
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;->()V
+
+ const-string v0, "MTU set by APN to: "
+
+ invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget p1, p1, Lcom/android/internal/telephony/dataconnection/ApnSetting;->mtu:I
+
+ invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p1
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 450
+ return-void
+
+ .line 453
+ :cond_49
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ invoke-virtual {p1}, Lcom/android/internal/telephony/Phone;->getContext()Landroid/content/Context;
+
+ move-result-object p1
+
+ invoke-virtual {p1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
+
+ move-result-object p1
+
+ const v0, 0x10e0066
+
+ invoke-virtual {p1, v0}, Landroid/content/res/Resources;->getInteger(I)I
+
+ move-result p1
+
+ .line 455
+ if-eqz p1, :cond_73
+
+ .line 456
+ invoke-virtual {p2, p1}, Landroid/net/LinkProperties;->setMtu(I)V
+
+ .line 457
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;->()V
+
+ const-string v0, "MTU set by config resource to: "
+
+ invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p1
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 459
+ :cond_73
+ return-void
+
+ .line 440
+ :cond_74
+ :goto_74
+ return-void
+.end method
+
+.method private clearSettings()V
+ .registers 3
+
+ .line 723
+ const-string v0, "clearSettings"
+
+ invoke-virtual {p0, v0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 725
+ const-wide/16 v0, -0x1
+
+ iput-wide v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mCreateTime:J
+
+ .line 726
+ iput-wide v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLastFailTime:J
+
+ .line 727
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DcFailCause;->NONE:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ iput-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLastFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ .line 728
+ const/4 v0, -0x1
+
+ iput v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mCid:I
+
+ .line 730
+ const/4 v0, 0x5
+
+ new-array v0, v0, [Ljava/lang/String;
+
+ iput-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPcscfAddr:[Ljava/lang/String;
+
+ .line 732
+ new-instance v0, Landroid/net/LinkProperties;
+
+ invoke-direct {v0}, Landroid/net/LinkProperties;->()V
+
+ iput-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLinkProperties:Landroid/net/LinkProperties;
+
+ .line 733
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnContexts:Ljava/util/HashMap;
+
+ invoke-virtual {v0}, Ljava/util/HashMap;->clear()V
+
+ .line 734
+ const/4 v0, 0x0
+
+ iput-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ .line 735
+ iput-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDcFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ .line 736
+ return-void
+.end method
+
+.method static cmdToString(I)Ljava/lang/String;
+ .registers 4
+
+ .param p0, cmd
+
+ .prologue
+
+ .line 260
+ const/high16 v0, 0x40000
+
+ sub-int/2addr p0, v0
+
+ .line 261
+ if-ltz p0, :cond_f
+
+ sget-object v1, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ array-length v1, v1
+
+ if-ge p0, v1, :cond_f
+
+ .line 262
+ sget-object v1, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ aget-object v1, v1, p0
+
+ goto :goto_15
+
+ .line 264
+ :cond_f
+ add-int v1, p0, v0
+
+ invoke-static {v1}, Lcom/android/internal/telephony/dataconnection/DcAsyncChannel;->cmdToString(I)Ljava/lang/String;
+
+ move-result-object v1
+
+ .line 266
+ :goto_15
+ if-nez v1, :cond_2d
+
+ .line 267
+ new-instance v1, Ljava/lang/StringBuilder;
+
+ invoke-direct {v1}, Ljava/lang/StringBuilder;->()V
+
+ const-string v2, "0x"
+
+ invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ add-int/2addr p0, v0
+
+ invoke-static {p0}, Ljava/lang/Integer;->toHexString(I)Ljava/lang/String;
+
+ move-result-object p0
+
+ invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object v1
+
+ .line 269
+ :cond_2d
+ return-object v1
+.end method
+
+.method private dumpToLog()V
+ .registers 4
+
+ .line 2489
+ new-instance v0, Lcom/android/internal/telephony/dataconnection/DataConnection$1;
+
+ new-instance v1, Ljava/io/StringWriter;
+
+ const/4 v2, 0x0
+
+ invoke-direct {v1, v2}, Ljava/io/StringWriter;->(I)V
+
+ invoke-direct {v0, p0, v1}, Lcom/android/internal/telephony/dataconnection/DataConnection$1;->(Lcom/android/internal/telephony/dataconnection/DataConnection;Ljava/io/Writer;)V
+
+ const/4 v1, 0x0
+
+ invoke-virtual {p0, v1, v0, v1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->dump(Ljava/io/FileDescriptor;Ljava/io/PrintWriter;[Ljava/lang/String;)V
+
+ .line 2499
+ return-void
+.end method
+
+.method private getSuggestedRetryDelay(Landroid/telephony/data/DataCallResponse;)J
+ .registers 4
+
+ .line 2331
+ invoke-virtual {p1}, Landroid/telephony/data/DataCallResponse;->getSuggestedRetryTime()I
+
+ move-result v0
+
+ if-gez v0, :cond_e
+
+ .line 2332
+ const-string p1, "No suggested retry delay."
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 2333
+ const-wide/16 v0, -0x2
+
+ return-wide v0
+
+ .line 2336
+ :cond_e
+ invoke-virtual {p1}, Landroid/telephony/data/DataCallResponse;->getSuggestedRetryTime()I
+
+ move-result v0
+
+ const v1, 0x7fffffff
+
+ if-ne v0, v1, :cond_1f
+
+ .line 2337
+ const-string p1, "Modem suggested not retrying."
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 2338
+ const-wide/16 v0, -0x1
+
+ return-wide v0
+
+ .line 2343
+ :cond_1f
+ invoke-virtual {p1}, Landroid/telephony/data/DataCallResponse;->getSuggestedRetryTime()I
+
+ move-result p1
+
+ int-to-long v0, p1
+
+ return-wide v0
+.end method
+
+.method private initConnection(Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;)Z
+ .registers 6
+
+ .line 1168
+ iget-object v0, p1, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mApnContext:Lcom/android/internal/telephony/dataconnection/ApnContext;
+
+ .line 1169
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ if-nez v1, :cond_c
+
+ .line 1172
+ invoke-virtual {v0}, Lcom/android/internal/telephony/dataconnection/ApnContext;->getApnSetting()Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ move-result-object v1
+
+ iput-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ .line 1174
+ :cond_c
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ if-eqz v1, :cond_5f
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ invoke-virtual {v0}, Lcom/android/internal/telephony/dataconnection/ApnContext;->getApnType()Ljava/lang/String;
+
+ move-result-object v2
+
+ invoke-virtual {v1, v2}, Lcom/android/internal/telephony/dataconnection/ApnSetting;->canHandleType(Ljava/lang/String;)Z
+
+ move-result v1
+
+ if-nez v1, :cond_1d
+
+ goto :goto_5f
+
+ .line 1181
+ :cond_1d
+ iget v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mTag:I
+
+ const/4 v2, 0x1
+
+ add-int/2addr v1, v2
+
+ iput v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mTag:I
+
+ .line 1182
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mConnectionParams:Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;
+
+ .line 1183
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mConnectionParams:Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;
+
+ iget v3, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mTag:I
+
+ iput v3, v1, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mTag:I
+
+ .line 1187
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnContexts:Ljava/util/HashMap;
+
+ invoke-virtual {v1, v0, p1}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
+
+ .line 1190
+ new-instance p1, Ljava/lang/StringBuilder;
+
+ invoke-direct {p1}, Ljava/lang/StringBuilder;->()V
+
+ const-string v0, "initConnection: RefCount="
+
+ invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnContexts:Ljava/util/HashMap;
+
+ .line 1191
+ invoke-virtual {v0}, Ljava/util/HashMap;->size()I
+
+ move-result v0
+
+ invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ const-string v0, " mApnList="
+
+ invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnContexts:Ljava/util/HashMap;
+
+ invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ const-string v0, " mConnectionParams="
+
+ invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mConnectionParams:Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;
+
+ invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p1
+
+ .line 1190
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 1195
+ return v2
+
+ .line 1176
+ :cond_5f
+ :goto_5f
+ new-instance v0, Ljava/lang/StringBuilder;
+
+ invoke-direct {v0}, Ljava/lang/StringBuilder;->()V
+
+ const-string v1, "initConnection: incompatible apnSetting in ConnectionParams cp="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ const-string p1, " dc="
+
+ invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p1
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 1179
+ const/4 p1, 0x0
+
+ return p1
+.end method
+
+.method private isDnsOk([Ljava/lang/String;)Z
+ .registers 6
+
+ .line 780
+ const-string v0, "0.0.0.0"
+
+ const/4 v1, 0x0
+
+ aget-object v2, p1, v1
+
+ invoke-virtual {v0, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
+
+ move-result v0
+
+ const/4 v2, 0x1
+
+ if-eqz v0, :cond_65
+
+ const-string v0, "0.0.0.0"
+
+ aget-object p1, p1, v2
+
+ invoke-virtual {v0, p1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
+
+ move-result p1
+
+ if-eqz p1, :cond_65
+
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ .line 781
+ invoke-virtual {p1}, Lcom/android/internal/telephony/Phone;->isDnsCheckDisabled()Z
+
+ move-result p1
+
+ if-nez p1, :cond_65
+
+ .line 787
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ iget-object p1, p1, Lcom/android/internal/telephony/dataconnection/ApnSetting;->types:[Ljava/lang/String;
+
+ aget-object p1, p1, v1
+
+ const-string v0, "mms"
+
+ invoke-virtual {p1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
+
+ move-result p1
+
+ if-eqz p1, :cond_36
+
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ iget-object p1, p1, Lcom/android/internal/telephony/dataconnection/ApnSetting;->mmsProxy:Ljava/lang/String;
+
+ .line 788
+ invoke-static {p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->isIpAddress(Ljava/lang/String;)Z
+
+ move-result p1
+
+ if-nez p1, :cond_65
+
+ .line 789
+ :cond_36
+ const-string p1, "isDnsOk: return false apn.types[0]=%s APN_TYPE_MMS=%s isIpAddress(%s)=%s"
+
+ const/4 v0, 0x4
+
+ new-array v0, v0, [Ljava/lang/Object;
+
+ iget-object v3, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ iget-object v3, v3, Lcom/android/internal/telephony/dataconnection/ApnSetting;->types:[Ljava/lang/String;
+
+ aget-object v3, v3, v1
+
+ aput-object v3, v0, v1
+
+ const-string v3, "mms"
+
+ aput-object v3, v0, v2
+
+ const/4 v2, 0x2
+
+ iget-object v3, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ iget-object v3, v3, Lcom/android/internal/telephony/dataconnection/ApnSetting;->mmsProxy:Ljava/lang/String;
+
+ aput-object v3, v0, v2
+
+ const/4 v2, 0x3
+
+ iget-object v3, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ iget-object v3, v3, Lcom/android/internal/telephony/dataconnection/ApnSetting;->mmsProxy:Ljava/lang/String;
+
+ .line 792
+ invoke-static {v3}, Lcom/android/internal/telephony/dataconnection/DataConnection;->isIpAddress(Ljava/lang/String;)Z
+
+ move-result v3
+
+ invoke-static {v3}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
+
+ move-result-object v3
+
+ aput-object v3, v0, v2
+
+ .line 789
+ invoke-static {p1, v0}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
+
+ move-result-object p1
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 793
+ return v1
+
+ .line 796
+ :cond_65
+ return v2
+.end method
+
+.method public static isIpAddress(Ljava/lang/String;)Z
+ .registers 1
+ .annotation build Lcom/android/internal/annotations/VisibleForTesting;
+ .end annotation
+
+ .line 1064
+ if-nez p0, :cond_4
+
+ const/4 p0, 0x0
+
+ return p0
+
+ .line 1066
+ :cond_4
+ invoke-static {p0}, Ljava/net/InetAddress;->isNumeric(Ljava/lang/String;)Z
+
+ move-result p0
+
+ return p0
+.end method
+
+.method public static makeDataConnection(Lcom/android/internal/telephony/Phone;ILcom/android/internal/telephony/dataconnection/DcTracker;Lcom/android/internal/telephony/dataconnection/DataServiceManager;Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;Lcom/android/internal/telephony/dataconnection/DcController;)Lcom/android/internal/telephony/dataconnection/DataConnection;
+ .registers 15
+
+ .line 283
+ new-instance v8, Lcom/android/internal/telephony/dataconnection/DataConnection;
+
+ new-instance v0, Ljava/lang/StringBuilder;
+
+ invoke-direct {v0}, Ljava/lang/StringBuilder;->()V
+
+ const-string v1, "DC-"
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ sget-object v1, Lcom/android/internal/telephony/dataconnection/DataConnection;->mInstanceNumber:Ljava/util/concurrent/atomic/AtomicInteger;
+
+ .line 284
+ invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicInteger;->incrementAndGet()I
+
+ move-result v1
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object v2
+
+ move-object v0, v8
+
+ move-object v1, p0
+
+ move v3, p1
+
+ move-object v4, p2
+
+ move-object v5, p3
+
+ move-object v6, p4
+
+ move-object v7, p5
+
+ invoke-direct/range {v0 .. v7}, Lcom/android/internal/telephony/dataconnection/DataConnection;->(Lcom/android/internal/telephony/Phone;Ljava/lang/String;ILcom/android/internal/telephony/dataconnection/DcTracker;Lcom/android/internal/telephony/dataconnection/DataServiceManager;Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;Lcom/android/internal/telephony/dataconnection/DcController;)V
+
+ .line 286
+ invoke-virtual {v8}, Lcom/android/internal/telephony/dataconnection/DataConnection;->start()V
+
+ .line 287
+ new-instance p0, Ljava/lang/StringBuilder;
+
+ invoke-direct {p0}, Ljava/lang/StringBuilder;->()V
+
+ const-string p1, "Made "
+
+ invoke-virtual {p0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v8}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getName()Ljava/lang/String;
+
+ move-result-object p1
+
+ invoke-virtual {p0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p0
+
+ invoke-virtual {v8, p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 288
+ return-object v8
+.end method
+
+.method private static msgToString(Landroid/os/Message;)Ljava/lang/String;
+ .registers 6
+
+ .line 2356
+ if-nez p0, :cond_5
+
+ .line 2357
+ const-string p0, "null"
+
+ goto :goto_72
+
+ .line 2359
+ :cond_5
+ new-instance v0, Ljava/lang/StringBuilder;
+
+ invoke-direct {v0}, Ljava/lang/StringBuilder;->()V
+
+ .line 2361
+ const-string v1, "{what="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ .line 2362
+ iget v1, p0, Landroid/os/Message;->what:I
+
+ invoke-static {v1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->cmdToString(I)Ljava/lang/String;
+
+ move-result-object v1
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ .line 2364
+ const-string v1, " when="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ .line 2365
+ invoke-virtual {p0}, Landroid/os/Message;->getWhen()J
+
+ move-result-wide v1
+
+ invoke-static {}, Landroid/os/SystemClock;->uptimeMillis()J
+
+ move-result-wide v3
+
+ sub-long/2addr v1, v3
+
+ invoke-static {v1, v2, v0}, Landroid/util/TimeUtils;->formatDuration(JLjava/lang/StringBuilder;)V
+
+ .line 2367
+ iget v1, p0, Landroid/os/Message;->arg1:I
+
+ if-eqz v1, :cond_37
+
+ .line 2368
+ const-string v1, " arg1="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ .line 2369
+ iget v1, p0, Landroid/os/Message;->arg1:I
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ .line 2372
+ :cond_37
+ iget v1, p0, Landroid/os/Message;->arg2:I
+
+ if-eqz v1, :cond_45
+
+ .line 2373
+ const-string v1, " arg2="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ .line 2374
+ iget v1, p0, Landroid/os/Message;->arg2:I
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ .line 2377
+ :cond_45
+ iget-object v1, p0, Landroid/os/Message;->obj:Ljava/lang/Object;
+
+ if-eqz v1, :cond_53
+
+ .line 2378
+ const-string v1, " obj="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ .line 2379
+ iget-object v1, p0, Landroid/os/Message;->obj:Ljava/lang/Object;
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ .line 2382
+ :cond_53
+ const-string v1, " target="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ .line 2383
+ invoke-virtual {p0}, Landroid/os/Message;->getTarget()Landroid/os/Handler;
+
+ move-result-object v1
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ .line 2385
+ const-string v1, " replyTo="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ .line 2386
+ iget-object p0, p0, Landroid/os/Message;->replyTo:Landroid/os/Messenger;
+
+ invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ .line 2388
+ const-string p0, "}"
+
+ invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ .line 2390
+ invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p0
+
+ .line 2392
+ :goto_72
+ return-object p0
+.end method
+
+.method private notifyAllDisconnectCompleted(Lcom/android/internal/telephony/dataconnection/DcFailCause;)V
+ .registers 4
+
+ .line 610
+ invoke-virtual {p1}, Lcom/android/internal/telephony/dataconnection/DcFailCause;->toString()Ljava/lang/String;
+
+ move-result-object p1
+
+ const/4 v0, 0x0
+
+ const v1, 0x4200f
+
+ invoke-direct {p0, v0, v1, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->notifyAllWithEvent(Lcom/android/internal/telephony/dataconnection/ApnContext;ILjava/lang/String;)V
+
+ .line 611
+ return-void
+.end method
+
+.method private notifyAllOfConnected(Ljava/lang/String;)V
+ .registers 4
+
+ .line 603
+ const/4 v0, 0x0
+
+ const v1, 0x42000
+
+ invoke-direct {p0, v0, v1, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->notifyAllWithEvent(Lcom/android/internal/telephony/dataconnection/ApnContext;ILjava/lang/String;)V
+
+ .line 604
+ return-void
+.end method
+
+.method private notifyAllOfDisconnectDcRetrying(Ljava/lang/String;)V
+ .registers 4
+
+ .line 607
+ const/4 v0, 0x0
+
+ const v1, 0x42022
+
+ invoke-direct {p0, v0, v1, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->notifyAllWithEvent(Lcom/android/internal/telephony/dataconnection/ApnContext;ILjava/lang/String;)V
+
+ .line 608
+ return-void
+.end method
+
+.method private notifyAllWithEvent(Lcom/android/internal/telephony/dataconnection/ApnContext;ILjava/lang/String;)V
+ .registers 8
+
+ .line 588
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkInfo:Landroid/net/NetworkInfo;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkInfo:Landroid/net/NetworkInfo;
+
+ invoke-virtual {v1}, Landroid/net/NetworkInfo;->getDetailedState()Landroid/net/NetworkInfo$DetailedState;
+
+ move-result-object v1
+
+ iget-object v2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkInfo:Landroid/net/NetworkInfo;
+
+ .line 589
+ invoke-virtual {v2}, Landroid/net/NetworkInfo;->getExtraInfo()Ljava/lang/String;
+
+ move-result-object v2
+
+ .line 588
+ invoke-virtual {v0, v1, p3, v2}, Landroid/net/NetworkInfo;->setDetailedState(Landroid/net/NetworkInfo$DetailedState;Ljava/lang/String;Ljava/lang/String;)V
+
+ .line 590
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnContexts:Ljava/util/HashMap;
+
+ invoke-virtual {v0}, Ljava/util/HashMap;->values()Ljava/util/Collection;
+
+ move-result-object v0
+
+ invoke-interface {v0}, Ljava/util/Collection;->iterator()Ljava/util/Iterator;
+
+ move-result-object v0
+
+ :goto_1b
+ invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
+
+ move-result v1
+
+ if-eqz v1, :cond_49
+
+ invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
+
+ move-result-object v1
+
+ check-cast v1, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;
+
+ .line 591
+ iget-object v2, v1, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mApnContext:Lcom/android/internal/telephony/dataconnection/ApnContext;
+
+ .line 592
+ if-ne v2, p1, :cond_2c
+
+ goto :goto_1b
+
+ .line 593
+ :cond_2c
+ if-eqz p3, :cond_31
+
+ invoke-virtual {v2, p3}, Lcom/android/internal/telephony/dataconnection/ApnContext;->setReason(Ljava/lang/String;)V
+
+ .line 594
+ :cond_31
+ new-instance v3, Landroid/util/Pair;
+
+ iget v1, v1, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mConnectionGeneration:I
+
+ .line 595
+ invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
+
+ move-result-object v1
+
+ invoke-direct {v3, v2, v1}, Landroid/util/Pair;->(Ljava/lang/Object;Ljava/lang/Object;)V
+
+ .line 596
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDct:Lcom/android/internal/telephony/dataconnection/DcTracker;
+
+ invoke-virtual {v1, p2, v3}, Lcom/android/internal/telephony/dataconnection/DcTracker;->obtainMessage(ILjava/lang/Object;)Landroid/os/Message;
+
+ move-result-object v1
+
+ .line 597
+ invoke-static {v1}, Landroid/os/AsyncResult;->forMessage(Landroid/os/Message;)Landroid/os/AsyncResult;
+
+ .line 598
+ invoke-virtual {v1}, Landroid/os/Message;->sendToTarget()V
+
+ .line 599
+ goto :goto_1b
+
+ .line 600
+ :cond_49
+ return-void
+.end method
+
+.method private notifyConnectCompleted(Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;Lcom/android/internal/telephony/dataconnection/DcFailCause;Z)V
+ .registers 9
+
+ .line 622
+ nop
+
+ .line 624
+ const/4 v0, 0x0
+
+ if-eqz p1, :cond_5f
+
+ iget-object v1, p1, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mOnCompletedMsg:Landroid/os/Message;
+
+ if-eqz v1, :cond_5f
+
+ .line 626
+ iget-object v1, p1, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mOnCompletedMsg:Landroid/os/Message;
+
+ .line 627
+ iput-object v0, p1, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mOnCompletedMsg:Landroid/os/Message;
+
+ .line 628
+ iget-object v0, p1, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mApnContext:Lcom/android/internal/telephony/dataconnection/ApnContext;
+
+ .line 630
+ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
+
+ move-result-wide v2
+
+ .line 631
+ iget p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mCid:I
+
+ iput p1, v1, Landroid/os/Message;->arg1:I
+
+ .line 633
+ sget-object p1, Lcom/android/internal/telephony/dataconnection/DcFailCause;->NONE:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ if-ne p2, p1, :cond_20
+
+ .line 634
+ iput-wide v2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mCreateTime:J
+
+ .line 635
+ invoke-static {v1}, Landroid/os/AsyncResult;->forMessage(Landroid/os/Message;)Landroid/os/AsyncResult;
+
+ goto :goto_34
+
+ .line 637
+ :cond_20
+ iput-object p2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLastFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ .line 638
+ iput-wide v2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLastFailTime:J
+
+ .line 641
+ if-nez p2, :cond_28
+
+ sget-object p2, Lcom/android/internal/telephony/dataconnection/DcFailCause;->UNKNOWN:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ .line 642
+ :cond_28
+ new-instance p1, Ljava/lang/Throwable;
+
+ .line 643
+ invoke-virtual {p2}, Lcom/android/internal/telephony/dataconnection/DcFailCause;->toString()Ljava/lang/String;
+
+ move-result-object v4
+
+ invoke-direct {p1, v4}, Ljava/lang/Throwable;->(Ljava/lang/String;)V
+
+ .line 642
+ invoke-static {v1, p2, p1}, Landroid/os/AsyncResult;->forMessage(Landroid/os/Message;Ljava/lang/Object;Ljava/lang/Throwable;)Landroid/os/AsyncResult;
+
+ .line 646
+ :goto_34
+ new-instance p1, Ljava/lang/StringBuilder;
+
+ invoke-direct {p1}, Ljava/lang/StringBuilder;->()V
+
+ const-string v4, "notifyConnectCompleted at "
+
+ invoke-virtual {p1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p1, v2, v3}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
+
+ const-string v2, " cause="
+
+ invoke-virtual {p1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ const-string v2, " connectionCompletedMsg="
+
+ invoke-virtual {p1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ .line 647
+ invoke-static {v1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->msgToString(Landroid/os/Message;)Ljava/lang/String;
+
+ move-result-object v2
+
+ invoke-virtual {p1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p1
+
+ .line 646
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 650
+ invoke-virtual {v1}, Landroid/os/Message;->sendToTarget()V
+
+ .line 652
+ :cond_5f
+ if-eqz p3, :cond_8b
+
+ .line 653
+ new-instance p1, Ljava/lang/StringBuilder;
+
+ invoke-direct {p1}, Ljava/lang/StringBuilder;->()V
+
+ const-string p3, "Send to all. "
+
+ invoke-virtual {p1, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ const-string p3, " "
+
+ invoke-virtual {p1, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Lcom/android/internal/telephony/dataconnection/DcFailCause;->toString()Ljava/lang/String;
+
+ move-result-object p3
+
+ invoke-virtual {p1, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p1
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 654
+ const p1, 0x42023
+
+ .line 655
+ invoke-virtual {p2}, Lcom/android/internal/telephony/dataconnection/DcFailCause;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ .line 654
+ invoke-direct {p0, v0, p1, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection;->notifyAllWithEvent(Lcom/android/internal/telephony/dataconnection/ApnContext;ILjava/lang/String;)V
+
+ .line 657
+ :cond_8b
+ return-void
+.end method
+
+.method private notifyDisconnectCompleted(Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;Z)V
+ .registers 10
+
+ .line 665
+ const-string v0, "NotifyDisconnectCompleted"
+
+ invoke-virtual {p0, v0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 667
+ nop
+
+ .line 668
+ nop
+
+ .line 670
+ const/4 v0, 0x0
+
+ if-eqz p1, :cond_4a
+
+ iget-object v1, p1, Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;->mOnCompletedMsg:Landroid/os/Message;
+
+ if-eqz v1, :cond_4a
+
+ .line 672
+ iget-object v1, p1, Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;->mOnCompletedMsg:Landroid/os/Message;
+
+ .line 673
+ iput-object v0, p1, Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;->mOnCompletedMsg:Landroid/os/Message;
+
+ .line 674
+ iget-object v2, v1, Landroid/os/Message;->obj:Ljava/lang/Object;
+
+ instance-of v2, v2, Lcom/android/internal/telephony/dataconnection/ApnContext;
+
+ if-eqz v2, :cond_1c
+
+ .line 675
+ iget-object v0, v1, Landroid/os/Message;->obj:Ljava/lang/Object;
+
+ check-cast v0, Lcom/android/internal/telephony/dataconnection/ApnContext;
+
+ .line 677
+ :cond_1c
+ iget-object v2, p1, Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;->mReason:Ljava/lang/String;
+
+ .line 679
+ const-string v3, "msg=%s msg.obj=%s"
+
+ const/4 v4, 0x2
+
+ new-array v4, v4, [Ljava/lang/Object;
+
+ const/4 v5, 0x0
+
+ invoke-virtual {v1}, Landroid/os/Message;->toString()Ljava/lang/String;
+
+ move-result-object v6
+
+ aput-object v6, v4, v5
+
+ const/4 v5, 0x1
+
+ .line 680
+ iget-object v6, v1, Landroid/os/Message;->obj:Ljava/lang/Object;
+
+ instance-of v6, v6, Ljava/lang/String;
+
+ if-eqz v6, :cond_36
+
+ iget-object v6, v1, Landroid/os/Message;->obj:Ljava/lang/Object;
+
+ check-cast v6, Ljava/lang/String;
+
+ goto :goto_38
+
+ :cond_36
+ const-string v6, ""
+
+ :goto_38
+ aput-object v6, v4, v5
+
+ .line 679
+ invoke-static {v3, v4}, Ljava/lang/String;->format([Ljava/lang/String;[[Ljava/lang/Object;)Ljava/lang/String;
+
+ move-result-object v3
+
+ invoke-virtual {p0, v3}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(I[[D[Ljava/lang/String;)V
+
+ .line 682
+ invoke-static {v1}, Landroid/os/AsyncResult;->forMessage(Landroid/os/Message;)Landroid/os/AsyncResult;
+
+ .line 683
+ invoke-virtual {v1}, Landroid/os/Message;->sendToTarget()V
+
+ .line 685
+ move-object v1, v0
+
+ move-object v0, v2
+
+ goto :goto_4b
+
+ :cond_4a
+ move-object v1, v0
+
+ :goto_4b
+ if-eqz p2, :cond_5b
+
+ .line 686
+ if-nez v0, :cond_55
+
+ .line 687
+ sget-object p2, Lcom/android/internal/telephony/dataconnection/DcFailCause;->UNKNOWN:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ invoke-virtual {p2}, Lcom/android/internal/telephony/dataconnection/DcFailCause;->toString()Ljava/lang/String;
+
+ move-result-object v0
+
+ .line 689
+ :cond_55
+ const p2, 0x4200f
+
+ invoke-direct {p0, v1, p2, v0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->notifyAllWithEvent(Lcom/android/internal/telephony/dataconnection/ApnContext;ILjava/lang/String;)V
+
+ .line 691
+ :cond_5b
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;->()V
+
+ const-string v0, "NotifyDisconnectCompleted DisconnectParams="
+
+ invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p1
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 692
+ return-void
+.end method
+
+.method private onConnect(Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;)V
+ .registers 21
+
+ move-object/from16 v0, p0
+
+ .line 506
+ move-object/from16 v1, p1
+
+ new-instance v2, Ljava/lang/StringBuilder;
+
+ invoke-direct {v2}, Ljava/lang/StringBuilder;->()V
+
+ const-string v3, "onConnect: carrier=\'"
+
+ invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v3, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ iget-object v3, v3, Lcom/android/internal/telephony/dataconnection/ApnSetting;->carrier:Ljava/lang/String;
+
+ invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ const-string v3, "\' APN=\'"
+
+ invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v3, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ iget-object v3, v3, Lcom/android/internal/telephony/dataconnection/ApnSetting;->apn:Ljava/lang/String;
+
+ invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ const-string v3, "\' proxy=\'"
+
+ invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v3, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ iget-object v3, v3, Lcom/android/internal/telephony/dataconnection/ApnSetting;->proxy:Ljava/lang/String;
+
+ invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ const-string v3, "\' port=\'"
+
+ invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v3, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ iget-object v3, v3, Lcom/android/internal/telephony/dataconnection/ApnSetting;->port:Ljava/lang/String;
+
+ invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ const-string v3, "\'"
+
+ invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object v2
+
+ invoke-virtual {v0, v2}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 509
+ iget-object v2, v1, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mApnContext:Lcom/android/internal/telephony/dataconnection/ApnContext;
+
+ if-eqz v2, :cond_50
+
+ iget-object v2, v1, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mApnContext:Lcom/android/internal/telephony/dataconnection/ApnContext;
+
+ const-string v3, "DataConnection.onConnect"
+
+ invoke-virtual {v2, v3}, Lcom/android/internal/telephony/dataconnection/ApnContext;->requestLog(Ljava/lang/String;)V
+
+ .line 512
+ :cond_50
+ iget-object v2, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDcTesterFailBringUpAll:Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;
+
+ invoke-virtual {v2}, Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;->getDcFailBringUp()Lcom/android/internal/telephony/dataconnection/DcFailBringUp;
+
+ move-result-object v2
+
+ iget v2, v2, Lcom/android/internal/telephony/dataconnection/DcFailBringUp;->mCounter:I
+
+ const/4 v3, 0x1
+
+ const v4, 0x40001
+
+ if-lez v2, :cond_bd
+
+ .line 513
+ new-instance v2, Landroid/telephony/data/DataCallResponse;
+
+ iget-object v5, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDcTesterFailBringUpAll:Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;
+
+ .line 514
+ invoke-virtual {v5}, Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;->getDcFailBringUp()Lcom/android/internal/telephony/dataconnection/DcFailBringUp;
+
+ move-result-object v5
+
+ iget-object v5, v5, Lcom/android/internal/telephony/dataconnection/DcFailBringUp;->mFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ invoke-virtual {v5}, Lcom/android/internal/telephony/dataconnection/DcFailCause;->getErrorCode()I
+
+ move-result v6
+
+ iget-object v5, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDcTesterFailBringUpAll:Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;
+
+ .line 515
+ invoke-virtual {v5}, Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;->getDcFailBringUp()Lcom/android/internal/telephony/dataconnection/DcFailBringUp;
+
+ move-result-object v5
+
+ iget v7, v5, Lcom/android/internal/telephony/dataconnection/DcFailBringUp;->mSuggestedRetryTime:I
+
+ const/4 v8, 0x0
+
+ const/4 v9, 0x0
+
+ const-string v10, ""
+
+ const-string v11, ""
+
+ const/4 v12, 0x0
+
+ const/4 v13, 0x0
+
+ const/4 v14, 0x0
+
+ const/4 v15, 0x0
+
+ const/16 v16, 0x0
+
+ move-object v5, v2
+
+ invoke-direct/range {v5 .. v16}, Landroid/telephony/data/DataCallResponse;->(IIIILjava/lang/String;Ljava/lang/String;Ljava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/List;I)V
+
+ .line 518
+ invoke-virtual {v0, v4, v1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->obtainMessage(ILjava/lang/Object;)Landroid/os/Message;
+
+ move-result-object v1
+
+ .line 519
+ const/4 v4, 0x0
+
+ invoke-static {v1, v2, v4}, Landroid/os/AsyncResult;->forMessage(Landroid/os/Message;Ljava/lang/Object;Ljava/lang/Throwable;)Landroid/os/AsyncResult;
+
+ .line 520
+ invoke-virtual {v0, v1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->sendMessage(Landroid/os/Message;)V
+
+ .line 522
+ new-instance v1, Ljava/lang/StringBuilder;
+
+ invoke-direct {v1}, Ljava/lang/StringBuilder;->()V
+
+ const-string v4, "onConnect: FailBringUpAll="
+
+ invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v4, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDcTesterFailBringUpAll:Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;
+
+ invoke-virtual {v4}, Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;->getDcFailBringUp()Lcom/android/internal/telephony/dataconnection/DcFailBringUp;
+
+ move-result-object v4
+
+ invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ const-string v4, " send error response="
+
+ invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object v1
+
+ invoke-virtual {v0, v1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 525
+ iget-object v0, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDcTesterFailBringUpAll:Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;
+
+ invoke-virtual {v0}, Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;->getDcFailBringUp()Lcom/android/internal/telephony/dataconnection/DcFailBringUp;
+
+ move-result-object v0
+
+ iget v1, v0, Lcom/android/internal/telephony/dataconnection/DcFailBringUp;->mCounter:I
+
+ sub-int/2addr v1, v3
+
+ iput v1, v0, Lcom/android/internal/telephony/dataconnection/DcFailBringUp;->mCounter:I
+
+ .line 526
+ return-void
+
+ .line 529
+ :cond_bd
+ const-wide/16 v5, -0x1
+
+ iput-wide v5, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mCreateTime:J
+
+ .line 530
+ iput-wide v5, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLastFailTime:J
+
+ .line 531
+ sget-object v2, Lcom/android/internal/telephony/dataconnection/DcFailCause;->NONE:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ iput-object v2, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLastFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ .line 533
+ invoke-virtual {v0, v4, v1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->obtainMessage(ILjava/lang/Object;)Landroid/os/Message;
+
+ move-result-object v12
+
+ .line 534
+ iput-object v1, v12, Landroid/os/Message;->obj:Ljava/lang/Object;
+
+ .line 536
+ iget-object v2, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ iget v4, v1, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mProfileId:I
+
+ invoke-static {v2, v4}, Lcom/android/internal/telephony/dataconnection/DcTracker;->createDataProfile(Lcom/android/internal/telephony/dataconnection/ApnSetting;I)Landroid/telephony/data/DataProfile;
+
+ move-result-object v2
+
+ .line 541
+ iget-object v4, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ invoke-virtual {v4}, Lcom/android/internal/telephony/Phone;->getServiceState()Landroid/telephony/ServiceState;
+
+ move-result-object v4
+
+ invoke-virtual {v4}, Landroid/telephony/ServiceState;->getDataRoamingFromRegistration()Z
+
+ move-result v8
+
+ .line 546
+ iget-object v4, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ invoke-virtual {v4}, Lcom/android/internal/telephony/Phone;->getDataRoamingEnabled()Z
+
+ move-result v4
+
+ if-nez v4, :cond_f8
+
+ if-eqz v8, :cond_f6
+
+ iget-object v4, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ .line 547
+ invoke-virtual {v4}, Lcom/android/internal/telephony/Phone;->getServiceState()Landroid/telephony/ServiceState;
+
+ move-result-object v4
+
+ invoke-virtual {v4}, Landroid/telephony/ServiceState;->getDataRoaming()Z
+
+ move-result v4
+
+ if-nez v4, :cond_f6
+
+ goto :goto_f8
+
+ :cond_f6
+ const/4 v3, 0x0
+
+ nop
+
+ .line 549
+ :cond_f8
+ :goto_f8
+ move v9, v3
+
+ iget-object v5, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDataServiceManager:Lcom/android/internal/telephony/dataconnection/DataServiceManager;
+
+ iget v3, v1, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mRilRat:I
+
+ .line 550
+ invoke-static {v3}, Landroid/telephony/ServiceState;->rilRadioTechnologyToAccessNetworkType(I)I
+
+ move-result v6
+
+ const/4 v10, 0x1
+
+ const/4 v11, 0x0
+
+ .line 549
+ move-object v7, v2
+
+ invoke-virtual/range {v5 .. v12}, Lcom/android/internal/telephony/dataconnection/DataServiceManager;->setupDataCall(ILandroid/telephony/data/DataProfile;ZZILandroid/net/LinkProperties;Landroid/os/Message;)V
+
+ .line 552
+ invoke-static {}, Lcom/android/internal/telephony/metrics/TelephonyMetrics;->getInstance()Lcom/android/internal/telephony/metrics/TelephonyMetrics;
+
+ move-result-object v13
+
+ iget-object v0, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ invoke-virtual {v0}, Lcom/android/internal/telephony/Phone;->getPhoneId()I
+
+ move-result v14
+
+ iget v15, v1, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mRilRat:I
+
+ .line 553
+ invoke-virtual {v2}, Landroid/telephony/data/DataProfile;->getProfileId()I
+
+ move-result v16
+
+ invoke-virtual {v2}, Landroid/telephony/data/DataProfile;->getApn()Ljava/lang/String;
+
+ move-result-object v17
+
+ invoke-virtual {v2}, Landroid/telephony/data/DataProfile;->getProtocol()Ljava/lang/String;
+
+ move-result-object v18
+
+ .line 552
+ invoke-virtual/range {v13 .. v18}, Lcom/android/internal/telephony/metrics/TelephonyMetrics;->writeSetupDataCall(IIILjava/lang/String;Ljava/lang/String;)V
+
+ .line 554
+ return-void
+.end method
+
+.method private onSetupConnectionCompleted(ILandroid/telephony/data/DataCallResponse;Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;)Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+ .registers 6
+
+ .line 751
+ iget v0, p3, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mTag:I
+
+ iget v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mTag:I
+
+ if-eq v0, v1, :cond_29
+
+ .line 753
+ new-instance p1, Ljava/lang/StringBuilder;
+
+ invoke-direct {p1}, Ljava/lang/StringBuilder;->()V
+
+ const-string p2, "onSetupConnectionCompleted stale cp.tag="
+
+ invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget p2, p3, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mTag:I
+
+ invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ const-string p2, ", mtag="
+
+ invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget p2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mTag:I
+
+ invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p1
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 755
+ sget-object p1, Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;->ERROR_STALE:Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+
+ goto :goto_80
+
+ .line 756
+ :cond_29
+ const/4 p3, 0x4
+
+ if-ne p1, p3, :cond_33
+
+ .line 757
+ sget-object p1, Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;->ERROR_RADIO_NOT_AVAILABLE:Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+
+ .line 758
+ sget-object p2, Lcom/android/internal/telephony/dataconnection/DcFailCause;->RADIO_NOT_AVAILABLE:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ iput-object p2, p1, Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;->mFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ goto :goto_80
+
+ .line 759
+ :cond_33
+ invoke-virtual {p2}, Landroid/telephony/data/DataCallResponse;->getStatus()I
+
+ move-result p1
+
+ if-eqz p1, :cond_59
+
+ .line 760
+ invoke-virtual {p2}, Landroid/telephony/data/DataCallResponse;->getStatus()I
+
+ move-result p1
+
+ sget-object p3, Lcom/android/internal/telephony/dataconnection/DcFailCause;->RADIO_NOT_AVAILABLE:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ invoke-virtual {p3}, Lcom/android/internal/telephony/dataconnection/DcFailCause;->getErrorCode()I
+
+ move-result p3
+
+ if-ne p1, p3, :cond_4c
+
+ .line 761
+ sget-object p1, Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;->ERROR_RADIO_NOT_AVAILABLE:Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+
+ .line 762
+ sget-object p2, Lcom/android/internal/telephony/dataconnection/DcFailCause;->RADIO_NOT_AVAILABLE:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ iput-object p2, p1, Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;->mFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ goto :goto_80
+
+ .line 764
+ :cond_4c
+ sget-object p1, Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;->ERROR_DATA_SERVICE_SPECIFIC_ERROR:Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+
+ .line 765
+ invoke-virtual {p2}, Landroid/telephony/data/DataCallResponse;->getStatus()I
+
+ move-result p2
+
+ invoke-static {p2}, Lcom/android/internal/telephony/dataconnection/DcFailCause;->fromInt(I)Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ move-result-object p2
+
+ iput-object p2, p1, Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;->mFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ goto :goto_80
+
+ .line 768
+ :cond_59
+ const-string p1, "onSetupConnectionCompleted received successful DataCallResponse"
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 769
+ invoke-virtual {p2}, Landroid/telephony/data/DataCallResponse;->getCallId()I
+
+ move-result p1
+
+ iput p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mCid:I
+
+ .line 771
+ invoke-virtual {p2}, Landroid/telephony/data/DataCallResponse;->getPcscfs()Ljava/util/List;
+
+ move-result-object p1
+
+ invoke-virtual {p2}, Landroid/telephony/data/DataCallResponse;->getPcscfs()Ljava/util/List;
+
+ move-result-object p3
+
+ invoke-interface {p3}, Ljava/util/List;->size()I
+
+ move-result p3
+
+ new-array p3, p3, [Ljava/lang/String;
+
+ invoke-interface {p1, p3}, Ljava/util/List;->toArray([Ljava/lang/Object;)[Ljava/lang/Object;
+
+ move-result-object p1
+
+ check-cast p1, [Ljava/lang/String;
+
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPcscfAddr:[Ljava/lang/String;
+
+ .line 773
+ invoke-virtual {p0, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection;->updateLinkProperty(Landroid/telephony/data/DataCallResponse;)Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;
+
+ move-result-object p1
+
+ iget-object p1, p1, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->setupResult:Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+
+ .line 776
+ :goto_80
+ return-object p1
+.end method
+
+.method private setLinkProperties(Landroid/telephony/data/DataCallResponse;Landroid/net/LinkProperties;)Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+ .registers 10
+
+ .line 1072
+ new-instance v0, Ljava/lang/StringBuilder;
+
+ invoke-direct {v0}, Ljava/lang/StringBuilder;->()V
+
+ const-string v1, "net."
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p1}, Landroid/telephony/data/DataCallResponse;->getIfname()Ljava/lang/String;
+
+ move-result-object v1
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ const-string v1, "."
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object v0
+
+ .line 1073
+ const/4 v1, 0x2
+
+ new-array v1, v1, [Ljava/lang/String;
+
+ .line 1074
+ new-instance v2, Ljava/lang/StringBuilder;
+
+ invoke-direct {v2}, Ljava/lang/StringBuilder;->()V
+
+ invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ const-string v3, "dns1"
+
+ invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object v2
+
+ invoke-static {v2}, Landroid/os/SystemProperties;->get(Ljava/lang/String;)Ljava/lang/String;
+
+ move-result-object v2
+
+ const/4 v3, 0x0
+
+ aput-object v2, v1, v3
+
+ .line 1075
+ new-instance v2, Ljava/lang/StringBuilder;
+
+ invoke-direct {v2}, Ljava/lang/StringBuilder;->()V
+
+ invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ const-string v0, "dns2"
+
+ invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object v0
+
+ invoke-static {v0}, Landroid/os/SystemProperties;->get(Ljava/lang/String;)Ljava/lang/String;
+
+ move-result-object v0
+
+ const/4 v2, 0x1
+
+ aput-object v0, v1, v2
+
+ .line 1076
+ invoke-direct {p0, v1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->isDnsOk([Ljava/lang/String;)Z
+
+ move-result v0
+
+ .line 1082
+ invoke-virtual {p2}, Landroid/net/LinkProperties;->clear()V
+
+ .line 1084
+ invoke-virtual {p1}, Landroid/telephony/data/DataCallResponse;->getStatus()I
+
+ move-result v2
+
+ sget-object v4, Lcom/android/internal/telephony/dataconnection/DcFailCause;->NONE:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ invoke-virtual {v4}, Lcom/android/internal/telephony/dataconnection/DcFailCause;->getErrorCode()I
+
+ move-result v4
+
+ if-ne v2, v4, :cond_17c
+
+ .line 1087
+ :try_start_60
+ invoke-virtual {p1}, Landroid/telephony/data/DataCallResponse;->getIfname()Ljava/lang/String;
+
+ move-result-object v2
+
+ invoke-virtual {p2, v2}, Landroid/net/LinkProperties;->setInterfaceName(Ljava/lang/String;)V
+
+ .line 1090
+ invoke-virtual {p1}, Landroid/telephony/data/DataCallResponse;->getAddresses()Ljava/util/List;
+
+ move-result-object v2
+
+ invoke-interface {v2}, Ljava/util/List;->size()I
+
+ move-result v2
+
+ if-lez v2, :cond_149
+
+ .line 1091
+ invoke-virtual {p1}, Landroid/telephony/data/DataCallResponse;->getAddresses()Ljava/util/List;
+
+ move-result-object v2
+
+ invoke-interface {v2}, Ljava/util/List;->iterator()Ljava/util/Iterator;
+
+ move-result-object v2
+
+ :goto_79
+ invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z
+
+ move-result v4
+
+ if-eqz v4, :cond_b7
+
+ invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object;
+
+ move-result-object v4
+
+ check-cast v4, Landroid/net/LinkAddress;
+
+ .line 1092
+ invoke-virtual {v4}, Landroid/net/LinkAddress;->getAddress()Ljava/net/InetAddress;
+
+ move-result-object v5
+
+ invoke-virtual {v5}, Ljava/net/InetAddress;->isAnyLocalAddress()Z
+
+ move-result v5
+
+ if-nez v5, :cond_b6
+
+ .line 1094
+ new-instance v5, Ljava/lang/StringBuilder;
+
+ invoke-direct {v5}, Ljava/lang/StringBuilder;->()V
+
+ const-string v6, "addr/pl="
+
+ invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v4}, Landroid/net/LinkAddress;->getAddress()Ljava/net/InetAddress;
+
+ move-result-object v6
+
+ invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ const-string v6, "/"
+
+ invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ .line 1095
+ invoke-virtual {v4}, Landroid/net/LinkAddress;->getNetworkPrefixLength()I
+
+ move-result v6
+
+ invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object v5
+
+ .line 1094
+ invoke-virtual {p0, v5}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 1097
+ invoke-virtual {p2, v4}, Landroid/net/LinkProperties;->addLinkAddress(Landroid/net/LinkAddress;)Z
+
+ .line 1099
+ :cond_b6
+ goto :goto_79
+
+ .line 1105
+ :cond_b7
+ invoke-virtual {p1}, Landroid/telephony/data/DataCallResponse;->getDnses()Ljava/util/List;
+
+ move-result-object v2
+
+ invoke-interface {v2}, Ljava/util/List;->size()I
+
+ move-result v2
+
+ if-lez v2, :cond_df
+
+ .line 1106
+ invoke-virtual {p1}, Landroid/telephony/data/DataCallResponse;->getDnses()Ljava/util/List;
+
+ move-result-object v0
+
+ invoke-interface {v0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
+
+ move-result-object v0
+
+ :goto_c9
+ invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
+
+ move-result v1
+
+ if-eqz v1, :cond_11a
+
+ invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
+
+ move-result-object v1
+
+ check-cast v1, Ljava/net/InetAddress;
+
+ .line 1107
+ invoke-virtual {v1}, Ljava/net/InetAddress;->isAnyLocalAddress()Z
+
+ move-result v2
+
+ if-nez v2, :cond_de
+
+ .line 1108
+ invoke-virtual {p2, v1}, Landroid/net/LinkProperties;->addDnsServer(Ljava/net/InetAddress;)Z
+
+ .line 1110
+ :cond_de
+ goto :goto_c9
+
+ .line 1111
+ :cond_df
+ if-eqz v0, :cond_141
+
+ .line 1112
+ array-length v0, v1
+
+ :goto_e2
+ if-ge v3, v0, :cond_11a
+
+ aget-object v2, v1, v3
+
+ .line 1113
+ invoke-virtual {v2}, Ljava/lang/String;->trim()Ljava/lang/String;
+
+ move-result-object v2
+
+ .line 1114
+ invoke-virtual {v2}, Ljava/lang/String;->isEmpty()Z
+
+ move-result v4
+ :try_end_ee
+ .catch Ljava/net/UnknownHostException; {:try_start_60 .. :try_end_ee} :catch_164
+
+ if-eqz v4, :cond_f1
+
+ goto :goto_ff
+
+ .line 1117
+ :cond_f1
+ :try_start_f1
+ invoke-static {v2}, Landroid/net/NetworkUtils;->numericToInetAddress(Ljava/lang/String;)Ljava/net/InetAddress;
+
+ move-result-object v4
+ :try_end_f5
+ .catch Ljava/lang/IllegalArgumentException; {:try_start_f1 .. :try_end_f5} :catch_102
+ .catch Ljava/net/UnknownHostException; {:try_start_f1 .. :try_end_f5} :catch_164
+
+ .line 1120
+ nop
+
+ .line 1121
+ :try_start_f6
+ invoke-virtual {v4}, Ljava/net/InetAddress;->isAnyLocalAddress()Z
+
+ move-result v2
+
+ if-nez v2, :cond_ff
+
+ .line 1122
+ invoke-virtual {p2, v4}, Landroid/net/LinkProperties;->addDnsServer(Ljava/net/InetAddress;)Z
+
+ .line 1112
+ :cond_ff
+ :goto_ff
+ add-int/lit8 v3, v3, 0x1
+
+ goto :goto_e2
+
+ .line 1118
+ :catch_102
+ move-exception v0
+
+ .line 1119
+ new-instance v0, Ljava/net/UnknownHostException;
+
+ new-instance v1, Ljava/lang/StringBuilder;
+
+ invoke-direct {v1}, Ljava/lang/StringBuilder;->()V
+
+ const-string v3, "Non-numeric dns addr="
+
+ invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object v1
+
+ invoke-direct {v0, v1}, Ljava/net/UnknownHostException;->(Ljava/lang/String;)V
+
+ throw v0
+
+ .line 1129
+ :cond_11a
+ invoke-virtual {p1}, Landroid/telephony/data/DataCallResponse;->getGateways()Ljava/util/List;
+
+ move-result-object v0
+
+ invoke-interface {v0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
+
+ move-result-object v0
+
+ :goto_122
+ invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
+
+ move-result v1
+
+ if-eqz v1, :cond_137
+
+ invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
+
+ move-result-object v1
+
+ check-cast v1, Ljava/net/InetAddress;
+
+ .line 1132
+ new-instance v2, Landroid/net/RouteInfo;
+
+ invoke-direct {v2, v1}, Landroid/net/RouteInfo;->(Ljava/net/InetAddress;)V
+
+ invoke-virtual {p2, v2}, Landroid/net/LinkProperties;->addRoute(Landroid/net/RouteInfo;)Z
+
+ .line 1133
+ goto :goto_122
+
+ .line 1137
+ :cond_137
+ invoke-virtual {p1}, Landroid/telephony/data/DataCallResponse;->getMtu()I
+
+ move-result v0
+
+ invoke-virtual {p2, v0}, Landroid/net/LinkProperties;->setMtu(I)V
+
+ .line 1139
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;->SUCCESS:Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+
+ goto :goto_17b
+
+ .line 1126
+ :cond_141
+ new-instance v0, Ljava/net/UnknownHostException;
+
+ const-string v1, "Empty dns response and no system default dns"
+
+ invoke-direct {v0, v1}, Ljava/net/UnknownHostException;->(Ljava/lang/String;)V
+
+ throw v0
+
+ .line 1101
+ :cond_149
+ new-instance v0, Ljava/net/UnknownHostException;
+
+ new-instance v1, Ljava/lang/StringBuilder;
+
+ invoke-direct {v1}, Ljava/lang/StringBuilder;->()V
+
+ const-string v2, "no address for ifname="
+
+ invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p1}, Landroid/telephony/data/DataCallResponse;->getIfname()Ljava/lang/String;
+
+ move-result-object v2
+
+ invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object v1
+
+ invoke-direct {v0, v1}, Ljava/net/UnknownHostException;->(Ljava/lang/String;)V
+
+ throw v0
+ :try_end_164
+ .catch Ljava/net/UnknownHostException; {:try_start_f6 .. :try_end_164} :catch_164
+
+ .line 1140
+ :catch_164
+ move-exception v0
+
+ .line 1141
+ new-instance v1, Ljava/lang/StringBuilder;
+
+ invoke-direct {v1}, Ljava/lang/StringBuilder;->()V
+
+ const-string v2, "setLinkProperties: UnknownHostException "
+
+ invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object v0
+
+ invoke-virtual {p0, v0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 1142
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;->ERROR_INVALID_ARG:Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+
+ .line 1143
+ :goto_17b
+ goto :goto_17e
+
+ .line 1145
+ :cond_17c
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;->ERROR_DATA_SERVICE_SPECIFIC_ERROR:Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+
+ .line 1149
+ :goto_17e
+ sget-object v1, Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;->SUCCESS:Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+
+ if-eq v0, v1, :cond_1a5
+
+ .line 1151
+ new-instance v1, Ljava/lang/StringBuilder;
+
+ invoke-direct {v1}, Ljava/lang/StringBuilder;->()V
+
+ const-string v2, "setLinkProperties: error clearing LinkProperties status="
+
+ invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ .line 1152
+ invoke-virtual {p1}, Landroid/telephony/data/DataCallResponse;->getStatus()I
+
+ move-result p1
+
+ invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ const-string p1, " result="
+
+ invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p1
+
+ .line 1151
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 1154
+ invoke-virtual {p2}, Landroid/net/LinkProperties;->clear()V
+
+ .line 1157
+ :cond_1a5
+ return-object v0
+.end method
+
+.method private setNetworkRestriction()V
+ .registers 5
+
+ .line 914
+ const/4 v0, 0x0
+
+ iput-boolean v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mRestrictedNetworkOverride:Z
+
+ .line 916
+ nop
+
+ .line 917
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnContexts:Ljava/util/HashMap;
+
+ invoke-virtual {v0}, Ljava/util/HashMap;->keySet()Ljava/util/Set;
+
+ move-result-object v0
+
+ invoke-interface {v0}, Ljava/util/Set;->iterator()Ljava/util/Iterator;
+
+ move-result-object v0
+
+ const/4 v1, 0x1
+
+ move v2, v1
+
+ :goto_10
+ invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
+
+ move-result v3
+
+ if-eqz v3, :cond_22
+
+ invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
+
+ move-result-object v3
+
+ check-cast v3, Lcom/android/internal/telephony/dataconnection/ApnContext;
+
+ .line 918
+ invoke-virtual {v3, v1}, Lcom/android/internal/telephony/dataconnection/ApnContext;->hasNoRestrictedRequests(Z)Z
+
+ move-result v3
+
+ and-int/2addr v2, v3
+
+ .line 919
+ goto :goto_10
+
+ .line 920
+ :cond_22
+ if-eqz v2, :cond_25
+
+ .line 921
+ return-void
+
+ .line 926
+ :cond_25
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ iget-object v2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ invoke-virtual {v0, v2}, Lcom/android/internal/telephony/dataconnection/ApnSetting;->isMetered(Lcom/android/internal/telephony/Phone;)Z
+
+ move-result v0
+
+ if-nez v0, :cond_30
+
+ .line 927
+ return-void
+
+ .line 931
+ :cond_30
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDct:LDataconnection/DcTracker;
+
+ invoke-virtual {v0}, Lcom/android/internal/telephony/dataconnection/DcTracker;->isDataEnabled()Z
+
+ move-result v0
+
+ xor-int/2addr v0, v1
+
+ iput-boolean v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mRestrictedNetworkOverride:Z
+
+ .line 932
+ return-void
+.end method
+
+.method static slog(LData/String;)V
+ .registers 2
+
+ .line 2396
+ const-string v0, "DC"
+
+ invoke-static {v0, p0}, Landroid/telephony/Rlog;->d(Ljava/lang/String;Ljava/lang/String;)I
+
+ .line 2397
+ return-void
+.end method
+
+.method private tearDownData(Ljava/lang/Object;)V
+ .registers 8
+
+ .line 569
+ nop
+
+ .line 570
+ nop
+
+ .line 571
+ const/4 v0, 0x1
+
+ if-eqz p1, :cond_24
+
+ instance-of v1, p1, Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;
+
+ if-eqz v1, :cond_24
+
+ .line 572
+ move-object v1, p1
+
+ check-cast v1, Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;
+
+ .line 573
+ iget-object v2, v1, Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;->mApnContext:Lcom/android/internal/telephony/dataconnection/ApnContext;
+
+ .line 574
+ iget-object v3, v1, Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;->mReason:Ljava/lang/String;
+
+ const-string v4, "radioTurnedOff"
+
+ invoke-static {v3, v4}, Landroid/text/TextUtils;->equals(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z
+
+ move-result v3
+
+ if-nez v3, :cond_22
+
+ iget-object v1, v1, Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;->mReason:Ljava/lang/String;
+
+ const-string v3, "pdpReset"
+
+ .line 575
+ invoke-static {v1, v3}, Landroid/text/TextUtils;->equals(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z
+
+ move-result v1
+
+ if-eqz v1, :cond_25
+
+ .line 576
+ :cond_22
+ const/4 v0, 0x2
+
+ goto :goto_25
+
+ .line 580
+ :cond_24
+ const/4 v2, 0x0
+
+ :cond_25
+ :goto_25
+ new-instance v1, Ljava/lang/StringBuilder;
+
+ invoke-direct {v1}, Ljava/lang/StringBuilder;->()V
+
+ const-string v3, "tearDownData. mCid="
+
+ invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget v3, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mCid:I
+
+ invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ const-string v3, ", reason="
+
+ invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object v1
+
+ .line 581
+ invoke-virtual {p0, v1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 582
+ if-eqz v2, :cond_48
+
+ invoke-virtual {v2, v1}, Lcom/android/internal/telephony/dataconnection/ApnContext;->requestLog(Ljava/lang/String;)V
+
+ .line 583
+ :cond_48
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDataServiceManager:Lcom/android/internal/telephony/dataconnection/DataServiceManager;
+
+ iget v2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mCid:I
+
+ const v3, 0x40003
+
+ iget v4, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mTag:I
+
+ const/4 v5, 0x0
+
+ .line 584
+ invoke-virtual {p0, v3, v4, v5, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->obtainMessage(IIILjava/lang/Object;)Landroid/os/Message;
+
+ move-result-object p1
+
+ .line 583
+ invoke-virtual {v1, v2, v0, p1}, Lcom/android/internal/telephony/dataconnection/DataServiceManager;->deactivateDataCall(IILandroid/os/Message;)V
+
+ .line 585
+ return-void
+.end method
+
+.method private updateNetworkInfo()V
+ .registers 5
+
+ .line 1408
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ invoke-virtual {v0}, Lcom/android/internal/telephony/Phone;->getServiceState()Landroid/telephony/ServiceState;
+
+ move-result-object v0
+
+ .line 1409
+ invoke-virtual {v0}, Landroid/telephony/ServiceState;->getDataNetworkType()I
+
+ move-result v1
+
+ .line 1410
+ iget-object v2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkInfo:Landroid/net/NetworkInfo;
+
+ invoke-static {v1}, Landroid/telephony/TelephonyManager;->getNetworkTypeName(I)Ljava/lang/String;
+
+ move-result-object v3
+
+ invoke-virtual {v2, v1, v3}, Landroid/net/NetworkInfo;->setSubtype(ILjava/lang/String;)V
+
+ .line 1411
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkInfo:Landroid/net/NetworkInfo;
+
+ invoke-virtual {v0}, Landroid/telephony/ServiceState;->getDataRoaming()Z
+
+ move-result v0
+
+ invoke-virtual {v1, v0}, Landroid/net/NetworkInfo;->setRoaming(Z)V
+
+ .line 1412
+ return-void
+.end method
+
+.method private updateNetworkInfoSuspendState()V
+ .registers 5
+
+ .line 1416
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkAgent:Lcom/android/internal/telephony/dataconnection/DataConnection$DcNetworkAgent;
+
+ if-nez v0, :cond_d
+
+ .line 1417
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getName()Ljava/lang/String;
+
+ move-result-object v0
+
+ const-string v1, "Setting suspend state without a NetworkAgent"
+
+ invoke-static {v0, v1}, Landroid/telephony/Rlog;->e(Ljava/lang/String;Ljava/lang/String;)I
+
+ .line 1421
+ :cond_d
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ invoke-virtual {v0}, Lcom/android/internal/telephony/Phone;->getServiceStateTracker()Lcom/android/internal/telephony/ServiceStateTracker;
+
+ move-result-object v0
+
+ .line 1422
+ invoke-virtual {v0}, Lcom/android/internal/telephony/ServiceStateTracker;->getCurrentDataConnectionState()I
+
+ move-result v1
+
+ const/4 v2, 0x0
+
+ if-eqz v1, :cond_28
+
+ .line 1423
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkInfo:Landroid/net/NetworkInfo;
+
+ sget-object v1, Landroid/net/NetworkInfo$DetailedState;->SUSPENDED:Landroid/net/NetworkInfo$DetailedState;
+
+ iget-object v3, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkInfo:Landroid/net/NetworkInfo;
+
+ .line 1424
+ invoke-virtual {v3}, Landroid/net/NetworkInfo;->getExtraInfo()Ljava/lang/String;
+
+ move-result-object v3
+
+ .line 1423
+ invoke-virtual {v0, v1, v2, v3}, Landroid/net/NetworkInfo;->setDetailedState(Landroid/net/NetworkInfo$DetailedState;Ljava/lang/String;Ljava/lang/String;)V
+
+ goto :goto_57
+
+ .line 1427
+ :cond_28
+ invoke-virtual {v0}, Lcom/android/internal/telephony/ServiceStateTracker;->isConcurrentVoiceAndDataAllowed()Z
+
+ move-result v0
+
+ if-nez v0, :cond_4a
+
+ .line 1428
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ invoke-virtual {v0}, Lcom/android/internal/telephony/Phone;->getCallTracker()Lcom/android/internal/telephony/CallTracker;
+
+ move-result-object v0
+
+ .line 1429
+ invoke-virtual {v0}, Lcom/android/internal/telephony/CallTracker;->getState()Lcom/android/internal/telephony/PhoneConstants$State;
+
+ move-result-object v0
+
+ sget-object v1, Lcom/android/internal/telephony/PhoneConstants$State;->IDLE:Lcom/android/internal/telephony/PhoneConstants$State;
+
+ if-eq v0, v1, :cond_4a
+
+ .line 1430
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkInfo:Landroid/net/NetworkInfo;
+
+ sget-object v1, Landroid/net/NetworkInfo$DetailedState;->SUSPENDED:Landroid/net/NetworkInfo$DetailedState;
+
+ iget-object v3, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkInfo:Landroid/net/NetworkInfo;
+
+ .line 1431
+ invoke-virtual {v3}, Landroid/net/NetworkInfo;->getExtraInfo()Ljava/lang/String;
+
+ move-result-object v3
+
+ .line 1430
+ invoke-virtual {v0, v1, v2, v3}, Landroid/net/NetworkInfo;->setDetailedState(Landroid/net/NetworkInfo$DetailedState;Ljava/lang/String;Ljava/lang/String;)V
+
+ .line 1432
+ return-void
+
+ .line 1435
+ :cond_4a
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkInfo:Landroid/net/NetworkInfo;
+
+ sget-object v1, Landroid/net/NetworkInfo$DetailedState;->CONNECTED:Landroid/net/NetworkInfo$DetailedState;
+
+ iget-object v3, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkInfo:Landroid/net/NetworkInfo;
+
+ .line 1436
+ invoke-virtual {v3}, Landroid/net/NetworkInfo;->getExtraInfo()Ljava/lang/String;
+
+ move-result-object v3
+
+ .line 1435
+ invoke-virtual {v0, v1, v2, v3}, Landroid/net/NetworkInfo;->setDetailedState(Landroid/net/NetworkInfo$DetailedState;Ljava/lang/String;Ljava/lang/String;)V
+
+ .line 1438
+ :goto_57
+ return-void
+.end method
+
+.method private updateTcpBufferSizes(I)V
+ .registers 10
+
+ .line 812
+ nop
+
+ .line 813
+ const/16 v0, 0x13
+
+ if-ne p1, v0, :cond_7
+
+ .line 816
+ const/16 p1, 0xe
+
+ .line 818
+ :cond_7
+ invoke-static {p1}, Landroid/telephony/ServiceState;->rilRadioTechnologyToString(I)Ljava/lang/String;
+
+ move-result-object v1
+
+ sget-object v2, Ljava/util/Locale;->ROOT:Ljava/util/Locale;
+
+ invoke-virtual {v1, v2}, Ljava/lang/String;->toLowerCase(Ljava/util/Locale;)Ljava/lang/String;
+
+ move-result-object v1
+
+ .line 821
+ const/4 v2, 0x7
+
+ if-eq p1, v2, :cond_1c
+
+ const/16 v2, 0x8
+
+ if-eq p1, v2, :cond_1c
+
+ const/16 v2, 0xc
+
+ if-ne p1, v2, :cond_1e
+
+ .line 824
+ :cond_1c
+ const-string v1, "evdo"
+
+ .line 828
+ :cond_1e
+ iget-object v2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ invoke-virtual {v2}, Lcom/android/internal/telephony/Phone;->getContext()Landroid/content/Context;
+
+ move-result-object v2
+
+ invoke-virtual {v2}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
+
+ move-result-object v2
+
+ const v3, 0x1070039
+
+ invoke-virtual {v2, v3}, Landroid/content/res/Resources;->getStringArray(I)[Ljava/lang/String;
+
+ move-result-object v2
+
+ .line 830
+ const/4 v3, 0x0
+
+ move v4, v3
+
+ :goto_31
+ array-length v5, v2
+
+ if-ge v4, v5, :cond_4f
+
+ .line 831
+ aget-object v5, v2, v4
+
+ const-string v6, ":"
+
+ invoke-virtual {v5, v6}, Ljava/lang/String;->split(Ljava/lang/String;)[Ljava/lang/String;
+
+ move-result-object v5
+
+ .line 832
+ aget-object v6, v5, v3
+
+ invoke-virtual {v1, v6}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
+
+ move-result v6
+
+ if-eqz v6, :cond_4c
+
+ array-length v6, v5
+
+ const/4 v7, 0x2
+
+ if-ne v6, v7, :cond_4c
+
+ .line 833
+ const/4 v1, 0x1
+
+ aget-object v1, v5, v1
+
+ .line 834
+ goto :goto_50
+
+ .line 830
+ :cond_4c
+ add-int/lit8 v4, v4, 0x1
+
+ goto :goto_31
+
+ .line 838
+ :cond_4f
+ const/4 v1, 0x0
+
+ :goto_50
+ if-nez v1, :cond_79
+
+ .line 842
+ if-eq p1, v0, :cond_76
+
+ packed-switch p1, :pswitch_data_80
+
+ packed-switch p1, :pswitch_data_8a
+
+ goto :goto_79
+
+ .line 875
+ :pswitch_5b
+ const-string v1, "122334,734003,2202010,32040,192239,576717"
+
+ .line 876
+ goto :goto_79
+
+ .line 861
+ :pswitch_5e
+ const-string v1, "131072,262144,1048576,4096,16384,524288"
+
+ .line 862
+ goto :goto_79
+
+ .line 868
+ :pswitch_61
+ const-string v1, "40778,244668,734003,16777,100663,301990"
+
+ .line 869
+ goto :goto_79
+
+ .line 864
+ :pswitch_64
+ const-string v1, "61167,367002,1101005,8738,52429,262114"
+
+ .line 865
+ goto :goto_79
+
+ .line 858
+ :pswitch_67
+ const-string v1, "4094,87380,262144,4096,16384,262144"
+
+ .line 859
+ goto :goto_79
+
+ .line 853
+ :pswitch_6a
+ const-string v1, "16384,32768,131072,4096,16384,102400"
+
+ .line 854
+ goto :goto_79
+
+ .line 850
+ :pswitch_6d
+ const-string v1, "58254,349525,1048576,58254,349525,1048576"
+
+ .line 851
+ goto :goto_79
+
+ .line 847
+ :pswitch_70
+ const-string v1, "4093,26280,70800,4096,16384,70800"
+
+ .line 848
+ goto :goto_79
+
+ .line 844
+ :pswitch_73
+ const-string v1, "4092,8760,48000,4096,8760,48000"
+
+ .line 845
+ goto :goto_79
+
+ .line 872
+ :cond_76
+ :pswitch_76
+ const-string v1, "524288,1048576,2097152,262144,524288,1048576"
+
+ .line 873
+ nop
+
+ .line 882
+ :cond_79
+ :goto_79
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLinkProperties:Landroid/net/LinkProperties;
+
+ invoke-virtual {p1, v1}, Landroid/net/LinkProperties;->setTcpBufferSizes(Ljava/lang/String;)V
+
+ .line 883
+ return-void
+
+ nop
+
+ :pswitch_data_80
+ .packed-switch 0x1
+ :pswitch_73
+ :pswitch_70
+ :pswitch_6d
+ .end packed-switch
+
+ :pswitch_data_8a
+ .packed-switch 0x6
+ :pswitch_6a
+ :pswitch_67
+ :pswitch_67
+ :pswitch_64
+ :pswitch_61
+ :pswitch_61
+ :pswitch_67
+ :pswitch_5e
+ :pswitch_76
+ :pswitch_5b
+ .end packed-switch
+.end method
+
+
+# virtual methods
+.method dispose()V
+ .registers 2
+
+ .line 292
+ const-string v0, "dispose: call quiteNow()"
+
+ invoke-virtual {p0, v0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 293
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->quitNow()V
+
+ .line 294
+ return-void
+.end method
+
+.method public dump(Ljava/io/FileDescriptor;Ljava/io/PrintWriter;[Ljava/lang/String;)V
+ .registers 7
+
+ .line 2510
+ new-instance v0, Lcom/android/internal/util/IndentingPrintWriter;
+
+ const-string v1, " "
+
+ invoke-direct {v0, p2, v1}, Lcom/android/internal/util/IndentingPrintWriter;->(Ljava/io/Writer;Ljava/lang/String;)V
+
+ .line 2511
+ const-string p2, "DataConnection "
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->print(Ljava/lang/String;)V
+
+ .line 2512
+ invoke-super {p0, p1, v0, p3}, Lcom/android/internal/util/StateMachine;->dump(Ljava/io/FileDescriptor;Ljava/io/PrintWriter;[Ljava/lang/String;)V
+
+ .line 2513
+ invoke-virtual {v0}, Lcom/android/internal/util/IndentingPrintWriter;->flush()V
+
+ .line 2514
+ invoke-virtual {v0}, Lcom/android/internal/util/IndentingPrintWriter;->increaseIndent()Lcom/android/internal/util/IndentingPrintWriter;
+
+ .line 2515
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;->()V
+
+ const-string v1, "mApnContexts.size="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnContexts:Ljava/util/HashMap;
+
+ invoke-virtual {v1}, Ljava/util/HashMap;->size()I
+
+ move-result v1
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2516
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;->()V
+
+ const-string v1, "mApnContexts="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnContexts:Ljava/util/HashMap;
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2517
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;->()V
+
+ const-string v1, "mDataConnectionTracker="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDct:Lcom/android/internal/telephony/dataconnection/DcTracker;
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2518
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;->()V
+
+ const-string v1, "mApnSetting="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2519
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;->()V
+
+ const-string v1, "mTag="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mTag:I
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2520
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;->()V
+
+ const-string v1, "mCid="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mCid:I
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2521
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;->()V
+
+ const-string v1, "mConnectionParams="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mConnectionParams:Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2522
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;->()V
+
+ const-string v1, "mDisconnectParams="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDisconnectParams:Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2523
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;->()V
+
+ const-string v1, "mDcFailCause="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDcFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2524
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;->()V
+
+ const-string v1, "mPhone="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2525
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;->()V
+
+ const-string v1, "mLinkProperties="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLinkProperties:Landroid/net/LinkProperties;
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2526
+ invoke-virtual {v0}, Lcom/android/internal/util/IndentingPrintWriter;->flush()V
+
+ .line 2527
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;->()V
+
+ const-string v1, "mDataRegState="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDataRegState:I
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2528
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;->()V
+
+ const-string v1, "mRilRat="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mRilRat:I
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2529
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;->()V
+
+ const-string v1, "mNetworkCapabilities="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getNetworkCapabilities()Landroid/net/NetworkCapabilities;
+
+ move-result-object v1
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2530
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;->()V
+
+ const-string v1, "mCreateTime="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-wide v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mCreateTime:J
+
+ invoke-static {v1, v2}, Landroid/util/TimeUtils;->logTimeOfDay(J)Ljava/lang/String;
+
+ move-result-object v1
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2531
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;->()V
+
+ const-string v1, "mLastFailTime="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-wide v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLastFailTime:J
+
+ invoke-static {v1, v2}, Landroid/util/TimeUtils;->logTimeOfDay(J)Ljava/lang/String;
+
+ move-result-object v1
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2532
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;->()V
+
+ const-string v1, "mLastFailCause="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLastFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2533
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;->()V
+
+ const-string v1, "mUserData="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mUserData:Ljava/lang/Object;
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2534
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;->()V
+
+ const-string v1, "mSubscriptionOverride="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mSubscriptionOverride:I
+
+ invoke-static {v1}, Ljava/lang/Integer;->toHexString(I)Ljava/lang/String;
+
+ move-result-object v1
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2535
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;->()V
+
+ const-string v1, "mInstanceNumber="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ sget-object v1, Lcom/android/internal/telephony/dataconnection/DataConnection;->mInstanceNumber:Ljava/util/concurrent/atomic/AtomicInteger;
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2536
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;->()V
+
+ const-string v1, "mAc="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mAc:Lcom/android/internal/util/AsyncChannel;
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2537
+ const-string p2, "Network capabilities changed history:"
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2538
+ invoke-virtual {v0}, Lcom/android/internal/util/IndentingPrintWriter;->increaseIndent()Lcom/android/internal/util/IndentingPrintWriter;
+
+ .line 2539
+ iget-object p2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetCapsLocalLog:Landroid/util/LocalLog;
+
+ invoke-virtual {p2, p1, v0, p3}, Landroid/util/LocalLog;->dump(Ljava/io/FileDescriptor;Ljava/io/PrintWriter;[Ljava/lang/String;)V
+
+ .line 2540
+ invoke-virtual {v0}, Lcom/android/internal/util/IndentingPrintWriter;->decreaseIndent()Lcom/android/internal/util/IndentingPrintWriter;
+
+ .line 2541
+ invoke-virtual {v0}, Lcom/android/internal/util/IndentingPrintWriter;->decreaseIndent()Lcom/android/internal/util/IndentingPrintWriter;
+
+ .line 2542
+ invoke-virtual {v0}, Lcom/android/internal/util/IndentingPrintWriter;->println()V
+
+ .line 2543
+ invoke-virtual {v0}, Lcom/android/internal/util/IndentingPrintWriter;->flush()V
+
+ .line 2544
+ return-void
+.end method
+
+.method getApnSetting()Lcom/android/internal/telephony/dataconnection/ApnSetting;
+ .registers 2
+
+ .line 323
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ return-object v0
+.end method
+
+.method getCid()I
+ .registers 2
+
+ .line 319
+ iget v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mCid:I
+
+ return v0
+.end method
+
+.method getCopyLinkProperties()Landroid/net/LinkProperties;
+ .registers 3
+
+ .line 299
+ new-instance v0, Landroid/net/LinkProperties;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLinkProperties:Landroid/net/LinkProperties;
+
+ invoke-direct {v0, v1}, Landroid/net/LinkProperties;->(Landroid/net/LinkProperties;)V
+
+ return-object v0
+.end method
+
+.method public getDataConnectionId()I
+ .registers 2
+
+ .line 710
+ iget v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mId:I
+
+ return v0
+.end method
+
+.method getNetworkCapabilities()Landroid/net/NetworkCapabilities;
+ .registers 16
+
+ .line 935
+ new-instance v0, Landroid/net/NetworkCapabilities;
+
+ invoke-direct {v0}, Landroid/net/NetworkCapabilities;->()V
+
+ .line 936
+ const/4 v1, 0x0
+
+ invoke-virtual {v0, v1}, Landroid/net/NetworkCapabilities;->addTransportType(I)Landroid/net/NetworkCapabilities;
+
+ .line 938
+ iget-object v2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ const/16 v3, 0xb
+
+ const/4 v4, 0x2
+
+ const/4 v5, 0x1
+
+ if-eqz v2, :cond_12d
+
+ .line 939
+ iget-object v2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ iget-object v2, v2, Lcom/android/internal/telephony/dataconnection/ApnSetting;->types:[Ljava/lang/String;
+
+ array-length v6, v2
+
+ move v7, v1
+
+ :goto_17
+ if-ge v7, v6, :cond_10b
+
+ aget-object v8, v2, v7
+
+ .line 940
+ iget-boolean v9, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mRestrictedNetworkOverride:Z
+
+ if-nez v9, :cond_4c
+
+ iget-object v9, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mConnectionParams:Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;
+
+ if-eqz v9, :cond_4c
+
+ iget-object v9, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mConnectionParams:Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;
+
+ iget-boolean v9, v9, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mUnmeteredUseOnly:Z
+
+ if-eqz v9, :cond_4c
+
+ iget-object v9, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ .line 942
+ invoke-static {v8, v9}, Lcom/android/internal/telephony/dataconnection/ApnSetting;->isMeteredApnType(Ljava/lang/String;Lcom/android/internal/telephony/Phone;)Z
+
+ move-result v9
+
+ if-eqz v9, :cond_4c
+
+ .line 943
+ new-instance v9, Ljava/lang/StringBuilder;
+
+ invoke-direct {v9}, Ljava/lang/StringBuilder;->()V
+
+ const-string v10, "Dropped the metered "
+
+ invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v9, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ const-string v8, " for the unmetered data call."
+
+ invoke-virtual {v9, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v9}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object v8
+
+ invoke-virtual {p0, v8}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 944
+ goto/16 :goto_107
+
+ .line 946
+ :cond_4c
+ const/4 v9, -0x1
+
+ invoke-virtual {v8}, Ljava/lang/String;->hashCode()I
+
+ move-result v10
+
+ const/4 v11, 0x7
+
+ const/4 v12, 0x4
+
+ const/4 v13, 0x5
+
+ const/4 v14, 0x3
+
+ sparse-switch v10, :sswitch_data_1cc
+
+ goto/16 :goto_c1
+
+ :sswitch_5a
+ const-string v10, "emergency"
+
+ invoke-virtual {v8, v10}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
+
+ move-result v8
+
+ if-eqz v8, :cond_c1
+
+ const/16 v8, 0x9
+
+ goto/16 :goto_c2
+
+ :sswitch_66
+ const-string v10, "default"
+
+ invoke-virtual {v8, v10}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
+
+ move-result v8
+
+ if-eqz v8, :cond_c1
+
+ move v8, v5
+
+ goto :goto_c2
+
+ :sswitch_70
+ const-string v10, "supl"
+
+ invoke-virtual {v8, v10}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
+
+ move-result v8
+
+ if-eqz v8, :cond_c1
+
+ move v8, v14
+
+ goto :goto_c2
+
+ :sswitch_7a
+ const-string v10, "fota"
+
+ invoke-virtual {v8, v10}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
+
+ move-result v8
+
+ if-eqz v8, :cond_c1
+
+ move v8, v13
+
+ goto :goto_c2
+
+ :sswitch_84
+ const-string v10, "mms"
+
+ invoke-virtual {v8, v10}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
+
+ move-result v8
+
+ if-eqz v8, :cond_c1
+
+ move v8, v4
+
+ goto :goto_c2
+
+ :sswitch_8e
+ const-string v10, "ims"
+
+ invoke-virtual {v8, v10}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
+
+ move-result v8
+
+ if-eqz v8, :cond_c1
+
+ const/4 v8, 0x6
+
+ goto :goto_c2
+
+ :sswitch_98
+ const-string v10, "dun"
+
+ invoke-virtual {v8, v10}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
+
+ move-result v8
+
+ if-eqz v8, :cond_c1
+
+ move v8, v12
+
+ goto :goto_c2
+
+ :sswitch_a2
+ const-string v10, "cbs"
+
+ invoke-virtual {v8, v10}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
+
+ move-result v8
+
+ if-eqz v8, :cond_c1
+
+ move v8, v11
+
+ goto :goto_c2
+
+ :sswitch_ac
+ const-string v10, "ia"
+
+ invoke-virtual {v8, v10}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
+
+ move-result v8
+
+ if-eqz v8, :cond_c1
+
+ const/16 v8, 0x8
+
+ goto :goto_c2
+
+ :sswitch_b7
+ const-string v10, "*"
+
+ invoke-virtual {v8, v10}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
+
+ move-result v8
+
+ if-eqz v8, :cond_c1
+
+ move v8, v1
+
+ goto :goto_c2
+
+ :cond_c1
+ :goto_c1
+ move v8, v9
+
+ :goto_c2
+ const/16 v9, 0xc
+
+ packed-switch v8, :pswitch_data_1f6
+
+ goto :goto_107
+
+ .line 991
+ :pswitch_c8
+ const/16 v8, 0xa
+
+ invoke-virtual {v0, v8}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 992
+ goto :goto_107
+
+ .line 987
+ :pswitch_ce
+ invoke-virtual {v0, v11}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 988
+ goto :goto_107
+
+ .line 983
+ :pswitch_d2
+ invoke-virtual {v0, v13}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 984
+ goto :goto_107
+
+ .line 979
+ :pswitch_d6
+ invoke-virtual {v0, v12}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 980
+ goto :goto_107
+
+ .line 975
+ :pswitch_da
+ invoke-virtual {v0, v14}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 976
+ goto :goto_107
+
+ .line 971
+ :pswitch_de
+ invoke-virtual {v0, v4}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 972
+ goto :goto_107
+
+ .line 967
+ :pswitch_e2
+ invoke-virtual {v0, v5}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 968
+ goto :goto_107
+
+ .line 963
+ :pswitch_e6
+ invoke-virtual {v0, v1}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 964
+ goto :goto_107
+
+ .line 959
+ :pswitch_ea
+ invoke-virtual {v0, v9}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 960
+ goto :goto_107
+
+ .line 948
+ :pswitch_ee
+ invoke-virtual {v0, v9}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 949
+ invoke-virtual {v0, v1}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 950
+ invoke-virtual {v0, v5}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 951
+ invoke-virtual {v0, v14}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 952
+ invoke-virtual {v0, v12}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 953
+ invoke-virtual {v0, v13}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 954
+ invoke-virtual {v0, v11}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 955
+ invoke-virtual {v0, v4}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 956
+ nop
+
+ .line 939
+ :goto_107
+ add-int/lit8 v7, v7, 0x1
+
+ goto/16 :goto_17
+
+ .line 1001
+ :cond_10b
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mConnectionParams:Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;
+
+ if-eqz v1, :cond_119
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mConnectionParams:Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;
+
+ iget-boolean v1, v1, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mUnmeteredUseOnly:Z
+
+ if-eqz v1, :cond_119
+
+ iget-boolean v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mRestrictedNetworkOverride:Z
+
+ if-eqz v1, :cond_123
+
+ :cond_119
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ iget-object v2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ .line 1003
+ invoke-virtual {v1, v2}, Lcom/android/internal/telephony/dataconnection/ApnSetting;->isMetered(Lcom/android/internal/telephony/Phone;)Z
+
+ move-result v1
+
+ if-nez v1, :cond_127
+
+ .line 1004
+ :cond_123
+ invoke-virtual {v0, v3}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ goto :goto_12a
+
+ .line 1006
+ :cond_127
+ invoke-virtual {v0, v3}, Landroid/net/NetworkCapabilities;->removeCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 1009
+ :goto_12a
+ invoke-virtual {v0}, Landroid/net/NetworkCapabilities;->maybeMarkCapabilitiesRestricted()V
+
+ .line 1011
+ :cond_12d
+ iget-boolean v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mRestrictedNetworkOverride:Z
+
+ if-eqz v1, :cond_139
+
+ .line 1012
+ const/16 v1, 0xd
+
+ invoke-virtual {v0, v1}, Landroid/net/NetworkCapabilities;->removeCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 1014
+ invoke-virtual {v0, v4}, Landroid/net/NetworkCapabilities;->removeCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 1017
+ :cond_139
+ nop
+
+ .line 1018
+ nop
+
+ .line 1019
+ iget v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mRilRat:I
+
+ const/16 v2, 0x13
+
+ const/16 v6, 0x733
+
+ const/16 v7, 0x99
+
+ const v8, 0x19000
+
+ const v9, 0xc800
+
+ const/16 v10, 0x3800
+
+ const/16 v11, 0xe
+
+ if-eq v1, v2, :cond_18a
+
+ packed-switch v1, :pswitch_data_20e
+
+ .line 1038
+ :goto_152
+ move v6, v11
+
+ move v8, v6
+
+ goto :goto_18b
+
+ .line 1035
+ :pswitch_155
+ const/16 v6, 0x2c00
+
+ const v8, 0xa800
+
+ goto :goto_18b
+
+ .line 1032
+ :pswitch_15b
+ nop
+
+ .line 1038
+ :goto_15c
+ move v6, v9
+
+ goto :goto_18b
+
+ .line 1034
+ :pswitch_15e
+ const/16 v8, 0x9d4
+
+ goto :goto_173
+
+ .line 1031
+ :pswitch_161
+ const/16 v8, 0x1399
+
+ goto :goto_18b
+
+ .line 1030
+ :pswitch_164
+ const/16 v6, 0x170a
+
+ goto :goto_16c
+
+ .line 1029
+ :pswitch_167
+ const/16 v6, 0x170a
+
+ goto :goto_16c
+
+ .line 1028
+ :pswitch_16a
+ const/16 v6, 0x800
+
+ .line 1038
+ :goto_16c
+ move v8, v10
+
+ goto :goto_18b
+
+ .line 1026
+ :pswitch_16e
+ const/16 v8, 0xc66
+
+ goto :goto_18b
+
+ .line 1025
+ :pswitch_171
+ const/16 v8, 0x999
+
+ .line 1038
+ :goto_173
+ move v6, v7
+
+ goto :goto_18b
+
+ .line 1027
+ :pswitch_175
+ const/16 v6, 0x64
+
+ const/16 v8, 0x64
+
+ goto :goto_18b
+
+ .line 1024
+ :pswitch_17a
+ goto :goto_152
+
+ .line 1022
+ :pswitch_17b
+ const/16 v6, 0x180
+
+ const/16 v8, 0x180
+
+ goto :goto_18b
+
+ .line 1021
+ :pswitch_180
+ const/16 v6, 0x3b
+
+ const/16 v8, 0xec
+
+ goto :goto_18b
+
+ .line 1020
+ :pswitch_185
+ const/16 v6, 0x50
+
+ const/16 v8, 0x50
+
+ goto :goto_18b
+
+ .line 1033
+ :cond_18a
+ goto :goto_15c
+
+ .line 1038
+ :goto_18b
+ invoke-virtual {v0, v6}, Landroid/net/NetworkCapabilities;->setLinkUpstreamBandwidthKbps(I)Landroid/net/NetworkCapabilities;
+
+ .line 1039
+ invoke-virtual {v0, v8}, Landroid/net/NetworkCapabilities;->setLinkDownstreamBandwidthKbps(I)Landroid/net/NetworkCapabilities;
+
+ .line 1041
+ new-instance v1, Landroid/net/StringNetworkSpecifier;
+
+ iget-object v2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ invoke-virtual {v2}, Lcom/android/internal/telephony/Phone;->getSubId()I
+
+ move-result v2
+
+ invoke-static {v2}, Ljava/lang/Integer;->toString(I)Ljava/lang/String;
+
+ move-result-object v2
+
+ invoke-direct {v1, v2}, Landroid/net/StringNetworkSpecifier;->(Ljava/lang/String;)V
+
+ invoke-virtual {v0, v1}, Landroid/net/NetworkCapabilities;->setNetworkSpecifier(Landroid/net/NetworkSpecifier;)Landroid/net/NetworkCapabilities;
+
+ .line 1043
+ const/16 v1, 0x12
+
+ iget-object v2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ .line 1044
+ invoke-virtual {v2}, Lcom/android/internal/telephony/Phone;->getServiceState()Landroid/telephony/ServiceState;
+
+ move-result-object v2
+
+ invoke-virtual {v2}, Landroid/telephony/ServiceState;->getDataRoaming()Z
+
+ move-result v2
+
+ .line 1043
+ xor-int/2addr v2, v5
+
+ invoke-virtual {v0, v1, v2}, Landroid/net/NetworkCapabilities;->setCapability(IZ)Landroid/net/NetworkCapabilities;
+
+ .line 1046
+ const/16 v1, 0x14
+
+ invoke-virtual {v0, v1}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 1049
+ iget v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mSubscriptionOverride:I
+
+ and-int/2addr v1, v5
+
+ if-eqz v1, :cond_1c0
+
+ .line 1050
+ invoke-virtual {v0, v3}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 1052
+ :cond_1c0
+ iget v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mSubscriptionOverride:I
+
+ and-int/2addr v1, v4
+
+ if-eqz v1, :cond_1ca
+
+ .line 1053
+ const/16 v1, 0x14
+
+ invoke-virtual {v0, v1}, Landroid/net/NetworkCapabilities;->removeCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 1056
+ :cond_1ca
+ return-object v0
+
+ nop
+
+ :sswitch_data_1cc
+ .sparse-switch
+ 0x2a -> :sswitch_b7
+ 0xd18 -> :sswitch_ac
+ 0x17ff4 -> :sswitch_a2
+ 0x185fd -> :sswitch_98
+ 0x197cf -> :sswitch_8e
+ 0x1a6d3 -> :sswitch_84
+ 0x300cf6 -> :sswitch_7a
+ 0x360bde -> :sswitch_70
+ 0x5c13d641 -> :sswitch_66
+ 0x6118c591 -> :sswitch_5a
+ .end sparse-switch
+
+ :pswitch_data_1f6
+ .packed-switch 0x0
+ :pswitch_ee
+ :pswitch_ea
+ :pswitch_e6
+ :pswitch_e2
+ :pswitch_de
+ :pswitch_da
+ :pswitch_d6
+ :pswitch_d2
+ :pswitch_ce
+ :pswitch_c8
+ .end packed-switch
+
+ :pswitch_data_20e
+ .packed-switch 0x1
+ :pswitch_185
+ :pswitch_180
+ :pswitch_17b
+ :pswitch_17a
+ :pswitch_17a
+ :pswitch_175
+ :pswitch_171
+ :pswitch_16e
+ :pswitch_16a
+ :pswitch_167
+ :pswitch_164
+ :pswitch_161
+ :pswitch_15e
+ :pswitch_15b
+ :pswitch_155
+ .end packed-switch
+.end method
+
+.method protected getWhatToString(I)Ljava/lang/String;
+ .registers 2
+
+ .line 2351
+ invoke-static {p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->cmdToString(I)Ljava/lang/String;
+
+ move-result-object p1
+
+ return-object p1
+.end method
+
+.method isActivating()Z
+ .registers 3
+
+ .line 315
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getCurrentState()Lcom/android/internal/util/IState;
+
+ move-result-object v0
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mActivatingState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcActivatingState;
+
+ if-ne v0, v1, :cond_a
+
+ const/4 v0, 0x1
+
+ goto :goto_b
+
+ :cond_a
+ const/4 v0, 0x0
+
+ :goto_b
+ return v0
+.end method
+
+.method isActive()Z
+ .registers 3
+
+ .line 311
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getCurrentState()Lcom/android/internal/util/IState;
+
+ move-result-object v0
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mActiveState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcActiveState;
+
+ if-ne v0, v1, :cond_a
+
+ const/4 v0, 0x1
+
+ goto :goto_b
+
+ :cond_a
+ const/4 v0, 0x0
+
+ :goto_b
+ return v0
+.end method
+
+.method isDisconnecting()Z
+ .registers 3
+
+ .line 307
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getCurrentState()Lcom/android/internal/util/IState;
+
+ move-result-object v0
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDisconnectingState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectingState;
+
+ if-ne v0, v1, :cond_a
+
+ const/4 v0, 0x1
+
+ goto :goto_b
+
+ :cond_a
+ const/4 v0, 0x0
+
+ :goto_b
+ return v0
+.end method
+
+.method isInactive()Z
+ .registers 3
+
+ .line 303
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getCurrentState()Lcom/android/internal/util/IState;
+
+ move-result-object v0
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mInactiveState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcInactiveState;
+
+ if-ne v0, v1, :cond_a
+
+ const/4 v0, 0x1
+
+ goto :goto_b
+
+ :cond_a
+ const/4 v0, 0x0
+
+ :goto_b
+ return v0
+.end method
+
+.method public isIpv4Connected()Z
+ .registers 4
+
+ .line 363
+ nop
+
+ .line 364
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLinkProperties:Landroid/net/LinkProperties;
+
+ invoke-virtual {v0}, Landroid/net/LinkProperties;->getAddresses()Ljava/util/List;
+
+ move-result-object v0
+
+ .line 366
+ invoke-interface {v0}, Ljava/util/Collection;->iterator()Ljava/util/Iterator;
+
+ move-result-object v0
+
+ :goto_b
+ invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
+
+ move-result v1
+
+ if-eqz v1, :cond_38
+
+ invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
+
+ move-result-object v1
+
+ check-cast v1, Ljava/net/InetAddress;
+
+ .line 367
+ instance-of v2, v1, Ljava/net/Inet4Address;
+
+ if-eqz v2, :cond_37
+
+ .line 368
+ check-cast v1, Ljava/net/Inet4Address;
+
+ .line 369
+ invoke-virtual {v1}, Ljava/net/Inet4Address;->isAnyLocalAddress()Z
+
+ move-result v2
+
+ if-nez v2, :cond_37
+
+ invoke-virtual {v1}, Ljava/net/Inet4Address;->isLinkLocalAddress()Z
+
+ move-result v2
+
+ if-nez v2, :cond_37
+
+ .line 370
+ invoke-virtual {v1}, Ljava/net/Inet4Address;->isLoopbackAddress()Z
+
+ move-result v2
+
+ if-nez v2, :cond_37
+
+ invoke-virtual {v1}, Ljava/net/Inet4Address;->isMulticastAddress()Z
+
+ move-result v1
+
+ if-nez v1, :cond_37
+
+ .line 371
+ const/4 v0, 0x1
+
+ .line 372
+ goto :goto_39
+
+ .line 375
+ :cond_37
+ goto :goto_b
+
+ .line 376
+ :cond_38
+ const/4 v0, 0x0
+
+ :goto_39
+ return v0
+.end method
+
+.method public isIpv6Connected()Z
+ .registers 4
+
+ .line 380
+ nop
+
+ .line 381
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLinkProperties:Landroid/net/LinkProperties;
+
+ invoke-virtual {v0}, Landroid/net/LinkProperties;->getAddresses()Ljava/util/List;
+
+ move-result-object v0
+
+ .line 383
+ invoke-interface {v0}, Ljava/util/Collection;->iterator()Ljava/util/Iterator;
+
+ move-result-object v0
+
+ :goto_b
+ invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
+
+ move-result v1
+
+ if-eqz v1, :cond_38
+
+ invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
+
+ move-result-object v1
+
+ check-cast v1, Ljava/net/InetAddress;
+
+ .line 384
+ instance-of v2, v1, Ljava/net/Inet6Address;
+
+ if-eqz v2, :cond_37
+
+ .line 385
+ check-cast v1, Ljava/net/Inet6Address;
+
+ .line 386
+ invoke-virtual {v1}, Ljava/net/Inet6Address;->isAnyLocalAddress()Z
+
+ move-result v2
+
+ if-nez v2, :cond_37
+
+ invoke-virtual {v1}, Ljava/net/Inet6Address;->isLinkLocalAddress()Z
+
+ move-result v2
+
+ if-nez v2, :cond_37
+
+ .line 387
+ invoke-virtual {v1}, Ljava/net/Inet6Address;->isLoopbackAddress()Z
+
+ move-result v2
+
+ if-nez v2, :cond_37
+
+ invoke-virtual {v1}, Ljava/net/Inet6Address;->isMulticastAddress()Z
+
+ move-result v1
+
+ if-nez v1, :cond_37
+
+ .line 388
+ const/4 v0, 0x1
+
+ .line 389
+ goto :goto_39
+
+ .line 392
+ :cond_37
+ goto :goto_b
+
+ .line 393
+ :cond_38
+ const/4 v0, 0x0
+
+ :goto_39
+ return v0
+.end method
+
+.method protected log(Ljava/lang/String;)V
+ .registers 3
+
+ .line 2406
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getName()Ljava/lang/String;
+
+ move-result-object v0
+
+ invoke-static {v0, p1}, Landroid/telephony/Rlog;->d(Ljava/lang/String;Ljava/lang/String;)I
+
+ .line 2407
+ return-void
+.end method
+
+.method protected logd(Ljava/lang/String;)V
+ .registers 3
+
+ .line 2416
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getName()Ljava/lang/String;
+
+ move-result-object v0
+
+ invoke-static {v0, p1}, Landroid/telephony/Rlog;->d(Ljava/lang/String;Ljava/lang/String;)I
+
+ .line 2417
+ return-void
+.end method
+
+.method protected loge(Ljava/lang/String;)V
+ .registers 3
+
+ .line 2456
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getName()Ljava/lang/String;
+
+ move-result-object v0
+
+ invoke-static {v0, p1}, Landroid/telephony/Rlog;->e(Ljava/lang/String;Ljava/lang/String;)I
+
+ .line 2457
+ return-void
+.end method
+
+.method protected loge(Ljava/lang/String;Ljava/lang/Throwable;)V
+ .registers 4
+
+ .line 2467
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getName()Ljava/lang/String;
+
+ move-result-object v0
+
+ invoke-static {v0, p1, p2}, Landroid/telephony/Rlog;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
+
+ .line 2468
+ return-void
+.end method
+
+.method protected logi(Ljava/lang/String;)V
+ .registers 3
+
+ .line 2436
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getName()Ljava/lang/String;
+
+ move-result-object v0
+
+ invoke-static {v0, p1}, Landroid/telephony/Rlog;->i(Ljava/lang/String;Ljava/lang/String;)I
+
+ .line 2437
+ return-void
+.end method
+
+.method protected logv(Ljava/lang/String;)V
+ .registers 3
+
+ .line 2426
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getName()Ljava/lang/String;
+
+ move-result-object v0
+
+ invoke-static {v0, p1}, Landroid/telephony/Rlog;->v(Ljava/lang/String;Ljava/lang/String;)I
+
+ .line 2427
+ return-void
+.end method
+
+.method protected logw(Ljava/lang/String;)V
+ .registers 3
+
+ .line 2446
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getName()Ljava/lang/String;
+
+ move-result-object v0
+
+ invoke-static {v0, p1}, Landroid/telephony/Rlog;->w(Ljava/lang/String;Ljava/lang/String;)I
+
+ .line 2447
+ return-void
+.end method
+
+.method public onSubscriptionOverride(II)V
+ .registers 5
+
+ .line 557
+ iget v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mSubscriptionOverride:I
+
+ not-int v1, p1
+
+ and-int/2addr v0, v1
+
+ and-int/2addr p1, p2
+
+ or-int/2addr p1, v0
+
+ iput p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mSubscriptionOverride:I
+
+ .line 559
+ const p1, 0x40011
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->obtainMessage(I)Landroid/os/Message;
+
+ move-result-object p1
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->sendMessage(Landroid/os/Message;)V
+
+ .line 560
+ return-void
+.end method
+
+.method setLinkPropertiesHttpProxy(Landroid/net/ProxyInfo;)V
+ .registers 3
+
+ .line 327
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLinkProperties:Landroid/net/LinkProperties;
+
+ invoke-virtual {v0, p1}, Landroid/net/LinkProperties;->setHttpProxy(Landroid/net/ProxyInfo;)V
+
+ .line 328
+ return-void
+.end method
+
+.method tearDownNow()V
+ .registers 2
+
+ .line 2312
+ const-string v0, "tearDownNow()"
+
+ invoke-virtual {p0, v0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 2313
+ const v0, 0x40008
+
+ invoke-virtual {p0, v0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->obtainMessage(I)Landroid/os/Message;
+
+ move-result-object v0
+
+ invoke-virtual {p0, v0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->sendMessage(Landroid/os/Message;)V
+
+ .line 2314
+ return-void
+.end method
+
+.method public toString()Ljava/lang/String;
+ .registers 3
+
+ .line 2485
+ new-instance v0, Ljava/lang/StringBuilder;
+
+ invoke-direct {v0}, Ljava/lang/StringBuilder;->()V
+
+ const-string v1, "{"
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->toStringSimple()Ljava/lang/String;
+
+ move-result-object v1
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ const-string v1, " mApnContexts="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnContexts:Ljava/util/HashMap;
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ const-string v1, "}"
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object v0
+
+ return-object v0
+.end method
+
+.method public toStringSimple()Ljava/lang/String;
+ .registers 4
+
+ .line 2472
+ new-instance v0, Ljava/lang/StringBuilder;
+
+ invoke-direct {v0}, Ljava/lang/StringBuilder;->()V
+
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getName()Ljava/lang/String;
+
+ move-result-object v1
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ const-string v1, ": State="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getCurrentState()Lcom/android/internal/util/IState;
+
+ move-result-object v1
+
+ invoke-interface {v1}, Lcom/android/internal/util/IState;->getName()Ljava/lang/String;
+
+ move-result-object v1
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ const-string v1, " mApnSetting="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ const-string v1, " RefCount="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnContexts:Ljava/util/HashMap;
+
+ .line 2473
+ invoke-virtual {v1}, Ljava/util/HashMap;->size()I
+
+ move-result v1
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ const-string v1, " mCid="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mCid:I
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ const-string v1, " mCreateTime="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-wide v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mCreateTime:J
+
+ invoke-virtual {v0, v1, v2}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
+
+ const-string v1, " mLastastFailTime="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-wide v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLastFailTime:J
+
+ invoke-virtual {v0, v1, v2}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
+
+ const-string v1, " mLastFailCause="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLastFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ const-string v1, " mTag="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mTag:I
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ const-string v1, " mLinkProperties="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLinkProperties:Landroid/net/LinkProperties;
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ const-string v1, " linkCapabilities="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ .line 2479
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getNetworkCapabilities()Landroid/net/NetworkCapabilities;
+
+ move-result-object v1
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ const-string v1, " mRestrictedNetworkOverride="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-boolean v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mRestrictedNetworkOverride:Z
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object v0
+
+ .line 2472
+ return-object v0
+.end method
+
+.method public updateLinkProperty(Landroid/telephony/data/DataCallResponse;)Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;
+ .registers 4
+ .annotation build Lcom/android/internal/annotations/VisibleForTesting;
+ .end annotation
+
+ .line 398
+ new-instance v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLinkProperties:Landroid/net/LinkProperties;
+
+ invoke-direct {v0, v1}, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->(Landroid/net/LinkProperties;)V
+
+ .line 400
+ if-nez p1, :cond_a
+
+ return-object v0
+
+ .line 402
+ :cond_a
+ new-instance v1, Landroid/net/LinkProperties;
+
+ invoke-direct {v1}, Landroid/net/LinkProperties;->()V
+
+ iput-object v1, v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->newLp:Landroid/net/LinkProperties;
+
+ .line 405
+ iget-object v1, v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->newLp:Landroid/net/LinkProperties;
+
+ invoke-direct {p0, p1, v1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->setLinkProperties(Landroid/telephony/data/DataCallResponse;Landroid/net/LinkProperties;)Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+
+ move-result-object p1
+
+ iput-object p1, v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->setupResult:Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+
+ .line 406
+ iget-object p1, v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->setupResult:Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+
+ sget-object v1, Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;->SUCCESS:Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+
+ if-eq p1, v1, :cond_36
+
+ .line 407
+ new-instance p1, Ljava/lang/StringBuilder;
+
+ invoke-direct {p1}, Ljava/lang/StringBuilder;->()V
+
+ const-string v1, "updateLinkProperty failed : "
+
+ invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->setupResult:Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+
+ invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p1
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 408
+ return-object v0
+
+ .line 411
+ :cond_36
+ iget-object p1, v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->newLp:Landroid/net/LinkProperties;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLinkProperties:Landroid/net/LinkProperties;
+
+ invoke-virtual {v1}, Landroid/net/LinkProperties;->getHttpProxy()Landroid/net/ProxyInfo;
+
+ move-result-object v1
+
+ invoke-virtual {p1, v1}, Landroid/net/LinkProperties;->setHttpProxy(Landroid/net/ProxyInfo;)V
+
+ .line 413
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ iget-object v1, v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->newLp:Landroid/net/LinkProperties;
+
+ invoke-direct {p0, p1, v1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->checkSetMtu(Lcom/android/internal/telephony/dataconnection/ApnSetting;Landroid/net/LinkProperties;)V
+
+ .line 415
+ iget-object p1, v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->newLp:Landroid/net/LinkProperties;
+
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLinkProperties:Landroid/net/LinkProperties;
+
+ .line 417
+ iget p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mRilRat:I
+
+ invoke-direct {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->updateTcpBufferSizes(I)V
+
+ .line 419
+ iget-object p1, v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->oldLp:Landroid/net/LinkProperties;
+
+ iget-object v1, v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->newLp:Landroid/net/LinkProperties;
+
+ invoke-virtual {p1, v1}, Landroid/net/LinkProperties;->equals(Ljava/lang/Object;)Z
+
+ move-result p1
+
+ if-nez p1, :cond_87
+
+ .line 420
+ new-instance p1, Ljava/lang/StringBuilder;
+
+ invoke-direct {p1}, Ljava/lang/StringBuilder;->()V
+
+ const-string v1, "updateLinkProperty old LP="
+
+ invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->oldLp:Landroid/net/LinkProperties;
+
+ invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p1
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 421
+ new-instance p1, Ljava/lang/StringBuilder;
+
+ invoke-direct {p1}, Ljava/lang/StringBuilder;->()V
+
+ const-string v1, "updateLinkProperty new LP="
+
+ invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->newLp:Landroid/net/LinkProperties;
+
+ invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p1
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 424
+ :cond_87
+ iget-object p1, v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->newLp:Landroid/net/LinkProperties;
+
+ iget-object v1, v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->oldLp:Landroid/net/LinkProperties;
+
+ invoke-virtual {p1, v1}, Landroid/net/LinkProperties;->equals(Ljava/lang/Object;)Z
+
+ move-result p1
+
+ if-nez p1, :cond_9c
+
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkAgent:Lcom/android/internal/telephony/dataconnection/DataConnection$DcNetworkAgent;
+
+ if-eqz p1, :cond_9c
+
+ .line 426
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkAgent:Lcom/android/internal/telephony/dataconnection/DataConnection$DcNetworkAgent;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLinkProperties:Landroid/net/LinkProperties;
+
+ invoke-virtual {p1, v1}, Lcom/android/internal/telephony/dataconnection/DataConnection$DcNetworkAgent;->sendLinkProperties(Landroid/net/LinkProperties;)V
+
+ .line 429
+ :cond_9c
+ return-object v0
+.end method
diff --git a/autotests/reference/test.smali.ref b/autotests/reference/test.smali.ref
new file mode 100644
--- /dev/null
+++ b/autotests/reference/test.smali.ref
@@ -0,0 +1,5946 @@
+#
+# Copyright (C) 2006 The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+.class public Lcom/android/internal/telephony/dataconnection/DataConnection;
+.super Lcom/android/internal/util/StateMachine;
+.source "DataConnection.java"
+
+
+# annotations
+.annotation system Ldalvik/annotation/MemberClasses;
+ value = {
+ Lcom/android/internal/telephony/dataconnection/DataConnection$DcNetworkAgent;,
+ Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectionErrorCreatingConnection;,
+ Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectingState;,
+ Lcom/android/internal/telephony/dataconnection/DataConnection$DcActiveState;,
+ Lcom/android/internal/telephony/dataconnection/DataConnection$DcActivatingState;,
+ Lcom/android/internal/telephony/dataconnection/DataConnection$DcInactiveState;,
+ Lcom/android/internal/telephony/dataconnection/DataConnection$DcDefaultState;,
+ Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;,
+ Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;,
+ Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;,
+ Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;
+ }
+.end annotation
+
+
+# static fields
+.field static final BASE:I = 0x40000
+
+.field private static final CMD_TO_STRING_COUNT:B = 0x18
+
+.field private static final DBG:Z = true
+
+.field static final EVENT_BW_REFRESH_RESPONSE:S = 0x4000e
+
+.field static final EVENT_CONNECT:I = 0x40000
+
+.field static final EVENT_DATA_CONNECTION_DRS_OR_RAT_CHANGED:I = 0x4000b
+
+.field static final EVENT_DATA_CONNECTION_OVERRIDE_CHANGED:I = 0x40011
+
+.field static final EVENT_DATA_CONNECTION_ROAM_OFF:I = 0x4000d
+
+.field static final EVENT_DATA_CONNECTION_ROAM_ON:I = 0x4000c
+
+.field static final EVENT_DATA_CONNECTION_VOICE_CALL_ENDED:I = 0x40010
+
+.field static final EVENT_DATA_CONNECTION_VOICE_CALL_STARTED:I = 0x4000f
+
+.field static final EVENT_DATA_STATE_CHANGED:I = 0x40007
+
+.field static final EVENT_DEACTIVATE_DONE:I = 0x40003
+
+.field static final EVENT_DISCONNECT:F = 636.6886188221E12
+
+.field static final EVENT_DISCONNECT_ALL:D = 98.58E-23D
+
+.field static final EVENT_KEEPALIVE_STARTED:D = -Infinity
+
+.field static final EVENT_KEEPALIVE_START_REQUEST:F = NaN
+
+.field static final EVENT_KEEPALIVE_STATUS:I = 0x40012
+
+.field static final EVENT_KEEPALIVE_STOPPED:I = 0x40014
+
+.field static final EVENT_KEEPALIVE_STOP_REQUEST:I = 0x40016
+
+.field static final EVENT_LINK_CAPACITY_CHANGED:I = 0x40017
+
+.field static final EVENT_LOST_CONNECTION:J = 0x40009EEF
+
+.field static final EVENT_RIL_CONNECTED:I = 0x40005
+
+.field static final EVENT_SETUP_DATA_CONNECTION_DONE:I = 0x40001
+
+.field static final EVENT_TEAR_DOWN_NOW:C = '\n'
+
+.field private static final NETWORK_TYPE:Ljava/lang/String; = "MOBILE"
+
+.field private static final NULL_IP:Ljava/lang/String; = "0.0.0.0"
+
+.field private static final TCP_BUFFER_SIZES_1XRTT:Ljava/lang/String; = "16384,32768,131072,4096,16384,102400"
+
+.field private static final TCP_BUFFER_SIZES_EDGE:Ljava/lang/String; = "4093,26280,70800,4096,16384,70800"
+
+.field private static final TCP_BUFFER_SIZES_EHRPD:Ljava/lang/String; = "131072,262144,1048576,4096,16384,524288"
+
+.field private static final TCP_BUFFER_SIZES_EVDO:Ljava/lang/String; = "4094,87380,262144,4096,16384,262144"
+
+.field private static final TCP_BUFFER_SIZES_GPRS:Ljava/lang/String; = "4092,8760,48000,4096,8760,48000"
+
+.field private static final TCP_BUFFER_SIZES_HSDPA:Ljava/lang/String; = "61167,367002,1101005,8738,52429,262114"
+
+.field private static final TCP_BUFFER_SIZES_HSPA:Ljava/lang/String; = "40778,244668,734003,16777,100663,301990"
+
+.field private static final TCP_BUFFER_SIZES_HSPAP:Ljava/lang/String; = "122334,734003,2202010,32040,192239,576717"
+
+.field private static final TCP_BUFFER_SIZES_LTE:Ljava/lang/String; = "524288,1048576,2097152,262144,524288,1048576"
+
+.field private static final TCP_BUFFER_SIZES_UMTS:Ljava/lang/String; = "58254,349525,1048576,58254,349525,1048576"
+
+.field private static final VDBG:Z = false
+
+.field private static mInstanceNumber:Ljava/util/concurrent/atomic/AtomicInteger;
+
+.field private static sCmdToString:[Ljava/lang/String;
+
+
+# instance fields
+.field private mAc:Lcom/android/internal/util/AsyncChannel;
+
+.field private mActivatingState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcActivatingState;
+
+.field private mActiveState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcActiveState;
+
+.field public mApnContexts:Ljava/util/HashMap;
+ .annotation system Ldalvik/annotation/Signature;
+ value = {
+ "Ljava/util/HashMap<",
+ "Lcom/android/internal/telephony/dataconnection/ApnContext;",
+ "Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;",
+ ">;"
+ }
+ .end annotation
+.end field
+
+.field private mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+.field public mCid:I
+
+.field private mConnectionParams:Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;
+
+.field private mCreateTime:J
+
+.field private mDataRegState:I
+
+.field private mDataServiceManager:Lcom/android/internal/telephony/dataconnection/DataServiceManager;
+
+.field private mDcController:Lcom/android/internal/telephony/dataconnection/DcController;
+
+.field private mDcFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+.field private mDcTesterFailBringUpAll:Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;
+
+.field private mDct:Lcom/android/internal/telephony/dataconnection/DcTracker;
+
+.field private mDefaultState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDefaultState;
+
+.field private mDisconnectParams:Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;
+
+.field private mDisconnectingErrorCreatingConnection:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectionErrorCreatingConnection;
+
+.field private mDisconnectingState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectingState;
+
+.field private mId:I
+
+.field private mInactiveState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcInactiveState;
+
+.field private mLastFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+.field private mLastFailTime:J
+
+.field private mLinkProperties:Landroid/net/LinkProperties;
+
+.field private mNetCapsLocalLog:Landroid/util/LocalLog;
+
+.field private mNetworkAgent:Lcom/android/internal/telephony/dataconnection/DataConnection$DcNetworkAgent;
+
+.field private mNetworkInfo:Landroid/net/NetworkInfo;
+
+.field protected mPcscfAddr:[Ljava/lang/String;
+
+.field private mPhone:Lcom/android/internal/telephony/Phone;
+
+.field mReconnectIntent:Landroid/app/PendingIntent;
+
+.field private mRestrictedNetworkOverride:Z
+
+.field private mRilRat:I
+
+.field private mSubscriptionOverride:I
+
+.field mTag:I
+
+.field private mUserData:Ljava/lang/Object;
+
+
+# direct methods
+.method static constructor <clinit>()V
+ .registers 3
+
+ .line 109
+ new-instance v0, Ljava/util/concurrent/atomic/AtomicInteger;
+
+ const/4 v1, 0x0
+
+ invoke-direct {v0, v1}, Ljava/util/concurrent/atomic/AtomicInteger;-><init>(I)V
+
+ sput-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mInstanceNumber:Ljava/util/concurrent/atomic/AtomicInteger;
+
+ .line 227
+ const/16 v0, 0x18
+
+ new-array v0, v0, [Ljava/lang/String;
+
+ sput-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ .line 229
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v2, "EVENT_CONNECT"
+
+ aput-object v2, v0, v1
+
+ .line 230
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_SETUP_DATA_CONNECTION_DONE"
+
+ const/4 v2, 0x1
+
+ aput-object v1, v0, v2
+
+ .line 232
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_DEACTIVATE_DONE"
+
+ const/4 v2, 0x3
+
+ aput-object v1, v0, v2
+
+ .line 233
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_DISCONNECT"
+
+ const/4 v2, 0x4
+
+ aput-object v1, v0, v2
+
+ .line 234
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_RIL_CONNECTED"
+
+ const/4 v2, 0x5
+
+ aput-object v1, v0, v2
+
+ .line 235
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_DISCONNECT_ALL"
+
+ const/4 v2, 0x6
+
+ aput-object v1, v0, v2
+
+ .line 236
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_DATA_STATE_CHANGED"
+
+ const/4 v2, 0x7
+
+ aput-object v1, v0, v2
+
+ .line 237
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_TEAR_DOWN_NOW"
+
+ const/16 v2, 0x8
+
+ aput-object v1, v0, v2
+
+ .line 238
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_LOST_CONNECTION"
+
+ const/16 v2, 0x9
+
+ aput-object v1, v0, v2
+
+ .line 239
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_DATA_CONNECTION_DRS_OR_RAT_CHANGED"
+
+ const/16 v2, 0xb
+
+ aput-object v1, v0, v2
+
+ .line 241
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_DATA_CONNECTION_ROAM_ON"
+
+ const/16 v2, 0xc
+
+ aput-object v1, v0, v2
+
+ .line 242
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_DATA_CONNECTION_ROAM_OFF"
+
+ const/16 v2, 0xd
+
+ aput-object v1, v0, v2
+
+ .line 243
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_BW_REFRESH_RESPONSE"
+
+ const/16 v2, 0xe
+
+ aput-object v1, v0, v2
+
+ .line 244
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_DATA_CONNECTION_VOICE_CALL_STARTED"
+
+ const/16 v2, 0xf
+
+ aput-object v1, v0, v2
+
+ .line 246
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_DATA_CONNECTION_VOICE_CALL_ENDED"
+
+ const/16 v2, 0x10
+
+ aput-object v1, v0, v2
+
+ .line 248
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_DATA_CONNECTION_OVERRIDE_CHANGED"
+
+ const/16 v2, 0x11
+
+ aput-object v1, v0, v2
+
+ .line 250
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_KEEPALIVE_STATUS"
+
+ const/16 v2, 0x12
+
+ aput-object v1, v0, v2
+
+ .line 251
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_KEEPALIVE_STARTED"
+
+ const/16 v2, 0x13
+
+ aput-object v1, v0, v2
+
+ .line 252
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_KEEPALIVE_STOPPED"
+
+ const/16 v2, 0x14
+
+ aput-object v1, v0, v2
+
+ .line 253
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_KEEPALIVE_START_REQUEST"
+
+ const/16 v2, 0x15
+
+ aput-object v1, v0, v2
+
+ .line 254
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_KEEPALIVE_STOP_REQUEST"
+
+ const/16 v2, 0x16
+
+ aput-object v1, v0, v2
+
+ .line 255
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ const-string v1, "EVENT_LINK_CAPACITY_CHANGED"
+
+ const/16 v2, 0x17
+
+ aput-object v1, v0, v2
+
+ .line 256
+ return-void
+.end method
+
+.method private constructor <init>(Lcom/android/internal/telephony/Phone;Ljava/lang/String;ILcom/android/internal/telephony/dataconnection/DcTracker;Lcom/android/internal/telephony/dataconnection/DataServiceManager;Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;Lcom/android/internal/telephony/dataconnection/DcController;)V
+ .registers 10
+
+ .line 466
+ invoke-virtual {p7}, Lcom/android/internal/telephony/dataconnection/DcController;->getHandler()Landroid/os/Handler;
+
+ move-result-object v0
+
+ invoke-direct {p0, p2, v0}, Lcom/android/internal/util/StateMachine;-><init>(Ljava/lang/String;Landroid/os/Handler;)V
+
+ .line 113
+ const/4 p2, 0x0
+
+ iput-object p2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDct:Lcom/android/internal/telephony/dataconnection/DcTracker;
+
+ .line 180
+ new-instance v0, Landroid/net/LinkProperties;
+
+ invoke-direct {v0}, Landroid/net/LinkProperties;-><init>()V
+
+ iput-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLinkProperties:Landroid/net/LinkProperties;
+
+ .line 187
+ const v0, 0x7fffffff
+
+ iput v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mRilRat:I
+
+ .line 188
+ iput v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDataRegState:I
+
+ .line 191
+ new-instance v0, Landroid/util/LocalLog;
+
+ const/16 v1, 0x32
+
+ invoke-direct {v0, v1}, Landroid/util/LocalLog;-><init>(I)V
+
+ iput-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetCapsLocalLog:Landroid/util/LocalLog;
+
+ .line 195
+ iput-object p2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnContexts:Ljava/util/HashMap;
+
+ .line 196
+ iput-object p2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mReconnectIntent:Landroid/app/PendingIntent;
+
+ .line 909
+ const/4 v0, 0x0
+
+ iput-boolean v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mRestrictedNetworkOverride:Z
+
+ .line 1440
+ new-instance v1, Lcom/android/internal/telephony/dataconnection/DataConnection$DcDefaultState;
+
+ invoke-direct {v1, p0, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection$DcDefaultState;-><init>(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DataConnection$1;)V
+
+ iput-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDefaultState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDefaultState;
+
+ .line 1562
+ new-instance v1, Lcom/android/internal/telephony/dataconnection/DataConnection$DcInactiveState;
+
+ invoke-direct {v1, p0, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection$DcInactiveState;-><init>(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DataConnection$1;)V
+
+ iput-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mInactiveState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcInactiveState;
+
+ .line 1676
+ new-instance v1, Lcom/android/internal/telephony/dataconnection/DataConnection$DcActivatingState;
+
+ invoke-direct {v1, p0, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection$DcActivatingState;-><init>(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DataConnection$1;)V
+
+ iput-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mActivatingState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcActivatingState;
+
+ .line 1991
+ new-instance v1, Lcom/android/internal/telephony/dataconnection/DataConnection$DcActiveState;
+
+ invoke-direct {v1, p0, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection$DcActiveState;-><init>(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DataConnection$1;)V
+
+ iput-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mActiveState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcActiveState;
+
+ .line 2049
+ new-instance v1, Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectingState;
+
+ invoke-direct {v1, p0, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectingState;-><init>(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DataConnection$1;)V
+
+ iput-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDisconnectingState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectingState;
+
+ .line 2102
+ new-instance v1, Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectionErrorCreatingConnection;
+
+ invoke-direct {v1, p0, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectionErrorCreatingConnection;-><init>(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DataConnection$1;)V
+
+ iput-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDisconnectingErrorCreatingConnection:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectionErrorCreatingConnection;
+
+ .line 467
+ const/16 p2, 0x12c
+
+ invoke-virtual {p0, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection;->setLogRecSize(I)V
+
+ .line 468
+ const/4 p2, 0x1
+
+ invoke-virtual {p0, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection;->setLogOnlyTransitions(Z)V
+
+ .line 469
+ const-string v1, "DataConnection created"
+
+ invoke-virtual {p0, v1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 471
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ .line 472
+ iput-object p4, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDct:Lcom/android/internal/telephony/dataconnection/DcTracker;
+
+ .line 473
+ iput-object p5, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDataServiceManager:Lcom/android/internal/telephony/dataconnection/DataServiceManager;
+
+ .line 474
+ iput-object p6, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDcTesterFailBringUpAll:Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;
+
+ .line 475
+ iput-object p7, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDcController:Lcom/android/internal/telephony/dataconnection/DcController;
+
+ .line 476
+ iput p3, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mId:I
+
+ .line 477
+ const/4 p1, -0x1
+
+ iput p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mCid:I
+
+ .line 478
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ invoke-virtual {p1}, Lcom/android/internal/telephony/Phone;->getServiceState()Landroid/telephony/ServiceState;
+
+ move-result-object p1
+
+ .line 479
+ invoke-virtual {p1}, Landroid/telephony/ServiceState;->getRilDataRadioTechnology()I
+
+ move-result p3
+
+ iput p3, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mRilRat:I
+
+ .line 480
+ iget-object p3, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ invoke-virtual {p3}, Lcom/android/internal/telephony/Phone;->getServiceState()Landroid/telephony/ServiceState;
+
+ move-result-object p3
+
+ invoke-virtual {p3}, Landroid/telephony/ServiceState;->getDataRegState()I
+
+ move-result p3
+
+ iput p3, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDataRegState:I
+
+ .line 481
+ invoke-virtual {p1}, Landroid/telephony/ServiceState;->getDataNetworkType()I
+
+ move-result p3
+
+ .line 482
+ new-instance p4, Landroid/net/NetworkInfo;
+
+ const-string p5, "MOBILE"
+
+ .line 483
+ invoke-static {p3}, Landroid/telephony/TelephonyManager;->getNetworkTypeName(I)Ljava/lang/String;
+
+ move-result-object p6
+
+ invoke-direct {p4, v0, p3, p5, p6}, Landroid/net/NetworkInfo;-><init>(IILjava/lang/String;Ljava/lang/String;)V
+
+ iput-object p4, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkInfo:Landroid/net/NetworkInfo;
+
+ .line 484
+ iget-object p3, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkInfo:Landroid/net/NetworkInfo;
+
+ invoke-virtual {p1}, Landroid/telephony/ServiceState;->getDataRoaming()Z
+
+ move-result p1
+
+ invoke-virtual {p3, p1}, Landroid/net/NetworkInfo;->setRoaming(Z)V
+
+ .line 485
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkInfo:Landroid/net/NetworkInfo;
+
+ invoke-virtual {p1, p2}, Landroid/net/NetworkInfo;->setIsAvailable(Z)V
+
+ .line 487
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDefaultState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDefaultState;
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->addState(Lcom/android/internal/util/State;)V
+
+ .line 488
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mInactiveState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcInactiveState;
+
+ iget-object p2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDefaultState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDefaultState;
+
+ invoke-virtual {p0, p1, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection;->addState(Lcom/android/internal/util/State;Lcom/android/internal/util/State;)V
+
+ .line 489
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mActivatingState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcActivatingState;
+
+ iget-object p2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDefaultState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDefaultState;
+
+ invoke-virtual {p0, p1, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection;->addState(Lcom/android/internal/util/State;Lcom/android/internal/util/State;)V
+
+ .line 490
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mActiveState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcActiveState;
+
+ iget-object p2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDefaultState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDefaultState;
+
+ invoke-virtual {p0, p1, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection;->addState(Lcom/android/internal/util/State;Lcom/android/internal/util/State;)V
+
+ .line 491
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDisconnectingState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectingState;
+
+ iget-object p2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDefaultState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDefaultState;
+
+ invoke-virtual {p0, p1, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection;->addState(Lcom/android/internal/util/State;Lcom/android/internal/util/State;)V
+
+ .line 492
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDisconnectingErrorCreatingConnection:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectionErrorCreatingConnection;
+
+ iget-object p2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDefaultState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDefaultState;
+
+ invoke-virtual {p0, p1, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection;->addState(Lcom/android/internal/util/State;Lcom/android/internal/util/State;)V
+
+ .line 493
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mInactiveState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcInactiveState;
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->setInitialState(Lcom/android/internal/util/State;)V
+
+ .line 495
+ new-instance p1, Ljava/util/HashMap;
+
+ invoke-direct {p1}, Ljava/util/HashMap;-><init>()V
+
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnContexts:Ljava/util/HashMap;
+
+ .line 496
+ return-void
+.end method
+
+.method static synthetic access$000(Landroid/os/Message;)Ljava/lang/String;
+ .registers 1
+
+ .line 97
+ invoke-static {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->msgToString(Landroid/os/Message;)Ljava/lang/String;
+
+ move-result-object p0
+
+ return-object p0
+.end method
+
+.method static synthetic access$100(Lcom/android/internal/telephony/dataconnection/DataConnection;)Lcom/android/internal/telephony/Phone;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ return-object p0
+.end method
+
+.method static synthetic access$1002(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;)Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;
+ .registers 2
+
+ .line 97
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDcTesterFailBringUpAll:Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;
+
+ return-object p1
+.end method
+
+.method static synthetic access$102(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/Phone;)Lcom/android/internal/telephony/Phone;
+ .registers 2
+
+ .line 97
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ return-object p1
+.end method
+
+.method static synthetic access$1100(Lcom/android/internal/telephony/dataconnection/DataConnection;)I
+ .registers 1
+
+ .line 97
+ iget p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mId:I
+
+ return p0
+.end method
+
+.method static synthetic access$1200(Lcom/android/internal/telephony/dataconnection/DataConnection;)V
+ .registers 1
+
+ .line 97
+ invoke-direct {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->dumpToLog()V
+
+ return-void
+.end method
+
+.method static synthetic access$1300(Lcom/android/internal/telephony/dataconnection/DataConnection;)Lcom/android/internal/telephony/dataconnection/DataConnection$DcNetworkAgent;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkAgent:Lcom/android/internal/telephony/dataconnection/DataConnection$DcNetworkAgent;
+
+ return-object p0
+.end method
+
+.method static synthetic access$1302(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DataConnection$DcNetworkAgent;)Lcom/android/internal/telephony/dataconnection/DataConnection$DcNetworkAgent;
+ .registers 2
+
+ .line 97
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkAgent:Lcom/android/internal/telephony/dataconnection/DataConnection$DcNetworkAgent;
+
+ return-object p1
+.end method
+
+.method static synthetic access$1400(Lcom/android/internal/telephony/dataconnection/DataConnection;)Lcom/android/internal/telephony/dataconnection/DataConnection$DcInactiveState;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mInactiveState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcInactiveState;
+
+ return-object p0
+.end method
+
+.method static synthetic access$1500(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;Lcom/android/internal/telephony/dataconnection/DcFailCause;Z)V
+ .registers 4
+
+ .line 97
+ invoke-direct {p0, p1, p2, p3}, Lcom/android/internal/telephony/dataconnection/DataConnection;->notifyConnectCompleted(Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;Lcom/android/internal/telephony/dataconnection/DcFailCause;Z)V
+
+ return-void
+.end method
+
+.method static synthetic access$1600(Lcom/android/internal/telephony/dataconnection/DataConnection;Ljava/lang/String;)V
+ .registers 2
+
+ .line 97
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->logAndAddLogRec(Ljava/lang/String;)V
+
+ return-void
+.end method
+
+.method static synthetic access$1700(Lcom/android/internal/telephony/dataconnection/DataConnection;)I
+ .registers 1
+
+ .line 97
+ iget p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDataRegState:I
+
+ return p0
+.end method
+
+.method static synthetic access$1702(Lcom/android/internal/telephony/dataconnection/DataConnection;I)I
+ .registers 2
+
+ .line 97
+ iput p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDataRegState:I
+
+ return p1
+.end method
+
+.method static synthetic access$1800(Lcom/android/internal/telephony/dataconnection/DataConnection;)I
+ .registers 1
+
+ .line 97
+ iget p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mRilRat:I
+
+ return p0
+.end method
+
+.method static synthetic access$1802(Lcom/android/internal/telephony/dataconnection/DataConnection;I)I
+ .registers 2
+
+ .line 97
+ iput p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mRilRat:I
+
+ return p1
+.end method
+
+.method static synthetic access$1900(Lcom/android/internal/telephony/dataconnection/DataConnection;I)V
+ .registers 2
+
+ .line 97
+ invoke-direct {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->updateTcpBufferSizes(I)V
+
+ return-void
+.end method
+
+.method static synthetic access$200(Lcom/android/internal/telephony/dataconnection/DataConnection;)Lcom/android/internal/telephony/dataconnection/DcController;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDcController:Lcom/android/internal/telephony/dataconnection/DcController;
+
+ return-object p0
+.end method
+
+.method static synthetic access$2000(Lcom/android/internal/telephony/dataconnection/DataConnection;)V
+ .registers 1
+
+ .line 97
+ invoke-direct {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->updateNetworkInfo()V
+
+ return-void
+.end method
+
+.method static synthetic access$202(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DcController;)Lcom/android/internal/telephony/dataconnection/DcController;
+ .registers 2
+
+ .line 97
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDcController:Lcom/android/internal/telephony/dataconnection/DcController;
+
+ return-object p1
+.end method
+
+.method static synthetic access$2100(Lcom/android/internal/telephony/dataconnection/DataConnection;)V
+ .registers 1
+
+ .line 97
+ invoke-direct {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->updateNetworkInfoSuspendState()V
+
+ return-void
+.end method
+
+.method static synthetic access$2200(Lcom/android/internal/telephony/dataconnection/DataConnection;)Landroid/net/NetworkInfo;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkInfo:Landroid/net/NetworkInfo;
+
+ return-object p0
+.end method
+
+.method static synthetic access$2400(Lcom/android/internal/telephony/dataconnection/DataConnection;)Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mConnectionParams:Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;
+
+ return-object p0
+.end method
+
+.method static synthetic access$2402(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;)Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;
+ .registers 2
+
+ .line 97
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mConnectionParams:Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;
+
+ return-object p1
+.end method
+
+.method static synthetic access$2500(Lcom/android/internal/telephony/dataconnection/DataConnection;)Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDisconnectParams:Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;
+
+ return-object p0
+.end method
+
+.method static synthetic access$2502(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;)Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;
+ .registers 2
+
+ .line 97
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDisconnectParams:Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;
+
+ return-object p1
+.end method
+
+.method static synthetic access$2600(Lcom/android/internal/telephony/dataconnection/DataConnection;)Lcom/android/internal/telephony/dataconnection/DcFailCause;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDcFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ return-object p0
+.end method
+
+.method static synthetic access$2602(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DcFailCause;)Lcom/android/internal/telephony/dataconnection/DcFailCause;
+ .registers 2
+
+ .line 97
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDcFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ return-object p1
+.end method
+
+.method static synthetic access$2700(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;Z)V
+ .registers 3
+
+ .line 97
+ invoke-direct {p0, p1, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection;->notifyDisconnectCompleted(Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;Z)V
+
+ return-void
+.end method
+
+.method static synthetic access$2800(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DcFailCause;)V
+ .registers 2
+
+ .line 97
+ invoke-direct {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->notifyAllDisconnectCompleted(Lcom/android/internal/telephony/dataconnection/DcFailCause;)V
+
+ return-void
+.end method
+
+.method static synthetic access$2900(Lcom/android/internal/telephony/dataconnection/DataConnection;)V
+ .registers 1
+
+ .line 97
+ invoke-direct {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->clearSettings()V
+
+ return-void
+.end method
+
+.method static synthetic access$300(Lcom/android/internal/telephony/dataconnection/DataConnection;)Lcom/android/internal/util/AsyncChannel;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mAc:Lcom/android/internal/util/AsyncChannel;
+
+ return-object p0
+.end method
+
+.method static synthetic access$3000(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;)Z
+ .registers 2
+
+ .line 97
+ invoke-direct {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->initConnection(Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;)Z
+
+ move-result p0
+
+ return p0
+.end method
+
+.method static synthetic access$302(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/util/AsyncChannel;)Lcom/android/internal/util/AsyncChannel;
+ .registers 2
+
+ .line 97
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mAc:Lcom/android/internal/util/AsyncChannel;
+
+ return-object p1
+.end method
+
+.method static synthetic access$3100(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;)V
+ .registers 2
+
+ .line 97
+ invoke-direct {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->onConnect(Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;)V
+
+ return-void
+.end method
+
+.method static synthetic access$3200(Lcom/android/internal/telephony/dataconnection/DataConnection;)Lcom/android/internal/telephony/dataconnection/DataConnection$DcActivatingState;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mActivatingState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcActivatingState;
+
+ return-object p0
+.end method
+
+.method static synthetic access$3400(Lcom/android/internal/telephony/dataconnection/DataConnection;ILandroid/telephony/data/DataCallResponse;Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;)Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+ .registers 4
+
+ .line 97
+ invoke-direct {p0, p1, p2, p3}, Lcom/android/internal/telephony/dataconnection/DataConnection;->onSetupConnectionCompleted(ILandroid/telephony/data/DataCallResponse;Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;)Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+
+ move-result-object p0
+
+ return-object p0
+.end method
+
+.method static synthetic access$3500(Lcom/android/internal/telephony/dataconnection/DataConnection;)Lcom/android/internal/telephony/dataconnection/DataConnection$DcActiveState;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mActiveState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcActiveState;
+
+ return-object p0
+.end method
+
+.method static synthetic access$3600(Lcom/android/internal/telephony/dataconnection/DataConnection;Ljava/lang/Object;)V
+ .registers 2
+
+ .line 97
+ invoke-direct {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->tearDownData(Ljava/lang/Object;)V
+
+ return-void
+.end method
+
+.method static synthetic access$3700(Lcom/android/internal/telephony/dataconnection/DataConnection;)Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectionErrorCreatingConnection;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDisconnectingErrorCreatingConnection:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectionErrorCreatingConnection;
+
+ return-object p0
+.end method
+
+.method static synthetic access$3800(Lcom/android/internal/telephony/dataconnection/DataConnection;Landroid/telephony/data/DataCallResponse;)J
+ .registers 2
+
+ .line 97
+ invoke-direct {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getSuggestedRetryDelay(Landroid/telephony/data/DataCallResponse;)J
+
+ move-result-wide p0
+
+ return-wide p0
+.end method
+
+.method static synthetic access$400(Lcom/android/internal/telephony/dataconnection/DataConnection;)Lcom/android/internal/telephony/dataconnection/DcTracker;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDct:Lcom/android/internal/telephony/dataconnection/DcTracker;
+
+ return-object p0
+.end method
+
+.method static synthetic access$4000(Lcom/android/internal/telephony/dataconnection/DataConnection;Ljava/lang/String;)V
+ .registers 2
+
+ .line 97
+ invoke-direct {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->notifyAllOfConnected(Ljava/lang/String;)V
+
+ return-void
+.end method
+
+.method static synthetic access$402(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DcTracker;)Lcom/android/internal/telephony/dataconnection/DcTracker;
+ .registers 2
+
+ .line 97
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDct:Lcom/android/internal/telephony/dataconnection/DcTracker;
+
+ return-object p1
+.end method
+
+.method static synthetic access$4100(Lcom/android/internal/telephony/dataconnection/DataConnection;)V
+ .registers 1
+
+ .line 97
+ invoke-direct {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->setNetworkRestriction()V
+
+ return-void
+.end method
+
+.method static synthetic access$4200(Lcom/android/internal/telephony/dataconnection/DataConnection;)Z
+ .registers 1
+
+ .line 97
+ iget-boolean p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mRestrictedNetworkOverride:Z
+
+ return p0
+.end method
+
+.method static synthetic access$4300(Lcom/android/internal/telephony/dataconnection/DataConnection;)Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectingState;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDisconnectingState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectingState;
+
+ return-object p0
+.end method
+
+.method static synthetic access$4800(Lcom/android/internal/telephony/dataconnection/DataConnection;)Landroid/util/LocalLog;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetCapsLocalLog:Landroid/util/LocalLog;
+
+ return-object p0
+.end method
+
+.method static synthetic access$500(Lcom/android/internal/telephony/dataconnection/DataConnection;)Lcom/android/internal/telephony/dataconnection/ApnSetting;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ return-object p0
+.end method
+
+.method static synthetic access$502(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/ApnSetting;)Lcom/android/internal/telephony/dataconnection/ApnSetting;
+ .registers 2
+
+ .line 97
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ return-object p1
+.end method
+
+.method static synthetic access$600(Lcom/android/internal/telephony/dataconnection/DataConnection;)Lcom/android/internal/telephony/dataconnection/DataServiceManager;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDataServiceManager:Lcom/android/internal/telephony/dataconnection/DataServiceManager;
+
+ return-object p0
+.end method
+
+.method static synthetic access$602(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DataServiceManager;)Lcom/android/internal/telephony/dataconnection/DataServiceManager;
+ .registers 2
+
+ .line 97
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDataServiceManager:Lcom/android/internal/telephony/dataconnection/DataServiceManager;
+
+ return-object p1
+.end method
+
+.method static synthetic access$700(Lcom/android/internal/telephony/dataconnection/DataConnection;)Landroid/net/LinkProperties;
+ .registers 1
+
+ .line 97
+ iget-object p0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLinkProperties:Landroid/net/LinkProperties;
+
+ return-object p0
+.end method
+
+.method static synthetic access$702(Lcom/android/internal/telephony/dataconnection/DataConnection;Landroid/net/LinkProperties;)Landroid/net/LinkProperties;
+ .registers 2
+
+ .line 97
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLinkProperties:Landroid/net/LinkProperties;
+
+ return-object p1
+.end method
+
+.method static synthetic access$802(Lcom/android/internal/telephony/dataconnection/DataConnection;Lcom/android/internal/telephony/dataconnection/DcFailCause;)Lcom/android/internal/telephony/dataconnection/DcFailCause;
+ .registers 2
+
+ .line 97
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLastFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ return-object p1
+.end method
+
+.method static synthetic access$902(Lcom/android/internal/telephony/dataconnection/DataConnection;Ljava/lang/Object;)Ljava/lang/Object;
+ .registers 2
+
+ .line 97
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mUserData:Ljava/lang/Object;
+
+ return-object p1
+.end method
+
+.method private checkSetMtu(Lcom/android/internal/telephony/dataconnection/ApnSetting;Landroid/net/LinkProperties;)V
+ .registers 4
+
+ .local v0, getMtu:Landroid/net/LinkProperties;
+
+ .line 438
+ if-nez p2,
+
+ return-void
+
+ .line 440
+
+ if-eqz p1,
+
+ if-nez p2,
+
+ goto
+
+ .line 442
+
+ invoke-virtual {p2}, Landroid/net/LinkProperties;->getMtu()I
+
+ move-result v0
+
+ if-eqz v0,
+
+ .restart local v0 # getMtu:Landroid/net/LinkProperties;
+
+ .line 443
+ new-instance p1, Ljava/lang/StringBuilder;
+
+ invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
+
+ .end local v0 # getMtu:Landroid/net/LinkProperties;
+
+ const-string v0, "MTU set by call response to: "
+
+ invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Landroid/net/LinkProperties;->getMtu()I
+
+ move-result p2
+
+ invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p1
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 444
+ return-void
+
+ .line 447
+
+ if-eqz p1,
+
+ iget v0, p1, Lcom/android/internal/telephony/dataconnection/ApnSetting;->mtu:I
+
+ if-eqz v0,
+
+ .line 448
+ iget v0, p1, Lcom/android/internal/telephony/dataconnection/ApnSetting;->mtu:I
+
+ invoke-virtual {p2, v0}, Landroid/net/LinkProperties;->setMtu(I)V
+
+ .line 449
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v0, "MTU set by APN to: "
+
+ invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget p1, p1, Lcom/android/internal/telephony/dataconnection/ApnSetting;->mtu:I
+
+ invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p1
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 450
+ return-void
+
+ .line 453
+
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ invoke-virtual {p1}, Lcom/android/internal/telephony/Phone;->getContext()Landroid/content/Context;
+
+ move-result-object p1
+
+ invoke-virtual {p1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
+
+ move-result-object p1
+
+ const v0, 0x10e0066
+
+ invoke-virtual {p1, v0}, Landroid/content/res/Resources;->getInteger(I)I
+
+ move-result p1
+
+ .line 455
+ if-eqz p1,
+
+ .line 456
+ invoke-virtual {p2, p1}, Landroid/net/LinkProperties;->setMtu(I)V
+
+ .line 457
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v0, "MTU set by config resource to: "
+
+ invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p1
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 459
+
+ return-void
+
+ .line 440
+
+
+ return-void
+.end method
+
+.method private clearSettings()V
+ .registers 3
+
+ .line 723
+ const-string v0, "clearSettings"
+
+ invoke-virtual {p0, v0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 725
+ const-wide/16 v0, -0x1
+
+ iput-wide v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mCreateTime:J
+
+ .line 726
+ iput-wide v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLastFailTime:J
+
+ .line 727
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DcFailCause;->NONE:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ iput-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLastFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ .line 728
+ const/4 v0, -0x1
+
+ iput v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mCid:I
+
+ .line 730
+ const/4 v0, 0x5
+
+ new-array v0, v0, [Ljava/lang/String;
+
+ iput-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPcscfAddr:[Ljava/lang/String;
+
+ .line 732
+ new-instance v0, Landroid/net/LinkProperties;
+
+ invoke-direct {v0}, Landroid/net/LinkProperties;-><init>()V
+
+ iput-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLinkProperties:Landroid/net/LinkProperties;
+
+ .line 733
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnContexts:Ljava/util/HashMap;
+
+ invoke-virtual {v0}, Ljava/util/HashMap;->clear()V
+
+ .line 734
+ const/4 v0, 0x0
+
+ iput-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ .line 735
+ iput-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDcFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ .line 736
+ return-void
+.end method
+
+.method static cmdToString(I)Ljava/lang/String;
+ .registers 4
+
+ .param p0, cmd
+
+ .prologue
+
+ .line 260
+ const/high16 v0, 0x40000
+
+ sub-int/2addr p0, v0
+
+ .line 261
+ if-ltz p0,
+
+ sget-object v1, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ array-length v1, v1
+
+ if-ge p0, v1,
+
+ .line 262
+ sget-object v1, Lcom/android/internal/telephony/dataconnection/DataConnection;->sCmdToString:[Ljava/lang/String;
+
+ aget-object v1, v1, p0
+
+ goto
+
+ .line 264
+
+ add-int v1, p0, v0
+
+ invoke-static {v1}, Lcom/android/internal/telephony/dataconnection/DcAsyncChannel;->cmdToString(I)Ljava/lang/String;
+
+ move-result-object v1
+
+ .line 266
+
+ if-nez v1,
+
+ .line 267
+ new-instance v1, Ljava/lang/StringBuilder;
+
+ invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v2, "0x"
+
+ invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ add-int/2addr p0, v0
+
+ invoke-static {p0}, Ljava/lang/Integer;->toHexString(I)Ljava/lang/String;
+
+ move-result-object p0
+
+ invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object v1
+
+ .line 269
+
+ return-object v1
+.end method
+
+.method private dumpToLog()V
+ .registers 4
+
+ .line 2489
+ new-instance v0, Lcom/android/internal/telephony/dataconnection/DataConnection$1;
+
+ new-instance v1, Ljava/io/StringWriter;
+
+ const/4 v2, 0x0
+
+ invoke-direct {v1, v2}, Ljava/io/StringWriter;-><init>(I)V
+
+ invoke-direct {v0, p0, v1}, Lcom/android/internal/telephony/dataconnection/DataConnection$1;-><init>(Lcom/android/internal/telephony/dataconnection/DataConnection;Ljava/io/Writer;)V
+
+ const/4 v1, 0x0
+
+ invoke-virtual {p0, v1, v0, v1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->dump(Ljava/io/FileDescriptor;Ljava/io/PrintWriter;[Ljava/lang/String;)V
+
+ .line 2499
+ return-void
+.end method
+
+.method private getSuggestedRetryDelay(Landroid/telephony/data/DataCallResponse;)J
+ .registers 4
+
+ .line 2331
+ invoke-virtual {p1}, Landroid/telephony/data/DataCallResponse;->getSuggestedRetryTime()I
+
+ move-result v0
+
+ if-gez v0,
+
+ .line 2332
+ const-string p1, "No suggested retry delay."
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 2333
+ const-wide/16 v0, -0x2
+
+ return-wide v0
+
+ .line 2336
+
+ invoke-virtual {p1}, Landroid/telephony/data/DataCallResponse;->getSuggestedRetryTime()I
+
+ move-result v0
+
+ const v1, 0x7fffffff
+
+ if-ne v0, v1,
+
+ .line 2337
+ const-string p1, "Modem suggested not retrying."
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 2338
+ const-wide/16 v0, -0x1
+
+ return-wide v0
+
+ .line 2343
+
+ invoke-virtual {p1}, Landroid/telephony/data/DataCallResponse;->getSuggestedRetryTime()I
+
+ move-result p1
+
+ int-to-long v0, p1
+
+ return-wide v0
+.end method
+
+.method private initConnection(Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;)Z
+ .registers 6
+
+ .line 1168
+ iget-object v0, p1, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mApnContext:Lcom/android/internal/telephony/dataconnection/ApnContext;
+
+ .line 1169
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ if-nez v1,
+
+ .line 1172
+ invoke-virtual {v0}, Lcom/android/internal/telephony/dataconnection/ApnContext;->getApnSetting()Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ move-result-object v1
+
+ iput-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ .line 1174
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ if-eqz v1,
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ invoke-virtual {v0}, Lcom/android/internal/telephony/dataconnection/ApnContext;->getApnType()Ljava/lang/String;
+
+ move-result-object v2
+
+ invoke-virtual {v1, v2}, Lcom/android/internal/telephony/dataconnection/ApnSetting;->canHandleType(Ljava/lang/String;)Z
+
+ move-result v1
+
+ if-nez v1,
+
+ goto
+
+ .line 1181
+
+ iget v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mTag:I
+
+ const/4 v2, 0x1
+
+ add-int/2addr v1, v2
+
+ iput v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mTag:I
+
+ .line 1182
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mConnectionParams:Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;
+
+ .line 1183
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mConnectionParams:Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;
+
+ iget v3, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mTag:I
+
+ iput v3, v1, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mTag:I
+
+ .line 1187
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnContexts:Ljava/util/HashMap;
+
+ invoke-virtual {v1, v0, p1}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
+
+ .line 1190
+ new-instance p1, Ljava/lang/StringBuilder;
+
+ invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v0, "initConnection: RefCount="
+
+ invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnContexts:Ljava/util/HashMap;
+
+ .line 1191
+ invoke-virtual {v0}, Ljava/util/HashMap;->size()I
+
+ move-result v0
+
+ invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ const-string v0, " mApnList="
+
+ invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnContexts:Ljava/util/HashMap;
+
+ invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ const-string v0, " mConnectionParams="
+
+ invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mConnectionParams:Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;
+
+ invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p1
+
+ .line 1190
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 1195
+ return v2
+
+ .line 1176
+
+
+ new-instance v0, Ljava/lang/StringBuilder;
+
+ invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "initConnection: incompatible apnSetting in ConnectionParams cp="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ const-string p1, " dc="
+
+ invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p1
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 1179
+ const/4 p1, 0x0
+
+ return p1
+.end method
+
+.method private isDnsOk([Ljava/lang/String;)Z
+ .registers 6
+
+ .line 780
+ const-string v0, "0.0.0.0"
+
+ const/4 v1, 0x0
+
+ aget-object v2, p1, v1
+
+ invoke-virtual {v0, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
+
+ move-result v0
+
+ const/4 v2, 0x1
+
+ if-eqz v0,
+
+ const-string v0, "0.0.0.0"
+
+ aget-object p1, p1, v2
+
+ invoke-virtual {v0, p1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
+
+ move-result p1
+
+ if-eqz p1,
+
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ .line 781
+ invoke-virtual {p1}, Lcom/android/internal/telephony/Phone;->isDnsCheckDisabled()Z
+
+ move-result p1
+
+ if-nez p1,
+
+ .line 787
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ iget-object p1, p1, Lcom/android/internal/telephony/dataconnection/ApnSetting;->types:[Ljava/lang/String;
+
+ aget-object p1, p1, v1
+
+ const-string v0, "mms"
+
+ invoke-virtual {p1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
+
+ move-result p1
+
+ if-eqz p1,
+
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ iget-object p1, p1, Lcom/android/internal/telephony/dataconnection/ApnSetting;->mmsProxy:Ljava/lang/String;
+
+ .line 788
+ invoke-static {p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->isIpAddress(Ljava/lang/String;)Z
+
+ move-result p1
+
+ if-nez p1,
+
+ .line 789
+
+ const-string p1, "isDnsOk: return false apn.types[0]=%s APN_TYPE_MMS=%s isIpAddress(%s)=%s"
+
+ const/4 v0, 0x4
+
+ new-array v0, v0, [Ljava/lang/Object;
+
+ iget-object v3, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ iget-object v3, v3, Lcom/android/internal/telephony/dataconnection/ApnSetting;->types:[Ljava/lang/String;
+
+ aget-object v3, v3, v1
+
+ aput-object v3, v0, v1
+
+ const-string v3, "mms"
+
+ aput-object v3, v0, v2
+
+ const/4 v2, 0x2
+
+ iget-object v3, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ iget-object v3, v3, Lcom/android/internal/telephony/dataconnection/ApnSetting;->mmsProxy:Ljava/lang/String;
+
+ aput-object v3, v0, v2
+
+ const/4 v2, 0x3
+
+ iget-object v3, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ iget-object v3, v3, Lcom/android/internal/telephony/dataconnection/ApnSetting;->mmsProxy:Ljava/lang/String;
+
+ .line 792
+ invoke-static {v3}, Lcom/android/internal/telephony/dataconnection/DataConnection;->isIpAddress(Ljava/lang/String;)Z
+
+ move-result v3
+
+ invoke-static {v3}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
+
+ move-result-object v3
+
+ aput-object v3, v0, v2
+
+ .line 789
+ invoke-static {p1, v0}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
+
+ move-result-object p1
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 793
+ return v1
+
+ .line 796
+
+ return v2
+.end method
+
+.method public static isIpAddress(Ljava/lang/String;)Z
+ .registers 1
+ .annotation build Lcom/android/internal/annotations/VisibleForTesting;
+ .end annotation
+
+ .line 1064
+ if-nez p0,
+
+ const/4 p0, 0x0
+
+ return p0
+
+ .line 1066
+
+ invoke-static {p0}, Ljava/net/InetAddress;->isNumeric(Ljava/lang/String;)Z
+
+ move-result p0
+
+ return p0
+.end method
+
+.method public static makeDataConnection(Lcom/android/internal/telephony/Phone;ILcom/android/internal/telephony/dataconnection/DcTracker;Lcom/android/internal/telephony/dataconnection/DataServiceManager;Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;Lcom/android/internal/telephony/dataconnection/DcController;)Lcom/android/internal/telephony/dataconnection/DataConnection;
+ .registers 15
+
+ .line 283
+ new-instance v8, Lcom/android/internal/telephony/dataconnection/DataConnection;
+
+ new-instance v0, Ljava/lang/StringBuilder;
+
+ invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "DC-"
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ sget-object v1, Lcom/android/internal/telephony/dataconnection/DataConnection;->mInstanceNumber:Ljava/util/concurrent/atomic/AtomicInteger;
+
+ .line 284
+ invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicInteger;->incrementAndGet()I
+
+ move-result v1
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object v2
+
+ move-object v0, v8
+
+ move-object v1, p0
+
+ move v3, p1
+
+ move-object v4, p2
+
+ move-object v5, p3
+
+ move-object v6, p4
+
+ move-object v7, p5
+
+ invoke-direct/range {v0 .. v7}, Lcom/android/internal/telephony/dataconnection/DataConnection;-><init>(Lcom/android/internal/telephony/Phone;Ljava/lang/String;ILcom/android/internal/telephony/dataconnection/DcTracker;Lcom/android/internal/telephony/dataconnection/DataServiceManager;Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;Lcom/android/internal/telephony/dataconnection/DcController;)V
+
+ .line 286
+ invoke-virtual {v8}, Lcom/android/internal/telephony/dataconnection/DataConnection;->start()V
+
+ .line 287
+ new-instance p0, Ljava/lang/StringBuilder;
+
+ invoke-direct {p0}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string p1, "Made "
+
+ invoke-virtual {p0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v8}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getName()Ljava/lang/String;
+
+ move-result-object p1
+
+ invoke-virtual {p0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p0
+
+ invoke-virtual {v8, p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 288
+ return-object v8
+.end method
+
+.method private static msgToString(Landroid/os/Message;)Ljava/lang/String;
+ .registers 6
+
+ .line 2356
+ if-nez p0,
+
+ .line 2357
+ const-string p0, "null"
+
+ goto
+
+ .line 2359
+
+ new-instance v0, Ljava/lang/StringBuilder;
+
+ invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
+
+ .line 2361
+ const-string v1, "{what="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ .line 2362
+ iget v1, p0, Landroid/os/Message;->what:I
+
+ invoke-static {v1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->cmdToString(I)Ljava/lang/String;
+
+ move-result-object v1
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ .line 2364
+ const-string v1, " when="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ .line 2365
+ invoke-virtual {p0}, Landroid/os/Message;->getWhen()J
+
+ move-result-wide v1
+
+ invoke-static {}, Landroid/os/SystemClock;->uptimeMillis()J
+
+ move-result-wide v3
+
+ sub-long/2addr v1, v3
+
+ invoke-static {v1, v2, v0}, Landroid/util/TimeUtils;->formatDuration(JLjava/lang/StringBuilder;)V
+
+ .line 2367
+ iget v1, p0, Landroid/os/Message;->arg1:I
+
+ if-eqz v1,
+
+ .line 2368
+ const-string v1, " arg1="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ .line 2369
+ iget v1, p0, Landroid/os/Message;->arg1:I
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ .line 2372
+
+ iget v1, p0, Landroid/os/Message;->arg2:I
+
+ if-eqz v1,
+
+ .line 2373
+ const-string v1, " arg2="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ .line 2374
+ iget v1, p0, Landroid/os/Message;->arg2:I
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ .line 2377
+
+ iget-object v1, p0, Landroid/os/Message;->obj:Ljava/lang/Object;
+
+ if-eqz v1,
+
+ .line 2378
+ const-string v1, " obj="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ .line 2379
+ iget-object v1, p0, Landroid/os/Message;->obj:Ljava/lang/Object;
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ .line 2382
+
+ const-string v1, " target="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ .line 2383
+ invoke-virtual {p0}, Landroid/os/Message;->getTarget()Landroid/os/Handler;
+
+ move-result-object v1
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ .line 2385
+ const-string v1, " replyTo="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ .line 2386
+ iget-object p0, p0, Landroid/os/Message;->replyTo:Landroid/os/Messenger;
+
+ invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ .line 2388
+ const-string p0, "}"
+
+ invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ .line 2390
+ invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p0
+
+ .line 2392
+
+ return-object p0
+.end method
+
+.method private notifyAllDisconnectCompleted(Lcom/android/internal/telephony/dataconnection/DcFailCause;)V
+ .registers 4
+
+ .line 610
+ invoke-virtual {p1}, Lcom/android/internal/telephony/dataconnection/DcFailCause;->toString()Ljava/lang/String;
+
+ move-result-object p1
+
+ const/4 v0, 0x0
+
+ const v1, 0x4200f
+
+ invoke-direct {p0, v0, v1, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->notifyAllWithEvent(Lcom/android/internal/telephony/dataconnection/ApnContext;ILjava/lang/String;)V
+
+ .line 611
+ return-void
+.end method
+
+.method private notifyAllOfConnected(Ljava/lang/String;)V
+ .registers 4
+
+ .line 603
+ const/4 v0, 0x0
+
+ const v1, 0x42000
+
+ invoke-direct {p0, v0, v1, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->notifyAllWithEvent(Lcom/android/internal/telephony/dataconnection/ApnContext;ILjava/lang/String;)V
+
+ .line 604
+ return-void
+.end method
+
+.method private notifyAllOfDisconnectDcRetrying(Ljava/lang/String;)V
+ .registers 4
+
+ .line 607
+ const/4 v0, 0x0
+
+ const v1, 0x42022
+
+ invoke-direct {p0, v0, v1, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->notifyAllWithEvent(Lcom/android/internal/telephony/dataconnection/ApnContext;ILjava/lang/String;)V
+
+ .line 608
+ return-void
+.end method
+
+.method private notifyAllWithEvent(Lcom/android/internal/telephony/dataconnection/ApnContext;ILjava/lang/String;)V
+ .registers 8
+
+ .line 588
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkInfo:Landroid/net/NetworkInfo;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkInfo:Landroid/net/NetworkInfo;
+
+ invoke-virtual {v1}, Landroid/net/NetworkInfo;->getDetailedState()Landroid/net/NetworkInfo$DetailedState;
+
+ move-result-object v1
+
+ iget-object v2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkInfo:Landroid/net/NetworkInfo;
+
+ .line 589
+ invoke-virtual {v2}, Landroid/net/NetworkInfo;->getExtraInfo()Ljava/lang/String;
+
+ move-result-object v2
+
+ .line 588
+ invoke-virtual {v0, v1, p3, v2}, Landroid/net/NetworkInfo;->setDetailedState(Landroid/net/NetworkInfo$DetailedState;Ljava/lang/String;Ljava/lang/String;)V
+
+ .line 590
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnContexts:Ljava/util/HashMap;
+
+ invoke-virtual {v0}, Ljava/util/HashMap;->values()Ljava/util/Collection;
+
+ move-result-object v0
+
+ invoke-interface {v0}, Ljava/util/Collection;->iterator()Ljava/util/Iterator;
+
+ move-result-object v0
+
+
+ invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
+
+ move-result v1
+
+ if-eqz v1,
+
+ invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
+
+ move-result-object v1
+
+ check-cast v1, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;
+
+ .line 591
+ iget-object v2, v1, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mApnContext:Lcom/android/internal/telephony/dataconnection/ApnContext;
+
+ .line 592
+ if-ne v2, p1,
+
+ goto
+
+ .line 593
+
+ if-eqz p3,
+
+ invoke-virtual {v2, p3}, Lcom/android/internal/telephony/dataconnection/ApnContext;->setReason(Ljava/lang/String;)V
+
+ .line 594
+
+ new-instance v3, Landroid/util/Pair;
+
+ iget v1, v1, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mConnectionGeneration:I
+
+ .line 595
+ invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
+
+ move-result-object v1
+
+ invoke-direct {v3, v2, v1}, Landroid/util/Pair;-><init>(Ljava/lang/Object;Ljava/lang/Object;)V
+
+ .line 596
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDct:Lcom/android/internal/telephony/dataconnection/DcTracker;
+
+ invoke-virtual {v1, p2, v3}, Lcom/android/internal/telephony/dataconnection/DcTracker;->obtainMessage(ILjava/lang/Object;)Landroid/os/Message;
+
+ move-result-object v1
+
+ .line 597
+ invoke-static {v1}, Landroid/os/AsyncResult;->forMessage(Landroid/os/Message;)Landroid/os/AsyncResult;
+
+ .line 598
+ invoke-virtual {v1}, Landroid/os/Message;->sendToTarget()V
+
+ .line 599
+ goto
+
+ .line 600
+
+ return-void
+.end method
+
+.method private notifyConnectCompleted(Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;Lcom/android/internal/telephony/dataconnection/DcFailCause;Z)V
+ .registers 9
+
+ .line 622
+ nop
+
+ .line 624
+ const/4 v0, 0x0
+
+ if-eqz p1,
+
+ iget-object v1, p1, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mOnCompletedMsg:Landroid/os/Message;
+
+ if-eqz v1,
+
+ .line 626
+ iget-object v1, p1, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mOnCompletedMsg:Landroid/os/Message;
+
+ .line 627
+ iput-object v0, p1, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mOnCompletedMsg:Landroid/os/Message;
+
+ .line 628
+ iget-object v0, p1, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mApnContext:Lcom/android/internal/telephony/dataconnection/ApnContext;
+
+ .line 630
+ invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
+
+ move-result-wide v2
+
+ .line 631
+ iget p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mCid:I
+
+ iput p1, v1, Landroid/os/Message;->arg1:I
+
+ .line 633
+ sget-object p1, Lcom/android/internal/telephony/dataconnection/DcFailCause;->NONE:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ if-ne p2, p1,
+
+ .line 634
+ iput-wide v2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mCreateTime:J
+
+ .line 635
+ invoke-static {v1}, Landroid/os/AsyncResult;->forMessage(Landroid/os/Message;)Landroid/os/AsyncResult;
+
+ goto
+
+ .line 637
+
+ iput-object p2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLastFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ .line 638
+ iput-wide v2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLastFailTime:J
+
+ .line 641
+ if-nez p2,
+
+ sget-object p2, Lcom/android/internal/telephony/dataconnection/DcFailCause;->UNKNOWN:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ .line 642
+
+ new-instance p1, Ljava/lang/Throwable;
+
+ .line 643
+ invoke-virtual {p2}, Lcom/android/internal/telephony/dataconnection/DcFailCause;->toString()Ljava/lang/String;
+
+ move-result-object v4
+
+ invoke-direct {p1, v4}, Ljava/lang/Throwable;-><init>(Ljava/lang/String;)V
+
+ .line 642
+ invoke-static {v1, p2, p1}, Landroid/os/AsyncResult;->forMessage(Landroid/os/Message;Ljava/lang/Object;Ljava/lang/Throwable;)Landroid/os/AsyncResult;
+
+ .line 646
+
+ new-instance p1, Ljava/lang/StringBuilder;
+
+ invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v4, "notifyConnectCompleted at "
+
+ invoke-virtual {p1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p1, v2, v3}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
+
+ const-string v2, " cause="
+
+ invoke-virtual {p1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ const-string v2, " connectionCompletedMsg="
+
+ invoke-virtual {p1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ .line 647
+ invoke-static {v1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->msgToString(Landroid/os/Message;)Ljava/lang/String;
+
+ move-result-object v2
+
+ invoke-virtual {p1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p1
+
+ .line 646
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 650
+ invoke-virtual {v1}, Landroid/os/Message;->sendToTarget()V
+
+ .line 652
+
+ if-eqz p3,
+
+ .line 653
+ new-instance p1, Ljava/lang/StringBuilder;
+
+ invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string p3, "Send to all. "
+
+ invoke-virtual {p1, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ const-string p3, " "
+
+ invoke-virtual {p1, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Lcom/android/internal/telephony/dataconnection/DcFailCause;->toString()Ljava/lang/String;
+
+ move-result-object p3
+
+ invoke-virtual {p1, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p1
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 654
+ const p1, 0x42023
+
+ .line 655
+ invoke-virtual {p2}, Lcom/android/internal/telephony/dataconnection/DcFailCause;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ .line 654
+ invoke-direct {p0, v0, p1, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection;->notifyAllWithEvent(Lcom/android/internal/telephony/dataconnection/ApnContext;ILjava/lang/String;)V
+
+ .line 657
+
+ return-void
+.end method
+
+.method private notifyDisconnectCompleted(Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;Z)V
+ .registers 10
+
+ .line 665
+ const-string v0, "NotifyDisconnectCompleted"
+
+ invoke-virtual {p0, v0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 667
+ nop
+
+ .line 668
+ nop
+
+ .line 670
+ const/4 v0, 0x0
+
+ if-eqz p1,
+
+ iget-object v1, p1, Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;->mOnCompletedMsg:Landroid/os/Message;
+
+ if-eqz v1,
+
+ .line 672
+ iget-object v1, p1, Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;->mOnCompletedMsg:Landroid/os/Message;
+
+ .line 673
+ iput-object v0, p1, Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;->mOnCompletedMsg:Landroid/os/Message;
+
+ .line 674
+ iget-object v2, v1, Landroid/os/Message;->obj:Ljava/lang/Object;
+
+ instance-of v2, v2, Lcom/android/internal/telephony/dataconnection/ApnContext;
+
+ if-eqz v2,
+
+ .line 675
+ iget-object v0, v1, Landroid/os/Message;->obj:Ljava/lang/Object;
+
+ check-cast v0, Lcom/android/internal/telephony/dataconnection/ApnContext;
+
+ .line 677
+
+ iget-object v2, p1, Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;->mReason:Ljava/lang/String;
+
+ .line 679
+ const-string v3, "msg=%s msg.obj=%s"
+
+ const/4 v4, 0x2
+
+ new-array v4, v4, [Ljava/lang/Object;
+
+ const/4 v5, 0x0
+
+ invoke-virtual {v1}, Landroid/os/Message;->toString()Ljava/lang/String;
+
+ move-result-object v6
+
+ aput-object v6, v4, v5
+
+ const/4 v5, 0x1
+
+ .line 680
+ iget-object v6, v1, Landroid/os/Message;->obj:Ljava/lang/Object;
+
+ instance-of v6, v6, Ljava/lang/String;
+
+ if-eqz v6,
+
+ iget-object v6, v1, Landroid/os/Message;->obj:Ljava/lang/Object;
+
+ check-cast v6, Ljava/lang/String;
+
+ goto
+
+
+ const-string v6, ""
+
+
+ aput-object v6, v4, v5
+
+ .line 679
+ invoke-static {v3, v4}, Ljava/lang/String;->format([Ljava/lang/String;[[Ljava/lang/Object;)Ljava/lang/String;
+
+ move-result-object v3
+
+ invoke-virtual {p0, v3}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(I[[D[Ljava/lang/String;)V
+
+ .line 682
+ invoke-static {v1}, Landroid/os/AsyncResult;->forMessage(Landroid/os/Message;)Landroid/os/AsyncResult;
+
+ .line 683
+ invoke-virtual {v1}, Landroid/os/Message;->sendToTarget()V
+
+ .line 685
+ move-object v1, v0
+
+ move-object v0, v2
+
+ goto
+
+
+ move-object v1, v0
+
+
+ if-eqz p2,
+
+ .line 686
+ if-nez v0,
+
+ .line 687
+ sget-object p2, Lcom/android/internal/telephony/dataconnection/DcFailCause;->UNKNOWN:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ invoke-virtual {p2}, Lcom/android/internal/telephony/dataconnection/DcFailCause;->toString()Ljava/lang/String;
+
+ move-result-object v0
+
+ .line 689
+
+ const p2, 0x4200f
+
+ invoke-direct {p0, v1, p2, v0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->notifyAllWithEvent(Lcom/android/internal/telephony/dataconnection/ApnContext;ILjava/lang/String;)V
+
+ .line 691
+
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v0, "NotifyDisconnectCompleted DisconnectParams="
+
+ invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p1
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 692
+ return-void
+.end method
+
+.method private onConnect(Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;)V
+ .registers 21
+
+ move-object/from16 v0, p0
+
+ .line 506
+ move-object/from16 v1, p1
+
+ new-instance v2, Ljava/lang/StringBuilder;
+
+ invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v3, "onConnect: carrier=\'"
+
+ invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v3, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ iget-object v3, v3, Lcom/android/internal/telephony/dataconnection/ApnSetting;->carrier:Ljava/lang/String;
+
+ invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ const-string v3, "\' APN=\'"
+
+ invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v3, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ iget-object v3, v3, Lcom/android/internal/telephony/dataconnection/ApnSetting;->apn:Ljava/lang/String;
+
+ invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ const-string v3, "\' proxy=\'"
+
+ invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v3, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ iget-object v3, v3, Lcom/android/internal/telephony/dataconnection/ApnSetting;->proxy:Ljava/lang/String;
+
+ invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ const-string v3, "\' port=\'"
+
+ invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v3, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ iget-object v3, v3, Lcom/android/internal/telephony/dataconnection/ApnSetting;->port:Ljava/lang/String;
+
+ invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ const-string v3, "\'"
+
+ invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object v2
+
+ invoke-virtual {v0, v2}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 509
+ iget-object v2, v1, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mApnContext:Lcom/android/internal/telephony/dataconnection/ApnContext;
+
+ if-eqz v2,
+
+ iget-object v2, v1, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mApnContext:Lcom/android/internal/telephony/dataconnection/ApnContext;
+
+ const-string v3, "DataConnection.onConnect"
+
+ invoke-virtual {v2, v3}, Lcom/android/internal/telephony/dataconnection/ApnContext;->requestLog(Ljava/lang/String;)V
+
+ .line 512
+
+ iget-object v2, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDcTesterFailBringUpAll:Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;
+
+ invoke-virtual {v2}, Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;->getDcFailBringUp()Lcom/android/internal/telephony/dataconnection/DcFailBringUp;
+
+ move-result-object v2
+
+ iget v2, v2, Lcom/android/internal/telephony/dataconnection/DcFailBringUp;->mCounter:I
+
+ const/4 v3, 0x1
+
+ const v4, 0x40001
+
+ if-lez v2,
+
+ .line 513
+ new-instance v2, Landroid/telephony/data/DataCallResponse;
+
+ iget-object v5, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDcTesterFailBringUpAll:Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;
+
+ .line 514
+ invoke-virtual {v5}, Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;->getDcFailBringUp()Lcom/android/internal/telephony/dataconnection/DcFailBringUp;
+
+ move-result-object v5
+
+ iget-object v5, v5, Lcom/android/internal/telephony/dataconnection/DcFailBringUp;->mFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ invoke-virtual {v5}, Lcom/android/internal/telephony/dataconnection/DcFailCause;->getErrorCode()I
+
+ move-result v6
+
+ iget-object v5, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDcTesterFailBringUpAll:Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;
+
+ .line 515
+ invoke-virtual {v5}, Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;->getDcFailBringUp()Lcom/android/internal/telephony/dataconnection/DcFailBringUp;
+
+ move-result-object v5
+
+ iget v7, v5, Lcom/android/internal/telephony/dataconnection/DcFailBringUp;->mSuggestedRetryTime:I
+
+ const/4 v8, 0x0
+
+ const/4 v9, 0x0
+
+ const-string v10, ""
+
+ const-string v11, ""
+
+ const/4 v12, 0x0
+
+ const/4 v13, 0x0
+
+ const/4 v14, 0x0
+
+ const/4 v15, 0x0
+
+ const/16 v16, 0x0
+
+ move-object v5, v2
+
+ invoke-direct/range {v5 .. v16}, Landroid/telephony/data/DataCallResponse;-><init>(IIIILjava/lang/String;Ljava/lang/String;Ljava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/List;I)V
+
+ .line 518
+ invoke-virtual {v0, v4, v1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->obtainMessage(ILjava/lang/Object;)Landroid/os/Message;
+
+ move-result-object v1
+
+ .line 519
+ const/4 v4, 0x0
+
+ invoke-static {v1, v2, v4}, Landroid/os/AsyncResult;->forMessage(Landroid/os/Message;Ljava/lang/Object;Ljava/lang/Throwable;)Landroid/os/AsyncResult;
+
+ .line 520
+ invoke-virtual {v0, v1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->sendMessage(Landroid/os/Message;)V
+
+ .line 522
+ new-instance v1, Ljava/lang/StringBuilder;
+
+ invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v4, "onConnect: FailBringUpAll="
+
+ invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v4, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDcTesterFailBringUpAll:Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;
+
+ invoke-virtual {v4}, Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;->getDcFailBringUp()Lcom/android/internal/telephony/dataconnection/DcFailBringUp;
+
+ move-result-object v4
+
+ invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ const-string v4, " send error response="
+
+ invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object v1
+
+ invoke-virtual {v0, v1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 525
+ iget-object v0, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDcTesterFailBringUpAll:Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;
+
+ invoke-virtual {v0}, Lcom/android/internal/telephony/dataconnection/DcTesterFailBringUpAll;->getDcFailBringUp()Lcom/android/internal/telephony/dataconnection/DcFailBringUp;
+
+ move-result-object v0
+
+ iget v1, v0, Lcom/android/internal/telephony/dataconnection/DcFailBringUp;->mCounter:I
+
+ sub-int/2addr v1, v3
+
+ iput v1, v0, Lcom/android/internal/telephony/dataconnection/DcFailBringUp;->mCounter:I
+
+ .line 526
+ return-void
+
+ .line 529
+
+ const-wide/16 v5, -0x1
+
+ iput-wide v5, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mCreateTime:J
+
+ .line 530
+ iput-wide v5, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLastFailTime:J
+
+ .line 531
+ sget-object v2, Lcom/android/internal/telephony/dataconnection/DcFailCause;->NONE:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ iput-object v2, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLastFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ .line 533
+ invoke-virtual {v0, v4, v1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->obtainMessage(ILjava/lang/Object;)Landroid/os/Message;
+
+ move-result-object v12
+
+ .line 534
+ iput-object v1, v12, Landroid/os/Message;->obj:Ljava/lang/Object;
+
+ .line 536
+ iget-object v2, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ iget v4, v1, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mProfileId:I
+
+ invoke-static {v2, v4}, Lcom/android/internal/telephony/dataconnection/DcTracker;->createDataProfile(Lcom/android/internal/telephony/dataconnection/ApnSetting;I)Landroid/telephony/data/DataProfile;
+
+ move-result-object v2
+
+ .line 541
+ iget-object v4, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ invoke-virtual {v4}, Lcom/android/internal/telephony/Phone;->getServiceState()Landroid/telephony/ServiceState;
+
+ move-result-object v4
+
+ invoke-virtual {v4}, Landroid/telephony/ServiceState;->getDataRoamingFromRegistration()Z
+
+ move-result v8
+
+ .line 546
+ iget-object v4, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ invoke-virtual {v4}, Lcom/android/internal/telephony/Phone;->getDataRoamingEnabled()Z
+
+ move-result v4
+
+ if-nez v4,
+
+ if-eqz v8,
+
+ iget-object v4, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ .line 547
+ invoke-virtual {v4}, Lcom/android/internal/telephony/Phone;->getServiceState()Landroid/telephony/ServiceState;
+
+ move-result-object v4
+
+ invoke-virtual {v4}, Landroid/telephony/ServiceState;->getDataRoaming()Z
+
+ move-result v4
+
+ if-nez v4,
+
+ goto
+
+
+ const/4 v3, 0x0
+
+ nop
+
+ .line 549
+
+
+ move v9, v3
+
+ iget-object v5, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDataServiceManager:Lcom/android/internal/telephony/dataconnection/DataServiceManager;
+
+ iget v3, v1, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mRilRat:I
+
+ .line 550
+ invoke-static {v3}, Landroid/telephony/ServiceState;->rilRadioTechnologyToAccessNetworkType(I)I
+
+ move-result v6
+
+ const/4 v10, 0x1
+
+ const/4 v11, 0x0
+
+ .line 549
+ move-object v7, v2
+
+ invoke-virtual/range {v5 .. v12}, Lcom/android/internal/telephony/dataconnection/DataServiceManager;->setupDataCall(ILandroid/telephony/data/DataProfile;ZZILandroid/net/LinkProperties;Landroid/os/Message;)V
+
+ .line 552
+ invoke-static {}, Lcom/android/internal/telephony/metrics/TelephonyMetrics;->getInstance()Lcom/android/internal/telephony/metrics/TelephonyMetrics;
+
+ move-result-object v13
+
+ iget-object v0, v0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ invoke-virtual {v0}, Lcom/android/internal/telephony/Phone;->getPhoneId()I
+
+ move-result v14
+
+ iget v15, v1, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mRilRat:I
+
+ .line 553
+ invoke-virtual {v2}, Landroid/telephony/data/DataProfile;->getProfileId()I
+
+ move-result v16
+
+ invoke-virtual {v2}, Landroid/telephony/data/DataProfile;->getApn()Ljava/lang/String;
+
+ move-result-object v17
+
+ invoke-virtual {v2}, Landroid/telephony/data/DataProfile;->getProtocol()Ljava/lang/String;
+
+ move-result-object v18
+
+ .line 552
+ invoke-virtual/range {v13 .. v18}, Lcom/android/internal/telephony/metrics/TelephonyMetrics;->writeSetupDataCall(IIILjava/lang/String;Ljava/lang/String;)V
+
+ .line 554
+ return-void
+.end method
+
+.method private onSetupConnectionCompleted(ILandroid/telephony/data/DataCallResponse;Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;)Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+ .registers 6
+
+ .line 751
+ iget v0, p3, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mTag:I
+
+ iget v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mTag:I
+
+ if-eq v0, v1,
+
+ .line 753
+ new-instance p1, Ljava/lang/StringBuilder;
+
+ invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string p2, "onSetupConnectionCompleted stale cp.tag="
+
+ invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget p2, p3, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mTag:I
+
+ invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ const-string p2, ", mtag="
+
+ invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget p2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mTag:I
+
+ invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p1
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 755
+ sget-object p1, Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;->ERROR_STALE:Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+
+ goto
+
+ .line 756
+
+ const/4 p3, 0x4
+
+ if-ne p1, p3,
+
+ .line 757
+ sget-object p1, Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;->ERROR_RADIO_NOT_AVAILABLE:Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+
+ .line 758
+ sget-object p2, Lcom/android/internal/telephony/dataconnection/DcFailCause;->RADIO_NOT_AVAILABLE:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ iput-object p2, p1, Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;->mFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ goto
+
+ .line 759
+
+ invoke-virtual {p2}, Landroid/telephony/data/DataCallResponse;->getStatus()I
+
+ move-result p1
+
+ if-eqz p1,
+
+ .line 760
+ invoke-virtual {p2}, Landroid/telephony/data/DataCallResponse;->getStatus()I
+
+ move-result p1
+
+ sget-object p3, Lcom/android/internal/telephony/dataconnection/DcFailCause;->RADIO_NOT_AVAILABLE:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ invoke-virtual {p3}, Lcom/android/internal/telephony/dataconnection/DcFailCause;->getErrorCode()I
+
+ move-result p3
+
+ if-ne p1, p3,
+
+ .line 761
+ sget-object p1, Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;->ERROR_RADIO_NOT_AVAILABLE:Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+
+ .line 762
+ sget-object p2, Lcom/android/internal/telephony/dataconnection/DcFailCause;->RADIO_NOT_AVAILABLE:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ iput-object p2, p1, Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;->mFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ goto
+
+ .line 764
+
+ sget-object p1, Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;->ERROR_DATA_SERVICE_SPECIFIC_ERROR:Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+
+ .line 765
+ invoke-virtual {p2}, Landroid/telephony/data/DataCallResponse;->getStatus()I
+
+ move-result p2
+
+ invoke-static {p2}, Lcom/android/internal/telephony/dataconnection/DcFailCause;->fromInt(I)Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ move-result-object p2
+
+ iput-object p2, p1, Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;->mFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ goto
+
+ .line 768
+
+ const-string p1, "onSetupConnectionCompleted received successful DataCallResponse"
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 769
+ invoke-virtual {p2}, Landroid/telephony/data/DataCallResponse;->getCallId()I
+
+ move-result p1
+
+ iput p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mCid:I
+
+ .line 771
+ invoke-virtual {p2}, Landroid/telephony/data/DataCallResponse;->getPcscfs()Ljava/util/List;
+
+ move-result-object p1
+
+ invoke-virtual {p2}, Landroid/telephony/data/DataCallResponse;->getPcscfs()Ljava/util/List;
+
+ move-result-object p3
+
+ invoke-interface {p3}, Ljava/util/List;->size()I
+
+ move-result p3
+
+ new-array p3, p3, [Ljava/lang/String;
+
+ invoke-interface {p1, p3}, Ljava/util/List;->toArray([Ljava/lang/Object;)[Ljava/lang/Object;
+
+ move-result-object p1
+
+ check-cast p1, [Ljava/lang/String;
+
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPcscfAddr:[Ljava/lang/String;
+
+ .line 773
+ invoke-virtual {p0, p2}, Lcom/android/internal/telephony/dataconnection/DataConnection;->updateLinkProperty(Landroid/telephony/data/DataCallResponse;)Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;
+
+ move-result-object p1
+
+ iget-object p1, p1, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->setupResult:Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+
+ .line 776
+
+ return-object p1
+.end method
+
+.method private setLinkProperties(Landroid/telephony/data/DataCallResponse;Landroid/net/LinkProperties;)Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+ .registers 10
+
+ .line 1072
+ new-instance v0, Ljava/lang/StringBuilder;
+
+ invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "net."
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p1}, Landroid/telephony/data/DataCallResponse;->getIfname()Ljava/lang/String;
+
+ move-result-object v1
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ const-string v1, "."
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object v0
+
+ .line 1073
+ const/4 v1, 0x2
+
+ new-array v1, v1, [Ljava/lang/String;
+
+ .line 1074
+ new-instance v2, Ljava/lang/StringBuilder;
+
+ invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
+
+ invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ const-string v3, "dns1"
+
+ invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object v2
+
+ invoke-static {v2}, Landroid/os/SystemProperties;->get(Ljava/lang/String;)Ljava/lang/String;
+
+ move-result-object v2
+
+ const/4 v3, 0x0
+
+ aput-object v2, v1, v3
+
+ .line 1075
+ new-instance v2, Ljava/lang/StringBuilder;
+
+ invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
+
+ invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ const-string v0, "dns2"
+
+ invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object v0
+
+ invoke-static {v0}, Landroid/os/SystemProperties;->get(Ljava/lang/String;)Ljava/lang/String;
+
+ move-result-object v0
+
+ const/4 v2, 0x1
+
+ aput-object v0, v1, v2
+
+ .line 1076
+ invoke-direct {p0, v1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->isDnsOk([Ljava/lang/String;)Z
+
+ move-result v0
+
+ .line 1082
+ invoke-virtual {p2}, Landroid/net/LinkProperties;->clear()V
+
+ .line 1084
+ invoke-virtual {p1}, Landroid/telephony/data/DataCallResponse;->getStatus()I
+
+ move-result v2
+
+ sget-object v4, Lcom/android/internal/telephony/dataconnection/DcFailCause;->NONE:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ invoke-virtual {v4}, Lcom/android/internal/telephony/dataconnection/DcFailCause;->getErrorCode()I
+
+ move-result v4
+
+ if-ne v2, v4,
+
+ .line 1087
+
+ invoke-virtual {p1}, Landroid/telephony/data/DataCallResponse;->getIfname()Ljava/lang/String;
+
+ move-result-object v2
+
+ invoke-virtual {p2, v2}, Landroid/net/LinkProperties;->setInterfaceName(Ljava/lang/String;)V
+
+ .line 1090
+ invoke-virtual {p1}, Landroid/telephony/data/DataCallResponse;->getAddresses()Ljava/util/List;
+
+ move-result-object v2
+
+ invoke-interface {v2}, Ljava/util/List;->size()I
+
+ move-result v2
+
+ if-lez v2,
+
+ .line 1091
+ invoke-virtual {p1}, Landroid/telephony/data/DataCallResponse;->getAddresses()Ljava/util/List;
+
+ move-result-object v2
+
+ invoke-interface {v2}, Ljava/util/List;->iterator()Ljava/util/Iterator;
+
+ move-result-object v2
+
+
+ invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z
+
+ move-result v4
+
+ if-eqz v4,
+
+ invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object;
+
+ move-result-object v4
+
+ check-cast v4, Landroid/net/LinkAddress;
+
+ .line 1092
+ invoke-virtual {v4}, Landroid/net/LinkAddress;->getAddress()Ljava/net/InetAddress;
+
+ move-result-object v5
+
+ invoke-virtual {v5}, Ljava/net/InetAddress;->isAnyLocalAddress()Z
+
+ move-result v5
+
+ if-nez v5,
+
+ .line 1094
+ new-instance v5, Ljava/lang/StringBuilder;
+
+ invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v6, "addr/pl="
+
+ invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v4}, Landroid/net/LinkAddress;->getAddress()Ljava/net/InetAddress;
+
+ move-result-object v6
+
+ invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ const-string v6, "/"
+
+ invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ .line 1095
+ invoke-virtual {v4}, Landroid/net/LinkAddress;->getNetworkPrefixLength()I
+
+ move-result v6
+
+ invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object v5
+
+ .line 1094
+ invoke-virtual {p0, v5}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 1097
+ invoke-virtual {p2, v4}, Landroid/net/LinkProperties;->addLinkAddress(Landroid/net/LinkAddress;)Z
+
+ .line 1099
+
+ goto
+
+ .line 1105
+
+ invoke-virtual {p1}, Landroid/telephony/data/DataCallResponse;->getDnses()Ljava/util/List;
+
+ move-result-object v2
+
+ invoke-interface {v2}, Ljava/util/List;->size()I
+
+ move-result v2
+
+ if-lez v2,
+
+ .line 1106
+ invoke-virtual {p1}, Landroid/telephony/data/DataCallResponse;->getDnses()Ljava/util/List;
+
+ move-result-object v0
+
+ invoke-interface {v0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
+
+ move-result-object v0
+
+
+ invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
+
+ move-result v1
+
+ if-eqz v1,
+
+ invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
+
+ move-result-object v1
+
+ check-cast v1, Ljava/net/InetAddress;
+
+ .line 1107
+ invoke-virtual {v1}, Ljava/net/InetAddress;->isAnyLocalAddress()Z
+
+ move-result v2
+
+ if-nez v2,
+
+ .line 1108
+ invoke-virtual {p2, v1}, Landroid/net/LinkProperties;->addDnsServer(Ljava/net/InetAddress;)Z
+
+ .line 1110
+
+ goto
+
+ .line 1111
+
+ if-eqz v0,
+
+ .line 1112
+ array-length v0, v1
+
+
+ if-ge v3, v0,
+
+ aget-object v2, v1, v3
+
+ .line 1113
+ invoke-virtual {v2}, Ljava/lang/String;->trim()Ljava/lang/String;
+
+ move-result-object v2
+
+ .line 1114
+ invoke-virtual {v2}, Ljava/lang/String;->isEmpty()Z
+
+ move-result v4
+
+ .catch Ljava/net/UnknownHostException; { .. }
+
+ if-eqz v4,
+
+ goto
+
+ .line 1117
+
+
+ invoke-static {v2}, Landroid/net/NetworkUtils;->numericToInetAddress(Ljava/lang/String;)Ljava/net/InetAddress;
+
+ move-result-object v4
+
+ .catch Ljava/lang/IllegalArgumentException; { .. }
+ .catch Ljava/net/UnknownHostException; { .. }
+
+ .line 1120
+ nop
+
+ .line 1121
+
+ invoke-virtual {v4}, Ljava/net/InetAddress;->isAnyLocalAddress()Z
+
+ move-result v2
+
+ if-nez v2,
+
+ .line 1122
+ invoke-virtual {p2, v4}, Landroid/net/LinkProperties;->addDnsServer(Ljava/net/InetAddress;)Z
+
+ .line 1112
+
+
+ add-int/lit8 v3, v3, 0x1
+
+ goto
+
+ .line 1118
+
+ move-exception v0
+
+ .line 1119
+ new-instance v0, Ljava/net/UnknownHostException;
+
+ new-instance v1, Ljava/lang/StringBuilder;
+
+ invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v3, "Non-numeric dns addr="
+
+ invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object v1
+
+ invoke-direct {v0, v1}, Ljava/net/UnknownHostException;-><init>(Ljava/lang/String;)V
+
+ throw v0
+
+ .line 1129
+
+ invoke-virtual {p1}, Landroid/telephony/data/DataCallResponse;->getGateways()Ljava/util/List;
+
+ move-result-object v0
+
+ invoke-interface {v0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
+
+ move-result-object v0
+
+
+ invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
+
+ move-result v1
+
+ if-eqz v1,
+
+ invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
+
+ move-result-object v1
+
+ check-cast v1, Ljava/net/InetAddress;
+
+ .line 1132
+ new-instance v2, Landroid/net/RouteInfo;
+
+ invoke-direct {v2, v1}, Landroid/net/RouteInfo;-><init>(Ljava/net/InetAddress;)V
+
+ invoke-virtual {p2, v2}, Landroid/net/LinkProperties;->addRoute(Landroid/net/RouteInfo;)Z
+
+ .line 1133
+ goto
+
+ .line 1137
+
+ invoke-virtual {p1}, Landroid/telephony/data/DataCallResponse;->getMtu()I
+
+ move-result v0
+
+ invoke-virtual {p2, v0}, Landroid/net/LinkProperties;->setMtu(I)V
+
+ .line 1139
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;->SUCCESS:Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+
+ goto
+
+ .line 1126
+
+ new-instance v0, Ljava/net/UnknownHostException;
+
+ const-string v1, "Empty dns response and no system default dns"
+
+ invoke-direct {v0, v1}, Ljava/net/UnknownHostException;-><init>(Ljava/lang/String;)V
+
+ throw v0
+
+ .line 1101
+
+ new-instance v0, Ljava/net/UnknownHostException;
+
+ new-instance v1, Ljava/lang/StringBuilder;
+
+ invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v2, "no address for ifname="
+
+ invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p1}, Landroid/telephony/data/DataCallResponse;->getIfname()Ljava/lang/String;
+
+ move-result-object v2
+
+ invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object v1
+
+ invoke-direct {v0, v1}, Ljava/net/UnknownHostException;-><init>(Ljava/lang/String;)V
+
+ throw v0
+
+ .catch Ljava/net/UnknownHostException; { .. }
+
+ .line 1140
+
+ move-exception v0
+
+ .line 1141
+ new-instance v1, Ljava/lang/StringBuilder;
+
+ invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v2, "setLinkProperties: UnknownHostException "
+
+ invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object v0
+
+ invoke-virtual {p0, v0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 1142
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;->ERROR_INVALID_ARG:Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+
+ .line 1143
+
+ goto
+
+ .line 1145
+
+ sget-object v0, Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;->ERROR_DATA_SERVICE_SPECIFIC_ERROR:Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+
+ .line 1149
+
+ sget-object v1, Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;->SUCCESS:Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+
+ if-eq v0, v1,
+
+ .line 1151
+ new-instance v1, Ljava/lang/StringBuilder;
+
+ invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v2, "setLinkProperties: error clearing LinkProperties status="
+
+ invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ .line 1152
+ invoke-virtual {p1}, Landroid/telephony/data/DataCallResponse;->getStatus()I
+
+ move-result p1
+
+ invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ const-string p1, " result="
+
+ invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p1
+
+ .line 1151
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 1154
+ invoke-virtual {p2}, Landroid/net/LinkProperties;->clear()V
+
+ .line 1157
+
+ return-object v0
+.end method
+
+.method private setNetworkRestriction()V
+ .registers 5
+
+ .line 914
+ const/4 v0, 0x0
+
+ iput-boolean v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mRestrictedNetworkOverride:Z
+
+ .line 916
+ nop
+
+ .line 917
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnContexts:Ljava/util/HashMap;
+
+ invoke-virtual {v0}, Ljava/util/HashMap;->keySet()Ljava/util/Set;
+
+ move-result-object v0
+
+ invoke-interface {v0}, Ljava/util/Set;->iterator()Ljava/util/Iterator;
+
+ move-result-object v0
+
+ const/4 v1, 0x1
+
+ move v2, v1
+
+
+ invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
+
+ move-result v3
+
+ if-eqz v3,
+
+ invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
+
+ move-result-object v3
+
+ check-cast v3, Lcom/android/internal/telephony/dataconnection/ApnContext;
+
+ .line 918
+ invoke-virtual {v3, v1}, Lcom/android/internal/telephony/dataconnection/ApnContext;->hasNoRestrictedRequests(Z)Z
+
+ move-result v3
+
+ and-int/2addr v2, v3
+
+ .line 919
+ goto
+
+ .line 920
+
+ if-eqz v2,
+
+ .line 921
+ return-void
+
+ .line 926
+
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ iget-object v2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ invoke-virtual {v0, v2}, Lcom/android/internal/telephony/dataconnection/ApnSetting;->isMetered(Lcom/android/internal/telephony/Phone;)Z
+
+ move-result v0
+
+ if-nez v0,
+
+ .line 927
+ return-void
+
+ .line 931
+
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDct:LDataconnection/DcTracker;
+
+ invoke-virtual {v0}, Lcom/android/internal/telephony/dataconnection/DcTracker;->isDataEnabled()Z
+
+ move-result v0
+
+ xor-int/2addr v0, v1
+
+ iput-boolean v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mRestrictedNetworkOverride:Z
+
+ .line 932
+ return-void
+.end method
+
+.method static slog(LData/String;)V
+ .registers 2
+
+ .line 2396
+ const-string v0, "DC"
+
+ invoke-static {v0, p0}, Landroid/telephony/Rlog;->d(Ljava/lang/String;Ljava/lang/String;)I
+
+ .line 2397
+ return-void
+.end method
+
+.method private tearDownData(Ljava/lang/Object;)V
+ .registers 8
+
+ .line 569
+ nop
+
+ .line 570
+ nop
+
+ .line 571
+ const/4 v0, 0x1
+
+ if-eqz p1,
+
+ instance-of v1, p1, Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;
+
+ if-eqz v1,
+
+ .line 572
+ move-object v1, p1
+
+ check-cast v1, Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;
+
+ .line 573
+ iget-object v2, v1, Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;->mApnContext:Lcom/android/internal/telephony/dataconnection/ApnContext;
+
+ .line 574
+ iget-object v3, v1, Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;->mReason:Ljava/lang/String;
+
+ const-string v4, "radioTurnedOff"
+
+ invoke-static {v3, v4}, Landroid/text/TextUtils;->equals(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z
+
+ move-result v3
+
+ if-nez v3,
+
+ iget-object v1, v1, Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;->mReason:Ljava/lang/String;
+
+ const-string v3, "pdpReset"
+
+ .line 575
+ invoke-static {v1, v3}, Landroid/text/TextUtils;->equals(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z
+
+ move-result v1
+
+ if-eqz v1,
+
+ .line 576
+
+ const/4 v0, 0x2
+
+ goto
+
+ .line 580
+
+ const/4 v2, 0x0
+
+
+
+ new-instance v1, Ljava/lang/StringBuilder;
+
+ invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v3, "tearDownData. mCid="
+
+ invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget v3, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mCid:I
+
+ invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ const-string v3, ", reason="
+
+ invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object v1
+
+ .line 581
+ invoke-virtual {p0, v1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 582
+ if-eqz v2,
+
+ invoke-virtual {v2, v1}, Lcom/android/internal/telephony/dataconnection/ApnContext;->requestLog(Ljava/lang/String;)V
+
+ .line 583
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDataServiceManager:Lcom/android/internal/telephony/dataconnection/DataServiceManager;
+
+ iget v2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mCid:I
+
+ const v3, 0x40003
+
+ iget v4, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mTag:I
+
+ const/4 v5, 0x0
+
+ .line 584
+ invoke-virtual {p0, v3, v4, v5, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->obtainMessage(IIILjava/lang/Object;)Landroid/os/Message;
+
+ move-result-object p1
+
+ .line 583
+ invoke-virtual {v1, v2, v0, p1}, Lcom/android/internal/telephony/dataconnection/DataServiceManager;->deactivateDataCall(IILandroid/os/Message;)V
+
+ .line 585
+ return-void
+.end method
+
+.method private updateNetworkInfo()V
+ .registers 5
+
+ .line 1408
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ invoke-virtual {v0}, Lcom/android/internal/telephony/Phone;->getServiceState()Landroid/telephony/ServiceState;
+
+ move-result-object v0
+
+ .line 1409
+ invoke-virtual {v0}, Landroid/telephony/ServiceState;->getDataNetworkType()I
+
+ move-result v1
+
+ .line 1410
+ iget-object v2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkInfo:Landroid/net/NetworkInfo;
+
+ invoke-static {v1}, Landroid/telephony/TelephonyManager;->getNetworkTypeName(I)Ljava/lang/String;
+
+ move-result-object v3
+
+ invoke-virtual {v2, v1, v3}, Landroid/net/NetworkInfo;->setSubtype(ILjava/lang/String;)V
+
+ .line 1411
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkInfo:Landroid/net/NetworkInfo;
+
+ invoke-virtual {v0}, Landroid/telephony/ServiceState;->getDataRoaming()Z
+
+ move-result v0
+
+ invoke-virtual {v1, v0}, Landroid/net/NetworkInfo;->setRoaming(Z)V
+
+ .line 1412
+ return-void
+.end method
+
+.method private updateNetworkInfoSuspendState()V
+ .registers 5
+
+ .line 1416
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkAgent:Lcom/android/internal/telephony/dataconnection/DataConnection$DcNetworkAgent;
+
+ if-nez v0,
+
+ .line 1417
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getName()Ljava/lang/String;
+
+ move-result-object v0
+
+ const-string v1, "Setting suspend state without a NetworkAgent"
+
+ invoke-static {v0, v1}, Landroid/telephony/Rlog;->e(Ljava/lang/String;Ljava/lang/String;)I
+
+ .line 1421
+
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ invoke-virtual {v0}, Lcom/android/internal/telephony/Phone;->getServiceStateTracker()Lcom/android/internal/telephony/ServiceStateTracker;
+
+ move-result-object v0
+
+ .line 1422
+ invoke-virtual {v0}, Lcom/android/internal/telephony/ServiceStateTracker;->getCurrentDataConnectionState()I
+
+ move-result v1
+
+ const/4 v2, 0x0
+
+ if-eqz v1,
+
+ .line 1423
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkInfo:Landroid/net/NetworkInfo;
+
+ sget-object v1, Landroid/net/NetworkInfo$DetailedState;->SUSPENDED:Landroid/net/NetworkInfo$DetailedState;
+
+ iget-object v3, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkInfo:Landroid/net/NetworkInfo;
+
+ .line 1424
+ invoke-virtual {v3}, Landroid/net/NetworkInfo;->getExtraInfo()Ljava/lang/String;
+
+ move-result-object v3
+
+ .line 1423
+ invoke-virtual {v0, v1, v2, v3}, Landroid/net/NetworkInfo;->setDetailedState(Landroid/net/NetworkInfo$DetailedState;Ljava/lang/String;Ljava/lang/String;)V
+
+ goto
+
+ .line 1427
+
+ invoke-virtual {v0}, Lcom/android/internal/telephony/ServiceStateTracker;->isConcurrentVoiceAndDataAllowed()Z
+
+ move-result v0
+
+ if-nez v0,
+
+ .line 1428
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ invoke-virtual {v0}, Lcom/android/internal/telephony/Phone;->getCallTracker()Lcom/android/internal/telephony/CallTracker;
+
+ move-result-object v0
+
+ .line 1429
+ invoke-virtual {v0}, Lcom/android/internal/telephony/CallTracker;->getState()Lcom/android/internal/telephony/PhoneConstants$State;
+
+ move-result-object v0
+
+ sget-object v1, Lcom/android/internal/telephony/PhoneConstants$State;->IDLE:Lcom/android/internal/telephony/PhoneConstants$State;
+
+ if-eq v0, v1,
+
+ .line 1430
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkInfo:Landroid/net/NetworkInfo;
+
+ sget-object v1, Landroid/net/NetworkInfo$DetailedState;->SUSPENDED:Landroid/net/NetworkInfo$DetailedState;
+
+ iget-object v3, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkInfo:Landroid/net/NetworkInfo;
+
+ .line 1431
+ invoke-virtual {v3}, Landroid/net/NetworkInfo;->getExtraInfo()Ljava/lang/String;
+
+ move-result-object v3
+
+ .line 1430
+ invoke-virtual {v0, v1, v2, v3}, Landroid/net/NetworkInfo;->setDetailedState(Landroid/net/NetworkInfo$DetailedState;Ljava/lang/String;Ljava/lang/String;)V
+
+ .line 1432
+ return-void
+
+ .line 1435
+
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkInfo:Landroid/net/NetworkInfo;
+
+ sget-object v1, Landroid/net/NetworkInfo$DetailedState;->CONNECTED:Landroid/net/NetworkInfo$DetailedState;
+
+ iget-object v3, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkInfo:Landroid/net/NetworkInfo;
+
+ .line 1436
+ invoke-virtual {v3}, Landroid/net/NetworkInfo;->getExtraInfo()Ljava/lang/String;
+
+ move-result-object v3
+
+ .line 1435
+ invoke-virtual {v0, v1, v2, v3}, Landroid/net/NetworkInfo;->setDetailedState(Landroid/net/NetworkInfo$DetailedState;Ljava/lang/String;Ljava/lang/String;)V
+
+ .line 1438
+
+ return-void
+.end method
+
+.method private updateTcpBufferSizes(I)V
+ .registers 10
+
+ .line 812
+ nop
+
+ .line 813
+ const/16 v0, 0x13
+
+ if-ne p1, v0,
+
+ .line 816
+ const/16 p1, 0xe
+
+ .line 818
+
+ invoke-static {p1}, Landroid/telephony/ServiceState;->rilRadioTechnologyToString(I)Ljava/lang/String;
+
+ move-result-object v1
+
+ sget-object v2, Ljava/util/Locale;->ROOT:Ljava/util/Locale;
+
+ invoke-virtual {v1, v2}, Ljava/lang/String;->toLowerCase(Ljava/util/Locale;)Ljava/lang/String;
+
+ move-result-object v1
+
+ .line 821
+ const/4 v2, 0x7
+
+ if-eq p1, v2,
+
+ const/16 v2, 0x8
+
+ if-eq p1, v2,
+
+ const/16 v2, 0xc
+
+ if-ne p1, v2,
+
+ .line 824
+
+ const-string v1, "evdo"
+
+ .line 828
+
+ iget-object v2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ invoke-virtual {v2}, Lcom/android/internal/telephony/Phone;->getContext()Landroid/content/Context;
+
+ move-result-object v2
+
+ invoke-virtual {v2}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
+
+ move-result-object v2
+
+ const v3, 0x1070039
+
+ invoke-virtual {v2, v3}, Landroid/content/res/Resources;->getStringArray(I)[Ljava/lang/String;
+
+ move-result-object v2
+
+ .line 830
+ const/4 v3, 0x0
+
+ move v4, v3
+
+
+ array-length v5, v2
+
+ if-ge v4, v5,
+
+ .line 831
+ aget-object v5, v2, v4
+
+ const-string v6, ":"
+
+ invoke-virtual {v5, v6}, Ljava/lang/String;->split(Ljava/lang/String;)[Ljava/lang/String;
+
+ move-result-object v5
+
+ .line 832
+ aget-object v6, v5, v3
+
+ invoke-virtual {v1, v6}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
+
+ move-result v6
+
+ if-eqz v6,
+
+ array-length v6, v5
+
+ const/4 v7, 0x2
+
+ if-ne v6, v7,
+
+ .line 833
+ const/4 v1, 0x1
+
+ aget-object v1, v5, v1
+
+ .line 834
+ goto
+
+ .line 830
+
+ add-int/lit8 v4, v4, 0x1
+
+ goto
+
+ .line 838
+
+ const/4 v1, 0x0
+
+
+ if-nez v1,
+
+ .line 842
+ if-eq p1, v0,
+
+ packed-switch p1,
+
+ packed-switch p1,
+
+ goto
+
+ .line 875
+
+ const-string v1, "122334,734003,2202010,32040,192239,576717"
+
+ .line 876
+ goto
+
+ .line 861
+
+ const-string v1, "131072,262144,1048576,4096,16384,524288"
+
+ .line 862
+ goto
+
+ .line 868
+
+ const-string v1, "40778,244668,734003,16777,100663,301990"
+
+ .line 869
+ goto
+
+ .line 864
+
+ const-string v1, "61167,367002,1101005,8738,52429,262114"
+
+ .line 865
+ goto
+
+ .line 858
+
+ const-string v1, "4094,87380,262144,4096,16384,262144"
+
+ .line 859
+ goto
+
+ .line 853
+
+ const-string v1, "16384,32768,131072,4096,16384,102400"
+
+ .line 854
+ goto
+
+ .line 850
+
+ const-string v1, "58254,349525,1048576,58254,349525,1048576"
+
+ .line 851
+ goto
+
+ .line 847
+
+ const-string v1, "4093,26280,70800,4096,16384,70800"
+
+ .line 848
+ goto
+
+ .line 844
+
+ const-string v1, "4092,8760,48000,4096,8760,48000"
+
+ .line 845
+ goto
+
+ .line 872
+
+
+ const-string v1, "524288,1048576,2097152,262144,524288,1048576"
+
+ .line 873
+ nop
+
+ .line 882
+
+
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLinkProperties:Landroid/net/LinkProperties;
+
+ invoke-virtual {p1, v1}, Landroid/net/LinkProperties;->setTcpBufferSizes(Ljava/lang/String;)V
+
+ .line 883
+ return-void
+
+ nop
+
+
+ .packed-switch 0x1
+
+
+
+ .end packed-switch
+
+
+ .packed-switch 0x6
+
+
+
+
+
+
+
+
+
+
+ .end packed-switch
+.end method
+
+
+# virtual methods
+.method dispose()V
+ .registers 2
+
+ .line 292
+ const-string v0, "dispose: call quiteNow()"
+
+ invoke-virtual {p0, v0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 293
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->quitNow()V
+
+ .line 294
+ return-void
+.end method
+
+.method public dump(Ljava/io/FileDescriptor;Ljava/io/PrintWriter;[Ljava/lang/String;)V
+ .registers 7
+
+ .line 2510
+ new-instance v0, Lcom/android/internal/util/IndentingPrintWriter;
+
+ const-string v1, " "
+
+ invoke-direct {v0, p2, v1}, Lcom/android/internal/util/IndentingPrintWriter;-><init>(Ljava/io/Writer;Ljava/lang/String;)V
+
+ .line 2511
+ const-string p2, "DataConnection "
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->print(Ljava/lang/String;)V
+
+ .line 2512
+ invoke-super {p0, p1, v0, p3}, Lcom/android/internal/util/StateMachine;->dump(Ljava/io/FileDescriptor;Ljava/io/PrintWriter;[Ljava/lang/String;)V
+
+ .line 2513
+ invoke-virtual {v0}, Lcom/android/internal/util/IndentingPrintWriter;->flush()V
+
+ .line 2514
+ invoke-virtual {v0}, Lcom/android/internal/util/IndentingPrintWriter;->increaseIndent()Lcom/android/internal/util/IndentingPrintWriter;
+
+ .line 2515
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "mApnContexts.size="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnContexts:Ljava/util/HashMap;
+
+ invoke-virtual {v1}, Ljava/util/HashMap;->size()I
+
+ move-result v1
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2516
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "mApnContexts="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnContexts:Ljava/util/HashMap;
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2517
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "mDataConnectionTracker="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDct:Lcom/android/internal/telephony/dataconnection/DcTracker;
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2518
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "mApnSetting="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2519
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "mTag="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mTag:I
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2520
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "mCid="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mCid:I
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2521
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "mConnectionParams="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mConnectionParams:Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2522
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "mDisconnectParams="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDisconnectParams:Lcom/android/internal/telephony/dataconnection/DataConnection$DisconnectParams;
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2523
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "mDcFailCause="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDcFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2524
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "mPhone="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2525
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "mLinkProperties="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLinkProperties:Landroid/net/LinkProperties;
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2526
+ invoke-virtual {v0}, Lcom/android/internal/util/IndentingPrintWriter;->flush()V
+
+ .line 2527
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "mDataRegState="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDataRegState:I
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2528
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "mRilRat="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mRilRat:I
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2529
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "mNetworkCapabilities="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getNetworkCapabilities()Landroid/net/NetworkCapabilities;
+
+ move-result-object v1
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2530
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "mCreateTime="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-wide v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mCreateTime:J
+
+ invoke-static {v1, v2}, Landroid/util/TimeUtils;->logTimeOfDay(J)Ljava/lang/String;
+
+ move-result-object v1
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2531
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "mLastFailTime="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-wide v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLastFailTime:J
+
+ invoke-static {v1, v2}, Landroid/util/TimeUtils;->logTimeOfDay(J)Ljava/lang/String;
+
+ move-result-object v1
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2532
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "mLastFailCause="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLastFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2533
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "mUserData="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mUserData:Ljava/lang/Object;
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2534
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "mSubscriptionOverride="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mSubscriptionOverride:I
+
+ invoke-static {v1}, Ljava/lang/Integer;->toHexString(I)Ljava/lang/String;
+
+ move-result-object v1
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2535
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "mInstanceNumber="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ sget-object v1, Lcom/android/internal/telephony/dataconnection/DataConnection;->mInstanceNumber:Ljava/util/concurrent/atomic/AtomicInteger;
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2536
+ new-instance p2, Ljava/lang/StringBuilder;
+
+ invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "mAc="
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mAc:Lcom/android/internal/util/AsyncChannel;
+
+ invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p2
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2537
+ const-string p2, "Network capabilities changed history:"
+
+ invoke-virtual {v0, p2}, Lcom/android/internal/util/IndentingPrintWriter;->println(Ljava/lang/String;)V
+
+ .line 2538
+ invoke-virtual {v0}, Lcom/android/internal/util/IndentingPrintWriter;->increaseIndent()Lcom/android/internal/util/IndentingPrintWriter;
+
+ .line 2539
+ iget-object p2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetCapsLocalLog:Landroid/util/LocalLog;
+
+ invoke-virtual {p2, p1, v0, p3}, Landroid/util/LocalLog;->dump(Ljava/io/FileDescriptor;Ljava/io/PrintWriter;[Ljava/lang/String;)V
+
+ .line 2540
+ invoke-virtual {v0}, Lcom/android/internal/util/IndentingPrintWriter;->decreaseIndent()Lcom/android/internal/util/IndentingPrintWriter;
+
+ .line 2541
+ invoke-virtual {v0}, Lcom/android/internal/util/IndentingPrintWriter;->decreaseIndent()Lcom/android/internal/util/IndentingPrintWriter;
+
+ .line 2542
+ invoke-virtual {v0}, Lcom/android/internal/util/IndentingPrintWriter;->println()V
+
+ .line 2543
+ invoke-virtual {v0}, Lcom/android/internal/util/IndentingPrintWriter;->flush()V
+
+ .line 2544
+ return-void
+.end method
+
+.method getApnSetting()Lcom/android/internal/telephony/dataconnection/ApnSetting;
+ .registers 2
+
+ .line 323
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ return-object v0
+.end method
+
+.method getCid()I
+ .registers 2
+
+ .line 319
+ iget v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mCid:I
+
+ return v0
+.end method
+
+.method getCopyLinkProperties()Landroid/net/LinkProperties;
+ .registers 3
+
+ .line 299
+ new-instance v0, Landroid/net/LinkProperties;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLinkProperties:Landroid/net/LinkProperties;
+
+ invoke-direct {v0, v1}, Landroid/net/LinkProperties;-><init>(Landroid/net/LinkProperties;)V
+
+ return-object v0
+.end method
+
+.method public getDataConnectionId()I
+ .registers 2
+
+ .line 710
+ iget v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mId:I
+
+ return v0
+.end method
+
+.method getNetworkCapabilities()Landroid/net/NetworkCapabilities;
+ .registers 16
+
+ .line 935
+ new-instance v0, Landroid/net/NetworkCapabilities;
+
+ invoke-direct {v0}, Landroid/net/NetworkCapabilities;-><init>()V
+
+ .line 936
+ const/4 v1, 0x0
+
+ invoke-virtual {v0, v1}, Landroid/net/NetworkCapabilities;->addTransportType(I)Landroid/net/NetworkCapabilities;
+
+ .line 938
+ iget-object v2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ const/16 v3, 0xb
+
+ const/4 v4, 0x2
+
+ const/4 v5, 0x1
+
+ if-eqz v2,
+
+ .line 939
+ iget-object v2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ iget-object v2, v2, Lcom/android/internal/telephony/dataconnection/ApnSetting;->types:[Ljava/lang/String;
+
+ array-length v6, v2
+
+ move v7, v1
+
+
+ if-ge v7, v6,
+
+ aget-object v8, v2, v7
+
+ .line 940
+ iget-boolean v9, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mRestrictedNetworkOverride:Z
+
+ if-nez v9,
+
+ iget-object v9, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mConnectionParams:Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;
+
+ if-eqz v9,
+
+ iget-object v9, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mConnectionParams:Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;
+
+ iget-boolean v9, v9, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mUnmeteredUseOnly:Z
+
+ if-eqz v9,
+
+ iget-object v9, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ .line 942
+ invoke-static {v8, v9}, Lcom/android/internal/telephony/dataconnection/ApnSetting;->isMeteredApnType(Ljava/lang/String;Lcom/android/internal/telephony/Phone;)Z
+
+ move-result v9
+
+ if-eqz v9,
+
+ .line 943
+ new-instance v9, Ljava/lang/StringBuilder;
+
+ invoke-direct {v9}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v10, "Dropped the metered "
+
+ invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v9, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ const-string v8, " for the unmetered data call."
+
+ invoke-virtual {v9, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v9}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object v8
+
+ invoke-virtual {p0, v8}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 944
+ goto/16
+
+ .line 946
+
+ const/4 v9, -0x1
+
+ invoke-virtual {v8}, Ljava/lang/String;->hashCode()I
+
+ move-result v10
+
+ const/4 v11, 0x7
+
+ const/4 v12, 0x4
+
+ const/4 v13, 0x5
+
+ const/4 v14, 0x3
+
+ sparse-switch v10,
+
+ goto/16
+
+
+ const-string v10, "emergency"
+
+ invoke-virtual {v8, v10}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
+
+ move-result v8
+
+ if-eqz v8,
+
+ const/16 v8, 0x9
+
+ goto/16
+
+
+ const-string v10, "default"
+
+ invoke-virtual {v8, v10}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
+
+ move-result v8
+
+ if-eqz v8,
+
+ move v8, v5
+
+ goto
+
+
+ const-string v10, "supl"
+
+ invoke-virtual {v8, v10}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
+
+ move-result v8
+
+ if-eqz v8,
+
+ move v8, v14
+
+ goto
+
+
+ const-string v10, "fota"
+
+ invoke-virtual {v8, v10}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
+
+ move-result v8
+
+ if-eqz v8,
+
+ move v8, v13
+
+ goto
+
+
+ const-string v10, "mms"
+
+ invoke-virtual {v8, v10}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
+
+ move-result v8
+
+ if-eqz v8,
+
+ move v8, v4
+
+ goto
+
+
+ const-string v10, "ims"
+
+ invoke-virtual {v8, v10}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
+
+ move-result v8
+
+ if-eqz v8,
+
+ const/4 v8, 0x6
+
+ goto
+
+
+ const-string v10, "dun"
+
+ invoke-virtual {v8, v10}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
+
+ move-result v8
+
+ if-eqz v8,
+
+ move v8, v12
+
+ goto
+
+
+ const-string v10, "cbs"
+
+ invoke-virtual {v8, v10}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
+
+ move-result v8
+
+ if-eqz v8,
+
+ move v8, v11
+
+ goto
+
+
+ const-string v10, "ia"
+
+ invoke-virtual {v8, v10}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
+
+ move-result v8
+
+ if-eqz v8,
+
+ const/16 v8, 0x8
+
+ goto
+
+
+ const-string v10, "*"
+
+ invoke-virtual {v8, v10}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
+
+ move-result v8
+
+ if-eqz v8,
+
+ move v8, v1
+
+ goto
+
+
+
+ move v8, v9
+
+
+ const/16 v9, 0xc
+
+ packed-switch v8,
+
+ goto
+
+ .line 991
+
+ const/16 v8, 0xa
+
+ invoke-virtual {v0, v8}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 992
+ goto
+
+ .line 987
+
+ invoke-virtual {v0, v11}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 988
+ goto
+
+ .line 983
+
+ invoke-virtual {v0, v13}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 984
+ goto
+
+ .line 979
+
+ invoke-virtual {v0, v12}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 980
+ goto
+
+ .line 975
+
+ invoke-virtual {v0, v14}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 976
+ goto
+
+ .line 971
+
+ invoke-virtual {v0, v4}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 972
+ goto
+
+ .line 967
+
+ invoke-virtual {v0, v5}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 968
+ goto
+
+ .line 963
+
+ invoke-virtual {v0, v1}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 964
+ goto
+
+ .line 959
+
+ invoke-virtual {v0, v9}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 960
+ goto
+
+ .line 948
+
+ invoke-virtual {v0, v9}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 949
+ invoke-virtual {v0, v1}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 950
+ invoke-virtual {v0, v5}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 951
+ invoke-virtual {v0, v14}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 952
+ invoke-virtual {v0, v12}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 953
+ invoke-virtual {v0, v13}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 954
+ invoke-virtual {v0, v11}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 955
+ invoke-virtual {v0, v4}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 956
+ nop
+
+ .line 939
+
+ add-int/lit8 v7, v7, 0x1
+
+ goto/16
+
+ .line 1001
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mConnectionParams:Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;
+
+ if-eqz v1,
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mConnectionParams:Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;
+
+ iget-boolean v1, v1, Lcom/android/internal/telephony/dataconnection/DataConnection$ConnectionParams;->mUnmeteredUseOnly:Z
+
+ if-eqz v1,
+
+ iget-boolean v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mRestrictedNetworkOverride:Z
+
+ if-eqz v1,
+
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ iget-object v2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ .line 1003
+ invoke-virtual {v1, v2}, Lcom/android/internal/telephony/dataconnection/ApnSetting;->isMetered(Lcom/android/internal/telephony/Phone;)Z
+
+ move-result v1
+
+ if-nez v1,
+
+ .line 1004
+
+ invoke-virtual {v0, v3}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ goto
+
+ .line 1006
+
+ invoke-virtual {v0, v3}, Landroid/net/NetworkCapabilities;->removeCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 1009
+
+ invoke-virtual {v0}, Landroid/net/NetworkCapabilities;->maybeMarkCapabilitiesRestricted()V
+
+ .line 1011
+
+ iget-boolean v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mRestrictedNetworkOverride:Z
+
+ if-eqz v1,
+
+ .line 1012
+ const/16 v1, 0xd
+
+ invoke-virtual {v0, v1}, Landroid/net/NetworkCapabilities;->removeCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 1014
+ invoke-virtual {v0, v4}, Landroid/net/NetworkCapabilities;->removeCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 1017
+
+ nop
+
+ .line 1018
+ nop
+
+ .line 1019
+ iget v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mRilRat:I
+
+ const/16 v2, 0x13
+
+ const/16 v6, 0x733
+
+ const/16 v7, 0x99
+
+ const v8, 0x19000
+
+ const v9, 0xc800
+
+ const/16 v10, 0x3800
+
+ const/16 v11, 0xe
+
+ if-eq v1, v2,
+
+ packed-switch v1,
+
+ .line 1038
+
+ move v6, v11
+
+ move v8, v6
+
+ goto
+
+ .line 1035
+
+ const/16 v6, 0x2c00
+
+ const v8, 0xa800
+
+ goto
+
+ .line 1032
+
+ nop
+
+ .line 1038
+
+ move v6, v9
+
+ goto
+
+ .line 1034
+
+ const/16 v8, 0x9d4
+
+ goto
+
+ .line 1031
+
+ const/16 v8, 0x1399
+
+ goto
+
+ .line 1030
+
+ const/16 v6, 0x170a
+
+ goto
+
+ .line 1029
+
+ const/16 v6, 0x170a
+
+ goto
+
+ .line 1028
+
+ const/16 v6, 0x800
+
+ .line 1038
+
+ move v8, v10
+
+ goto
+
+ .line 1026
+
+ const/16 v8, 0xc66
+
+ goto
+
+ .line 1025
+
+ const/16 v8, 0x999
+
+ .line 1038
+
+ move v6, v7
+
+ goto
+
+ .line 1027
+
+ const/16 v6, 0x64
+
+ const/16 v8, 0x64
+
+ goto
+
+ .line 1024
+
+ goto
+
+ .line 1022
+
+ const/16 v6, 0x180
+
+ const/16 v8, 0x180
+
+ goto
+
+ .line 1021
+
+ const/16 v6, 0x3b
+
+ const/16 v8, 0xec
+
+ goto
+
+ .line 1020
+
+ const/16 v6, 0x50
+
+ const/16 v8, 0x50
+
+ goto
+
+ .line 1033
+
+ goto
+
+ .line 1038
+
+ invoke-virtual {v0, v6}, Landroid/net/NetworkCapabilities;->setLinkUpstreamBandwidthKbps(I)Landroid/net/NetworkCapabilities;
+
+ .line 1039
+ invoke-virtual {v0, v8}, Landroid/net/NetworkCapabilities;->setLinkDownstreamBandwidthKbps(I)Landroid/net/NetworkCapabilities;
+
+ .line 1041
+ new-instance v1, Landroid/net/StringNetworkSpecifier;
+
+ iget-object v2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ invoke-virtual {v2}, Lcom/android/internal/telephony/Phone;->getSubId()I
+
+ move-result v2
+
+ invoke-static {v2}, Ljava/lang/Integer;->toString(I)Ljava/lang/String;
+
+ move-result-object v2
+
+ invoke-direct {v1, v2}, Landroid/net/StringNetworkSpecifier;-><init>(Ljava/lang/String;)V
+
+ invoke-virtual {v0, v1}, Landroid/net/NetworkCapabilities;->setNetworkSpecifier(Landroid/net/NetworkSpecifier;)Landroid/net/NetworkCapabilities;
+
+ .line 1043
+ const/16 v1, 0x12
+
+ iget-object v2, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mPhone:Lcom/android/internal/telephony/Phone;
+
+ .line 1044
+ invoke-virtual {v2}, Lcom/android/internal/telephony/Phone;->getServiceState()Landroid/telephony/ServiceState;
+
+ move-result-object v2
+
+ invoke-virtual {v2}, Landroid/telephony/ServiceState;->getDataRoaming()Z
+
+ move-result v2
+
+ .line 1043
+ xor-int/2addr v2, v5
+
+ invoke-virtual {v0, v1, v2}, Landroid/net/NetworkCapabilities;->setCapability(IZ)Landroid/net/NetworkCapabilities;
+
+ .line 1046
+ const/16 v1, 0x14
+
+ invoke-virtual {v0, v1}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 1049
+ iget v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mSubscriptionOverride:I
+
+ and-int/2addr v1, v5
+
+ if-eqz v1,
+
+ .line 1050
+ invoke-virtual {v0, v3}, Landroid/net/NetworkCapabilities;->addCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 1052
+
+ iget v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mSubscriptionOverride:I
+
+ and-int/2addr v1, v4
+
+ if-eqz v1,
+
+ .line 1053
+ const/16 v1, 0x14
+
+ invoke-virtual {v0, v1}, Landroid/net/NetworkCapabilities;->removeCapability(I)Landroid/net/NetworkCapabilities;
+
+ .line 1056
+
+ return-object v0
+
+ nop
+
+
+ .sparse-switch
+ 0x2a ->
+ 0xd18 ->
+ 0x17ff4 ->
+ 0x185fd ->
+ 0x197cf ->
+ 0x1a6d3 ->
+ 0x300cf6 ->
+ 0x360bde ->
+ 0x5c13d641 ->
+ 0x6118c591 ->
+ .end sparse-switch
+
+
+ .packed-switch 0x0
+
+
+
+
+
+
+
+
+
+
+ .end packed-switch
+
+
+ .packed-switch 0x1
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ .end packed-switch
+.end method
+
+.method protected getWhatToString(I)Ljava/lang/String;
+ .registers 2
+
+ .line 2351
+ invoke-static {p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->cmdToString(I)Ljava/lang/String;
+
+ move-result-object p1
+
+ return-object p1
+.end method
+
+.method isActivating()Z
+ .registers 3
+
+ .line 315
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getCurrentState()Lcom/android/internal/util/IState;
+
+ move-result-object v0
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mActivatingState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcActivatingState;
+
+ if-ne v0, v1,
+
+ const/4 v0, 0x1
+
+ goto
+
+
+ const/4 v0, 0x0
+
+
+ return v0
+.end method
+
+.method isActive()Z
+ .registers 3
+
+ .line 311
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getCurrentState()Lcom/android/internal/util/IState;
+
+ move-result-object v0
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mActiveState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcActiveState;
+
+ if-ne v0, v1,
+
+ const/4 v0, 0x1
+
+ goto
+
+
+ const/4 v0, 0x0
+
+
+ return v0
+.end method
+
+.method isDisconnecting()Z
+ .registers 3
+
+ .line 307
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getCurrentState()Lcom/android/internal/util/IState;
+
+ move-result-object v0
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mDisconnectingState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcDisconnectingState;
+
+ if-ne v0, v1,
+
+ const/4 v0, 0x1
+
+ goto
+
+
+ const/4 v0, 0x0
+
+
+ return v0
+.end method
+
+.method isInactive()Z
+ .registers 3
+
+ .line 303
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getCurrentState()Lcom/android/internal/util/IState;
+
+ move-result-object v0
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mInactiveState:Lcom/android/internal/telephony/dataconnection/DataConnection$DcInactiveState;
+
+ if-ne v0, v1,
+
+ const/4 v0, 0x1
+
+ goto
+
+
+ const/4 v0, 0x0
+
+
+ return v0
+.end method
+
+.method public isIpv4Connected()Z
+ .registers 4
+
+ .line 363
+ nop
+
+ .line 364
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLinkProperties:Landroid/net/LinkProperties;
+
+ invoke-virtual {v0}, Landroid/net/LinkProperties;->getAddresses()Ljava/util/List;
+
+ move-result-object v0
+
+ .line 366
+ invoke-interface {v0}, Ljava/util/Collection;->iterator()Ljava/util/Iterator;
+
+ move-result-object v0
+
+
+ invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
+
+ move-result v1
+
+ if-eqz v1,
+
+ invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
+
+ move-result-object v1
+
+ check-cast v1, Ljava/net/InetAddress;
+
+ .line 367
+ instance-of v2, v1, Ljava/net/Inet4Address;
+
+ if-eqz v2,
+
+ .line 368
+ check-cast v1, Ljava/net/Inet4Address;
+
+ .line 369
+ invoke-virtual {v1}, Ljava/net/Inet4Address;->isAnyLocalAddress()Z
+
+ move-result v2
+
+ if-nez v2,
+
+ invoke-virtual {v1}, Ljava/net/Inet4Address;->isLinkLocalAddress()Z
+
+ move-result v2
+
+ if-nez v2,
+
+ .line 370
+ invoke-virtual {v1}, Ljava/net/Inet4Address;->isLoopbackAddress()Z
+
+ move-result v2
+
+ if-nez v2,
+
+ invoke-virtual {v1}, Ljava/net/Inet4Address;->isMulticastAddress()Z
+
+ move-result v1
+
+ if-nez v1,
+
+ .line 371
+ const/4 v0, 0x1
+
+ .line 372
+ goto
+
+ .line 375
+
+ goto
+
+ .line 376
+
+ const/4 v0, 0x0
+
+
+ return v0
+.end method
+
+.method public isIpv6Connected()Z
+ .registers 4
+
+ .line 380
+ nop
+
+ .line 381
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLinkProperties:Landroid/net/LinkProperties;
+
+ invoke-virtual {v0}, Landroid/net/LinkProperties;->getAddresses()Ljava/util/List;
+
+ move-result-object v0
+
+ .line 383
+ invoke-interface {v0}, Ljava/util/Collection;->iterator()Ljava/util/Iterator;
+
+ move-result-object v0
+
+
+ invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
+
+ move-result v1
+
+ if-eqz v1,
+
+ invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
+
+ move-result-object v1
+
+ check-cast v1, Ljava/net/InetAddress;
+
+ .line 384
+ instance-of v2, v1, Ljava/net/Inet6Address;
+
+ if-eqz v2,
+
+ .line 385
+ check-cast v1, Ljava/net/Inet6Address;
+
+ .line 386
+ invoke-virtual {v1}, Ljava/net/Inet6Address;->isAnyLocalAddress()Z
+
+ move-result v2
+
+ if-nez v2,
+
+ invoke-virtual {v1}, Ljava/net/Inet6Address;->isLinkLocalAddress()Z
+
+ move-result v2
+
+ if-nez v2,
+
+ .line 387
+ invoke-virtual {v1}, Ljava/net/Inet6Address;->isLoopbackAddress()Z
+
+ move-result v2
+
+ if-nez v2,
+
+ invoke-virtual {v1}, Ljava/net/Inet6Address;->isMulticastAddress()Z
+
+ move-result v1
+
+ if-nez v1,
+
+ .line 388
+ const/4 v0, 0x1
+
+ .line 389
+ goto
+
+ .line 392
+
+ goto
+
+ .line 393
+
+ const/4 v0, 0x0
+
+
+ return v0
+.end method
+
+.method protected log(Ljava/lang/String;)V
+ .registers 3
+
+ .line 2406
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getName()Ljava/lang/String;
+
+ move-result-object v0
+
+ invoke-static {v0, p1}, Landroid/telephony/Rlog;->d(Ljava/lang/String;Ljava/lang/String;)I
+
+ .line 2407
+ return-void
+.end method
+
+.method protected logd(Ljava/lang/String;)V
+ .registers 3
+
+ .line 2416
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getName()Ljava/lang/String;
+
+ move-result-object v0
+
+ invoke-static {v0, p1}, Landroid/telephony/Rlog;->d(Ljava/lang/String;Ljava/lang/String;)I
+
+ .line 2417
+ return-void
+.end method
+
+.method protected loge(Ljava/lang/String;)V
+ .registers 3
+
+ .line 2456
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getName()Ljava/lang/String;
+
+ move-result-object v0
+
+ invoke-static {v0, p1}, Landroid/telephony/Rlog;->e(Ljava/lang/String;Ljava/lang/String;)I
+
+ .line 2457
+ return-void
+.end method
+
+.method protected loge(Ljava/lang/String;Ljava/lang/Throwable;)V
+ .registers 4
+
+ .line 2467
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getName()Ljava/lang/String;
+
+ move-result-object v0
+
+ invoke-static {v0, p1, p2}, Landroid/telephony/Rlog;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
+
+ .line 2468
+ return-void
+.end method
+
+.method protected logi(Ljava/lang/String;)V
+ .registers 3
+
+ .line 2436
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getName()Ljava/lang/String;
+
+ move-result-object v0
+
+ invoke-static {v0, p1}, Landroid/telephony/Rlog;->i(Ljava/lang/String;Ljava/lang/String;)I
+
+ .line 2437
+ return-void
+.end method
+
+.method protected logv(Ljava/lang/String;)V
+ .registers 3
+
+ .line 2426
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getName()Ljava/lang/String;
+
+ move-result-object v0
+
+ invoke-static {v0, p1}, Landroid/telephony/Rlog;->v(Ljava/lang/String;Ljava/lang/String;)I
+
+ .line 2427
+ return-void
+.end method
+
+.method protected logw(Ljava/lang/String;)V
+ .registers 3
+
+ .line 2446
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getName()Ljava/lang/String;
+
+ move-result-object v0
+
+ invoke-static {v0, p1}, Landroid/telephony/Rlog;->w(Ljava/lang/String;Ljava/lang/String;)I
+
+ .line 2447
+ return-void
+.end method
+
+.method public onSubscriptionOverride(II)V
+ .registers 5
+
+ .line 557
+ iget v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mSubscriptionOverride:I
+
+ not-int v1, p1
+
+ and-int/2addr v0, v1
+
+ and-int/2addr p1, p2
+
+ or-int/2addr p1, v0
+
+ iput p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mSubscriptionOverride:I
+
+ .line 559
+ const p1, 0x40011
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->obtainMessage(I)Landroid/os/Message;
+
+ move-result-object p1
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->sendMessage(Landroid/os/Message;)V
+
+ .line 560
+ return-void
+.end method
+
+.method setLinkPropertiesHttpProxy(Landroid/net/ProxyInfo;)V
+ .registers 3
+
+ .line 327
+ iget-object v0, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLinkProperties:Landroid/net/LinkProperties;
+
+ invoke-virtual {v0, p1}, Landroid/net/LinkProperties;->setHttpProxy(Landroid/net/ProxyInfo;)V
+
+ .line 328
+ return-void
+.end method
+
+.method tearDownNow()V
+ .registers 2
+
+ .line 2312
+ const-string v0, "tearDownNow()"
+
+ invoke-virtual {p0, v0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 2313
+ const v0, 0x40008
+
+ invoke-virtual {p0, v0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->obtainMessage(I)Landroid/os/Message;
+
+ move-result-object v0
+
+ invoke-virtual {p0, v0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->sendMessage(Landroid/os/Message;)V
+
+ .line 2314
+ return-void
+.end method
+
+.method public toString()Ljava/lang/String;
+ .registers 3
+
+ .line 2485
+ new-instance v0, Ljava/lang/StringBuilder;
+
+ invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "{"
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->toStringSimple()Ljava/lang/String;
+
+ move-result-object v1
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ const-string v1, " mApnContexts="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnContexts:Ljava/util/HashMap;
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ const-string v1, "}"
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object v0
+
+ return-object v0
+.end method
+
+.method public toStringSimple()Ljava/lang/String;
+ .registers 4
+
+ .line 2472
+ new-instance v0, Ljava/lang/StringBuilder;
+
+ invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
+
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getName()Ljava/lang/String;
+
+ move-result-object v1
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ const-string v1, ": State="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getCurrentState()Lcom/android/internal/util/IState;
+
+ move-result-object v1
+
+ invoke-interface {v1}, Lcom/android/internal/util/IState;->getName()Ljava/lang/String;
+
+ move-result-object v1
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ const-string v1, " mApnSetting="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ const-string v1, " RefCount="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnContexts:Ljava/util/HashMap;
+
+ .line 2473
+ invoke-virtual {v1}, Ljava/util/HashMap;->size()I
+
+ move-result v1
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ const-string v1, " mCid="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mCid:I
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ const-string v1, " mCreateTime="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-wide v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mCreateTime:J
+
+ invoke-virtual {v0, v1, v2}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
+
+ const-string v1, " mLastastFailTime="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-wide v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLastFailTime:J
+
+ invoke-virtual {v0, v1, v2}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
+
+ const-string v1, " mLastFailCause="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLastFailCause:Lcom/android/internal/telephony/dataconnection/DcFailCause;
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ const-string v1, " mTag="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mTag:I
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
+
+ const-string v1, " mLinkProperties="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLinkProperties:Landroid/net/LinkProperties;
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ const-string v1, " linkCapabilities="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ .line 2479
+ invoke-virtual {p0}, Lcom/android/internal/telephony/dataconnection/DataConnection;->getNetworkCapabilities()Landroid/net/NetworkCapabilities;
+
+ move-result-object v1
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ const-string v1, " mRestrictedNetworkOverride="
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-boolean v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mRestrictedNetworkOverride:Z
+
+ invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
+
+ invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object v0
+
+ .line 2472
+ return-object v0
+.end method
+
+.method public updateLinkProperty(Landroid/telephony/data/DataCallResponse;)Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;
+ .registers 4
+ .annotation build Lcom/android/internal/annotations/VisibleForTesting;
+ .end annotation
+
+ .line 398
+ new-instance v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLinkProperties:Landroid/net/LinkProperties;
+
+ invoke-direct {v0, v1}, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;-><init>(Landroid/net/LinkProperties;)V
+
+ .line 400
+ if-nez p1,
+
+ return-object v0
+
+ .line 402
+
+ new-instance v1, Landroid/net/LinkProperties;
+
+ invoke-direct {v1}, Landroid/net/LinkProperties;-><init>()V
+
+ iput-object v1, v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->newLp:Landroid/net/LinkProperties;
+
+ .line 405
+ iget-object v1, v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->newLp:Landroid/net/LinkProperties;
+
+ invoke-direct {p0, p1, v1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->setLinkProperties(Landroid/telephony/data/DataCallResponse;Landroid/net/LinkProperties;)Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+
+ move-result-object p1
+
+ iput-object p1, v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->setupResult:Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+
+ .line 406
+ iget-object p1, v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->setupResult:Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+
+ sget-object v1, Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;->SUCCESS:Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+
+ if-eq p1, v1,
+
+ .line 407
+ new-instance p1, Ljava/lang/StringBuilder;
+
+ invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "updateLinkProperty failed : "
+
+ invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->setupResult:Lcom/android/internal/telephony/dataconnection/DataConnection$SetupResult;
+
+ invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p1
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 408
+ return-object v0
+
+ .line 411
+
+ iget-object p1, v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->newLp:Landroid/net/LinkProperties;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLinkProperties:Landroid/net/LinkProperties;
+
+ invoke-virtual {v1}, Landroid/net/LinkProperties;->getHttpProxy()Landroid/net/ProxyInfo;
+
+ move-result-object v1
+
+ invoke-virtual {p1, v1}, Landroid/net/LinkProperties;->setHttpProxy(Landroid/net/ProxyInfo;)V
+
+ .line 413
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mApnSetting:Lcom/android/internal/telephony/dataconnection/ApnSetting;
+
+ iget-object v1, v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->newLp:Landroid/net/LinkProperties;
+
+ invoke-direct {p0, p1, v1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->checkSetMtu(Lcom/android/internal/telephony/dataconnection/ApnSetting;Landroid/net/LinkProperties;)V
+
+ .line 415
+ iget-object p1, v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->newLp:Landroid/net/LinkProperties;
+
+ iput-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLinkProperties:Landroid/net/LinkProperties;
+
+ .line 417
+ iget p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mRilRat:I
+
+ invoke-direct {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->updateTcpBufferSizes(I)V
+
+ .line 419
+ iget-object p1, v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->oldLp:Landroid/net/LinkProperties;
+
+ iget-object v1, v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->newLp:Landroid/net/LinkProperties;
+
+ invoke-virtual {p1, v1}, Landroid/net/LinkProperties;->equals(Ljava/lang/Object;)Z
+
+ move-result p1
+
+ if-nez p1,
+
+ .line 420
+ new-instance p1, Ljava/lang/StringBuilder;
+
+ invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "updateLinkProperty old LP="
+
+ invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->oldLp:Landroid/net/LinkProperties;
+
+ invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p1
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 421
+ new-instance p1, Ljava/lang/StringBuilder;
+
+ invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
+
+ const-string v1, "updateLinkProperty new LP="
+
+ invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+
+ iget-object v1, v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->newLp:Landroid/net/LinkProperties;
+
+ invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
+
+ invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
+
+ move-result-object p1
+
+ invoke-virtual {p0, p1}, Lcom/android/internal/telephony/dataconnection/DataConnection;->log(Ljava/lang/String;)V
+
+ .line 424
+
+ iget-object p1, v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->newLp:Landroid/net/LinkProperties;
+
+ iget-object v1, v0, Lcom/android/internal/telephony/dataconnection/DataConnection$UpdateLinkPropertyResult;->oldLp:Landroid/net/LinkProperties;
+
+ invoke-virtual {p1, v1}, Landroid/net/LinkProperties;->equals(Ljava/lang/Object;)Z
+
+ move-result p1
+
+ if-nez p1,
+
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkAgent:Lcom/android/internal/telephony/dataconnection/DataConnection$DcNetworkAgent;
+
+ if-eqz p1,
+
+ .line 426
+ iget-object p1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mNetworkAgent:Lcom/android/internal/telephony/dataconnection/DataConnection$DcNetworkAgent;
+
+ iget-object v1, p0, Lcom/android/internal/telephony/dataconnection/DataConnection;->mLinkProperties:Landroid/net/LinkProperties;
+
+ invoke-virtual {p1, v1}, Lcom/android/internal/telephony/dataconnection/DataConnection$DcNetworkAgent;->sendLinkProperties(Landroid/net/LinkProperties;)V
+
+ .line 429
+
+ return-object v0
+.end method
diff --git a/data/syntax/smali.xml b/data/syntax/smali.xml
new file mode 100644
--- /dev/null
+++ b/data/syntax/smali.xml
@@ -0,0 +1,456 @@
+
+
+
+
+
+
+
+]>
+
+
+
+ - nop
+ - move
+ - move/from16
+ - move/16
+ - move-wide
+ - move-wide/from16
+ - move-wide/16
+ - move-object
+ - move-object/from16
+ - move-object/16
+ - move-result
+ - move-result-wide
+ - move-result-object
+ - move-exception
+ - return-void
+ - return
+ - return-wide
+ - return-object
+ - const/4
+ - const/16
+ - const
+ - const/high16
+ - const-wide/16
+ - const-wide/32
+ - const-wide
+ - const-wide/high16
+ - const-string
+ - const-string/jumbo
+ - const-class
+ - monitor-enter
+ - monitor-exit
+ - check-cast
+ - instance-of
+ - array-length
+ - new-instance
+ - new-array
+ - filled-new-array
+ - filled-new-array/range
+ - fill-array-data
+ - throw
+ - goto
+ - goto/16
+ - goto/32
+ - packed-switch
+ - sparse-switch
+ - cmpl-float
+ - cmpg-float
+ - cmpl-double
+ - cmpg-double
+ - cmp-long
+ - if-eq
+ - if-ne
+ - if-lt
+ - if-ge
+ - if-gt
+ - if-le
+ - if-eqz
+ - if-nez
+ - if-ltz
+ - if-gez
+ - if-gtz
+ - if-lez
+ - aget
+ - aget-wide
+ - aget-object
+ - aget-boolean
+ - aget-byte
+ - aget-char
+ - aget-short
+ - aput
+ - aput-wide
+ - aput-object
+ - aput-boolean
+ - aput-byte
+ - aput-char
+ - aput-short
+ - iget
+ - iget-wide
+ - iget-object
+ - iget-boolean
+ - iget-byte
+ - iget-char
+ - iget-short
+ - iput
+ - iput-wide
+ - iput-object
+ - iput-boolean
+ - iput-byte
+ - iput-char
+ - iput-short
+ - sget
+ - sget-wide
+ - sget-object
+ - sget-boolean
+ - sget-byte
+ - sget-char
+ - sget-short
+ - sput
+ - sput-wide
+ - sput-object
+ - sput-boolean
+ - sput-byte
+ - sput-char
+ - sput-short
+ - invoke-virtual
+ - invoke-super
+ - invoke-direct
+ - invoke-static
+ - invoke-interface
+ - invoke-virtual/range
+ - invoke-super/range
+ - invoke-direct/range
+ - invoke-static/range
+ - invoke-interface/range
+ - neg-int
+ - not-int
+ - neg-long
+ - not-long
+ - neg-float
+ - neg-double
+ - int-to-long
+ - int-to-float
+ - int-to-double
+ - long-to-int
+ - long-to-float
+ - long-to-double
+ - float-to-int
+ - float-to-long
+ - float-to-double
+ - double-to-int
+ - double-to-long
+ - double-to-float
+ - int-to-byte
+ - int-to-char
+ - int-to-short
+ - add-int
+ - sub-int
+ - mul-int
+ - div-int
+ - rem-int
+ - and-int
+ - or-int
+ - xor-int
+ - shl-int
+ - shr-int
+ - ushr-int
+ - add-long
+ - sub-long
+ - mul-long
+ - div-long
+ - rem-long
+ - and-long
+ - or-long
+ - xor-long
+ - shl-long
+ - shr-long
+ - ushr-long
+ - add-float
+ - sub-float
+ - mul-float
+ - div-float
+ - rem-float
+ - add-double
+ - sub-double
+ - mul-double
+ - div-double
+ - rem-double
+ - add-int/2addr
+ - sub-int/2addr
+ - mul-int/2addr
+ - div-int/2addr
+ - rem-int/2addr
+ - and-int/2addr
+ - or-int/2addr
+ - xor-int/2addr
+ - shl-int/2addr
+ - shr-int/2addr
+ - ushr-int/2addr
+ - add-long/2addr
+ - sub-long/2addr
+ - mul-long/2addr
+ - div-long/2addr
+ - rem-long/2addr
+ - and-long/2addr
+ - or-long/2addr
+ - xor-long/2addr
+ - shl-long/2addr
+ - shr-long/2addr
+ - ushr-long/2addr
+ - add-float/2addr
+ - sub-float/2addr
+ - mul-float/2addr
+ - div-float/2addr
+ - rem-float/2addr
+ - add-double/2addr
+ - sub-double/2addr
+ - mul-double/2addr
+ - div-double/2addr
+ - rem-double/2addr
+ - add-int/lit16
+ - rsub-int
+ - mul-int/lit16
+ - div-int/lit16
+ - rem-int/lit16
+ - and-int/lit16
+ - or-int/lit16
+ - xor-int/lit16
+ - add-int/lit8
+ - rsub-int/lit8
+ - mul-int/lit8
+ - div-int/lit8
+ - rem-int/lit8
+ - and-int/lit8
+ - or-int/lit8
+ - xor-int/lit8
+ - shl-int/lit8
+ - shr-int/lit8
+ - ushr-int/lit8
+ - iget-volatile
+ - iput-volatile
+ - sget-volatile
+ - sput-volatile
+ - iget-object-volatile
+ - iget-wide-volatile
+ - iput-wide-volatile
+ - sget-wide-volatile
+ - sput-wide-volatile
+ - sget-object-volatile
+ - throw-verification-error
+ - execute-inline
+ - execute-inline/range
+ - invoke-object-init/range
+ - return-void-barrier
+ - iget-quick
+ - invoke-polymorphic
+ - invoke-polymorphic/range
+ - invoke-custom
+ - invoke-custom/range
+ - const-method-handle
+ - const-method-type
+
+
+
+ - public
+ - private
+ - protected
+ - static
+ - final
+ - synchronized
+ - volatile
+ - bridge
+ - transient
+ - varargs
+ - native
+ - interface
+ - abstract
+ - strictfp
+ - synthetic
+ - annotation
+ - enum
+ - constructor
+ - declared-synchronized
+
+
+ - build
+ - runtime
+ - system
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+