aboutsummaryrefslogtreecommitdiffstats
path: root/src/java/com/android/internal/telephony/dataconnection/ApnContext.java
diff options
context:
space:
mode:
authorWink Saville <wink@google.com>2013-03-22 11:10:25 -0700
committerWink Saville <wink@google.com>2013-03-22 11:10:25 -0700
commitff4e317d24f0d23bdc0f306d53ddc51f2f1ecf6a (patch)
treeaa352435b64a19efe31c379cd49f5d8e62641e18 /src/java/com/android/internal/telephony/dataconnection/ApnContext.java
parent6ca911a976a277e69800249c924c8dbc8fc5d78f (diff)
downloadandroid_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.java68
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 + "}";
}