History log of /frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
aacc11b299ac047e73e1e712aa396ea0a6a80158 18-Aug-2015 Robert Greenwalt <rgreenwalt@google.com> Allow us back on the network after carrier-detatch

We had code in DcTracker to deal with this but the MR1-originating
DcSwitchStateMachine interceeds. Exposing the switch so
DSSM can access it and behave appropriately.

bug:23069223
Change-Id: I7a674d3b662aa0a7eec5a54889a784a2b64d662c
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
ee665b78ad648abd98b019a9c9047f206ed22994 30-Jul-2015 Robert Greenwalt <rgreenwalt@google.com> Release DataConnection when a rety is interupted

We had code that simply set the ApnContexts state to IDLE, but
there was still a connection between ApnContext and DataConnection,
so when looking for a DC, we'd skip this one (it's busy) and when
the rety alarm fires we end up with a second DC attempting to connect
to the same APN.

bug:22410092
Change-Id: Id4ab6a4f1f08588e552e846a1986f93192a72568
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
987d6a1e19a43e1357b1223d89dec82701c6a779 30-Jul-2015 Robert Greenwalt <rgreenwalt@google.com> Merge "Revert "DO NOT MERGE Add logging to detect the start of a sync problem."" into mnc-dev
bca51fc3a191d3ca30df627b75374db0941571c5 21-Jul-2015 Sungmin Choi <sungmin.choi@lge.com> Use apn id which contains default type when merging apns

In case of the following conditions, UI does not show preferred apn.
1. there are default and mms profile, respectively.
2. apns for default and mms are same.
3. mms profile is prior to default profile.

To fix it, use apn id which contains default type when merging apns.

Bug: 22641500
Change-Id: Ieec521f715f137aa7a827ee010390e3c47b35da1
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
2f5e0f602beab84c8ba1a9c8ee7736c9df62b0be 29-Jul-2015 Robert Greenwalt <rgreenwalt@google.com> Revert "DO NOT MERGE Add logging to detect the start of a sync problem."

This reverts commit f65485c99cf0fb0e844ae9e39c2c6cd6bae0fd2c.

bug:22632129
Change-Id: I531668bc0874c71c70773ceda071cf5a7f5c1121
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
f65485c99cf0fb0e844ae9e39c2c6cd6bae0fd2c 24-Jul-2015 Robert Greenwalt <rgreenwalt@google.com> DO NOT MERGE Add logging to detect the start of a sync problem.

This should be removed prior to shipment!

The DctController is getting out of sync with the ApnContexts. Add a callback
mechanism so the ApnContexts can let DctController know when they apply a change
and then when all is quiet we can compare and verify everything is good.

Potentially can fix the problem detected too (if there should be no live requests, nuke
the ref counts) but currently turned off so people will notice problems (battery life) and
file bugreports with the data of how it started.

bug:22632129
Change-Id: I84a67687f0b6dc43b2e429943935f4045ffc51ed
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
0d2abb5518d6a86619d2c2db04867c338b2092d4 17-Jul-2015 Robert Greenwalt <rgreenwalt@google.com> Support optional modem restart on certain errors.

Error counts are shared between all APNs, but fresh connect attempt
resets the counts.

bug:22455853
Change-Id: Id398a223d33d42f979b5cdc4a2bc263e92eb73cc
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
f15fec95574304db6a7f434fb606276f4b614e85 14-Jul-2015 Robert Greenwalt <rgreenwalt@google.com> Merge "Add logging for telephony network requests." into mnc-dev
2dde8b1659b1eb231e667bc19307ef294b627beb 09-Jul-2015 Robert Greenwalt <rgreenwalt@google.com> Add logging for telephony network requests.

Try to track and retain what happens to requests to get to the bottom of
20731384.

bug:20731384
bug:21641873
Change-Id: Iabb01b3866c6748323a967e26c008246b29bdb17
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
4bd0ae43eb0cb9969dee4f30cddc18a71da68190 10-Jul-2015 Jack Yu <jackyu@google.com> Fixed that phone service crashed during boot up issue.

bug: 22357173
Change-Id: I3b76a74c698e22c887b3482a3bdcbc34982ec658
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
60bc489803a3557526e1f95e34c237e70f28bc50 28-Jun-2015 Sungmin Choi <sungmin.choi@lge.com> Add sort parameter to query apns

Sometimes, result of query apns is not sorted by _id.
As a result, device tries to conntect data using unwilled apn.
For example, when user inserts 45005 SIM, create all apnlist as the followings:
1) L version
_id name
2516 SKT LTE INTERNET
2517 SKT 3G INTERNET
2518 SKT LTE Roaming
2519 SKT 3G Roaming
2) M version
_id name
2518 SKT LTE Roaming
2516 SKT LTE INTERNET
2519 SKT 3G Roaming
2517 SKT 3G INTERNET

Device tries to connect data using "Roaming apn", so user can't use data.
To fix it, add sort parameter to query apans.

Related-Bug: 22159434
Change-Id: I5743813236c8143fb83800b9ed0b2a98b33d6a51
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
bf660a4647db8151609cdfa0ecc4c96e1518947f 30-Jun-2015 Sungmin Choi <sungmin.choi@lge.com> Add getPreferredApn() in buildWaitingApns()

Now, only createAllApnList() calls getPreferredApn().
Unfortunately, in this time, getSubId() may not be proper value.
So getPreferredApn() could not get value which we want/set as preferred apn.
As a result, preferred apn is null and wrong apn info can be sent to modem
and be used by SETUP_DATA_CALL procedure.
To resolve this, just add getPreferredApn() in buildWaitingApns().

Bug: 22159434
Change-Id: Iee92325aa91c5c470328055746c321065a9829d4
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
9232dafa7ea833fc0b3a6024d6c7e23fc8e961ea 01-Jul-2015 Robert Greenwalt <rgreenwalt@google.com> Log reduction

Found all this while checking out 21957591. My work there was
a bust, but don't want to lose this logging cleanup.

bug: 22225815
Change-Id: I7a3e932e06d035066d4adbc10c99ecf2a20be5fd
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
735bc2f4524d68155765351912ffae11306c3bd5 13-May-2015 Chris Manton <cmanton@google.com> Reload Apn settings upon technology change

Service providers may require different APNs for
different radio access technologies (RATs).
If a RAT changes during a retry data connection
the device may repeatedly try to re-use invalid
APNs for the given technology.

This change adds a check for connection retry in
addition to failure to reload Apn settings.

bug: b/20098693
Change-Id: I5208699b06807e73bcb17413fa803c397249fbd7
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
63913dc903872c45bab7d2483d633d845dd9c5d6 13-May-2015 Amit Mahajan <amitmahajan@google.com> Move apn related helper functions from DcTracker to ApnSetting.

