Skip to content

Commit

Permalink
Merge "Empty DC's apnList when the DC is free." into jb-dev
Browse files Browse the repository at this point in the history
  • Loading branch information
Wink Saville authored and Android (Google) Code Review committed Aug 22, 2012
2 parents 72404a8 + b44b13a commit 2e2849a
Showing 1 changed file with 17 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -996,9 +996,23 @@ private ArrayList<ApnSetting> createApnList(Cursor cursor) {
}

private boolean dataConnectionNotInUse(DataConnectionAc dcac) {
if (DBG) log("dataConnectionNotInUse: check if dcac is inuse dc=" + dcac.dataConnection);
for (ApnContext apnContext : mApnContexts.values()) {
if (apnContext.getDataConnectionAc() == dcac) return false;
if (apnContext.getDataConnectionAc() == dcac) {
if (DBG) log("dataConnectionNotInUse: in use by apnContext=" + apnContext);
return false;
}
}
// TODO: Fix retry handling so free DataConnections have empty apnlists.
// Probably move retry handling into DataConnections and reduce complexity
// of DCT.
for (ApnContext apnContext : dcac.getApnListSync()) {
if (DBG) {
log("dataConnectionNotInUse: removing apnContext=" + apnContext);
}
dcac.removeApnContextSync(apnContext);
}
if (DBG) log("dataConnectionNotInUse: not in use return true");
return true;
}

Expand Down Expand Up @@ -2131,14 +2145,14 @@ protected void onDataSetupComplete(AsyncResult ar) {
protected void onDisconnectDone(int connId, AsyncResult ar) {
ApnContext apnContext = null;

if(DBG) log("onDisconnectDone: EVENT_DISCONNECT_DONE connId=" + connId);
if (ar.userObj instanceof ApnContext) {
apnContext = (ApnContext) ar.userObj;
} else {
loge("Invalid ar in onDisconnectDone");
loge("onDisconnectDone: Invalid ar in onDisconnectDone, ignore");
return;
}

if(DBG) log("onDisconnectDone: EVENT_DISCONNECT_DONE apnContext=" + apnContext);
apnContext.setState(State.IDLE);

mPhone.notifyDataConnection(apnContext.getReason(), apnContext.getApnType());
Expand Down

0 comments on commit 2e2849a

Please sign in to comment.