Telephony: Specify file path when reading contacts from EF_ADN

Some cards, like RUIM and UICC with CSIM, have the same file ID for
multiple EFs. e.g. EF_ADN and EF_CSIM_LI. When trying to retrieve
the EF_ADN from such a card, the path gets mapped to that of
EF_CSIM_LI resulting in incorrect behavior.

To avoid this, specify the EF Id and the path to uniquely identify
EF_ADN, when reading contacts.

Change-Id: I2dd94192d5db51b569c02ac1a46e8fcd71910a47
CRs-Fixed: 428259, 533392
(cherry picked from commit 631da802510a313774c470c273eebd21d6af905c)
(cherry picked from commit eb47b59d3ff5cce2be1211f3e2bdd6725adf2cf7)
(cherry picked from commit f34c191c176eb3ab46c20848fedf980a25088206)
Revert "Telephony: Add CallFailCause values for clear code"

This reverts commit 3f75d4afaeb5591a23d665d9a87b6b998666eed6

Change-Id: I0b4627d5a37e7714965af17c8a6a163cd7b30f92
MSIM: Fix Default DATA subId switch issue

- Fix to do not call DDS request when valid subscriptions
  are not available.
- Handle and update the SIM state info of a subscription when the
  SIM state change event belongs to that.

Change-Id: I3ffc4cbd40a91372c121d315e75e39da52dbd403
CRs-Fixed: 761866
Fix LTE data call issue with OMH SIM cards.

Do not use OMH profiles for data call on 3GPP RATs.
Reduce the APN retry delay for APN_CHANGED and NW_TYPE_CHANGED
reasons.

Change-Id: I596a4585352a323338d2f05809cf26eb9c7b9edc
CRs-Fixed: 763912
Merge "Revert "Telephony: Add CallFailCause values for clear code"  This reverts commit 3f75d4afaeb5591a23d665d9a87b6b998666eed6"
Merge "MSIM: Fix Default DATA subId switch issue"
Add support for SRVCC connection clean up in Ims Service

Added support for SRVCC connections to be cleaned up in the IMS
Service by calling close opertion on the call session and
subsequently removing the call session from list of tracked call
sessions

Change-Id: I850ab111c884bbe7698810b15d0e9c8bdb10e8c9
CRs-Fixed: 759866
Add fix for picking correct Handover connection

A single handover call cannot track both the foreground and
background call state after handover.

Added support to go through all the handover connections and
pick the first match based on the number and if there is no
match check the state.

Added support for tracking the state of call associated with
the connection before handover. This is used to retrieve the
correct connection based on state.

Change-Id: Iec87c09523d459998d0880252a71f98eb8e296a2
CRs-Fixed: 760336
IMS:Re-Initiate Conference Call from Leaf Node Causes Conference Call Crash.

During conference call, if there is an incoming call and user accepts it,
the ims FW triggers two accept commands since ims FW triggers the onCallHeld
multiple times for conference call.
The multiple accept commands causes the ims ril to respond failure. As the result,
the call drops and also crash occurs.
The fix is to block the multiple accepts in ims FW layer.

Bug: 17606426
Change-Id: I89904d4c64dad0d19398f74408ddc177f59c40ce

Propagating isMultiParty indicator from RIL up into Telephony layer.

- Changing ImsPhoneCall to return the multiparty bit from the ImsCall
instead of depending on the number of connections present.

Bug: 18058253
Change-Id: I0f81f16e38d3a907c8e81143b0f36d2d17e7f971

Implement test IMS conference event package harness.

Implement test conference event package intent receiver and parser which
allows the user to issue an intent to cause a test conference event
package file to be injected into the current ImsCall:

adb shell am broadcast
-a com.android.internal.telephony.TestConferenceEventPackage
-e filename test_filename.xml

Bug: 18119796
Change-Id: Ic51be9442ae5b991054ccfd7655c6efd76ffd8e0

Communicating participant changes to conference controller.

- Add event handlers to pass participant info to conference controller.

Bug: 18057361
Change-Id: Ifdd2d871994fc6e347f54d1e69686f7c68a7d6b0

Changed the prototype for onCallMerged.

The removed parameter is never used and it actually doesn't make
much sense as the layer that calls this callback doesn't have
any sensible second call to return to the handlers.

Bug: 18056632
Change-Id: I4abe92c020f64692370d9ab309e0d12877bdbb06

Support disconnecting conference participants from conference.

- Added implementation for onDisconnectConferenceParticipant method in
ImsPhoneConnction.  Calls the "removeParticipants" method provided by the
ImsCall to inform the conference server that a conference participant
should be disconnected.

Bug: 18176606
Change-Id: Icab779a49382765c198494c18d8adc276189e9c3

Conference event package performance improvement.

- Instead of sending each participant to the telephony conference
controller, all participants are sent at once.  This way the conference
only needs to be recalculated once.

Bug: 18057361
Change-Id: I2e81a14ac6ad2858cf70d98ba0b7e14f0bd55cb5

Clear disconnected connections when detaching.

This bug was happening because there was a disconnected connection
lingering on the background call after it is resumed. Because of
this lingering connection, its state remained on HOLD and did not
return to IDLE.

This caused the phone to get in a bad state, such that when trying
to unhold the conference later on, there foreground call is ACTIVE
and the background call is HOLD, which precludes unhold from working
properly.

This fix for the bug would clear disconnected connections from the
ImsPhoneCall after detaching a connection.

Note: clearDisconnected also updates the state to IDLE, which is why
I deleted that code.

Bug: 18291230
Change-Id: I09b5e274408235a9b6630d40bf3a3161676ffc79

Return MERGED_SUCCESSFULLY as a disconnect cause.

If a call was merged, change the disconnect cause to
IMS_MERGED_SUCCESSFULLY instead of NORMAL (because it was not
actually terminated as the result of a remote disconnect).

Bug: 18291234
Change-Id: I4cff83ace2aaa6062f4e182e9ac0f441bf77a23a

Add null-check to isMultiparty method, additional debug strings.

Bug: 18200934
Change-Id: I4b146046dc0d9f5ebb7c37151d95d81629a3dd25

Change-Id: I4b146046dc0d9f5ebb7c37151d95d81629a3dd25
Clear disconnected calls

Clear disconnected call from connection

Change-Id: I156bd58965644b1082b5f0a7fd2ff0a697e7330b
Merge "Telephony: Specify file path when reading contacts from EF_ADN"
Merge "Fix LTE data call issue with OMH SIM cards."
Merge "IMS:Re-Initiate Conference Call from Leaf Node Causes Conference Call Crash."
Merge "Add support for SRVCC connection clean up in Ims Service"
Merge "Add fix for picking correct Handover connection"
Merge "Clear disconnected calls"
Telephony: Generic Blacklist support (5 of 5)

Change-Id: Ida51f9b1aa1f11b6179f623ede89c314d3f92f65
Move message blacklist to framework (1/3).

Change-Id: I321e3a3c40dd49772978258e8a27208868a22332
Store phone blacklist in content provider (1/4)

Change-Id: I9dafdb3e10bd2a71695c2a02cc483c594d86c543
Proper supplementary service notification handling (2/5).

Allow registering SSN listeners, and add missing constants.

Change-Id: I339a395fda5cca7617e7619cfc93312a1282f60e
(cherry picked from commit cd50fa78f8878dca87632b81c6059378d432e516)