Bug: 10719093
Change-Id: I942ce59995afffd395f7d73e4fd70674db0f643f
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
aaf0e8d623b1e94004557573aef9235177ca19e3 16-Apr-2015 Amit Mahajan <amitmahajan@google.com> Adding bearer_bitmask support.

Change-Id: I4da0bdd6de16963a60218789154da17f40fec8cd
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
e05e489c16abe0311a783f089904f9f71fb7c399 16-Mar-2015 Vinit Deshpande <vinitd@google.com> Merge remote-tracking branch 'goog/mirror-m-wireless-internal-release'

Change-Id: I80c47b7384f104d5a3680cc34e9cbb11145ee4a0
c5ebc2100d4cd77c2bce7785180f3d7d735d48fc 11-Mar-2015 Lorenzo Colitti <lorenzo@google.com> am 68897126: Merge "Remove dead code, mostly DataStateTracker."

* commit '688971268675affdfe0bfe856f4100e0031fbf4c':
Remove dead code, mostly DataStateTracker.
efab986836683a6f8bb32ec92ff9da702b8fca15 21-Nov-2014 Paul Jensen <pauljensen@google.com> Remove dead code, mostly DataStateTracker.

Change-Id: I1433937bffdb29bd42fb1adbfcf0a50ceffac7dd
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
90c8cf76cc35ff4b510ec62c0f1a6ef22a0c4dc2 03-Mar-2015 Shishir Agrawal <shishir@google.com> resolved conflicts for merge of 1d92343e to lmp-mr1-wfc-dev

Change-Id: Ib0a8bc425ab43be4938d431d9aeaa236b76b0517
0469925aace7a2254e0cef90bd7398fbd72622fa 24-Feb-2015 Shishir Agrawal <shishir@google.com> DcTracker: Cleanup connections when IccRecords is destroyed.

The IccRecords are destroyed when the SIM goes through a state change like a
refresh reset. Attempting to setup data connections when in this case can lead
to incorrect APNs being passed to the radio.

The change will cleanup all data connections when IccRecords are disposed off.
New data connections will not be setup because SIM ready checks are done
before setting them up.

Bug: 19379406
Change-Id: Ide24ec3ab08bd8e76d4a98a47b4f0509987c11eb
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
0e42864afb21261d6bd2e9b4aa97f6d01d039a25 23-Feb-2015 Yashdev Singh <yashdevs@codeaurora.org> Telephony: Implementation of IWLAN

- Allow registration polling in radio off state.
- Disable default APN if current RAT is IWLAN.
- Allow non-default PDP activation in radio off state provided
current RAT is IWLAN.

Set data registration state in APM for IWLAN RAT
- APM causes data registration state to be POWER_OFF. Set it
to IN_SERVICE for iwlan case
- In APM, UNSOL_VOICE_NETWORK_STATE_CHANGED resets data RAT and
registration state to POWER_OFF. Ensure that this is done only
when current RAT is not IWLAN or when iwlan feature is not
available.

Change-Id: I419f3df987ef90bb5f31b0e381257a81dcc57c3b
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
0710ff7ae80f217782f08528c5406f6d26a29f75 04-Feb-2015 Robert Greenwalt <rgreenwalt@google.com> Add comments to explain what we're currently doing

The IMS merging of call state is non-obvious from the outside and while
the code here works it's a bit vulnerable to well-intended changes.

bug:19160309
Change-Id: I07c100dac544a3687d3efd6567b56c6e4376eefb
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
b79f845a0451895b0f0b8a926a8571511d476ce8 20-Jan-2015 Libin.Tang@motorola.com <w16529@motorola.com> Add an API to access the CDMAPhone/GSMPhone call tracker state for DCTracker to check

As concurrent voice/data is not supported for all RATs, the DCTracker checks
the default phone's call state through getState API as one of the conditions
to set up data call.
For device supports VOLTE, the default phone's getState reflects the
default phone(CDMAPhone/GSMPhone) and IMS phone call state.
So the data call can't set up if the VOLTE call is in progress.
As IMSPhone call state should not impact the data call setup, this CL is
to add an API to access the CDMAPhone/GSMPhone call tracker state for
DCTracker to check.

Bug: 19090488
Change-Id: I96bb29f80d81fa6b39e2e05f1d7f47a72244ed9b
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
45eaa2335e64a8ff1ad8d5e8224c580ef996f370 12-Jan-2015 Wink Saville <wink@google.com> Add additional debug logging.

Bug: 18950975
Change-Id: I2d826dc4c355d7b940fee90f1bdff946128166e6
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
9a90f1dde8fa4bd7b1606742909c2f2f28a28a2f 06-Jan-2015 Hui Wang <huiwang@motorola.com> On apn change, only clean up those data connection using the updated
apn setting

Bug: 18923165
Change-Id: I89a5772deb97437032edf642fdaa104eb4ed558e
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
2bb2331aa5c5285f70a7404d61ee71ede4831056 06-Jan-2015 Shishir Agrawal <shishir@google.com> Data roaming/enable settings should be per phone on a single SIM device.

On a multi-sim device it is dependent on the subId. But for a single SIM
device it should be a property of the device.

Bug: 18814559
Change-Id: I53ae2604db856914453aa4861e12b051700d187c
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
c2d1d6b2725b4611360d2725624a0d8905d75694 16-Dec-2014 Robert Greenwalt <rgreenwalt@google.com> Don't rety permanent failures on every RAT change

The code to retry on RAT change was added to catch cases where
we had disconnected because of the RAT (specifically the
RAT disallowed simultaneous voice and data). Made our
RAT-change handler more focused so it now will
retry failed networks if the new RAT causes a change
in voice concurrency or APN list.

bug:17944570
Change-Id: I3d46328f45584fdf9cf927b176104ff2c8233304
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
434fa420329b093f68d83862a637c7ded93a4daf 12-Dec-2014 Craig Lafayette <craiglafa@google.com> Fix build. Use isValidSubscriptionId in DcTracker.

Change-Id: I1cd2250a78daaac896070fbff58ad2c1a75c3b7f
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
2b0f0da4f9fe8449c578632b491e2f158c201bd5 10-Dec-2014 Stuart Scott <stuartscott@google.com> Do not allow data if defaults are not selected.

bug:15925985
bug:18269924
Change-Id: I2eca123a358eeadf9d22cfe6cc55627a9387546a
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
ffdf8ce51e37e5e45791c9ea11604aa00dffc88e 15-Jul-2014 Jing Zhao <zhaojing@motorola.com> Separate voice and data roaming state & roaming type.

