diff options
author | Wink Saville <wink@google.com> | 2013-03-22 11:10:25 -0700 |
---|---|---|
committer | Wink Saville <wink@google.com> | 2013-03-22 11:10:25 -0700 |
commit | ff4e317d24f0d23bdc0f306d53ddc51f2f1ecf6a (patch) | |
tree | aa352435b64a19efe31c379cd49f5d8e62641e18 /src/java/com/android/internal/telephony/dataconnection/ApnContext.java | |
parent | 6ca911a976a277e69800249c924c8dbc8fc5d78f (diff) | |
download | android_frameworks_opt_telephony-ff4e317d24f0d23bdc0f306d53ddc51f2f1ecf6a.tar.gz android_frameworks_opt_telephony-ff4e317d24f0d23bdc0f306d53ddc51f2f1ecf6a.tar.bz2 android_frameworks_opt_telephony-ff4e317d24f0d23bdc0f306d53ddc51f2f1ecf6a.zip |
Move retrying into DC.
This is the first step in refactoring for bug 4772191.
Bug: 4772191
Change-Id: Id54a20ab192783c63939158670faaf531a527640
Diffstat (limited to 'src/java/com/android/internal/telephony/dataconnection/ApnContext.java')
-rw-r--r-- | src/java/com/android/internal/telephony/dataconnection/ApnContext.java | 68 |
1 files changed, 26 insertions, 42 deletions
diff --git a/src/java/com/android/internal/telephony/dataconnection/ApnContext.java b/src/java/com/android/internal/telephony/dataconnection/ApnContext.java index a7c4af548..a4c322d77 100644 --- a/src/java/com/android/internal/telephony/dataconnection/ApnContext.java +++ b/src/java/com/android/internal/telephony/dataconnection/ApnContext.java @@ -16,6 +16,7 @@ package com.android.internal.telephony.dataconnection; +import android.app.PendingIntent; import android.telephony.Rlog; import com.android.internal.telephony.DctConstants; @@ -34,7 +35,7 @@ public class ApnContext { public final String LOG_TAG; - protected static final boolean DBG = true; + protected static final boolean DBG = false; private final String mApnType; @@ -47,13 +48,11 @@ public class ApnContext { private ApnSetting mApnSetting; - DataConnectionBase mDataConnection; - DataConnectionAc mDataConnectionAc; String mReason; - int mRetryCount; + PendingIntent mReconnectAlarmIntent; /** * user/app requested connection on this APN @@ -69,7 +68,6 @@ public class ApnContext { mApnType = apnType; mState = DctConstants.State.IDLE; setReason(Phone.REASON_DATA_ENABLED); - setRetryCount(0); mDataEnabled = new AtomicBoolean(false); mDependencyMet = new AtomicBoolean(true); mWaitingApnsPermanentFailureCountDown = new AtomicInteger(0); @@ -80,19 +78,7 @@ public class ApnContext { return mApnType; } - public synchronized DataConnectionBase getDataConnection() { - return mDataConnection; - } - - public synchronized void setDataConnection(DataConnectionBase dc) { - if (DBG) { - log("setDataConnection: old dc=" + mDataConnection + " new dc=" + dc + " this=" + this); - } - mDataConnection = dc; - } - - - public synchronized DataConnectionAc getDataConnectionAc() { + public synchronized DataConnectionAc getDcAc() { return mDataConnectionAc; } @@ -101,20 +87,29 @@ public class ApnContext { log("setDataConnectionAc: old dcac=" + mDataConnectionAc + " new dcac=" + dcac + " this=" + this); } - if ((dcac == null) && (mDataConnectionAc != null) && - (mDataConnectionAc.dataConnection != null)) { + if ((dcac == null) && (mDataConnectionAc != null)) { // TODO: This tearDown should be done by caller, but for now we'll do it if (DBG) log("setDataConnection: call tearDown"); - mDataConnectionAc.dataConnection.tearDown(this, "", null); + mDataConnectionAc.tearDown(this, "", null); } mDataConnectionAc = dcac; } + public synchronized PendingIntent getReconnectIntent() { + return mReconnectAlarmIntent; + } + + public synchronized void setReconnectIntent(PendingIntent intent) { + mReconnectAlarmIntent = intent; + } + public synchronized ApnSetting getApnSetting() { + log("getApnSetting: apnSetting=" + mApnSetting); return mApnSetting; } public synchronized void setApnSetting(ApnSetting apnSetting) { + log("setApnSetting: apnSetting=" + apnSetting); mApnSetting = apnSetting; } @@ -188,25 +183,17 @@ public class ApnContext { return mReason; } - public synchronized void setRetryCount(int retryCount) { - if (DBG) { - log("setRetryCount: " + retryCount); - } - mRetryCount = retryCount; - DataConnectionBase dc = mDataConnection; - if (dc != null) { - dc.setRetryCount(retryCount); - } - } - - public synchronized int getRetryCount() { - return mRetryCount; - } - public boolean isReady() { return mDataEnabled.get() && mDependencyMet.get(); } + public boolean isConnectable() { + return isReady() && ((mState == DctConstants.State.IDLE) + || (mState == DctConstants.State.SCANNING) + || (mState == DctConstants.State.RETRYING) + || (mState == DctConstants.State.FAILED)); + } + public void setEnabled(boolean enabled) { if (DBG) { log("set enabled as " + enabled + ", current state is " + mDataEnabled.get()); @@ -232,12 +219,9 @@ public class ApnContext { @Override public String toString() { // We don't print mDataConnection because its recursive. - return "{mApnType=" + mApnType + " mState=" + getState() + " mWaitingApns=" + mWaitingApns + - " mWaitingApnsPermanentFailureCountDown=" + mWaitingApnsPermanentFailureCountDown + - " mApnSetting=" + mApnSetting + - " mDataConnection=" + ((mDataConnection != null) - ? mDataConnection.toStringSimple() : "null") + - " mReason=" + mReason + " mRetryCount=" + mRetryCount + + return "{mApnType=" + mApnType + " mState=" + getState() + " mWaitingApns={" + mWaitingApns + + "} mWaitingApnsPermanentFailureCountDown=" + mWaitingApnsPermanentFailureCountDown + + " mApnSetting={" + mApnSetting + "} mReason=" + mReason + " mDataEnabled=" + mDataEnabled + " mDependencyMet=" + mDependencyMet + "}"; } |