It is possible for voice and data registered on different network,
so the roaming state could be different.

Set voice and data roaming status and roaming type separately.

Bug: 17318123
Change-Id: Iede9132cbf94bc9971702bd9232374585edd5cd0
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
c9e4b3e8c1be7626ddbb81d49457e529a4e33847 19-Nov-2014 Amit Mahajan <amitmahajan@google.com> Using default setting if setting+subid is not found.

We should do this for other settings as well; fixing just this for now
to fix HFA bug.

Bug: 18392680
Change-Id: I360bc19c4501020afd9dfa1cfb7e66ce2fad9536
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
91bce2abae052df918cb546b9c5d205706ede026 08-Nov-2014 Shishir Agrawal <shishir@google.com> NPE: DcTracker.isApnSupported should return false on null input.

Bug: 18238326
Change-Id: I4ceb4855c7c2e1dbfde123512690cd845e8c74a3
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
2ba7bb72c1706e265f7e572fcf2fa1887430dade 31-Oct-2014 xinhe <xinhe@google.com> Bad merge in DcTracker (lmp-sprout-dev): mAutoAttachOnCreationConfig
always set to true

Bug: 17684566
Change-Id: I904e0de44ce16c080f9f3fab83f064d76eb56e3c
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
b237a11044ed842d2865ff8c8716befb06b6ca25 25-Oct-2014 Wink Saville <wink@google.com> Change subId to int from long

Change-Id: Idae6335e63e7b1e4e714bc17e71b1a4705e38474
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
d10a9057b2dd78ea698dd64c25f1a5eff0c07614 24-Oct-2014 Amit Mahajan <amitmahajan@google.com> am 796d3c22: Change to consider SIGNAL_LOST as permanenet failure only if not attached.

* commit '796d3c22f21041116110735c92d7e2c3a7c8f60d':
Change to consider SIGNAL_LOST as permanenet failure only if not attached.
796d3c22f21041116110735c92d7e2c3a7c8f60d 24-Oct-2014 Amit Mahajan <amitmahajan@google.com> Change to consider SIGNAL_LOST as permanenet failure only if not attached.

Bug: 18062475
Change-Id: I6c1b220fbb3cc9798419ec190e83d3eaea16ec69
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
f37635ccc9835c19c25be947c2a755bc353eb542 23-Oct-2014 xinhe <xinhe@google.com> am d86df358: Device mobile data is not working though mobile data status indicator shows "H" with full signal

* commit 'd86df358b8fe07160caa12147b6e4ad34d378ce6':
Device mobile data is not working though mobile data status indicator shows "H" with full signal
d86df358b8fe07160caa12147b6e4ad34d378ce6 23-Oct-2014 xinhe <xinhe@google.com> Device mobile data is not working though mobile data status indicator shows
"H" with full signal

Fix: Do not merge the APN configures which have the same type element. If there
are multiple type elements in the confgures, they should be merge only if
there is no common set between them.

Bug:18080519
Change-Id: Ic3bf5979abdf1623ae57d7a9fc659f6c3005b869
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
7c580f7ad2dd8c631fc84a383a98f09990a78c13 22-Oct-2014 Paul Jensen <pauljensen@google.com> resolved conflicts for merge of 2b7b6016 to lmp-sprout-dev

Change-Id: Iaa354ddf634fa21a06eae961c7bdb5b1602e891e
2b7b6016c7a5f2c3ce9c7e623ea10a9fe9239dc2 15-Oct-2014 Paul Jensen <pauljensen@google.com> Show ProgressDialog when waiting for radio to turn on when provisioning.

Turning on the cellular radio when user selects the provisioning notification
can take 30-60s so a UI is needed to keep the user informed that the radio is
coming up. This is only for provisioning APN support (only AT&T tablets now).

bug:15990642
Change-Id: I1e77c3a1b1a24be7acc7cb3c925c002e5fa2d1a9
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
e5423c3025ca036ff884012e7f2208ce45e4398e 22-Oct-2014 Amit Mahajan <amitmahajan@google.com> am f63f536e: Merge "Change apn comparison (apnsSimilar()) to make sure same APNs are merged." into lmp-dev

* commit 'f63f536e81106549de980122f3efbef8fe86fab9':
Change apn comparison (apnsSimilar()) to make sure same APNs are merged.
61cdbcf2de392d043de0e4a533fbc615fc423000 21-Oct-2014 Amit Mahajan <amitmahajan@google.com> Change apn comparison (apnsSimilar()) to make sure same APNs are merged.

Bug: 18015631
Change-Id: I590bfb04600d6f6f6b0f552713b04616bc6a3330
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
6b4d4c9acc9a6a64a511cf1fbe403b2a6e24d25a 10-Oct-2014 Robert Greenwalt <rgreenwalt@google.com> am 8eb4b07b: Merge "Fix enabling of FailFast mechanism." into lmp-dev

* commit '8eb4b07b8535c04901cc46dc7860c87aa9e9fbfc':
Fix enabling of FailFast mechanism.
6395443719ec3ee0257085945e753d02f603886b 10-Oct-2014 Robert Greenwalt <rgreenwalt@google.com> Fix enabling of FailFast mechanism.

If you use the wrong obtainMessage it's cast into an Integer
and stored in obj instead of arg1. This causes us to retry onto
the provisioning apn in 3 seconds instead of 20 and speeds up
the process.

bug:15990642
Change-Id: I3deb32d49c9fa77b16af9daf5c6ffb682363f6d1
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
c0f0cb783124b8be684cbd7a45f0f1cd3cc3b60a 06-Oct-2014 Robert Greenwalt <rgreenwalt@google.com> resolved conflicts for merge of d8e86a5e to lmp-sprout-dev

Change-Id: I873ca35a7baf57e52a41918a7daade7467540c00
29c6659c8767212d23d417f2b7f032b6c0d82119 03-Oct-2014 Robert Greenwalt <rgreenwalt@google.com> Merge similar APNs together when loading All Apns.

They should have been merged together in the DB. Do it now
at this convenient point so that we don't end up
making duplicate requests for the same apn. That can lead
to duplicate calls with diff call IDs and then netd gets confuse
and things don't work.

bug:17634414
Change-Id: Ia77e43f53456f8ecadc9e94c20301fe8a52338d7
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
0e776303ca82b5bec5db19bb44e0f13b0c7c6400 01-Oct-2014 Etan Cohen <etancohen@google.com> Fixing build - missing import.

Change-Id: I47dc727ede78c3d253702de175c9070b03f59c8b
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
62022f7a40cca775a4e9214c10ce14ac0a53a017 01-Oct-2014 Robert Greenwalt <rgreenwalt@google.com> am 2b3d92bf: Merge "Support bearer-specific DUN APN on CDMA" into lmp-dev

* commit '2b3d92bf5b79eddc8299c1236a83b508b31f3432':
Support bearer-specific DUN APN on CDMA
2b3d92bf5b79eddc8299c1236a83b508b31f3432 01-Oct-2014 Robert Greenwalt <rgreenwalt@google.com> Merge "Support bearer-specific DUN APN on CDMA" into lmp-dev
44099501f5c43b316d7d61216953269963446be2 30-Sep-2014 Paul Jensen <pauljensen@google.com> resolved conflicts for merge of e818d6a4 to lmp-sprout-dev

Change-Id: I260e385eac19c18b3ee89ad799316db3a9c52bf2
1484bfe9c58cfd2ddf59a5b8dad7373a36de946d 22-Sep-2014 Robert Greenwalt <rgreenwalt@google.com> Support bearer-specific DUN APN on CDMA

The DUN apn needs to be listed last, and this should only be used on networks
that don't show the apn editor.

bug:17571681
Change-Id: Iefa676d3c741ffb2eef201a8683429ed9dbe44d1
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
b449dc75ef4b9cb996c34a11e758f7e6ca193240 17-Sep-2014 Paul Jensen <pauljensen@google.com> Move mobile provisioning APN support into telephony and rework.

This code had to be reworked to cooperate with the new multi-network
logic. The provisioning flow when using a provisioning APN is:
1. DcTracker detects connecting to provisioning APN, puts up
notification, and turns off radio (as per b/13190133, b/10328264).
2. User selects notification. ProvisionNotificationBroadcastReceiver
receives intent, turns on radio, enables fail-fast mode,
sets up provisioning logic in DcTrackerBase.
3. When radio connects again, DcTracker.completeConnection() launches
browser to facilitate activation. Note that activation can be
performed via any internet connection so it's not a problem that
browser isn't multi-network aware.

bug:17324098
Change-Id: Ibd1c42b1a75795f90a6483d3d0a5a14f88b193d8
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
bda761320929f714951c328bfec6a51a1978db97 23-Sep-2014 Wink Saville <wink@google.com> [DS] Data supports DSDS

Main modification:
1. Handle network requests for different subscriptions according
to the priority of the ApnContext
2. Handle data attach and detach procedures when switching the active
data subscription

Modifications in TelephonyNetworkFactory:
1. needNetworkFor; network request are dispatched to DctController for
determining the active data subscription.
2. releaseNetworkFor; DctController is notified that the network request is
going to be released and the active data subscription may be changed
after the release of network request.

DctController maintains all cellular network requests. When a new request
is sent to DctController the active data subscription would be determined
again. If active data subscription has not changed, the reference count of
corresponding ApnContext is increased. Otherwise, data detach procedure
will be triggered on previous data subscription and a data attach procedure
is triggered on the new active data subscription.

After data is attached, all network requests for the subscription will be
executed. That means reference count of corresponding ApnContext will be
increased.

When a network request is going to be released, the rererence count of the
ApnContext will be decreased. DctController will determine active data
subscription again after the request is released and data detach and attach
procedures will be triggered appropriately.

Change-Id: Ie991096a986e4580efd453f0d20e43971e3fa9a2
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
8f6f52e4f7598e44cea1f9e5f4781291f9060d1d 11-Sep-2014 Wink Saville <wink@google.com> Merge commit '3f52153a5409861eaa6e9aee5c8560bf3447cf48' into fix-merge-conflict

* commit '3f52153a5409861eaa6e9aee5c8560bf3447cf48':
setup data on connectable apns on apn changed even there have already been some apns connected

To fix this conflict I removed the "if (isDisconnected" but left the
test for defaultSubId. This needs to be retested on Sprout with multiple
SIMs and HH with one SIM.

Conflicts:
src/java/com/android/internal/telephony/dataconnection/DcTracker.java

Bug: 17426028
Change-Id: I9bf2738b744cee819a3e551080e4098508e1e7fe
3f52153a5409861eaa6e9aee5c8560bf3447cf48 09-Sep-2014 Hui Wang <huiwang@motorola.com> setup data on connectable apns on apn changed even there have already
been some apns connected

If default apn setting is added after other apn types connected, deafult apn
may not be able to be connected

Bug: 17426028
Change-Id: I5022ebde6ed1f8448755d9076aa5583a84895e00
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
f013b229922b88112f5b56c4ed1734c506e6ede7 09-Sep-2014 Etan Cohen <etancohen@google.com> am 231c3c62: Fix NPE due to access before checking for NULL of APN setting.

* commit '231c3c6271a27b5f03444f4d24b52c41c46566ab':
Fix NPE due to access before checking for NULL of APN setting.
231c3c6271a27b5f03444f4d24b52c41c46566ab 09-Sep-2014 Etan Cohen <etancohen@google.com> Fix NPE due to access before checking for NULL of APN setting.

Change-Id: I7bac303a2a5d562f7f1b2569ecfa467160be52a1
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
6bc4098827f3070a44b5e51508b455d7c7be9c07 01-Sep-2014 Wink Saville <wink@google.com> ksd to lmp-sprout-dev

Change-Id: I94eb65c62231b5831570bb0cbbbd9c916bee0a37
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
3262c21feb1eede2917450cfdfd3faa86ee70cab 25-Aug-2014 Shishir Agrawal <shishir@google.com> Allow MVNO tethering APNS through gservices flags.

The change allows multiple APNs to be specified in
Settings.Global.TETHER_DUN_APN. It also adds mvnoType, and mvnoMatchData
support to the ApnSetting class.

Bug: 12977533

Change-Id: I424fc405c1e6270bf55eadb130ed839d50575cf1
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
12fffcf0d8df6b8268806d9aa7cc7a662e73743b 30-Jul-2014 Jing Zhao <zhaojing@motorola.com> Fix improper mobile data connecting event

mAutoAttachOnCreation keeps DataConnection retry connecting
while ApnContext could still be turned into IDLE state.
Make mAutoAttachOnCreation configuable and keep consistency
between DataConnection and ApnContext

Bug: 17131842
Change-Id: Iebd4886959f5458c1b10c34d2e7f96f29c71d527
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
e9701717e43cc5aacbcf624f77a53be92350662c 08-Aug-2014 w19976 <w19976@motorola.com> Configure MTU based on network PCO MTU parameter

Add logic to obtain the mtu from the network PCO parameter and set it to kernel
when the mobile data connection is established. When there is no PCO mtu configured
from the network, the mtu size defined in the corresponding APN will be used. In case
no mtu size is defined for an APN used for data connection, the MCC/MNC based MTU
defined in the framework overaly will be applied.

bug:17046179
Change-Id: I6465d4b8f2076aaa380ae3617fb3f24adbe136d4
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
9d4ec7d45061f1da05f16cd244eb0a798e7f36bb 13-Aug-2014 Amit Mahajan <amitmahajan@google.com> Revert "Revert "add apn setting parameters, and set apn parameters to bp""

This reverts commit 01f27d2c616797e5ba821159f8aca7b75aa54ae1.

Change-Id: Id9e7cf180092f320f635084f805b97f6409d0f03
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
01f27d2c616797e5ba821159f8aca7b75aa54ae1 12-Aug-2014 Amit Mahajan <amitmahajan@google.com> Revert "add apn setting parameters, and set apn parameters to bp"

This reverts commit f4b74430a8c22ab58c3fbbd6c9e7a594514a8615.

Change-Id: I1f300741d858ff39ae573e576479613b084e4616
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
f4b74430a8c22ab58c3fbbd6c9e7a594514a8615 10-Aug-2014 Hui Wang <huiwang@motorola.com> add apn setting parameters, and set apn parameters to bp

Change-Id: I395b499eb0730894620614b3261bb6a784d53f46
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
76f43316a5a6082d601bffd4b6898d0bd81e11fc 17-Jul-2014 ram <ram.pl@samsung.com> IMS: Adding emergency PDN handling for no sim case.
(Changes already reviewed on klp-wireless-dev with CL 171814)

Change-Id: I732ad4ec350256478bb2ac974722f3b9cbd0e483
Signed-off-by: ram <ram.pl@samsung.com>
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
bc78e2f9988f380a3b88d4cb4a9c0b80b8f44bee 18-Jul-2014 ram <ram.pl@samsung.com> IMS: getPCSCF() API enhanced to support multiple APN types.

Change-Id: I5e60d4f153deff5f4cb658e0548a7d9bc399e8b7
Signed-off-by: ram <ram.pl@samsung.com>
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
cf5205f70eb1eac497164124187a088ecb03fff5 19-Jun-2014 Ram <ram.pl@samsung.com> IMS: Adding Support for Emergency APN in Telephony Framework (opt/telephony)

(NOTE: No SIM case will be covered in next patch)

Change-Id: I87e653e29674f0e4821484908f799d6b84659c72

Signed-off-by: Ram <ram.pl@samsung.com>
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
ed8ec7c629dccf60a2fc817f871bab879302fdbd 18-Jun-2014 Robert Greenwalt <rgreenwalt@google.com> Merge "Remove Obsolete enable/disableApn functions."
305122cd621385652826cf7d8cd4e651dc6b5e9f 17-Jun-2014 Robert Greenwalt <rgreenwalt@google.com> Don't tear down existing cell connections.

NetworkFactories signals indicate if we're interested in making new
connections, but should not be used to tear things down.
ConnectivityService will communicate disconnects directly with NetworkAgents
when it wants them to tear down.

This fixes broken lingers and also potential score ties.

bug:15612739
Change-Id: Ib39ddadaac84898d080764afc365f09f7dce4ffa
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
58c7be5dc52e9847470112c95aaf6bbab28f9b92 17-Jun-2014 Robert Greenwalt <rgreenwalt@google.com> Remove Obsolete enable/disableApn functions.

ConnectivityService now uses NetworkAgents instead and apps should use
ConnectivityManager.

Change-Id: Ifc5c8f5be802183e70a5d92b224c819815de00e6
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
50a562c63bf42017fe260b0ea299c3419a06a46d 13-Jun-2014 Robert Greenwalt <rgreenwalt@google.com> Merge "Listen for retry intents."
d32b58c8e7cea693c98f49b2291455e917cd9301 13-Jun-2014 Robert Greenwalt <rgreenwalt@google.com> Listen for retry intents.

Re-adding code stripped out during the NetworkAgent changes. Going back
to having ApnContexts pre-initialized at startup since they are no longer
NetworkAgents. This also lets us preregister for each of their retry alarms.

Undo of damage done by: https://googleplex-android-review.googlesource.com/#/c/476836/

bug:15563289
Change-Id: I6f8855eb24d913c73fef647d4219ae7041216e2b
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
91f8e19cdafe6382ec1469167e208e2e928123cc 13-Jun-2014 Wink Saville <wink@google.com> Merge "Merge kwd to master"
a8467dd0c524787104b1ccdddc5e8af10ba729ed 13-Jun-2014 Wink Saville <wink@google.com> Merge kwd to master

Change-Id: Idb607c0aa32f80fe4fe1539aedea7a221e9e7f04
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
b36f67e82882badcf856451e1ffc78ed388c2252 12-Jun-2014 Robert Greenwalt <rgreenwalt@google.com> am 781ada03: Merge "Make NetworkCapabilities publicly immutable." into lmp-preview-dev

* commit '781ada0374c0b111c5cf9488d171c046b3079ff3':
Make NetworkCapabilities publicly immutable.
fd555a178c05e409917f22745743ed59402208e6 09-Jun-2014 Robert Greenwalt <rgreenwalt@google.com> Make NetworkCapabilities publicly immutable.

Applying API council comments.

bug: 15142362
Change-Id: Ie0bde68b72656a676d90c0343b9756fe9268d8d6
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
62c954a7a7c4199956c127fcb575ed9114d44491 27-May-2014 Robert Greenwalt <rgreenwalt@google.com> Apply refactored NetworkFactory.

Make NetworkFactory a concrete class and divide responsibilites between it and NetworkAgent.
Factory will track requests and by default give a single connect/disconnect api for ease
of use. Then NetworkAgent is created and destroyed as needed with very simple logic.

Change-Id: I401c14a6e5466f2fc63b04219b97ff85bb9af291
(cherry picked from commit 071b9f85ac559a35430ed37c03a66271977b9d17)
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
f3ab6ab303e1da929ce26b7c5d63565bff136221 23-May-2014 Robert Greenwalt <rgreenwalt@google.com> Revert "Switching to NetworkAgent API"

This reverts commit bce3d2575122929bb27ec8a37d56e96da39a3ca2.

Change-Id: Ia7d1752d4ba9f74f55657c7dbe4d64d60064394f
(cherry picked from commit 608588e9af271f0f5640236809f27c626f9d98e9)
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
071b9f85ac559a35430ed37c03a66271977b9d17 27-May-2014 Robert Greenwalt <rgreenwalt@google.com> Apply refactored NetworkFactory.

Make NetworkFactory a concrete class and divide responsibilites between it and NetworkAgent.
Factory will track requests and by default give a single connect/disconnect api for ease
of use. Then NetworkAgent is created and destroyed as needed with very simple logic.

Change-Id: I401c14a6e5466f2fc63b04219b97ff85bb9af291
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
608588e9af271f0f5640236809f27c626f9d98e9 23-May-2014 Robert Greenwalt <rgreenwalt@google.com> Revert "Switching to NetworkAgent API"

This reverts commit bce3d2575122929bb27ec8a37d56e96da39a3ca2.

Change-Id: Ia7d1752d4ba9f74f55657c7dbe4d64d60064394f
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
220d43e0611edd0f3a2eb7a33bb38a008fff0868 29-May-2014 Wink Saville <wink@google.com> Revert "Fix build: Revert "am 9349bd96: am 7d604d74: am ccb1ae5a: Merge "When Data RAT changes the new RAT retry connectable APN\'s"""

This reverts commit a82185ccdc6df168fcd093bf49b9c2ada0e1c080.

The original commit used EVENT_DATA_RAT_CHANGED but it was defined
in frameworks/base/telephony/*/DctConstants.java by this AOSP
change:

fb61bfa4470332a7ccfca7a2df5e13baca49d9fa

And I'd forgetten to submit it. Now that EVENT_DATA_RAT_CHANGED
is defined I am reverting the revert.

Change-Id: Ied6665136cb6c36053c8fe03eee5e9f87b637f38
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
a82185ccdc6df168fcd093bf49b9c2ada0e1c080 29-May-2014 Ed Heyl <edheyl@google.com> Fix build: Revert "am 9349bd96: am 7d604d74: am ccb1ae5a: Merge "When Data RAT changes the new RAT retry connectable APN\'s""

This reverts commit a259f97accfbad749731e4e95152f2ef3f1115f7, reversing
changes made to cbb34dc8c740d77506d51bb1c9045402301da32e.
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
a259f97accfbad749731e4e95152f2ef3f1115f7 29-May-2014 Wink Saville <wink@google.com> am 9349bd96: am 7d604d74: am ccb1ae5a: Merge "When Data RAT changes the new RAT retry connectable APN\'s"

* commit '9349bd96eb30f992b76d2a5a84eb593a093fdeef':
When Data RAT changes the new RAT retry connectable APN's
50d5d9678ef0e14b2426979eb908afff773d40ec 01-Feb-2014 Zhang Wei-e7976c <e7976c@motorola.com> When Data RAT changes the new RAT retry connectable APN's

Issue: In the scenario where phone is in LTE and has data up and running, then user makes a voice
call. During voice call, devices moves out of LTE coverage and moves into 1X. Since 1X does not
support simultaneous voice and data, the data call will be dropped. When the device moves back
into LTE coverage later, device does not attempt to set up the data call again until the voice
call is ended. This causes the data stall.
Fix: register for EVENT_DATA_RAT_CHANGED and attempt SETUP_DATA_CALL upon receiving this event.

Change-Id: Ibe9e68295661f2f2ffaca3057d696df6a1db3f0c
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
4dfda5470a2582c0fb543ead6c79ccf598c580e0 16-May-2014 Robert Greenwalt <rgreenwalt@google.com> Add unregisterNetworkFactory

Telephony creates multiple network factories sometimes (Rat changes). Give
it the ability to unregister the prior ones first.

Also, pass a name for identification purposes.

bug: 15003007
Change-Id: I717d63363f25c446f8ecf38d933b1a35d744af6e
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
bce3d2575122929bb27ec8a37d56e96da39a3ca2 30-Apr-2014 Robert Greenwalt <rgreenwalt@google.com> Switching to NetworkAgent API

Change-Id: I7bca6f65ba1c616d821db50b0d24772520c787a7
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
96cce86cf08e37e0f09ed5057b1196e26b302743 09-Apr-2014 Robert Greenwalt <rgreenwalt@google.com> Replace LinkCapabilities with NetworkCapabilities

bug:13885501
Change-Id: I4ebc184c29278c385364ab0993c8783dfd9086fb
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
9c180aedfc9f0d20525c0128487d3500e6c0a715 02-May-2014 Jason Monk <jmonk@google.com> Support renaming of ProxyProperties to ProxyInfo

Change-Id: I151bb50bfafac46ad375dec4908e0470f2823d8d
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
a29f56db119b93cc5f66c1cf2091a70ef886b30c 14-Feb-2014 Wink Saville <wink@google.com> Merge "Handle DATA_CALL_LIST in DCC and update dataActivity properly"
b077af12dfe0abfcdd51ce5c9852940b89567e99 24-Aug-2013 Yashdev Singh <yashdevs@codeaurora.org> Handle DATA_CALL_LIST in DCC and update dataActivity properly

Update mActivity in DCC before notifyDataActivity. Without this change,
the notifyDataActivity was notifying incorrect data activity status
due to race condition between DCT when mActivity was updated and
DCC thread where notifyDataActivity was called.

Bug: 11596853
Change-Id: Iffb7bf369062264dd773338c732bc69318d90b73
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
0742246233c3f03f864d23e52d89e1845d994701 27-May-2013 Antonio Marín Cerezuela <amarin@swissms.ch> Telephony API extension v2

Added the following notifications:

public void notifyPreciseCallState(Phone sender);
public void notifyDisconnectCause(Connection.DisconnectCause cause, int preciseCause);
public void notifyPreciseDataConnectionFailed(Phone sender, String reason, String apnType, String apn, String failCause);

Change-Id: If3b88c679507c529b746046c4a17cf6d9974bd09
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
449cbf85380bd1d6716b7ab002da1efb9493bb02 15-Nov-2013 Wink Saville <wink@google.com> if provisioning apn conditionally restart the radio.

Some radios need a swift kick in the butt after provisioning.

Bug: 11673637
Change-Id: Ie758a303fd751d204fd6baa60217e88df6376aae
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
3fad7daba62dcb7aafc4adc7f8cc123726ed5a7c 31-Oct-2013 Robert Greenwalt <rgreenwalt@google.com> Add single-pdn arbitration.

If a device or network can only support a single data connection
then we need to tear down lower priority connections in favor
of higher priority requests.

bug:10212445
Change-Id: I5ff38ae3be993aee51b6716045e6857b4f2942af
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
c8dc0c8244aac9f3985a53bc94b8ec2e295db430 17-Oct-2013 Robert Greenwalt <rgreenwalt@google.com> Change how we use provisioning url so post works

Needed to do an http post instead of a get for one carrier.
Do this by putting an auto-submitting form in the data to be
interpreted as a html doc by the browser. The ACTION_VIEW
intent only works on http uri, but by specifying ACTION_MAIN/
CATEGORY_APP_BROWSER we could use data:text/html.

bug:11168810
Change-Id: Ifd33e1c3c7f9f40b6add39e446e6a7d7cde22549
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
45df26444864daad60afdd4d121ab4043da3834b 07-Sep-2013 Sungmin Choi <sungmin.choi@lge.com> telephony: Set profile DATA_PROFILE_TETHERED when DUN type

Bug: 11152852
Change-Id: I018e3dfb9c8183b11faedc83cc40be658173c4a3

Conflicts:
src/java/com/android/internal/telephony/dataconnection/DcTracker.java
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
150b65fc3b52beab23f0d714e4c3166f90d3985e 11-Sep-2013 Robert Greenwalt <rgreenwalt@google.com> Remove special code for fake CDMA APN

revert of https://android-review.googlesource.com/#/c/62943/2

Solved the need for sprint using bearer-specific APNs instead
as the phone type is not a reliable trigger.

bug: 9315957
Change-Id: I0e5545ab4706df2c5917c7534291644c5d8797b3
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
a08decf911ab55f06a0972a2ecb1995c46d9ac1e 30-Aug-2013 Wink Saville <wink@google.com> Merge "Add support for a provisioning apn." into klp-dev
c9b81a0c05128694c617fcdd67e73821895822fe 29-Aug-2013 Wink Saville <wink@google.com> Add support for a provisioning apn.

When there is a provisioning apn, such as lwaactivate from AT&T it is
not necessary nor desireble to try to make network connections as
they will be no TCP ACK's to SYN messages, except for a limited set
of operator white listed addresses.

This is implemented by adding two commands CMD_IS_PRVISIONING_APN
and CMD_ENABLE_MOBILE_PROVISIONING. These are used by ConnectivityService
CheckMp and to know when we are connected to a provisioning apn and to
turn actually bring up the connection when the user needs to provision.

Also, incorporate the sEnableFailFastRefCounter change from klp to make
a singleton and remove the RuntimeException.

Bug: 10328264
Change-Id: I3925004011bb1243793c4c1b963d923dc2b00cb5
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
9894b3fb2f35e21d9cfd45f233ed093589e14c26 24-Aug-2013 sy.yun <sy.yun@lge.com> fix trysetupdata when mAutoAttachOnCreation true

mAutoAttachOnCreation=true means that device can attach PS network
automatically. To do this, DCT should setup data call even PS is detached.
but when mAttached is false (PS detached) It blocks to setup data call
regardless of mAutoAttachOnCreation value. So changed to allow setup
data call when mAutoAttachOnCreation is true and mAttached is false.

Bug: 10196651
Change-Id: Ia121eb75cbbe932b94efe4c09eb3cb26f1ca1c52
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
b256cf8dcb3a478bd0b47a74a5e355c6f4c03d85 23-Aug-2013 Robert Greenwalt <rgreenwalt@google.com> Merge "fix mvno_match_data OutOfBounds Exception" into klp-dev
59a71354e0169c7877ffd56d476ddd65ecf5a88d 19-Aug-2013 Robert Greenwalt <rgreenwalt@google.com> fix mvno_match_data OutOfBounds Exception

When the length of mvno_match_data is greater than GID from IccRecord,
it will generate StringIndexOutOfBoundsException.
Threrefore, codes are changed to use startsWith() instead of subString().

Bug: 10171336
Change-Id: I827b1d3b861d74e736875bbec1ba5bd28c6c3941
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
7ab10e4710bdb54c6d9a5ee01cd443a42a2689f5 14-Aug-2013 Sungmin Choi <sungmin.choi@lge.com> Change set position of mAttached

When re-attach network after detaching, mAttached.get() is always false.
Although network is attached in modem side and state is connected,
phone cannot know whether connection state or not.
Because nobody notifies to phone.
So before notifyDataConnection(Phone.REASON_DATA_ATTACHED), set mAttached true

Bug: 10070685
Change-Id: Id1356e1c7e188bd484d892dc4255c3aefc81a032
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
11a8314b443c1f1fefa0636f40127f98449846d7 02-Aug-2013 Wink Saville <wink@google.com> am 4ce0e815: Merge "Create ApnSetting if none are found in database."

* commit '4ce0e815f8b0a796685fbc931cd6760c27172a0f':
Create ApnSetting if none are found in database.
f46817da20f9628b7e55d1bb6ff0493f82dd9d85 18-Jun-2013 Alex Yakavenka <ayakav@codeaurora.org> Create ApnSetting if none are found in database.

Bug: 9315957
Change-Id: I0cf0debb703f6a4cad35300315922a5566871f85
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
1b5fe200e47f40f82f0e28502a5f40bce64a82e6 27-Jul-2013 Wink Saville <wink@google.com> Add support for an initial APN

Add PhoneConstants.APN_TYPE_IA, DctConstants.APN_IA_ID and enhance
setInitialAttachApn to use the new Initial Attach apn.

Bug: 8733613
Change-Id: Ia627ac0cf5715660b6d02bb13a83d46ec1727b87
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
bbcd0e4257ad545a6466697088fc4ddec3464547 23-Jul-2013 Wink Saville <wink@google.com> Hipri should not be enabled when we initialize.

Without this fix hipri starts at boot mobile data won't be shutdown
as refCount won't go to zero.

Bug: 9475300
Change-Id: If9587fa5360d777328fda59bbea61a2cbd9fe804
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
e056c8263473f67dc78630f5535c3664fabacd23 02-Jul-2013 Wink Saville <wink@google.com> Merge commit '1f95c96e' into fix-merge-conflict

* commit '1f95c96e':
Add CMD_SET_ENABLE_FAIL_FAST_MOBILE_DATA to DcTracker.

Conflicts:
src/java/com/android/internal/telephony/dataconnection/DcTracker.java

Change-Id: I7c7234d1b13647a0534a77937ea51d4051043a55
ec107cb8a36181fa26e61ab51f423ba862deb0fa 28-Jun-2013 Wink Saville <wink@google.com> Add CMD_SET_ENABLE_FAIL_FAST_MOBILE_DATA to DcTracker.

To fail fast we turn off data stall detection and do no retires.

Bug: 9279964
Change-Id: I42c326a21e05aa301e9d974ed9ac1d59472780ec
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
017166876a51eda9ae6b3254119023604e249bc5 12-Jun-2013 Wink Saville <wink@google.com> Merge commit '6aebe10f' into fix-merge

* commit '6aebe10f':
Fail on permanent errors in DcTracker.

Conflicts:
src/java/com/android/internal/telephony/dataconnection/DcTracker.java

Change-Id: Icbee3d7c73fa170813e0683fb7c22dd78e08d6e8
4a65a2c9c5d5a46453064e7047582d9045e8addc 11-Jun-2013 Wink Saville <wink@google.com> Fail on permanent errors in DcTracker.

This reverts the retry added when fixing bug 9240744:

https://googleplex-android-review.git.corp.google.com/#/c/315817/2


Bug: 9373372
Change-Id: I15d8dcc2c04174d54dd33f8a34813fd72764fc77
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
fcc57e87d1620ab7dc877d65e7e85dca77132054 03-Jun-2013 Wink Saville <wink@google.com> Do not retry forever in DataConnection.

When we are initially to connect we limit the the number of
retries so as to go through the list of waiting apns. But if retry
forever is enabled, as it is with Verizon devices, we can burn the
battery down quickly because we're retrying with short initial
timeouts.

In this change I also increase the timeout between apn retries from
5 seconds to 20 seconds to further reduce battery drain when retrying.
And added a retry with a longer timeout if to keep the contract with
ConnectivityService that when enabled we will continue to retry.

Bug: 9240744
Change-Id: I45b9ec5300d602d838dbdeacdbd1fca0c4d65ee3
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
203e588e3c42a81aa8a56f595119c181a63b12ca 31-May-2013 Wink Saville <wink@google.com> Handling data registration and radio technology changing.

When the DataRegistrationState (aka DRS) or RilDataRadioTechnology changes
aka Radio Access Technology or RAT) while retrying the DataConnection
StateMachine will return the connection as lost immediately. This allows
the connection to be retried with the correct handling of the changed
DRS or RAT quickly, rather than having to wait until retires are exhausted.

Changes:

- Pass RAT in bringUp
- Add the capability to register for DRS/RAT changes with SST
- When DRS/RAT changes in DcRetryState return LOST_CONNECTION to DcTracker

Bug: 9069568
Change-Id: Id4f29a63421af65ce153d24d646c09f7a1e8269b
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
187a39f896f88eb6c5e4306d9595546654825976 29-May-2013 Wink Saville <wink@google.com> Change DcTracker to not connect or retry if detached.

If we're detached than there is no possibility of connecting
so fail early. Upon attaching enabled connections will be retried.

Bug: 9024828
Change-Id: I363cd4580aeea68d88eff0b48ce579d2f27a13f3
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
4a9b3afeb2ec4d573eca335a3706392ecf9f281e 28-May-2013 Wink Saville <wink@google.com> Change DcTracker construction so only initialization is preformed.

In initApnContexts applyNewState and onSetDependency met could cause
calls to trySetupData which can send notifications or even try to
bring up a connection. This can cause problems as not all objects are
initialized. In particular when I tried to change ApnContext#isReady
to be false it caused a call to mPhone.notifyDataConnection but mPhone
wasn't completely initialized and an NPE occurred.

Bug: 9022095
Change-Id: I6d1bf350f2803aa62fa21b6a6759685456bef6eb
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
5d5eea6ed231163c225144316b0d1913d48678a4 26-Apr-2013 Sungmin Choi <sungmin.choi@lge.com> Set initial attach apn for LTE network

When mobile register LTE network, APN provided by operators is needed.
If mobile does not have apn information, it could not register LTE network.
To deliver APN information which is used during LTE attach to modem chipset,
setLteAttachProfile() and RIL_REQUEST_SET_LTE_ATTACH_PROFILE command is added.

When Telephony DB is loaded or Telephony DB is changed, follow steps.
1. If preferred default ApnContext exists, this is delivered to modem chipset.
2. If preferred default ApnContext is null, find other ApnContext which can
handle default type.
3. If other ApnContext which can handle default type does not exist, any other
ApnContext delivered to modem chipset.

Then modem register LTE network with APN information delivered from AP.

Bug: 8733613

Change-Id: If84c62cddccf96a531dae0527ed1a6592ae76201
Signed-off-by: Seonju Oh <seonju.oh@lge.com>
Signed-off-by: Hyejin Kim <hyejin.kim@lge.com>
Signed-off-by: Sungmin Choi <sungmin.choi@lge.com>
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
da1dd2e1bccb6141109a65d4e40253f39c405537 21-May-2013 Wink Saville <wink@google.com> Retry even on permanent failures.

The contract with ConnectivityService is that we should continue
to try to connect as long as we're ready. With this change we continue
but length the delay if there were permanent failures.

Change-Id: I83acfd2b07740d3650756aa20dad67b3c53e40d6
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
74672e8ee972f12406b72551261b4cc7e0651933 18-May-2013 Wink Saville <wink@google.com> Fix setup of retry filters.

There were multiple registered filters for INTENT_RESTART_TRYSETUP_ALARM
this caused a retry not to fire and contributing to not recovering from
a RAT change error in identified by Samsung in post #22 of 8849653.

Bug: 8849653
Change-Id: I9c5cdb740d87a05dd69d72f8bc5596230b75d6f2
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
2428693913ae731d4ace3414429f5e91af24ea36 14-May-2013 Wink Saville <wink@google.com> Do a disconnect if ApnContext is ready but retrying or failed.

This change allows enabling of a ready ApnContext to reconnect if the
ApnContext is IDLE, FAILED or RETRYING. Without this change toggling
wifi or otherwise enabling the connection would not cause the connection
to be retried. Instead, toggling airplane mode would be required.

Bug: 8849653
Change-Id: I83f44dbfd412f4b0122a2108e22f36db94c59d18
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
4750c8c11836338b024e159f04f0cbd13c7444b9 29-Mar-2013 Wink Saville <wink@google.com> Fix TODO in ApnContext#setDataConnectionAc.

Callers that really need to tearDown should call it directly
rather than as a side effect of setDataConnectionAc. The fixes
a "DcActiveState ERROR no such apnContext=" message caused by
an unnecssary tearDown when disconnecting.

Change-Id: I11321d098444659d99dec97b59041cefebb3285e
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
1f2a2323572b2f3ab18234726cc1b048c670fbab 21-Mar-2013 Robert Greenwalt <rgreenwalt@google.com> Use new mechanism to get messenger to StateTracker

bug:8445208
Change-Id: Ice7dfb0b50c9481d359aed14a51372878185171c
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java
454b1dfd508844b42eb775e4ab2359be74d3672b 23-Mar-2013 Wink Saville <wink@google.com> Rename a few files and variables.

Change-Id: I4e90dbf57797b9485920f943e24fa7a4c29d070b
/frameworks/opt/telephony/src/java/com/android/internal/telephony/dataconnection/DcTracker.java