• Home
  • History
  • Annotate
  • only in /frameworks/opt/net/ims/src/java/com/
History log of /frameworks/opt/net/ims/src/java/com/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
9b1723376c2f04b30b677d94f9105220a014501e 06-Sep-2017 Tyler Gunn <tgunn@google.com> Prevent IMS call merge if the peer call has a pending update request.

Currently, if the user requests merge, and the call they request the merge
on is in the midst of some other pending operation (e.g. hold, resume), the
system will prevent the merge from taking place. The logic, however does
not account for the fact that the background call being merged into the
foreground call could also be engaged in some other update operation.

Added code to ensure that both calls are not actively engaged in some
pending operation.

Test: Manual
Change-Id: Icc2f3786865345435bbf138b54736fc6f09c0aa4
Fixes: 63764631
ndroid/ims/ImsCall.java
a9732050e14a92df8634fb3a0c2364d062bb3f79 31-Aug-2017 Tyler Gunn <tgunn@google.com> Merge "Ensure upgrade to video requests are ignored when video disabled." into oc-mr1-dev
118e5a88b580c98242094021063166cb0f9369ef 25-Aug-2017 Brad Ebinger <breadley@google.com> Adds Exponential backoff for provisioning results

ImsService initialization can take longer than
telephoyn initialization in some cases, which causes
ImsConfig queries to return with an error. This change
adds an exponential backoff for querying provisioning
results from ImsConfig if we get an error during
initialization.

Bug: 64540800
Test: Manual
Change-Id: I2193e42736994de3cce6fb24ee1dcc9e936bebf0
ndroid/ims/ImsManager.java
1a252db65342689248230b6dac6aa3cb0052d123 18-Aug-2017 Hall Liu <hallliu@google.com> Pin IMS on/off to actual TTY mode

Make changes to only toggle IMS on/off if the actual TTY option
is on (i.e. UI preference is enabled and TTY accessory is plugged in)

Test: manual
Change-Id: Ieac0ca041a0bd026e8b2f07ebcadc9a6a1db75b9
Fixes: 63968802
ndroid/ims/ImsManager.java
9d6410a77eefdb35f72a17d62e3c4dc21a71ea18 18-Aug-2017 Tyler Gunn <tgunn@google.com> Ensure upgrade to video requests are ignored when video disabled.

When video is disabled (due to mobile data being off), we will automatically
reject any incoming requests to upgrade to video.

Test: Manual
Bug: 36900451
Change-Id: I9991cc9940aef417ec7f05cb61e777bf0d354c93
ndroid/ims/ImsCall.java
ndroid/ims/internal/ImsVideoCallProviderWrapper.java
28552fbbf08d9652b259aaae8661f98d865408c1 14-Jul-2017 Tyler Gunn <tgunn@google.com> Filter resume requests when video is already resumed.

If the request being sent to the video provider is to resume the video,
but the video stream is already resumed, do not send this request to the
modem.

In the case of swapping between calls, the video appears to resume
automatically on the modem-side, so sending another resume request is
redundant.

Also, in VideoPauseTracker, correcting the case where we get a resume
request, but there are no remaining pause requests in the tracker.
Although that case shouldn't run up in reality, if it did we should still
let the resume request pass along (since it would otherwise be re-written
as a pause).

Test: Manual test.
Change-Id: Ib9b9acaf2d92b1485e4766a13701fd472d6c117d
Fixes: 63606238
ndroid/ims/internal/ImsVideoCallProviderWrapper.java
ndroid/ims/internal/VideoPauseTracker.java
567a70c96dcab6d5d78a73f3aaab87e551ce25a5 06-Jul-2017 Tyler Gunn <tgunn@google.com> Change how unpause of video is detected.

ImsVideoCallProviderWrapper was modified recently to check for the case
where the video is paused, and the video state changes to an unpaused state.
It used this to trigger a clear of the video pause tracker.
It did this by checking if the video pause tracker thought the video was
paused. In reality, it makes more sense for a change in the videostate
from paused to unpaused to be detected, and THAT used as a basis to
clear the video pause tracker.

The previous functionality caused a problem when the user, in quick
succession:
1. Turned off the camera
2. Went to the background.

The two requests would hit the framework, causing the video pause
tracker to record the current video state as paused (as requested by
the user). Shortly thereafter, the modem reports the fact that the
camera is off with a state of Audio RX. This would be misinterpreted
and cause the pause tracker to be cleared.

Test: Manually tested the bug, as well as regression tested b/62784036.
Change-Id: Iaa736e93e05ef3ae5dec21cd8ebc18be464f18ae
Fixes: 63410964
ndroid/ims/internal/ImsVideoCallProviderWrapper.java
efa7be99a6daec6cd4919eb19d04bcbbc284419f 06-Jul-2017 Tyler Gunn <tgunn@google.com> Remove framework performance optimization for null video requests.

In N-MR2 we made a performance optimization to not bother sending
no-op video requests to the vendor IMS layer. In concept this performance
optimization makes sense; if a higher layer tells us to change from
the current video state to the current video state, then don't send it.

It turns out that the vendor IMS layer does not interpret the delta
style video requests as they were intended.

To fix this, we'll remove the performance optization and opt to make the
contract between the framework and the vendor IMS layer more explicit in
the future to avoid this kind of problem.

This fix corrects an issue where:
A and B are in a video call.
A pauses the video
B pauses the video
A un-pauses the video

When A un-pauses the video B would also unpause, even though it should
not. As it turns out the performance optimization was resulting in B
not issuing the pause request to the modem.

Test: Manual test
Change-Id: Ia29471b3f13d5b104affcf634e1315fb7c71451b
Fixes: 62954065
ndroid/ims/internal/ImsVideoCallProviderWrapper.java
06f97e8f98eec68dba96c70e14cd1fbf31ba8566 23-Jun-2017 Tyler Gunn <tgunn@google.com> Merge "Make isCallSessionMergePending public." into oc-dr1-dev
06869d6fd8f25d41428411201b6d60766ee753b1 23-Jun-2017 Brad Ebinger <breadley@google.com> Merge "Check Various IMS interfaces before returning cached value" into oc-dr1-dev
051c3d1b89d28b59d189d1ce9a91cb1081888ebe 23-Jun-2017 Brad Ebinger <breadley@google.com> Merge "Fix ImsManager double callback registration" into oc-dr1-dev
c55c35e310b1a3a5a9eb3fd0dd819ef79ee8c5f7 22-Jun-2017 Brad Ebinger <breadley@google.com> Merge "Reconnect when ImsService binder instance is null" into oc-dr1-dev
f68247fbe11875d6d4f680dae2a16bca571777cb 21-Jun-2017 Brad Ebinger <breadley@google.com> Check Various IMS interfaces before returning cached value

If the ImsService goes down, the stale binder interfaces
to the old service still get returned by ImsManager. This
change triggers the ImsManager to fetch the binder interfaces
again if the cached one is dead.

Bug: 62723694
Test: Manual, test procedure outlined in bug
Change-Id: I64c1c668602d88663220a50c2e45ae4f970ac302
ndroid/ims/ImsEcbm.java
ndroid/ims/ImsManager.java
ndroid/ims/ImsMultiEndpoint.java
ndroid/ims/ImsUt.java
096d95c4c75cb8218ac74295e7335c1cb3bd0cb6 20-Jun-2017 Brad Ebinger <breadley@google.com> Reconnect when ImsService binder instance is null

When polling for the ImsService to be up in ImsPhoneCallTracker,
make sure to recreate the ImsService when checking if it is
available.

Test: Manual
Bug: 62518074
Change-Id: I0693a8f890a49c41763347acf83b483f74c6332a
ndroid/ims/ImsManager.java
3a4673417db6c691ceddbd5ef296e7e9710e956f 21-Jun-2017 Tyler Gunn <tgunn@google.com> Clear video pause tracker when video un-pause reported by the modem.
am: 077dd3fef0

Change-Id: I9e618a6d78812fdcfa3132a0ee747d3e94cbf286
077dd3fef020b839e37b0c02fb5df7fadc7bf875 21-Jun-2017 Tyler Gunn <tgunn@google.com> Clear video pause tracker when video un-pause reported by the modem.

When video calls are swapped, the video stream automatically unpauses
without the UI requesting the pause/resume. Thus, the video pause tracker,
which tracks pause requests from the UI, can get into a state where it
thinks the video is paused, do it will ignore further pause requests.

Test: Manual
Bug: 62779713
Bug: 62784036
Change-Id: Ia8add452dbe9a79957e8a49e20ce58317136403b
ndroid/ims/internal/ImsVideoCallProviderWrapper.java
ndroid/ims/internal/VideoPauseTracker.java
083efaa4ca0c365b3429e862afd162638ba2d4ce 21-Jun-2017 Tyler Gunn <tgunn@google.com> Make isCallSessionMergePending public.

This way ImsPhoneCallTracker can check if a merge is in process before
attempting to initiate another.

Test: Manual
Bug: 38151476
Change-Id: I4c08fec3f5d34250fdcbdf8498c7f5c7bb24f6fa
ndroid/ims/ImsCall.java
445ea4822f1b3fd48b890b34aba89d7d3c42a718 14-Jun-2017 Brad Ebinger <breadley@google.com> Fix ImsManager double callback registration

MMTelFeature has two ways of registering registration callbacks,
through startSession and addRegistrationListener. startSession
requires a registration listener, which can cause double
registration if addRegistrationListener happens before
startSession in ImsManager.

This fix temporarily solves that problem by registering a Stub
implementation of the registration callback in startSession.
This will be fixed later by modifying the MMTelFeature
APIs to remove the registration listener from the arg list.

Bug: 62207372
Test: Telephony unit tests and manual IMS registration
Change-Id: I00fdbae1baaf77cca5156a442ea109f998a8d5a5
ndroid/ims/ImsManager.java
644709469a340a2054ac8b9ab19484057d2bca2f 02-Jun-2017 Brad Ebinger <breadley@google.com> Fix Bug in ImsManager#addRegistrationListener

Listeners were not being unregistered from
the ImsService. The listeners were restructured
to instead be held in ImsManager, instead of the
ImsService.

Bug: 38304804
Test: Run Rogers VoWiFi activation
Change-Id: I2a0d4b2ed7d232834be7c74c318a60fa11e64389
ndroid/ims/ImsManager.java
079b97b07a74a63fc02730c34760465789e6a094 17-May-2017 Tyler Gunn <tgunn@google.com> Add workaround for broken vendor camera on/off requests.
am: 3aadc8a6c9

Change-Id: I72f3117eba578851d15b94b8e78f95e332d55ac1
3aadc8a6c9c0b681587ad61aee73138b87c0ae35 11-May-2017 Tyler Gunn <tgunn@google.com> Add workaround for broken vendor camera on/off requests.

Scenario: A and B are in video call.
A goes to the background, pausing the video.
B attempts to turn off their camera.
The request fails to be interpreted by vendor code.

Reason: This SHOULD really be a request to go from/to:
Audio/TX/RX/Paused --> Audio/RX/Paused
However, it MUST be sent as:
Audio/TX/RX/Paused --> Audio/RX

The introduction of the VideoPauseTracker in N caused the request to be
sent in the former correct format rather than the latter incorrect format.

The VideoPauseTracker attempts to ensure that a request to pause sent by
the framework vs the incall ui are kept in sync (we use pause to disable
video on a call when the data limit is reached). In the process of ensuring
pause and resume requests were handled properly, this code was
fixing the malformed request.

Added a workaround to the code to ensure the requests remain in the same
broken format vendor code depends on.

Test: Manual, unit
Bug: 35304446
Change-Id: I9b974542234d3f567aba3f2996a815e39bc8963e
ndroid/ims/internal/ImsVideoCallProviderWrapper.java
c61b7a0aecfad1bb540acdd36b5bc74b465acc9d 13-May-2017 The Android Automerger <android-build-merger@google.com> Manually merge commit '96e2d85' into oc-dev-plus-aosp

* commit '96e2d85':
Pass correct cause codes for IMS Call ended during conference merge process

BUG:38276175
96e2d85ef5300fdac5acf89daabfa2584f969d0d 11-May-2017 Jayachandran C <jayachandranc@google.com> Pass correct cause codes for IMS Call ended during conference merge process

Test: Following scenarios for VoLTE and CS call and
verified the cause sent in PreciseCallState.

1) Conference call merge
2) Conference call, one remote party ends the call
3) Conference call, all remote parties end the call
4) Conference call, hangup locally
5) Normal call and hangup locally
6) Normal call and remote party ends the call

Bug: 38225047
Change-Id: Ia5a1b9d551395406f996a0602e57d49bbda29b53
ndroid/ims/ImsCall.java
4b437f1bff7a20eb5ab69e2b584c9cc21fe72ebd 18-Apr-2017 Brad Ebinger <breadley@google.com> Better handle MSIM DDS changed event

On DSDS MSIM devices, when Default Data Subscription event
is received, the ImsService may choose to switch which
Slot ID is active.

This change better handles that switch and removes a
crash that was happening due to
ImsServiceProxy#getFeatureStatus getting called
circularly.

Bug: 37361882
Test: Run Telephony unit tests
Merged-In: I0dece4059e23b75b6774ba814f6460919b14ff94
Merged-In: I1130e81c2e5078513adf7e36dcff947e8d77e4bf
Change-Id: I4aa1e7aa01a9c36bad5ef9c89f45a1a60671ca8b
ndroid/ims/ImsManager.java
ac8c8c56b67440fb2e08004cbd1a94791cd154de 27-Apr-2017 Brad Ebinger <breadley@google.com> Better handle MSIM DDS changed event am: b10b61e109 am: 0872c3abe8
am: 3dd83d98a3

Change-Id: I1130e81c2e5078513adf7e36dcff947e8d77e4bf
b10b61e10955b1ceee6193acbc543e4d62ae0fd6 18-Apr-2017 Brad Ebinger <breadley@google.com> Better handle MSIM DDS changed event

On DSDS MSIM devices, when Default Data Subscription event
is received, the ImsService may choose to switch which
Slot ID is active.

This change better handles that switch and removes a
crash that was happening due to
ImsServiceProxy#getFeatureStatus getting called
circularly.

Bug: 37361882
Test: Run Telephony unit tests
Change-Id: I4aa1e7aa01a9c36bad5ef9c89f45a1a60671ca8b
ndroid/ims/ImsManager.java
ef012cc3f7702c66162fbb33c1ae7f944a43f77f 25-Apr-2017 Hall Liu <hallliu@google.com> Merge "Add signaling and batching for RTT" am: 01d5969c27 am: 99eabfa9d2
am: b779bd7c9f

Change-Id: Ie5de1b6b09406f67a8c9010a77a1c10dd8265ad0
01d5969c272d09d677da94841e7b5196fa33cb65 25-Apr-2017 Hall Liu <hallliu@google.com> Merge "Add signaling and batching for RTT"
bd3f377399138291ffcd072f4572be84c87dfa44 22-Mar-2017 Hall Liu <hallliu@google.com> Add signaling and batching for RTT

Add signaling methods to ImsCall for RTT

Bug: 34203619
Test: TBD
Change-Id: I026d70d12d16113f422a7b9f641e9718347239a0
ndroid/ims/ImsCall.java
a2b0c1376cbc607ca61cdffae5d1b38c9cc02041 20-Apr-2017 Meng Wang <mewan@google.com> ImsManager: WFC provision state may depends on VoLTE am: 54fd41ae24 am: ccf176ba95
am: 69b6260c5f

Change-Id: Ib756484af7403472e91bc8f9ec610d6019c998de
54fd41ae24b862cfe38db41604c546a8e2e1d4c8 12-Apr-2017 Meng Wang <mewan@google.com> ImsManager: WFC provision state may depends on VoLTE

Some carrier demands that when VoLTE is not proviosned, treat WFC
as not provisioned.

Bug: 32875701
Test: make
Change-Id: I62e37056e4f9514b513037984e6b81fff86a6487
ndroid/ims/ImsManager.java
c525bbe9eea2607d7e0e0039aa300b13f697f324 27-Mar-2017 Meng Wang <mewan@google.com> Expose ImsManager#setWfcNonPersistentForSlot

This API allows non-persistently update WFC on/off state and WFC mode
at the same time to avoid racing condition.

Bug: 32159037
Test: make
Change-Id: I6064eb42941a1f2cb3941f3be52dcdc0e91b78d0
(cherry-pick of https://android-review.googlesource.com/#/c/358121/)
ndroid/ims/ImsManager.java
1794ad72d68db970a96be3e20034b091017cee28 29-Mar-2017 Meng Wang <mewan@google.com> Merge "Expose ImsManager#setWfcNonPersistentForSlot" am: f00642b016 am: 1d508fa7f9
am: d9ae5e9e02

Change-Id: If780d463ab7eb15d940727571efd432408c22f42
1d508fa7f9d259ac6763e975e460944242578350 29-Mar-2017 Meng Wang <mewan@google.com> Merge "Expose ImsManager#setWfcNonPersistentForSlot"
am: f00642b016

Change-Id: Iaec8438446c1d1c5c51240de3ebad76976598949
f00642b01620a4ff7bd99e5a2ff6132cc60c7f11 29-Mar-2017 Treehugger Robot <treehugger-gerrit@google.com> Merge "Expose ImsManager#setWfcNonPersistentForSlot"
01232f35cc1c89c15e5f73e954c6fdcc0a7fc692 29-Mar-2017 Leon Luu <leon.luu@sonymobile.com> Use generic mmi error string for UT exceptions am: 13fd98d262 am: 7b76e412d1
am: 94b57370a9

Change-Id: Ib5b4e507c6f5e25d20ad130f07c6a9f2159e31b5
7b76e412d13d33382a37126aa8f6f7f42fffd4fd 29-Mar-2017 Leon Luu <leon.luu@sonymobile.com> Use generic mmi error string for UT exceptions
am: 13fd98d262

Change-Id: I6abfa88dab8a5d8fb85593a4b589bbd6eb1c6d99
51c0907feb1a06333547f96134574fb462872c38 27-Mar-2017 Meng Wang <mewan@google.com> Expose ImsManager#setWfcNonPersistentForSlot

This API allows non-persistently update WFC on/off state and WFC mode
at the same time to avoid racing condition.

Bug: 32159037
Test: make
Change-Id: I6064eb42941a1f2cb3941f3be52dcdc0e91b78d0
ndroid/ims/ImsManager.java
13fd98d2629683a13e91f869ca422427b43c9473 02-Jul-2015 Leon Luu <leon.luu@sonymobile.com> Use generic mmi error string for UT exceptions

Use default error string com.android.internal.R.string.mmiError
if no error code string received, e.g. when the network responds with a
UT error the user is presented with an error message "IMS UT exception"
which is both unclear and not localized.

STEPS TO REPRODUCE:
0) PRECONDITIONS: device and SIM Card are VoLTE enabled
1) device makes a XCAP query over the UT interface
2) The network responds with an error (409 CONFLICT in the logs)
3) Observe the error message presented to the user

Actual Result: "IMS UT exception" is presented to the user
Expected Result: a clearer and localized error message should be
presented to the user

Bug: 32792378
Change-Id: I0c71c35e7830db7de5b1d041211de54c92285b4d
ndroid/ims/ImsUt.java
f2fdf6b0643d23e83c82b8649511284ccd49e9b6 17-Mar-2017 Brad Ebinger <breadley@google.com> Support MSIM devices in ImsManager am: 16417b40a0 am: b9b48d2323
am: a109a8ab41

Change-Id: Ia69a6467249bdb86b07ce7994cd3905fe1e2d90c
b9b48d23237874e0182026c3148b67cf69bb1b80 17-Mar-2017 Brad Ebinger <breadley@google.com> Support MSIM devices in ImsManager
am: 16417b40a0

Change-Id: I85dae88d8b61a53d746c8f49091311b1bcd34e80
16417b40a0b3ca2cdedd7ab50331cc7b006d3dab 07-Mar-2017 Brad Ebinger <breadley@google.com> Support MSIM devices in ImsManager

All configuration options dealing with IMS are
accessed via ImsManager using static methods that
always apply the settings to the user's default voice
SIM. This does not work for LTE+LTE devices that will
need to store these options on a per subscription ID
basis. This change deprecates the old methods and
introduces a "ForSlot" variant of all of the methods.

Test: Unit Tests
Change-Id: Icd18db169a4bbfdb998dd2b14d62287755f07436
ndroid/ims/ImsManager.java
2b19b33fc1b02ed5a1062a0569c83900f80250a6 17-Nov-2016 Jack Yu <jackyu@google.com> Added configuration for VT downgrade/tear down when data disabled

Added a new flag that allows carriers to ignore data disabled
(e.g. data reaches limit or user disables data) so VT calls
will not be downgraded/torn down and VT service will not be
disabled.

bug: 32880745
Merged-In: Iad786b542c3db0cd300cef27a41e492e6888b639
Change-Id: Iad786b542c3db0cd300cef27a41e492e6888b639
ndroid/ims/ImsManager.java
e23b254593575f3617f38c83d7870df283b2daca 10-Mar-2017 Shunta Sakai <shunta.sakai@sonymobile.com> Disable a phone number log for user build am: fb688ca811 am: da6eba0396
am: 79e8bb3fd6

Change-Id: I6585f46671a7b93ae65552c33b2e9a38245d85fb
da6eba039690e1cc566887555f5d33b253987550 09-Mar-2017 Shunta Sakai <shunta.sakai@sonymobile.com> Disable a phone number log for user build
am: fb688ca811

Change-Id: I57c5f20a3d8b2ae5a4ad05e4c42ed447f33878be
fb688ca8113d6dae87e2d18ea29f09c630360c03 06-Dec-2016 Shunta Sakai <shunta.sakai@sonymobile.com> Disable a phone number log for user build

A phone number is privacy data. Therefore, it should be prevented
from logging in user build.

Co-Author: youhei.x.miyoshi <youhei.x.miyoshi@sonymobile.com>
Co-Author: Yong Shi <yong.xa.shi@sonymobile.com>

Test: manual - checked log
Bug: 34582911
Change-Id: Icf47ea8394244823579a147e8469ff2fd5d839cd
ndroid/ims/ImsCall.java
ndroid/ims/ImsUt.java
44bc69bca87dcee6947d37fa674789f2b3dc64d4 01-Mar-2017 Brad Ebinger <breadley@google.com> Remove the sending of IMS_SERVICE_UP/_DOWN from ImsManager am: 7c40cd0d3e am: c42e5d82a7
am: b9f48fb60c

Change-Id: I196598adcbfa581106f8366b6fadd95b224aabd8
c42e5d82a70ee2fff1b363ed36035d2605ebd195 28-Feb-2017 Brad Ebinger <breadley@google.com> Remove the sending of IMS_SERVICE_UP/_DOWN from ImsManager
am: 7c40cd0d3e

Change-Id: I3e52cbe4cbebabf48f541edf09d76a45f93c2fe9
7c40cd0d3e87f32d55ba58c88149d40072506ade 27-Feb-2017 Brad Ebinger <breadley@google.com> Remove the sending of IMS_SERVICE_UP/_DOWN from ImsManager

ImsManager should not be sending IMS_SERVICE_UP/_DOWN
since it runs in the process that is using it and
may not have the correct permissions to do so.

Bug: 35736451
Test: Telephony Unit Tests
Change-Id: If89122d7218a0a5309a582837ccc97724c6f511e
ndroid/ims/ImsManager.java
c3948acec44be29aa3000f00ccb1d757bf5f42dd 23-Feb-2017 Brad Ebinger <breadley@google.com> Moving classes that must be used by an ImsService to base/ am: ffc6936284 am: 0f92c09a64
am: 126dabe574

Change-Id: I6afbf0f07a1d4e6be0ef3848d2ec7bf8413faf9a
0f92c09a64af8a148f42c27ddbf96a4b7c762a82 23-Feb-2017 Brad Ebinger <breadley@google.com> Moving classes that must be used by an ImsService to base/
am: ffc6936284

Change-Id: I48ce41a34770aec3bcb3ba18f8bd236f46191dbe
ffc69362848f85ddebcbb3368af5c3fed0019a8b 02-Feb-2017 Brad Ebinger <breadley@google.com> Moving classes that must be used by an ImsService to base/

This change moves classes that need to be used by an unbundled
ImsService to frameworks/base to facilitate its usage.

Bug: 30290416
Test: Build and run device
Change-Id: Id90f09ff445a6918996e35dc83e55ec98238de89
ndroid/ims/ImsCallSessionListenerBase.java
ndroid/ims/ImsConfig.java
ndroid/ims/ImsException.java
ndroid/ims/ImsServiceClass.java
ndroid/ims/ImsUtInterface.java
ndroid/ims/internal/ImsCallSession.java
ndroid/ims/internal/ImsVideoCallProvider.java
95264cdca7ffa4d10493fd523e0952da123ec6ea 21-Feb-2017 Brad Ebinger <breadley@google.com> Remove Session Id from ImsService APIs that do not need it. am: b5f30c7854 am: 8dcc70a6a7
am: f72f113ad5

Change-Id: Iae8a76042e2817220d605520de7b0dd4d9fb8a4e
8dcc70a6a7d8a6454ea2484d792cac0aa37892d8 21-Feb-2017 Brad Ebinger <breadley@google.com> Remove Session Id from ImsService APIs that do not need it.
am: b5f30c7854

Change-Id: I064d41d55246dbc5ed4fa131852320070c40dd9d
b5f30c78548f04c613958ed1bb0ad9e1399cce19 17-Feb-2017 Brad Ebinger <breadley@google.com> Remove Session Id from ImsService APIs that do not need it.

Not all ImsService APIs need a session ID associated with them,
such as the APIs that query the ImsService status. This change
updates the APIs to reflect this.

Test: Manual
Change-Id: I82a74643c6d883886cada9845ece99006f2690fa
ndroid/ims/ImsManager.java
3b0513a12010ba06efda40dedce444aac0591345 17-Feb-2017 Brad Ebinger <breadley@google.com> Modifies ImsManager to support ImsResolver am: 14b0a9e7ee
am: 77e79e53e6

Change-Id: I82902b313deb170d62ddb0c7ef60c30e0d14bfc4
14b0a9e7eed291e558d892b851454325bb1c496c 26-Jan-2017 Brad Ebinger <breadley@google.com> Modifies ImsManager to support ImsResolver

This change modifies the ImsManager to support both the old and
new versions of ImsService. This is done by creating the
ImsServiceProxyCompat class, which implements IMMTelFeature
and uses the old IImsService interface. ImsServiceProxy then
extends ImsServiceProxyCompat, which implements the new interface
for newer devices, which use IImsServiceController.

A callback interface has also been introduced to the ImsManager, which
takes information back from the ImsService regarding its status
(NOT_READY,INITIALIZING,READY) and uses it to ensure that we are not
operating on an ImsService that is not READY.

Test: Manual
Merged-In: I46f1f7237dffcdd12b66c16cd319818d1d21c101
Change-Id: I46f1f7237dffcdd12b66c16cd319818d1d21c101
ndroid/ims/ImsManager.java
16780ffb8b0f206e476bd6b68d06af61506b4a87 26-Jan-2017 Brad Ebinger <breadley@google.com> Modifies ImsManager to support ImsResolver

This change modifies the ImsManager to support both the old and
new versions of ImsService. This is done by creating the
ImsServiceProxyCompat class, which implements IMMTelFeature
and uses the old IImsService interface. ImsServiceProxy then
extends ImsServiceProxyCompat, which implements the new interface
for newer devices, which use IImsServiceController.

A callback interface has also been introduced to the ImsManager, which
takes information back from the ImsService regarding its status
(NOT_READY,INITIALIZING,READY) and uses it to ensure that we are not
operating on an ImsService that is not READY.

Test: Manual
Change-Id: I46f1f7237dffcdd12b66c16cd319818d1d21c101
ndroid/ims/ImsManager.java
0484b738497bf589be6be5acbe7ccd9bb3f72336 14-Feb-2017 Naveen Kalla <mrnaveen@google.com> Remove static from the listener.

To support Multi-SIM and multi-IMS stack use cases, we should have
multiple instances of ImsManager. And each instance may need a
separate isntance of the Listener if it needs to invoke non-static
methods or access any fields of the ImsManager.

Test: Successful compilation with this change.
Change-Id: Idf4de1232ea54fef03a9e4a7ce1d98b8df841291
(cherry picked from commit 196fd3bd575c8e4c5c2466079500c06287ec3e02)
ndroid/ims/ImsManager.java
a48a6ef42f54a7afb6d33118fa8ed1bed2a68f0d 15-Feb-2017 Naveen Kalla <mrnaveen@google.com> Add an API to get recent IMS disconnect reasons am: 525c3a2fdc am: ac99f22a28 am: 8a0ec2d8db
am: 48bc974ef6

Change-Id: I0197f6c82121bdba78b023791e98b08a68dd1711
48bc974ef6e593aa15e235050fe29b727349622c 15-Feb-2017 Naveen Kalla <mrnaveen@google.com> Add an API to get recent IMS disconnect reasons am: 525c3a2fdc am: ac99f22a28
am: 8a0ec2d8db

Change-Id: I1f31daac491226863c6467a71291728a6a73724b
196fd3bd575c8e4c5c2466079500c06287ec3e02 14-Feb-2017 Naveen Kalla <mrnaveen@google.com> Remove static from the listener.

To support Multi-SIM and multi-IMS stack use cases, we should have
multiple instances of ImsManager. And each instance may need a
separate isntance of the Listener if it needs to invoke non-static
methods or access any fields of the ImsManager.

Test: Successful compilation with this change.
Change-Id: Idf4de1232ea54fef03a9e4a7ce1d98b8df841291
ndroid/ims/ImsManager.java
525c3a2fdcbc9a35dd0d7248207d9b0602d8ada7 06-Feb-2017 Naveen Kalla <mrnaveen@google.com> Add an API to get recent IMS disconnect reasons

ImsManager will store the last 16 disconnect reasons when
onImsDisconnect callback is invoked. This information can be
accessed by the clients of ImsManager using the new
getRecentImsDisconnectReasons API

Bug: 34694758
Test: Ensure that the new API returns IMS disconnect reasons
in chronological order after running a few scenarios where IMS
gets connected and disconnected.

Change-Id: Iff5edeb9bba8898349ffce64f5975f5b1717cf76
ndroid/ims/ImsManager.java
7da209df9bb5ec25714b0e1b146532bdc7b23e1c 08-Feb-2017 Tyler Gunn <tgunn@google.com> Modify ImsVideoCallProvider to include calling UID for permission check. am: b984c78aba am: 07b6e48c68
am: c8ee152d36

Change-Id: Idf1d998074923d0cc87c168cf96a5d2fcfc4615d
b984c78aba5dce4e14e0e2bd03585679b3d28b53 01-Dec-2016 Tyler Gunn <tgunn@google.com> Modify ImsVideoCallProvider to include calling UID for permission check.

Modify the ImsVideoCallProvider, which the vendor IMS stack implements to
include the UID of telephony. The vendor IMS stack will use this when
opening the camera for the purpose of camera permission verification by
the camera service.

Test: Unit, manual.
Bug: 32747443
Merged-In: I0884cc08ea4afa23c08e3fe1e2873b3f5aac2b40
Change-Id: I0884cc08ea4afa23c08e3fe1e2873b3f5aac2b40
ndroid/ims/internal/ImsVideoCallProvider.java
ndroid/ims/internal/ImsVideoCallProviderWrapper.java
a38a06da7b481f618fa1b210e507e616b0e5bc26 22-Dec-2016 Meng Wang <mewan@google.com> Merge "Update ImsRegistrationListener"
9f6d8b2893929e0dc38d82feca4913e841fb94ed 22-Dec-2016 Tyler Gunn <tgunn@google.com> Use pause signaling to halt a video call when data limit is reached. am: 266d3920dd
am: 9139f28b30

Change-Id: I062f00a882dfca98bf409f5d87e5dee23ea90eae
266d3920ddc1e4cb95f9e21bc0ff0f2e0d0314cd 21-Dec-2016 Tyler Gunn <tgunn@google.com> Use pause signaling to halt a video call when data limit is reached.

This proved to be problematic as the InCallUI is the only place where
we would previously get a pause signal. Added a VideoPauseTracker
class which is responsible for tracking the source of pause requests and
ensuring that the video is only paused on the first request, and only
resumed on the last resume request.

Added some new logic to ImsVideoCallProviderWrapper to support receiving
pause and resume requests from other sources, and to ensure that requests
to pause or resume use the VideoPauseTracker to determine if the pause
or resume should actually be passed along to the modem.

Test: manual
Bug: 30760683
Change-Id: Id54b2a955745132ab09feb01b5c961f6115ef3df
ndroid/ims/internal/ImsVideoCallProviderWrapper.java
ndroid/ims/internal/VideoPauseTracker.java
bb98b9b27d27d524ee8f695c08e54005c5292a41 08-Dec-2016 Meng Wang <mewan@google.com> Update ImsRegistrationListener

1. Replace onImsConnected() with onImsConnected(int)
2. Replace onImsProgressing() with onImsProgressing(int)
3. Add registrationChangeFailed()

Bug: 33430556
Test: m
Change-Id: I14c171494bdcb0d82ed4be0caff8cb52d35421cc
ndroid/ims/ImsConnectionStateListener.java
ndroid/ims/ImsManager.java
e441415a339670d2ca567e508f2b5806103954b5 08-Dec-2016 Meng Wang <mewan@google.com> DO NOT MERGE ImsRegistrationListener#registrationChangeFailed

Bug: 33430556
Change-Id: Icea36e559f447b14c41a04cd517c12b632bc2c0c
ndroid/ims/ImsConnectionStateListener.java
ndroid/ims/ImsManager.java
0c76f5a4157c821a64b39ce4803a154b089ab629 01-Dec-2016 Tyler Gunn <tgunn@google.com> Modify ImsVideoCallProvider to include calling UID for permission check.

Modify the ImsVideoCallProvider, which the vendor IMS stack implements to
include the UID of telephony. The vendor IMS stack will use this when
opening the camera for the purpose of camera permission verification by
the camera service.

Test: Unit, manual.
Bug: 32747443
Change-Id: I0884cc08ea4afa23c08e3fe1e2873b3f5aac2b40
ndroid/ims/internal/ImsVideoCallProvider.java
ndroid/ims/internal/ImsVideoCallProviderWrapper.java
28831575b3c3fe44b21b1cc66c6524a297005b19 23-Nov-2016 Meng Wang <mewan@google.com> ImsManager: check roaming status in setWfcSetting am: 663aa12c70
am: ec69f5cfe8

Change-Id: I8cd387ff5a836f439ea59965432e1cb779db1468
ec69f5cfe8d646df75cd621d48bbfd35573d724a 23-Nov-2016 Meng Wang <mewan@google.com> ImsManager: check roaming status in setWfcSetting
am: 663aa12c70

Change-Id: Ibe58ff96e9a883cdb2bca5c289be7e546dd2ebe7
e86c5833f254d46ff1fb825f182891924b912a44 23-Nov-2016 Meng Wang <mewan@google.com> Merge "ImsManager: check roaming status in setWfcSetting" into nyc-mr2-dev
5778185cdc711ba3c12cf96724dfeb108f47cf47 17-Nov-2016 Jack Yu <jackyu@google.com> Added configuration for VT downgrade/tear down when data disabled

Added a new flag that allows carriers to ignore data disabled
(e.g. data reaches limit or user disables data) so VT calls
will not be downgraded/torn down and VT service will not be
disabled.

bug: 32880745
Merged-In: I8d3675e7df5972a05b35f1231f287c0dba8e9468
Change-Id: Iad786b542c3db0cd300cef27a41e492e6888b639
ndroid/ims/ImsManager.java
b14ce05d56a187c242c18badac78eb0fcdbe4895 18-Nov-2016 Jack Yu <jackyu@google.com> Added configuration for VT downgrade/tear down when data disabled

Added a new flag that allows carriers to ignore data disabled
(e.g. data reaches limit or user disables data) so VT calls
will not be downgraded/torn down and VT service will not be
disabled.

Test: telephony unit tests
bug: 32880745
Change-Id: I8d3675e7df5972a05b35f1231f287c0dba8e9468
ndroid/ims/ImsManager.java
663aa12c70cf1e3a66d2328fb8e437c8ea321bf2 15-Nov-2016 Meng Wang <mewan@google.com> ImsManager: check roaming status in setWfcSetting

In setWfcSetting(true), setWfcModeInternal(mode) is invoked.
The mode to be passed should be determined by current roaming status.

Bug: 32787997
Change-Id: I9e96de0a1db83adf50a8ba008a6b3741fe3c9b95
ndroid/ims/ImsManager.java
0258ff6beb3fabf658f74806db1a5db8d1c1e0fe 07-Oct-2016 Meng Wang <mewan@google.com> ImsManager: updateWfcFeatureAndProvisionedValues use roaming state am: 531a8b68b4 am: 8f5ae40756
am: 6c7a14d290

Change-Id: Icdb5f782f94bf8b4070d20cc23bd3c7d939fdd59
531a8b68b40cfbc48229dfb11814e7fd5a520563 06-Oct-2016 Meng Wang <mewan@google.com> ImsManager: updateWfcFeatureAndProvisionedValues use roaming state

In updateImsServiceConfig, WFC should be updated according to roaming
state. Roaming-aware version of getWfcMode() should be used.

Bug: 31972897
Change-Id: Ic4d6a516373d6ccdadad4fd43ed9e092d8ef72a6
ndroid/ims/ImsManager.java
d49a3062f877992828c16ab74455f18d8ed54aa5 29-Sep-2016 Meng Wang <mewan@google.com> ImsManager: add wfc roaming mode getter/setter am: 374770193c am: 21322cc58a
am: 82b37bf474

Change-Id: I5d153957b7120fe9fcc7f5c1a70904bc681c70e1
374770193cd3bffaad44551e8d9621f0abfa367d 20-Sep-2016 Meng Wang <mewan@google.com> ImsManager: add wfc roaming mode getter/setter

Bug: 31492826
Change-Id: Ia13c59bb1aba892759da2184bf570011ebe0876f
ndroid/ims/ImsManager.java
c1d8d58d4113467e0edc4c5158d2881f1dc5f32d 25-Aug-2016 Tyler Gunn <tgunn@google.com> Fix potential error copying null conference participant list. am: 108a6b7283 am: ef3d89d01a
am: ce8a6542dd

Change-Id: Ic288a4c11b80b43ded2d1695b038a08aacbaf8d8
108a6b728367e8e68b00cc120759ce7651cc7671 24-Aug-2016 Tyler Gunn <tgunn@google.com> Fix potential error copying null conference participant list.

In some cases, mConferenceParticipants can be null, causing the copy
code to crash the com.android.phone app.

Adding appropriate null/empty checks to prevent this.

Bug: 31044679
Change-Id: I9ee464281af8213c03705d054500b8c5e2f12f05
ndroid/ims/ImsCall.java
9fbddee538291bfd60fd6bf9e19fea6ce030cb40 19-Aug-2016 Tyler Gunn <tgunn@google.com> Modify getConferenceParticipants() to return copy of the conference data. am: 3a3d8ebcc5 am: 119f590472
am: dc7432e575

Change-Id: I246bb792afa2c1ba3debd04338ba4f882c2254bc
3a3d8ebcc536dea3fbda0b27ac257523a0a0f8a7 18-Aug-2016 Tyler Gunn <tgunn@google.com> Modify getConferenceParticipants() to return copy of the conference data.

In ImsConference#updateConferenceAfterCreation, getConferenceParticipants
is called to get a copy of the CEP data. This, however, happens on a
different thread than the update of that data.

The ImsCall#getConferenceParticipants() method already synchronizes the
return of the data on a lock which would prevent it from being updated
while the "get" method is called, however, once the reference is returned
there is no guarantee the underlying list won't be changed.

Bug: 30861872
Change-Id: I27a1aa35299d36588c73bc47710e129e5e537a6a
ndroid/ims/ImsCall.java
a86b29b949b18a0b1a5139b622f2014209461a23 13-Aug-2016 Amit Mahajan <amitmahajan@google.com> Call setFeatureValue() even if turning off IMS. am: 9cba36d1c6 am: 7047b2f121
am: fbafb4b797

Change-Id: Ic14f90787cd99cba301864b093682b43e591995b
7047b2f1214e709498cfe8e3c89ff53537f222ba 13-Aug-2016 Amit Mahajan <amitmahajan@google.com> Call setFeatureValue() even if turning off IMS.
am: 9cba36d1c6

Change-Id: I9cc91770bbf5239aee86e97e9b31f7c2784ab7a0
385640ea7693db2ebaf42e1a2ad65d8af2ed5d69 13-Aug-2016 Amit Mahajan <amitmahajan@google.com> Merge "Call setFeatureValue() even if turning off IMS." into nyc-mr1-dev
a629137ba87a6d6a9a2a62971cdb8cbb595bbf02 12-Aug-2016 Tyler Gunn <tgunn@google.com> Add prototype of terminate() which supports override terminate reason code. am: 25a72fccf3 am: d7391e4b7a
am: bde999dfef

Change-Id: I64bf74c1875ae36e004dbd2703120e9f148ec016
9cba36d1c6f15a93e9194b8e0c36389312fa96df 11-Aug-2016 Amit Mahajan <amitmahajan@google.com> Call setFeatureValue() even if turning off IMS.

setFeatureValue() needs to be called so that next time IMS is turned
on, IMS stack knows which features to keep turned off. It should be
called after turnOffIms().

Bug: 30651940
Change-Id: Ia2d388d9336bfa6f7950f45c4a705bf5858cfa19
ndroid/ims/ImsManager.java
25a72fccf3313ab46a1dd03096f8944a96499406 11-Aug-2016 Tyler Gunn <tgunn@google.com> Add prototype of terminate() which supports override terminate reason code.

When ImsCall#termiante(int) is called with a reason code, the modem will
only actually disconnect the call for some disconnect reasons.

Adding an override of that method which allows the caller to specify an
override which is reported as the actual disconnect reason in the
onCallSessionTerminated callback in ImsPhoneCallTracker.

Bug: 30702393
Change-Id: I006046c03630e9d010424591f3bbb7d46da3a76f
ndroid/ims/ImsCall.java
9f71a24be06da7b4a0d51fd13fcb33efabcfea13 08-Aug-2016 Jack Yu <jackyu@google.com> Added debug message to help ims call debugging

Change-Id: I3bf98a95fb62f5511e6b2d87e5fbc72f9b62880e
ndroid/ims/ImsCall.java
afb53c826d0f4614311a93d24a9bf8fe2b0a51a5 05-Aug-2016 Tyler Gunn <tgunn@google.com> Exposing IMSCallSessionListenerProxy for test intent.

Bug: 30697460
Change-Id: I8f7bd29d83bb1e5acc3d218ca8108317738f9e2d
ndroid/ims/ImsCall.java
fb4abdfc3201a3d734093c0187a73065c3557d11 01-Aug-2016 Tyler Gunn <tgunn@google.com> Ensure provisioned VT value is set appropriately on boot.

ImsManager#updateImsServiceConfig is responsible for setting the
provisioned / device VT values on boot. Previous changes were made
to ensure that changing the enhanced 4G LTE switch would NOT change the
VT setting at the same time. This change is made in the same spirit,
and decouples the VT feature setting on bootup from the voLTE setting.

Bug: 30454597
Change-Id: I625cfb03b7da3fc68ae52b39007ffb86613297c9
ndroid/ims/ImsManager.java
d7cd12478fc8646ccf842678989973e7bc7aa671 23-Jul-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Use SystemProperties to cache provisioned status for volte, wfc, vt." into nyc-mr1-dev
24f7b167e5738d5ab0a4491b3d9e3ca46101d6f0 22-Jul-2016 Amit Mahajan <amitmahajan@google.com> Use SystemProperties to cache provisioned status for volte, wfc, vt.

Bug: 29223318
Change-Id: I992b11735d58c3617f8537fb746ae91619032371
ndroid/ims/ImsManager.java
359bcd029c232605fbed6df66c6c3b220474c026 22-Jul-2016 Tyler Gunn <tgunn@google.com> Add ImsVideoProviderWrapperCallback to notify local components.

Added a callback class in ImsVideoProviderWrapperCallback so that local
components such as ImsPhoneConnection can listen to incoming session
modification responses.

Bug: 29381561
Change-Id: I38e5be1996c22be2e5f8797c825e0ab90d49fda1
ndroid/ims/internal/ImsVideoCallProviderWrapper.java
4effdca336ead475a90ac1529ff4007f7218dfd7 15-Jul-2016 Pankaj Kanwar <pkanwar@google.com> Merge "Workaround for incorrect EXTRA_CALL_RAT_TYPE in vendor code." into nyc-mr1-dev
8ae5fbb8c970ec7546762f89ed33eec37c4912c4 14-Jul-2016 Tyler Gunn <tgunn@google.com> Workaround for incorrect EXTRA_CALL_RAT_TYPE in vendor code.

Some vendor modems do not spell the EXTRA_CALL_RAT_TYPE as per
definition in ImsCallProfile. This is a temporary workaround to make
the wifi call check work for now.

Bug: 28933314
Change-Id: I6db8fd3645fef52a9c8b949e77782f743b8e4e4e
ndroid/ims/ImsCall.java
643ffe48f018739aa13d4e3d38794103919d168c 08-Jul-2016 Jack Yu <jackyu@google.com> Disable VT when users turn off data or hit data limit

Disable VT when users turn off data or hit data limit. If
there are ongoing VT calls, we'll need to downgrade them
to VoLTE calls.

bug: 27316521
Change-Id: Ia2145db3ccce0325ae65231daa2f3a16f45d035e
ndroid/ims/ImsManager.java
10d1883ea2beddb95421636729c2c406af1c099c 12-Jul-2016 pkanwar <pkanwar@google.com> Add isVtProvisionedOnDevice() and isWfcProvisionedOnDevice() to
ImsManager.dump().

Bug: 29988911

Change-Id: I5598d85f5cd153096b7946cfc730b6cd34b7c613
ndroid/ims/ImsManager.java
ca7d4c44d09eccfa4187f668dc450adfda787483 01-Jul-2016 Meng Wang <mewan@google.com> ImsManager: refine logs for turnOnIms() and turnOffIms()

Bug: 29875759
Change-Id: Id1a88976dfb8313aab297132ae33a60d1972e475
ndroid/ims/ImsManager.java
e4344cd61ef3b282c35864eb10e681f1f3caa1da 07-Jul-2016 Chen Xu <fionaxu@google.com> Merge "hide PII from log" into nyc-mr1-dev
7b3107c484337a728fe12c6968570c43bc1188ec 06-Jul-2016 fionaxu <fionaxu@google.com> hide PII from log

Bug: 29943985
Change-Id: I9f8df2e7a3063c8979f1a82d477306a047e230a9
ndroid/ims/ImsCall.java
ndroid/ims/ImsManager.java
a9fc7f12a511c2b74702cb99c8aa1ab5e3a8cda9 01-Jul-2016 Nathan Harold <nharold@google.com> Hook In VT Provisioned Status Update

Bug: 29919309
Change-Id: Id843a72974c81d319434c279f7e330498771264e
ndroid/ims/ImsManager.java
b42ff55315201e1c971ff601eab6a5e645f8641d 22-Jun-2016 Jack Yu <jackyu@google.com> Report VT data usage to the client

Report the aggregated VT data usage per call to the registered
client.

bug: 20888836
Change-Id: I6d9629aebfde641f96fbfe2071346ae3bc362cdb
ndroid/ims/ImsCall.java
ndroid/ims/internal/ImsVideoCallProviderWrapper.java
1ac24854dba02556692dbbd779434e5596f6daed 22-Jun-2016 Tyler Gunn <tgunn@google.com> Add helper methods and video history tracking to ImsCall.

Adding some helper methods to ImsCall:
- isVideoCall
- isWifiCall

Add code to track whether an ImsCall has been a video call at some point
in its existence.

Bug: 29275420
Change-Id: If5ac272e86d08f81ad64ec87cbcdb27c4bf985c3
ndroid/ims/ImsCall.java
002b20483cc581248fb1070226474c7b00a23947 04-Jun-2016 Pavel Zhamaitsiak <pavelz@google.com> Move caching of VoLTE provisioned value from ImsConfigImpl to ImsManager

ImsConfig.getVolteProvisioned() function was supposed to cache provisioned
value and return it synchronously. This CL moves this functionality to
ImsManager (and adds support for WFC and VT provisioning).

VoLTE and WFC provisioned values are asynchronously updated when
CarrierConfig changes. They are also updated when ACTION_IMS_CONFIG_CHANGED
intent is received (this intent is sent by IMS stack).

Add isWfcProvisionedOnDevice() and isVtProvisionedOnDevice() functions
to ImsManager.

Bug: 26496388
Bug: 27814311
Change-Id: I4640e5c79e339121a2899ef3cd022d2738ab244b
ndroid/ims/ImsConfig.java
ndroid/ims/ImsManager.java
9352c43df0c21f27fd29ee46770ca058c13d5e2f 08-Jun-2016 Meng Wang <mewan@google.com> Enable ims test mode on verizon

Added a new property 'persist.dbg.allow_ims_off'. When it's set,
CarrierConfig KEY_CARRIER_ALLOW_TURNOFF_IMS_BOOL is ignored.
Hence ims can be turned off.

Bug: 28861107
Change-Id: Ieed8f782b6e222131e64ee8755a48acc1100e520
ndroid/ims/ImsManager.java
d46779cbd1657b9a9ededec35f008f7bfa6b5511 03-Jun-2016 Pavel Zhamaitsiak <pavelz@google.com> Change order in which VT and WFC settings are pushed to IMS stack

This is done in order to distinguish toggle of Enhanced 4G LTE switch
from settings sync.

Bug: 28432762
Change-Id: Ie606bb8d06aa29e8a31194a412dc846590309ba8
ndroid/ims/ImsManager.java
645ab9d97472d115a0aa657bc2fd2dabb02ceed9 29-Apr-2016 Pavel Zhamaitsiak <pavelz@google.com> Fix build

Remove duplicate constant from ImsConfig

Change-Id: I1413627316f918c4363c38b313bc388886b49bfd
ndroid/ims/ImsConfig.java
4cf6f1321f9f59e37893bf4e5f9a7b0f46db0045 02-Apr-2016 Pavel Zhamaitsiak <pavelz@google.com> Add ImsConfig constants for new provisioned items

Bug: 27776837
Change-Id: Iab882bf1da553f8be1d47a41a61b597d96889fcb
ndroid/ims/ImsConfig.java
ce41017a51d0ecf6e0e2059011f21ec68f33771a 15-Apr-2016 Pavel Zhamaitsiak <pavelz@google.com> Add ImsManager.addRegistrationListener function

Switch RcsService from using open() to addRegistrationListener()

Bug: 28150730
Change-Id: If13c610ed1b3a3cb5e36721fab69d72c6cddda62
ndroid/ims/ImsManager.java
ndroid/ims/ImsServiceBase.java
26915f571175c8d84db6d1f2fdf54b5cb3f6926e 15-Apr-2016 Tyler Gunn <tgunn@google.com> Merge "Wiring up Ims framework multi-endpoint APIs." into nyc-dev
ff29b9d0019018b726d1b35b30bce8e4a9984cd2 15-Apr-2016 Pavel Zhamaitsiak <pavelz@google.com> Turn on VT when turning on Enhanced 4G LTE and VT is enabled in settings

Bug: 27974555
Change-Id: I6899f46e9a6d0dd5160882cdeda92ab202f8ea3a
ndroid/ims/ImsManager.java
78f75585b002507089d2bdb242b063a09477270f 14-Apr-2016 Pavel Zhamaitsiak <pavelz@google.com> RcsService: Request ImsManager's instance with correct phoneId and serviceClass

Bug: 28154548
Change-Id: I74fe051088b04ccf1aa15b277c6890cb8e1a0966
ndroid/ims/ImsServiceClass.java
4d128b6db8288af77d095d6239d6332e05469f35 14-Apr-2016 Tyler Gunn <tgunn@google.com> Wiring up Ims framework multi-endpoint APIs.

Completing wireup of the Ims framework multi-endpoint APIs so that we can
hook into the telephony code.

Note: I followed how the ImsEcbm API was handled, which seemed pretty
similar to the multi-endpoint APIs.

Bug: 27458894
Change-Id: I21c6fc95947692a3cf4541ddb7510e1da702ec84
ndroid/ims/ImsExternalCallStateListener.java
ndroid/ims/ImsManager.java
ndroid/ims/ImsMultiEndpoint.java
0f6e32e21862df23bb171f9e47358bcbfd9f0ae0 07-Apr-2016 Pavel Zhamaitsiak <pavelz@google.com> Merge "Support VoWifi for rcs." into nyc-dev
94c7be93bb628a3d8ee6fe1ca18cebb918d4937e 22-Mar-2016 Gao Bing <w20090@motorola.com> Support VoWifi for rcs.

Need handle it different since the capability could be changed along
with the wifi signal strength.

Bug: 23222011
Change-Id: I68d412798f6a3c9d9b087508ff12405ac3de4b30
ndroid/ims/ImsConfig.java
92b54b27606866d7bd1c546f5dd59e7d64265fb2 02-Apr-2016 Pavel Zhamaitsiak <pavelz@google.com> Cleanup VoLte and ViLte settings in ImsManager

- Remove SharedPref which was previously used for VT setting.
- Don't set ViLte feature value in setAdvanced4GMode.

Bug: 27974555
Change-Id: Id610502c979cac4d47f58efbadc39bb812d3ed47
ndroid/ims/ImsManager.java
47aeacf0b9b7412b70e8cab8e81f358efd032f2a 31-Mar-2016 Pavel Zhamaitsiak <pavelz@google.com> Call ImsConfig.setProvisionedValue() in new thread

Bug: 27816215
Change-Id: I2af44c0b9f3db7ba586bbeb549ed1455b4af86a4
ndroid/ims/ImsManager.java
fc20299fda78be65822470409533f1710b0be228 30-Mar-2016 Pavel Zhamaitsiak <pavelz@google.com> Don't disable IMS if SIM is not ready

Bug: 27904215
Change-Id: Ieb2688bb8bc4916c28d1e7d8a48f7bdc854582cb
ndroid/ims/ImsManager.java
428d404237972ea63a4b91be1b102b29bb4544d6 26-Jan-2016 Gao Bing <w20090@motorola.com> Added RCS service.

1> PUBLISH
2> SUBSCRIBE
3> Periodically Capability polling

Bug: 23222011
Change-Id: I3160dfcadd85bb55e2c3033128a6766a005b68b0
ndroid/ims/ImsConfig.java
ab48b7f15ee438d3c4bfffa799ab8f3a48158d8e 14-Mar-2016 Tyler Gunn <tgunn@google.com> resolve merge conflicts of ce19b57ed5 to nyc-dev

Change-Id: Ie2312957799f5f5e35aec8767ea39ed2b7c37988
ce19b57ed5a90a099e43cca7ab7a6703ccd7173f 14-Mar-2016 Tyler Gunn <tgunn@google.com> Merge "IMS-VT: Enable/Disable VT feature tag based on configuration" into mm-wireless-dev
8e14111c716d64163a703fd8e248c6a09ad44313 14-Mar-2016 Tyler Gunn <tgunn@google.com> Merge "Provide stub implementation for new IImsService method." into nyc-dev
2038a4aa1d8bc0a65cbb9a21911722ebe504e0c1 10-Mar-2016 Tyler Gunn <tgunn@google.com> Provide stub implementation for new IImsService method.

Bug: 27458894
Change-Id: I0b3684f8c084efa377849797957179141081154d
ndroid/ims/ImsServiceBase.java
5803ef02ee79649c8a341a251eb9084e7608257e 08-Mar-2016 fionaxu <fionaxu@google.com> Add default Carrier cfg for IMS_WFC

Bug: 26954117
Change-Id: I31ea307f83df0ba863ce27a2d078f72aa82087b3
ndroid/ims/ImsManager.java
c0f450d917e3511a10e737e3f263494e80cf9b44 11-Feb-2016 Omkar Kolangade <omkark@codeaurora.org> IMS-VT: Enable/Disable VT feature tag based on configuration

Enable/Disable VT feature tag based on configuration instead
of directly depending on user TTY settings.

Bug: 27484239
Change-Id: Ie577a09d7a6fa03d64afc2f94c58c5cf41139355
ndroid/ims/ImsManager.java
45eb22e8c84556bb9ccb25cb28b33ca74c55aeb9 01-Mar-2016 Pavel Zhamaitsiak <pavelz@google.com> Merge "Print radio technology over which IMS call is placed" into mm-wireless-dev
am: 2b299c74f0

* commit '2b299c74f074c22e5507f05e48dcd9864ceb5336':
Print radio technology over which IMS call is placed
2b299c74f074c22e5507f05e48dcd9864ceb5336 01-Mar-2016 Pavel Zhamaitsiak <pavelz@google.com> Merge "Print radio technology over which IMS call is placed" into mm-wireless-dev
50b03e9261c7717817ebfb8e4086f949d0ad9c18 29-Feb-2016 Pavel Zhamaitsiak <pavelz@google.com> Print radio technology over which IMS call is placed

Bug: 22727930
Change-Id: Ibab94b096c965199653b1f87a9df21c24fe96d91
ndroid/ims/ImsCall.java
2f1af950957783010500e2c78b92b2b994560458 01-Feb-2016 Sungmin Choi <sungmin.choi@lge.com> Return true if user can't edit Enhanced 4G LTE Mode

If user can't edit Enhanced 4G LTE Mode, it assumes Enhanced 4G LTE Mode
is always true. If user changes SIM from editable mode to uneditable mode,
need to return true.

For example,
User with SKT/KT SIM (or other carrier) can set Enhanced 4G LTE Mode to off.
And then, user changes SIM from SKT/KT to LGU.
User with LGU SIM can't change Enhanced 4G LTE Mode to on from off.
Because LGU SIM has uneditable Enhanced 4G LTE Mode config.
User can't call in this case.

Change-Id: I0ea1e55fa0708218982b2b738d49310343682896
ndroid/ims/ImsManager.java
4dd9795b62fee6e75fae4aaee5ecb069a4ecfbd5 25-Feb-2016 Pavel Zhamaitsiak <pavelz@google.com> Merge "Add registrationAssociatedUriChanged to ImsRegistrationListener" into mm-wireless-dev
am: 66ad4157f5

* commit '66ad4157f59141b396e7ffbad2f2f2b4b95e44ef':
Add registrationAssociatedUriChanged to ImsRegistrationListener
66ad4157f59141b396e7ffbad2f2f2b4b95e44ef 25-Feb-2016 Pavel Zhamaitsiak <pavelz@google.com> Merge "Add registrationAssociatedUriChanged to ImsRegistrationListener" into mm-wireless-dev
4c1da288a61ca6ecbe08ed18f89db978479f24b8 12-Feb-2016 Omkar Kolangade <omkark@codeaurora.org> IMS RAT Reporting in Registration Callbacks
am: a7ced64be6

* commit 'a7ced64be6f5c8e0e1c9e2a9a0a51c7eb324ca4d':
IMS RAT Reporting in Registration Callbacks
4de9cbb93b842385b511106fb72cdbfcd59bc3d6 12-Feb-2016 Pavel Zhamaitsiak <pavelz@google.com> Add registrationAssociatedUriChanged to ImsRegistrationListener

Update ImsManager to reflect changes in AIDL

Bug: 24613146
Change-Id: I91847b7051af49dfb8cec726daea18957a9acea1
ndroid/ims/ImsConnectionStateListener.java
ndroid/ims/ImsManager.java
a7ced64be6f5c8e0e1c9e2a9a0a51c7eb324ca4d 05-May-2015 Omkar Kolangade <omkark@codeaurora.org> IMS RAT Reporting in Registration Callbacks

Modifying the registrationProgressing and
registrationConnected callbacks to have a parameter
for IMS Radio Access Technology information.
Through this, frameworks is aware of the IMS
RAT - LTE or WiFi - and can use the information
to display appropriate UI notifications.

Bug: 21902225
Change-Id: I18af9c146be06d98f9ea9cd9c947e4cffee04a42
ndroid/ims/ImsManager.java
eced23013075769cf671bb6f43a9c63febde3e80 05-Feb-2016 Omkar Kolangade <omkark@codeaurora.org> IMS: Video Quality Constants (VT)
am: 255dca28a4

* commit '255dca28a46aa31b70b64244f8beb1c9a965e7e1':
IMS: Video Quality Constants (VT)
255dca28a46aa31b70b64244f8beb1c9a965e7e1 29-Jan-2016 Omkar Kolangade <omkark@codeaurora.org> IMS: Video Quality Constants (VT)

Adding video quality constants. Also removing
unused video quality APIs from ImsConfig.

Change-Id: Ief2583c8d4a0e8167bbb4916ebab8f16f5002d3f
ndroid/ims/ImsConfig.java
79bdd0905db4e9f93d136ee43e3eee4fbcd5507d 29-Jan-2016 Pavel Zhamaitsiak <pavelz@google.com> Merge "ImsManager: Allow to set ImsConfigListener" into mm-wireless-dev
am: 9df7c39174

* commit '9df7c391748b141c957222ab41e955fbd21633fb':
ImsManager: Allow to set ImsConfigListener
9df7c391748b141c957222ab41e955fbd21633fb 29-Jan-2016 Pavel Zhamaitsiak <pavelz@google.com> Merge "ImsManager: Allow to set ImsConfigListener" into mm-wireless-dev
77941f0a7a84d5a260bbb4dc0ea957d24cb05b2b 27-Jan-2016 Tyler Gunn <tgunn@google.com> Merge "IMS: Update host call callProfile on conference success" into mm-wireless-dev
am: e1f8fa7b50

* commit 'e1f8fa7b50f881d457431a0965579b1259b95b91':
IMS: Update host call callProfile on conference success
f4b90329c282a985e820169b9f7d350537f19ac7 26-Jan-2016 Pavel Zhamaitsiak <pavelz@google.com> ImsManager: Allow to set ImsConfigListener

The listener can be used to get notifications when feature values are changed.

Change-Id: Idabdc12fa0737957abda1410adef40a6bf29c600
ndroid/ims/ImsManager.java
e1f8fa7b50f881d457431a0965579b1259b95b91 26-Jan-2016 Tyler Gunn <tgunn@google.com> Merge "IMS: Update host call callProfile on conference success" into mm-wireless-dev
b7e91bb57207188335a01c9d3e57b2ac27d3f677 25-Jan-2016 Anju Mathapati <anjucm@codeaurora.org> IMS: Notify conference participants state changed even when list is empty
am: 0f108033df

* commit '0f108033df343d446e42c403494cc2ab079895d5':
IMS: Notify conference participants state changed even when list is empty
1c1088887347d682b7b186027d98ad3617dcfb68 17-Nov-2015 Anju Mathapati <anjucm@codeaurora.org> IMS: Update host call callProfile on conference success

Update host call callProfile on conference success

Change-Id: I58ffb8214aef030bdc17b19e1112d4954e323e25
BUG=26772683
ndroid/ims/ImsCall.java
0f108033df343d446e42c403494cc2ab079895d5 10-Oct-2015 Anju Mathapati <anjucm@codeaurora.org> IMS: Notify conference participants state changed even when list is empty

- We are not notifying conference participant state changed when there
is no participant in the conference participants list. We should
notify state changed in this case.

Change-Id: I1586bd01f6d693a3ee7f53b9411e8b3945979948
BUG=26754447
ndroid/ims/ImsCall.java
5b09c33ad74aa3b54e6f626891665606c2aa388b 30-Dec-2015 Jack Yu <jackyu@google.com> Added dump support to more telephony components.
am: 2f102bd7c0

* commit '2f102bd7c09024d68a12594882d0f9313149dd1a':
Added dump support to more telephony components.
2f102bd7c09024d68a12594882d0f9313149dd1a 29-Dec-2015 Jack Yu <jackyu@google.com> Added dump support to more telephony components.

Added dump support to Ims components and also improved service
state tracker dump support.

bug: 25955373
Change-Id: I25578d251382eeba22c59925be4d878c7bd7b469
ndroid/ims/ImsManager.java
c65739a4beb1868151a4495c0799486bc4c1baa2 23-Dec-2015 Pavel Zhamaitsiak <pavelz@google.com> Merge "Update ImsManager to use CarrierConfigManager"
4ca0cde8fa786f3b1119cebe995ebea2acdff107 23-Dec-2015 Pavel Zhamaitsiak <pavelz@google.com> Update ImsManager to use CarrierConfigManager

This code was not updated in branch it came from.

Change-Id: I1e9d41f0ead15c9fea8c839ff36a6bb567bf67ed
ndroid/ims/ImsManager.java
04f25bdfa3ce2f8e14f9c774bb67e8a3f59def08 22-Dec-2015 Pavel Zhamaitsiak <pavelz@google.com> Turn on IMS if it is not allowed to turn it off for current carrier
am: 9510b1cb97

* commit '9510b1cb97fd77cb6a595b91405cbf0a8a4c426e':
Turn on IMS if it is not allowed to turn it off for current carrier
9510b1cb97fd77cb6a595b91405cbf0a8a4c426e 18-Dec-2015 Pavel Zhamaitsiak <pavelz@google.com> Turn on IMS if it is not allowed to turn it off for current carrier

We might turn off IMS when Carrier Config allows it. When phone switches
to Carrier Config for which it is expected that IMS stays On, then we need
to explicitly turn it on.

Bug: 25703525
Change-Id: I39ed8d976684e7e23560f8c6ac1119bb8498a62b
ndroid/ims/ImsManager.java
85cbc37cd0c372ffdeac4bfcd2adcef5b294001d 11-Dec-2015 Tyler Gunn <tgunn@google.com> Merge commit '3801547b13b58a5fae868652ed04eacd1940cd81' into mncvtdev-to-mmwirelessdev-merge-2015-12-10
d2969f52c329061eb77f9e89e5c187738ccb800b 10-Nov-2015 Pavel Zhamaitsiak <pavelz@google.com> Add factoryReset() function to ImsManager

- Reset Enhanbed 4G LTE Mode setting
- Reset WFC settings
- Reset VT setting

Bug: 25300757
Change-Id: I747f6d90e513f8b2243289e420be4faca86a0312
ndroid/ims/ImsManager.java
2dd6c3f7787a53c271a12890017d607d5648a4fa 08-Dec-2015 Pavel Zhamaitsiak <pavelz@google.com> Add factoryReset() function to ImsManager
am: 8c065f5f1b

* commit '8c065f5f1bc66bec1c12cdd156b90f1cb0e98df8':
Add factoryReset() function to ImsManager
a7d32e8db738c2b3ff24d6d4e208e3c1d5660db8 05-May-2015 Etan Cohen <etancohen@google.com> Added API to configure VT over IMS.

Bug: 20750301
Change-Id: Iecad593e8f7aa5a76a37ff63e9ff9b9536827a5c
ndroid/ims/ImsManager.java
8c065f5f1bc66bec1c12cdd156b90f1cb0e98df8 10-Nov-2015 Pavel Zhamaitsiak <pavelz@google.com> Add factoryReset() function to ImsManager

- Reset Enhanbed 4G LTE Mode setting
- Reset WFC settings
- Reset VT setting

Bug: 25300757
Change-Id: I747f6d90e513f8b2243289e420be4faca86a0312
ndroid/ims/ImsManager.java
57911d120a57beb906c00cfddbdae38249b205e7 20-Oct-2015 Pavel Zhamaitsiak <pavelz@google.com> IMS: Add check for GBA SIM

Bug: 23731243
Change-Id: Iff8d9696a672f44b28adbfe2a7a147133247f815
ndroid/ims/ImsManager.java
14077be065f36916aceebcfab79f92024f4ed73c 25-Sep-2015 Anju Mathapati <anjucm@codeaurora.org> IMS: Dont clean merge info on host termination

When merge is initiated & user triggers hangup
we should process hangup only for the active call.
Peer session updates will automatically happen after
conference response.
Peer information should not be cleaned up from active call

Change-Id: I0213e434f30e705c2f23ac2fb0c127b015da56da
BUG=24410640
ndroid/ims/ImsCall.java
d0fb66402074528deccd6a85f3d1eca8d2d0714f 22-Jul-2015 Anju Mathapati <anjucm@codeaurora.org> Transfer participants during 3 way conference

When active call fails to merge & only held call
merges into conference, pass the participants
from active to held call which is now going to
be the active conference call

Change-Id: I0f9ec11b92b48e8796daff8989f8af1f05548f37
Bug=23763005
ndroid/ims/ImsCall.java
b4cb8cad7ae78f5fa384dbd19e8bb350ee315914 11-Sep-2015 Pavel Zhamaitsiak <pavelz@google.com> Merge "Fix typos" into mnc-dr-dev
e6f9943a507620ed4952cd2729693accf2a29af8 11-Sep-2015 Pavel Zhamaitsiak <pavelz@google.com> Fix typos

This code is supposed to change VoWiFi config,
but VT config was changed instead.

Bug: 23754677
Bug: 23931295
Change-Id: I3be431404a770d41eec883d4c36f80c111fd9a97
ndroid/ims/ImsManager.java
818c09d7b55d3257e91e528749587349f7197e3f 31-Aug-2015 Anju Mathapati <anjucm@codeaurora.org> IMS: Clean peer & host during conference failure

Send terminate for both host & peer when they get
dropped by network before receiving the conference
response

Change-Id: I676a070f98857df12d208e8732cba2177c07823d
Bug=23819253
ndroid/ims/ImsCall.java
198a2553edd7182ee0da5df306016bbe7f427c0a 09-Sep-2015 Pavel Zhamaitsiak <pavelz@google.com> Merge "Ensure IMS is turned On or Off when synchronizing settings with ImsConfig" into mnc-dr-dev
4f14347f9149b8827d344770307bdf442cd2ff0d 09-Sep-2015 Tyler Gunn <tgunn@google.com> Merge "Fix potential NPE in ImsCall notifyConferenceStateUpdated." into mnc-dr-dev
dc16e458bb57bc48958259e893ad52280247dcc4 09-Sep-2015 Pavel Zhamaitsiak <pavelz@google.com> Ensure IMS is turned On or Off when synchronizing settings with ImsConfig

Bug: 23219836
Change-Id: I0830bf6071841d2822038f737d935351a9ddebe4
ndroid/ims/ImsManager.java
9e3452a8efa430f9ca04379be3da6baf0bb0f51a 08-Sep-2015 Tyler Gunn <tgunn@google.com> Fix potential NPE in ImsCall notifyConferenceStateUpdated.

NPE is possible if the state or state.mParticipants are null; added a
check for these scenarios.

Bug: 23742605
Change-Id: Ie2f7f11d1f76eb46e21a09a828287451a7a1675d
ndroid/ims/ImsCall.java
8ca52ff89d9f43cf1ff04d1d607a0b904e749a82 05-Sep-2015 Pavel Zhamaitsiak <pavelz@google.com> Add ImsManager.updateImsServiceConfig() function

This function pushes carrier config and user settings to ImsConfig.
It supposed to be called on boot up and when new
carrier config is loaded.

Bug: 19710775
Change-Id: I59ca99cda35d4ddbf28b662141d2fcbbd3b2d5f4
ndroid/ims/ImsManager.java
e5f508cc81f3b5d913f64bff615f72ddab5a7c6a 07-Aug-2015 Anthony Lee <anthonylee@google.com> Merge "IMS : UT Service Capability" into mnc-dr-dev
1d4a9a47e0c28988fe46a37969f2c39e31a16be1 10-Nov-2014 Anju Mathapati <anjucm@codeaurora.org> IMS : UT Service Capability

1) Added new feature flag i.e UT service

Change-Id: I4cf0edf62dd75ce0239d37c3d7b8520c666df14b
Bug: 21850717
ndroid/ims/ImsConfig.java
47b08cf53506535d702cfb1971d375db5dcf39e3 06-Aug-2015 Omkar Kolangade <omkark@codeaurora.org> am 75f3ca3a: Fix unncessary IMS re-registration with network

* commit '75f3ca3a51c8d16dbb83af1cfcc151ec596dc5f5':
Fix unncessary IMS re-registration with network
75f3ca3a51c8d16dbb83af1cfcc151ec596dc5f5 24-Oct-2014 Omkar Kolangade <omkark@codeaurora.org> Fix unncessary IMS re-registration with network

When entire IMS stack turn off is going to follow the IMS
re-registration request for a specific service, there is an
unncessary overhead with extra signalling during the process of
re-registration. Also this delays the IMS turn off process.
Fixed by not performing a setFeatureValue operation for a service
turn off when the configuration allows for entire IMS stack to
be turned off.

Add Exception Handling To setAdvanced4GMode API

Bug: 22717994
Bug: 21800429
Change-Id: Ic5d7c54802818de5c8e241cacce62feb02629743
ndroid/ims/ImsManager.java
0e4c7c103ee34f974334fa949570650e2780e8bc 28-Jul-2015 Nathan Harold <nharold@google.com> am 3a99f787: Prevent WFC Settings changes from impacting VoLTE Settings

* commit '3a99f7878b7f4fb49f3f383272b7ba56b99904ee':
Prevent WFC Settings changes from impacting VoLTE Settings
3a99f7878b7f4fb49f3f383272b7ba56b99904ee 25-Jul-2015 Nathan Harold <nharold@google.com> Prevent WFC Settings changes from impacting VoLTE Settings

Bug: 22609300
Change-Id: I36fb3d1254c9168eb5978de1e39e6541d9c37df3
ndroid/ims/ImsManager.java
5e2ca1726a9704e92028179de3bf83626e3e9612 23-Jul-2015 Anthony Lee <anthonylee@google.com> am 22444533: Merge "Handle hangup for 4 way conference scenario" into mnc-dev

* commit '22444533a7c42c71dad746322094777fee352d3c':
Handle hangup for 4 way conference scenario
22444533a7c42c71dad746322094777fee352d3c 23-Jul-2015 Anthony Lee <anthonylee@google.com> Merge "Handle hangup for 4 way conference scenario" into mnc-dev
77e4256dcb15e55e1dd09904fe7847df6be3aa02 23-Jul-2015 Tyler Gunn <tgunn@google.com> am 89efc518: Merge "Support termination of a call while merge is in process." into mnc-dev

* commit '89efc518fc673977cb768b322a9f88d36e971904':
Support termination of a call while merge is in process.
245869b403c10a26dee0632b7b1154652b4aa163 23-Jul-2015 Junda Liu <junda@google.com> am eb9a8ab4: Merge "Remove volte_feature_disabled as carrier config handled it." into mnc-dev

* commit 'eb9a8ab415c8c9c0bf54104b2b6f858e83802ba2':
Remove volte_feature_disabled as carrier config handled it.
89efc518fc673977cb768b322a9f88d36e971904 23-Jul-2015 Tyler Gunn <tgunn@google.com> Merge "Support termination of a call while merge is in process." into mnc-dev
95d563ed2a215d67a4f789c3ebb5a526fb95cc7f 23-Jul-2015 Tyler Gunn <tgunn@google.com> Support termination of a call while merge is in process.

Added mTerminationRequestPending flag to track when a framework or user
initiated call termination is pending. When we get a
processCallTerminated from the RIL, we can use this to override the fact
we normally bury the termination during a merge.
Note: The code change in processCallTerminated looks a lot more involved
but really just involves wrapping a try/finally block around
the main work of the method and adding the finally to cleanup state.

Bug: 22184133
Change-Id: Ie007e8f294e36fbc0eb93492089fd5521ea4ff05
ndroid/ims/ImsCall.java
eb9a8ab415c8c9c0bf54104b2b6f858e83802ba2 23-Jul-2015 Junda Liu <junda@google.com> Merge "Remove volte_feature_disabled as carrier config handled it." into mnc-dev
7e16d5de947db5fb27c25b5a659f1a5233a52857 22-Jul-2015 Junda Liu <junda@google.com> Remove volte_feature_disabled as carrier config handled it.

Bug: b/22602876
Change-Id: I8941162f6ece7ffa840401b7b55a3cd770c3b959
ndroid/ims/ImsManager.java
d9ed874439293ed6c34ce27a3689711c986f977b 17-Jul-2015 Anju Mathapati <anjucm@codeaurora.org> Handle hangup for 4 way conference scenario

Pass the session only during 3-way conference scenario.
For all other cases pass it as null, so as to avoid the listenerproxy
getting over-written

Bug: 22173672
Change-Id: I10a223aaabe731a3a7d3c24da123dae660ed5bb3
ndroid/ims/ImsCall.java
ndroid/ims/internal/ImsCallSession.java
102b0ede9371abb333c0a644c026dc667b51b3db 16-Jul-2015 Tyler Gunn <tgunn@google.com> am 6c0b0d0e: Add method and perform cleanups in ImsCall.

* commit '6c0b0d0e83b8d06f40ec814573adc69f362704a9':
Add method and perform cleanups in ImsCall.
6c0b0d0e83b8d06f40ec814573adc69f362704a9 02-Jul-2015 Tyler Gunn <tgunn@google.com> Add method and perform cleanups in ImsCall.

- Added a couple null-checks for accesses to mConferenceParticipants.
This issue was introduced in b/21376607; I noticed some NPE logspam related
to it.
- Added a new isPendingHold() method which can be used to tell if a call
is pending a hold (used in ImsPhoneConnection later).

Bug: 22173672
Change-Id: I4399e266743955facabc9de010b08764c73ca15f
ndroid/ims/ImsCall.java
394bd1e6bd4392bad9973ffcd808c4b4de2b61ba 23-Jun-2015 Shriram Ganesh <sganesh@codeaurora.org> Add config items for Korea market

Bug: 22170629
Change-Id: I7d923a3180e0ca1b0eae7f8c34bb4d9765949847
ndroid/ims/ImsConfig.java
b2770866aac802be13a3f6e7fdd61e2c1c0d2dc4 08-Jul-2015 Etan Cohen <etancohen@google.com> am e0b0ddeb: Remove permission check from client-side code - ineffective.

* commit 'e0b0ddebe63d31ea31d48d4d647778b9035b18f0':
Remove permission check from client-side code - ineffective.
e0b0ddebe63d31ea31d48d4d647778b9035b18f0 01-Jul-2015 Etan Cohen <etancohen@google.com> Remove permission check from client-side code - ineffective.

Will be added to server side code.

Bug: 17361897
Change-Id: I417a050135ead6023f996a8ea84495e1e9355a97
ndroid/ims/ImsConfig.java
4c68267e68b41dd7a4af7757b412d0a5faff94da 07-Jul-2015 Etan Cohen <etancohen@google.com> Merge changes from topic 'merge-dr1-063015' into mnc-dr-dev

* changes:
Stub base class implementation for some IMS interfaces
IMS: Add an extra for ims phantom MO call.
MWI,phantom call,Suppl services
eea3d44c049ec27c98c531b5f05b1c2d267cba73 06-Aug-2014 Etan Cohen <etancohen@google.com> Stub base class implementation for some IMS interfaces

OEM implementations should sub-class ImsServiceBase and ImsCallSessionListenerBase.
Allows changing the IImsService and IImsCallSessionListener interfaces without breaking
legacy implementations.

Note: main purpose is to allow staged implementations across different
architectures - not to deploy default/stubbed service implementations.

Change-Id: I5874854186456f5853627fbbf3d3b48a71636a72
ndroid/ims/ImsCallSessionListenerBase.java
ndroid/ims/ImsServiceBase.java
9c0337960dbe774b52daa39f99acae50c8230324 17-Jun-2015 Anju Mathapati <anjucm@codeaurora.org> IMS: Add an extra for ims phantom MO call.

A boolean parameter EXTRA_IS_UNKNOWN_CALL is added to denote
whether the call provided in ACTION_IMS_INCOMING_CALL is an
unknown dialing call

Change-Id: I4b9c2ed49995b29834560bbfbedd99b5f1f85eb7
Bug: 21877055
ndroid/ims/ImsManager.java
d3adfadd868b19e2423674bfefa5ba778f743bf2 31-May-2015 Shriram Ganesh <sganesh@codeaurora.org> MWI,phantom call,Suppl services

1. IMS MWI Feature
- Add new API to update waiting
voice message count, for UI
propagation based on RFC 3842

2. phantom call support

Supplementary services
3. IMS: CallForward Unconditional Timer
- Add new API for callforward
unconditional timer in aidl file.

4. IMS : Incoming Call Barring
- Added new field to display ICB
anonymous number.
- Modified existing API to support
request like registration,activation,
deactivation,erasure,interogation.

5.Unsol supplementary service notification
- send unsol supplementary notification to UI
- add call history info

6. Don't reset mUpdateRequest flag upon
receiving call update notification,
oncallSessionUpdated().

7. Reset mHold variable when hold request failed
reset mHold variable so that ImsCall's state corresponds to the
actual state of the call

Change-Id: I7a0293d21fca4bf40dbe764c5d9d9dbb8665d55d
ndroid/ims/ImsCall.java
ndroid/ims/ImsConnectionStateListener.java
ndroid/ims/ImsManager.java
ndroid/ims/ImsUt.java
ndroid/ims/ImsUtInterface.java
ndroid/ims/internal/ImsCallSession.java
2acea6f98afe057fa1a3faf744b240563cdf6ee2 02-Jul-2015 Jonathan Basseri <misterikkit@google.com> Check for null config from CarrierConfigManager.

CarrierConfigManager can return a null bundle if an error occurred (e.g.
RemoteException) We received dozens of reports indicating that had
occurred at this call site, but they did not include logs explaining why
CarrierConfigManager had returned null. (see bug)

Bug: 22230051
Change-Id: I11f5ed44696d0ef8465e33bbed7abfb8b354d40a
ndroid/ims/ImsManager.java
e7663c09acfdfa34d423be3c1ac7fecf2eb5e3e1 23-Jun-2015 Junda Liu <junda@google.com> Update ImsManager to use carrier configs.

Various carrier settings have been migrated to carrier config manager, so we update the call sites in ImsManager.

Bug: b/21878236
Change-Id: I20dcfba6e71f7db4961ff17f059e1a139c9958d7
ndroid/ims/ImsManager.java
95be7c68495a3a22c45b8d7867bf5c0246513adb 07-May-2015 Uma Maheswari Ramalingam <umam@codeaurora.org> IMS: Conference changes

CL is handling refer failure for -
- held call in 3 way merge
- active call in 3 way merge
- active call in 4 way merge

Bug: 20224516, 20232100
Change-Id: I69a006cdedf705762d8494d0da6796884c8631a2
ndroid/ims/ImsCall.java
ndroid/ims/internal/ImsCallSession.java
a1ed7b0957567367d0e782ee6ce1db265d028ece 20-May-2015 Uma Maheswari Ramalingam <umam@codeaurora.org> IMS: Ims Conference fixes

Conference fixes

- Don't reset mUpdateRequest flag upon
receiving call update notification,
oncallSessionUpdated().
- Reset mHold variable when hold request failed
- Update Participants information after
processmergecomplete
- Update only active participants in Conference List
- Reset mHold variable when resume request failed
- Fix crash when participant leaves from conference
- IMS conference participant API

Change-Id: I3e0b1dc3864aa697f5ba5db7ba468bece09b1ea6
Bug: 21376607
ndroid/ims/ImsCall.java
3801547b13b58a5fae868652ed04eacd1940cd81 26-May-2015 Etan Cohen <etancohen@google.com> Merge commit '6f3737f' into merge
95bd67621513f910787214f07c37f0d366ffaf37 13-May-2015 Yorke Lee <yorkelee@google.com> More video related API fixes

android.telecom.Connection.VideoProvider
* onSetPauseImage takes Uri instead of String
* changeCallDataUsage -> setCallDataUsage
* add quality constants to changeVideoQuality() docs

android.telecom.InCallService.VideoCall
* setPauseImage takes Uri instea dof String

android.telecom.VideoProfile.VideoState
* Move constants to VideoProfile, prefix with STATE_

Bug: 21040387
Bug: 21066505
Change-Id: I764e72aced9d1e2d30d6d0cf0862100860d47c79
ndroid/ims/internal/ImsVideoCallProvider.java
ndroid/ims/internal/ImsVideoCallProviderWrapper.java
33d827a95dcb4e007c3e94a591fe1c02fe3d7836 12-May-2015 Yorke Lee <yorkelee@google.com> Fixes for APi review

Move CameraCapabilities into VideoProfile
Make PhoneAccount and PhoneAccountHandle final

Bug: 21040387
Bug: 21066505
Change-Id: I72453c89ae3765f9b9cf263938fce96d5978d2e0
ndroid/ims/internal/ImsVideoCallProvider.java
ndroid/ims/internal/ImsVideoCallProviderWrapper.java
0a625b7ee9586e573442629beb4ac833d45f6e0d 06-May-2015 Tyler Gunn <tgunn@google.com> Change sendSessionModifyRequest VideoProvider API signature.

Bug: 20704229
Change-Id: I7650b6ae21532b10f901449f702f3a4b59477696
ndroid/ims/internal/ImsVideoCallProvider.java
ndroid/ims/internal/ImsVideoCallProviderWrapper.java
6f3737f5b42845db52084702f08a1d7119db1bc4 05-May-2015 Etan Cohen <etancohen@google.com> Added API to configure VT over IMS.

Bug: 20750301
Change-Id: Iecad593e8f7aa5a76a37ff63e9ff9b9536827a5c
ndroid/ims/ImsManager.java
48b9589b8e85d74af982c2aee173da433d54a77d 01-May-2015 Tyler Gunn <tgunn@google.com> Change sendSessionModifyRequest VideoProvider API signature.

Bug: 20704229
Change-Id: I7650b6ae21532b10f901449f702f3a4b59477696
ndroid/ims/internal/ImsVideoCallProvider.java
ndroid/ims/internal/ImsVideoCallProviderWrapper.java
eb13a596a4e19aacffe22fa6d3be88c53816932c 27-Apr-2015 Pavel Zhamaitsiak <pavelz@google.com> Wi-Fi Calling default setting - Off

Bug: 20626411
Change-Id: I0647f7d82f36b2fadd079250b5ba5e3f6d1de3f9
(cherry picked from commit fa380e67d66a0a6c5e2ae13a3ca983f00d86e8cd)
ndroid/ims/ImsManager.java
3f0c3ab68c6bd6155a813764db148ef06d08fea2 24-Apr-2015 Etan Cohen <etancohen@google.com> Merge commit 'e691706' into merge2
7df3df8367c26af4f54994b563e4db393ae5f64a 16-Apr-2015 Jay Shrauner <shrauner@google.com> DO NOT MERGE Remove connection substate

Bug:20300433
Change-Id: Ieb83fb0b71eaf948c19241ec59411b3d434fae33
ndroid/ims/ImsCall.java
ndroid/ims/internal/ImsCallSession.java
e5354df9dd85f16f9b68bf93e8aa782efedad5d7 16-Apr-2015 Jay Shrauner <shrauner@google.com> Remove connection substate

Bug:20300433
Change-Id: Ieb83fb0b71eaf948c19241ec59411b3d434fae33
ndroid/ims/ImsCall.java
ndroid/ims/internal/ImsCallSession.java
e69170655c1f889f0ea212f5de3270fbbfaa5cef 15-Apr-2015 Jonathan Basseri <misterikkit@google.com> Fixing use of subId where phoneId was expected.
automerge: d713365

* commit 'd7133654b09bffcada982d2a5d37d0eeb0ffbd2d':
Fixing use of subId where phoneId was expected.
c5902a8a92f8c88d05f6b74499c219baab15984a 15-Apr-2015 Pavel Zhamaitsiak <pavelz@google.com> Fix compilation error.
automerge: 691a1cc

* commit '691a1cc831e1bade18cb39f917f9aebbb5939ab8':
Fix compilation error.
3aa94b061b774e780aa8126b277a0e3c8ae1c2a5 14-Apr-2015 Tyler Gunn <tgunn@google.com> Merge "Prevent merging conference calls hosted on peer device." into lmp-mr1-wfc-dev
automerge: 6e0a2ef

* commit '6e0a2ef3da064aa783a827d8f3857b994e92b716':
Prevent merging conference calls hosted on peer device.
d7133654b09bffcada982d2a5d37d0eeb0ffbd2d 08-Apr-2015 Jonathan Basseri <misterikkit@google.com> Fixing use of subId where phoneId was expected.

Change-Id: I96eda538d40dc863823d3fae4782e10da345899e
ndroid/ims/ImsManager.java
691a1cc831e1bade18cb39f917f9aebbb5939ab8 09-Apr-2015 Pavel Zhamaitsiak <pavelz@google.com> Fix compilation error.

Change-Id: Ia2c46f1fd9e2a34481690687745d88fb1b0a861f
ndroid/ims/ImsCall.java
6e0a2ef3da064aa783a827d8f3857b994e92b716 08-Apr-2015 Tyler Gunn <tgunn@google.com> Merge "Prevent merging conference calls hosted on peer device." into lmp-mr1-wfc-dev
5aec2e957365f20b2e75d3b8c7034e3289729b81 24-Mar-2015 Rekha Kumar <rekhak@codeaurora.org> IMS-VT: Fix propagation of device orientation.
Orientation received at VT Service is incorrect.
Fixed propagation of device orientation to VT service

Notify listeners of video quality changed event
- Propagate the video quality changed message.

IMS: Add support for video quality
- Add Config interface to get/set video quality

IMS-VT: Change call data usage parameters
Change call data usage methods to take parameter of long type
instead of int

Change-Id: I543aa082337d437ec7c2bf249bafb9658f34dd1b

Propagate the call substate changed message to the UI

Change-Id: I695736ccfa4e4446912ba6c3df1713bae6d4486a
ndroid/ims/ImsCall.java
ndroid/ims/ImsConfig.java
ndroid/ims/internal/ImsCallSession.java
ndroid/ims/internal/ImsVideoCallProvider.java
ndroid/ims/internal/ImsVideoCallProviderWrapper.java
25394099999f724f7806cbc7119ecca3708cf3b3 01-Apr-2015 Tyler Gunn <tgunn@google.com> Prevent merging conference calls hosted on peer device.

With IMS, the "multiparty" bit on an ImsCall is set to "true" when a call
is merged into a conference. This not only occurs on the device hosting
the conference call, but also on the devices of the callers merged into
the conference.

This CL adds code to ImsCall to handle changes to the multiparty state of
the session. It also includes code to track whether the ImsCall is the
Conference Host. A call is the conference host if the conference was
established on the current device.



Bug: 19478784
Change-Id: I764d6381d25275980a87705b7b53e21cdbffb1ea
ndroid/ims/ImsCall.java
ndroid/ims/internal/ImsCallSession.java
61d41c1f9ba249bd0df575cc1b551a9e70f54645 02-Apr-2015 Anthony Lee <anthonylee@google.com> Remove an extraneous check in callSessionMergeFailed().

There is no reason why we cannot continue with merge cleanup
(just to be safe) on a call regardless of if the "i'm in a merge"
flag is set or not. If, for some reason, the call is not
part of a merge, its a NOOP. This handles the case when the
callbacks are out of order and we receive a callSessionMergedFailed()
after a callSessionTerminate() on the merge host. It doesn't really
make sense for the callbacks to come back that way but we should
support it either way. I also cleaned up the processMergeFailed()
function so that it doesn't abort when there is no merge peer.
Now the logic cleans up the merge host anyways and cleans up the
peer only if it exists.
Note that this is only a partial fix for this bug. The other issue
(main issue) that we need to resolve is why the first conference
puts Telecom in a state where the second conference fails.

Bug: 19852295
Change-Id: I3acf8fd4fd5c199c01ca2c4ead4119f3876e38d5
ndroid/ims/ImsCall.java
6804851b58264d7e82b09a845118d24d36c8d831 18-Mar-2015 Anthony Lee <anthonylee@google.com> Clean up logging for ImsCall to make it easier to debug bugreports.

Moved the logging from the radio log to the system log for a
better chance at seeing something from customer reports.

Bug: 19625417
Change-Id: Ib5ae7275fce0a502ba6a1ad356f32f1010d14198
ndroid/ims/ImsCall.java
48738d5f4d5a7dc3611fe9a700e9d5add146b461 31-Jan-2015 Omkar Kolangade <omkark@codeaurora.org> IMS: UT ServiceClass

When CF and CW MMI request will be triggered,
user preferred serviceclass will be sent to
the lower layers.

Change-Id: I419aca453657063941d2b9121b508a0a69a17e6a
ndroid/ims/ImsUt.java
ndroid/ims/ImsUtInterface.java
9e6eca2d0ceef9edc401c66783bca3a57547b727 16-Mar-2015 Pavel Zhamaitsiak <pavelz@google.com> Force IMS to register over LTE when turning off WFC

Bug: 19697174
Change-Id: I4b1538052f4bc2bf5d7c55f78467c6c52b49efd8
ndroid/ims/ImsManager.java
bb14f74aaa122714acdd51ce9e8e4192e3fb7e36 17-Mar-2015 Pavel Zhamaitsiak <pavelz@google.com> Merge "Move "IMS registration error" intent from ImsPhone to ImsManager." into lmp-mr1-wfc-dev
0c2f15ca06fadf31ba50f0e425395fe2890eeaaa 12-Mar-2015 Pavel Zhamaitsiak <pavelz@google.com> Move "IMS registration error" intent from ImsPhone to ImsManager.

Change-Id: I2b57fbcf73110b453307a936dd3c8421c51d5030
ndroid/ims/ImsManager.java
28c84005038e2a15c8c087551034b6714ef574dd 11-Mar-2015 Pavel Zhamaitsiak <pavelz@google.com> WiFi Calling: Change default value for the roaming setting to OFF.

Bug 19682545
Change-Id: Ia3fbcc3aba38cc6c5bae180b512a16f02f48f457
ndroid/ims/ImsManager.java
1463174fa4bab35f04dfa71196c277dfeb603717 04-Feb-2015 Rekha Kumar <rekhak@codeaurora.org> IMS: IMS Registration and handover error codes support

- Add support for propagating IMS Registration error codes and error
messages.
- Propagate the call session handover info to the UI
Change-Id: If2f2008734735f52614bd046fee144843a465ecf
ndroid/ims/ImsCall.java
ndroid/ims/ImsConnectionStateListener.java
ndroid/ims/ImsManager.java
ndroid/ims/internal/ImsCallSession.java
71b788a38f0ce4c43ad1c3f9873493f5235ee81e 03-Mar-2015 Etan Cohen <etancohen@google.com> am f4311129: Add interface to determine whether the IMS service is available

* commit 'f4311129e3508963811d77715f1486ff54964341':
Add interface to determine whether the IMS service is available
183af604fb69ff73a9aeb333c0965221ab380f98 24-Feb-2015 Pavel Zhamaitsiak <pavelz@google.com> Decouple WFC from Enhanced 4G LTE in settings

TMo requires WFC and Enhanced 4G LTE mode to be enabled/disabled independently.
IMS used to be stopped when 4G LTE was disabled and started when it was
enabled. Now we need to take WFC into account when making decision about
starting/stopping IMS.

Change-Id: Icc92097a98e07994783b2ec3579d86b05315d0a2
ndroid/ims/ImsManager.java
f4311129e3508963811d77715f1486ff54964341 27-Feb-2015 Etan Cohen <etancohen@google.com> Add interface to determine whether the IMS service is available

Bug: 19447972
Change-Id: Ida074dd6840c1c7682bdca32d858aa28db2dc71d
ndroid/ims/ImsManager.java
a00c919698d1f5db98238994ad53dd223316a949 24-Dec-2014 Etan Cohen <etancohen@google.com> WFC configuration: add API to get and set user settings.

Change-Id: Ia6ab8e5941b707d77321059450e6235f27ecbf38
ndroid/ims/ImsConfig.java
ndroid/ims/ImsManager.java
c479f66e3d1f3cfdd3e88a050881f7cd663a5a90 12-Feb-2015 Anthony Lee <anthonylee@google.com> Cleanup of conference code including logging, flags and some workflow.

The main purpose was to simply the logic so that the code is more
explicit about what it is doing. There was also a bug in the hold and
resume flow that was fixed.

Bug: 19294176
Change-Id: I558d6da919b9d763f1fd2413e8f9a3dfa5d0e4be
ndroid/ims/ImsCall.java
165aed55d289ae2a5cdf34de4164c2395f46b8c1 06-Feb-2015 Libin.Tang@motorola.com <w16529@motorola.com> Fixing TMO Conference Call Attempt leaves Dialer App in a Zombie state.

When conference call is failed, the mUpdateRequest of both host and peer
imscalls should be updated to UPDATE_NONE.

Bug: 19285127
Change-Id: Ib4afcbf3223d0f0be856e3686f899ade38235e96
ndroid/ims/ImsCall.java
047d8101113030f34f89f7c9ba015d6c5c3abba6 31-Jan-2015 Tyler Gunn <tgunn@google.com> Fixing conference merge where only one party is added to conference.

- revisit code to trigger processMergeComplete; we used to assume that we
were done merging when the transient session started. We now have to
check on terminate and on hold to see if all the calls have been

Bug: 18960042
Change-Id: I682303558c6958d85d2358102757608041b8451e
ndroid/ims/ImsCall.java
ndroid/ims/internal/ImsCallSession.java
b5388a368811eb39ba2f25f1266208b72e62f280 26-Nov-2014 Etan Cohen <etancohen@google.com> Use provisioning (if needed by carrier) to determine whether platform supports VoLTE

Bug: 18576107
Change-Id: I79d0c44a579923cc36fecd2798754cc8a72839c6
ndroid/ims/ImsManager.java
82f7812ac0250a2c61ce2fd9b7439cdf841ef893 15-Dec-2014 Etan Cohen <etancohen@google.com> Disable VoLTE if TTY is on and TTY is not supported over VoLTE

- VoLTE is disabled if TTY is turned on and it is not supported
over VoLTE.
- Add API indicating whether VoLTE is enabled due to TTY restrictions.
Uses configuration of VoLTE on TTY supported and current TTY mode.
- Move code changing Settings.Global.ENHANCED_4G_MODE_ENABLED
from MobileNetworkSettings activity.

Bug: 18593974
Change-Id: Ib2706cf5f30412a735cc6f24228accc7f1216804
ndroid/ims/ImsManager.java
a6cae36b881e26fa288a83c94b8c357fd436140e 11-Dec-2014 Pavel Zhamaitsiak <pavelz@google.com> IMS: Notify about change of TTY mode of other call participants

Pass notification to Phone app

Bug: 18247323
Change-Id: I428f8df60ebada280c6aa16debf1ff44246533bd
ndroid/ims/ImsCall.java
a4710d5d926d8112179acece620f49cb79257e98 09-Dec-2014 Andrew Lee <anwlee@google.com> Pass Message through sendDtmf.

Do not invoke sendToTarget ourselves. Instead, pass the message
through to the ImsCallSession implementation, and rely on that
to send the message to the target.

Bug: 18643493
Change-Id: I37a891ecf71d55b93f24f9b853b64b34a24e0910
ndroid/ims/ImsCall.java
ndroid/ims/internal/ImsCallSession.java
3fd20025b87ff6828182d21668dd0b7a4a0435ec 31-Oct-2014 Libin.Tang@motorola.com <w16529@motorola.com> IMS: support for OMA-DM based provisioning.

Bug: 18576107
Change-Id: Id16ea5ed3ce0c714f658cc86b66f487199d999a7
ndroid/ims/ImsConfig.java
6dd039f557a92eb308a94799da95e5fa27bec492 07-Dec-2014 Libin.Tang@motorola.com <w16529@motorola.com> IMS: add an ImsConfig api to get volte provisioned value.

Bug: 18576107
Change-Id: I84c66089291ffb4051ed7ef70d4a2bcf4a24c3d7
ndroid/ims/ImsConfig.java
a6fbae9f8c793118e008a98d3576df316bf0364a 06-Dec-2014 Uma Maheswari Ramalingam <umam@codeaurora.org> IMS: start and stop dtmf tones.

Support of start and stop dtmf tones in Imsphone

Bug: 18371919
Change-Id: I04f5d6f88088e5b77d314d4db9271fd49abf5dca
CRs-Fixed: 751797
ndroid/ims/ImsCall.java
ndroid/ims/internal/ImsCallSession.java
87466c59b1980ec4e56bb17fae8b855efcc17fd8 08-Dec-2014 Tyler Gunn <tgunn@google.com> Fixing disconnect tone heard when merging 3rd participant into conference.

The issue was when we set the merge peer/merge host. We were always
setting the merge peer to the BG call. This is fine when there is no
conference, but when we already have a conference we need to take into
account whether the FG or BG is the conference.

Bug: 18652342
Change-Id: I910a1bee3d3e04477861ed68f2a77a49d0da8471
ndroid/ims/ImsCall.java
095839a66699a128c76cd5002459fcba7c3a9a0d 03-Dec-2014 Uma Maheswari Ramalingam <umam@codeaurora.org> IMS: Reset mHold flag once call is merged

When Conference call is on HOLD and merged, mHold flag is required
to be reset explicitly as Telephony does not send RESUME request
in this scenario.

Bug: 18625579
Change-Id: Icb0b2b52d7dfe64c456b4e7c1b2e7458640ee1da
ndroid/ims/ImsCall.java
d40d4a9ca488e4caa07ed7916ccae4b76c385cae 24-Nov-2014 Etan Cohen <etancohen@google.com> Add a global override for VoLTE calls (which leaves user setting in place)

Bug: 18446228
Change-Id: I77e0047d97be6fb4a81e4e25e0404e2cdcb16644
ndroid/ims/ImsManager.java
6cb99be298f8b1b4363fdacc1cc631c3671380ec 02-Dec-2014 Tyler Gunn <tgunn@google.com> Turning off extended IMS logging (STOPSHIP item).

Bug: 18576223
Change-Id: Ia36750b121836e088ac8f75946bbbe90a5dbdf08
ndroid/ims/ImsCall.java
c1b4a55f5c1c8e8db8d5243988b3b39c37ca6de6 02-Dec-2014 Tyler Gunn <tgunn@google.com> Merge "Cleanup to remove misused CallGroup concept." into lmp-mr1-dev
9bd5ca59239ac4acdccf97c0ab7a2a4ab957bf28 02-Dec-2014 Tyler Gunn <tgunn@google.com> Cleanup to remove misused CallGroup concept.

The ImsCall code makes extensive use of a "CallGroup". This CallGroup has
been the source of a number of bugs, since the CallGroup concept does not
match well with how we are performing merges in IMS.

1. Removed Call Group, replacing with a "peer" and "host" references in
the ImsCall.
2. Revisited the merge logic within the context of the peer/host changes.
3. Also, changed log statements to log the ImsCall instead of the session.
This aids debugging by making it more clear what the context of the various
method operations are.

Bug: 18588383

Change-Id: I78613c44bf656c8ebf9e5d6a1145784ce630deef
ndroid/ims/ImsCall.java
ndroid/ims/ImsCallGroup.java
ndroid/ims/internal/CallGroup.java
ndroid/ims/internal/CallGroupManager.java
ndroid/ims/internal/ICallGroup.java
abbd7880cf8e29274dfc0508568fbffe9f49cad7 27-Sep-2014 Etan Cohen <etancohen@google.com> MSIM IMS: convert to phone ID based selection.

Bug: 18576822
Change-Id: I7e1c79fff307a5f433529213ee2670ad58080d91
ndroid/ims/ImsManager.java
f348775aec349cf205f711352345c8f4e89875de 21-Nov-2014 Ihab Awad <ihab@google.com> Telecom API updates (6/6)

Bug: 18292176
Change-Id: Ie42fb083cf505ff5bd5c13c6424d2606dec494de
ndroid/ims/internal/ImsVideoCallProviderWrapper.java
652ee0ef914be165355b34c903c4cbc95d4f4afc 20-Nov-2014 Andrew Lee <anwlee@google.com> Merge "Track state if ImsCall terminated by merge." into lmp-mr1-dev
8ae59492156d9cef275f559c5ee09a44315989be 18-Nov-2014 Andrew Lee <anwlee@google.com> Track state if ImsCall terminated by merge.

- Save the state if the call when it is merged and there is a
call group of which it is not the owner. We conclude that this
call was merged into the other call group. If the merge fails,
we set this state back to false.
- Delete updateCallGroup, as it is an unused method.
- When a merge occurs, set a call group on the background call if
the referral call's CallGroup is null. Before, when two IMS
connections were first merged into a conference, the call group
was not set on the background call and so pathway through
notifyConferenceSessionTerminated (which checks for mWasMerged)
never occurred.

Bug: 18291234
Change-Id: Ibb981bdeb8e1f8d0fca6fde3845876aba13e93e3
ndroid/ims/ImsCall.java
987bab859324396c0d1fc00c375f98f3f74c9067 17-Nov-2014 Pavel Zhamaitsiak <pavelz@google.com> TTY over IMS: Notify the user that TTY mode changed in the far device

Bug: 18247323
Change-Id: I9847d947c9d1ee97da0151a7ccfac35aa6a7b9c4
ndroid/ims/ImsCall.java
ndroid/ims/internal/ImsCallSession.java
168c634eef29f21c73129164207d04b8cce23738 18-Nov-2014 Tyler Gunn <tgunn@google.com> Adding toString methods to IMS classes to aid logging.

Bug: 18200934

Change-Id: Iad06de4e5ba1e343749c5b53efac84cf7c20327a
ndroid/ims/ImsCall.java
ndroid/ims/internal/ImsCallSession.java
e871989b4d1c6590e7c280cbdd90c75ca82a877e 14-Oct-2014 Shriram Ganesh <sganesh@codeaurora.org> Peer capabilities

Add support for peer capabilities

Change-Id: I3af365caaacb4c3c48f73a54da6e5de6bab321aa
ndroid/ims/ImsCall.java
ndroid/ims/internal/ImsCallSession.java
49c059220a3df5ea6d4e9ee2fdbdc9556cbbb1b1 05-Nov-2014 Omkar Kolangade <omkark@codeaurora.org> IMS Conference Callback Handling

Adding logic to handle intermediate
and conference callbacks while creating
a conference session as well as adding
a call to an existing conference.

Change-Id: Ib53a8f9408f807a6ce1be6005e1fc911b87598d4
ndroid/ims/ImsCall.java
172568141a72345cc9e7599930332d4200989931 07-Nov-2014 Tyler Gunn <tgunn@google.com> Merge "Conference event package performance improvement." into lmp-mr1-dev
b8799fe85b9387999f03ce7def6ace59903984a4 04-Nov-2014 Anthony Lee <anthonylee@google.com> Complete implementation of ImsCallSession merge()

This CL implements the rest of the logic around the various callbacks
that are issued from the ImsCallSession to implement the merging of
two calls into a conference.

Bug: 18056632
Change-Id: I183a3b2c49d4192e14813333339440d746febdbf
ndroid/ims/ImsCall.java
1c46760f9e523312d92e027dfdb52d359d65efe1 04-Nov-2014 Tyler Gunn <tgunn@google.com> 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: I10ac8efef74db75a90d97577bcc95d55b827b28b
ndroid/ims/ImsCall.java
71382693cbc81b1d131085f52d97879976706f55 30-Oct-2014 Anthony Lee <anthonylee@google.com> Implement plumbing for merge() related callback workflows.

Added support for a transient ImsCallSession that could eventually
turn into the underlying ImsCall when it turns into a newly minted
conference call. Also handled the series of callSessionMergeXXX()
series of call to properly set up the pluming for IMS conferences.

Also cleaned up/added some logging.

Lastly, the prototype for onCallMerged() was changed because, at this
level, there is no sensible value that we could return even
if we wanted to. No one uses this newCall parameter anyways.

Bug: 18056632
Change-Id: Ifd0e23571b8bc928f2fd365df6c2d5d0f9a65b50
ndroid/ims/ImsCall.java
67a843d7d44c1b3a87644389b33f842df1c08351 30-Oct-2014 Tyler Gunn <tgunn@google.com> Creating connections for conference event package participants.

- Adding code to ImsCall to set the call to multi-party when a conference
event package comes in for test purposes.


Bug: 18057361
Change-Id: I1589cced7a31e09a3442e713eb7a17a96370db9f
ndroid/ims/ImsCall.java
5965614f5b813f2739722589f84cec69c572b0a2 28-Oct-2014 Tyler Gunn <tgunn@google.com> Communicating participant changes to conference controller.

- Add new callback in ImsCall to handle conference event package data
and pass along conference participant state objects to listeners (this
is ultimately bubbled up to the conference controller).

Bug: 18057361
Change-Id: I773972ea66b0c16806efa890ae62578a744caa0e
ndroid/ims/ImsCall.java
ea2b5836f86a9fda6730e680f063370b9e3a1ef9 24-Oct-2014 Etan Cohen <etancohen@google.com> Separate VoLTE and VT configuration API.

Change-Id: I3647599c7f5c5f6f567428b3ce962f7162405cfa
ndroid/ims/ImsManager.java
16b3b36eb554d27f23b05577c6a76a9b989bdbcd 24-Oct-2014 Etan Cohen <etancohen@google.com> Added null check and synchronization on multi-party API.

Change-Id: Ie8ffb647a239b789deeabaf4a0e61418af627f75
ndroid/ims/ImsCall.java
67b77ed5462382ce8184bb33cdffc0201e36d347 27-Oct-2014 Wink Saville <wink@google.com> Merge "Change subId to int from long" into lmp-mr1-dev
938116f08e88772f6736ddd7aa7541c204538b66 27-Oct-2014 Tyler Gunn <tgunn@google.com> Implement test IMS conference event package harness.

- Change some methods on ImsCall so we can externally fake out the
reception of an ImsConferenceState instance.

Bug: 18119796
Change-Id: I0ed4ddce5d9e11e47f26c4931780e65d6a6b337d
ndroid/ims/ImsCall.java
3f2b0aaa277545886571cbf90fc90fd5d304e714 24-Oct-2014 Tyler Gunn <tgunn@google.com> IMS call merge call-back changes.

Renaming callSessionMerged to callSessionMergeStarted.
Adding callSessionMergeComplete callback for when merge successfully
completes.

Bug: 18056632
Change-Id: Id560965722f8651646e6ed5ec158747d1cb5e210
ndroid/ims/ImsCall.java
ndroid/ims/internal/ImsCallSession.java
650762a1678463336e9f7540e117e3856bed881c 24-Oct-2014 Tyler Gunn <tgunn@google.com> Merge "Propagating isMultiParty indicator from RIL up into Telephony layer." into lmp-mr1-dev
1e5a38aa6544b231cd7feb4283b15bc8c12be884 23-Oct-2014 Wink Saville <wink@google.com> Change subId to int from long

Change-Id: Idae6335e63e7b1e4e714bc17e71b1a4705e38474
ndroid/ims/ImsManager.java
b651fa5c90b6a2388d1bd29e67c768894530802e 22-Oct-2014 Etan Cohen <etancohen@google.com> Separated VoLTE and VT configurations.

Change-Id: I16ebaf2904a4ba6e710f3047bb1144be252b0920
ndroid/ims/ImsManager.java
725ad373383798c1516348475b1f6304484e031e 22-Oct-2014 Tyler Gunn <tgunn@google.com> Propagating isMultiParty indicator from RIL up into Telephony layer.

- Adding isMultiParty() methods to ImsCall and ImsCallSession.

Bug: 18058253
Change-Id: I6c31dc31ca4dc0556c781388059256e525c37528
ndroid/ims/ImsCall.java
ndroid/ims/internal/ImsCallSession.java
345fbb2613e3a1985108dc2c42ceabe2711243a6 20-Oct-2014 Pavel Zhamaitsiak <pavelz@google.com> IMS: fix Missed incoming call notification not shown.

Bug: 18012896
Change-Id: If4ff70494c4bd14feb06843bd3be6bb12b449ef5
ndroid/ims/ImsCall.java
54953c79547a4e2f8e690a021d44f533e190427a 07-Aug-2014 Libin.Tang@motorola.com <w16529@motorola.com> IMS: This patch includes:
1. change setProvisionedValue/setProvisionedStringValue to
return operation result.
2 . add additional IMS config.

Change-Id: I460e50e1066cca1751d5aa3ec37c976a91a23f94
ndroid/ims/ImsConfig.java
ndroid/ims/ImsManager.java
8a6bf4bced8a37c671411e0f6dfa997c479a5153 10-Oct-2014 Libin.Tang@motorola.com <w16529@motorola.com> IMS:change enhanced 4g setting to store in setting db.

Change-Id: Ib31d9e4c0f4e2e0a2bc908f36e85917a28234f1a
ndroid/ims/ImsManager.java
31f19e6271e53f7fb359866bd32a8b6a3d47d115 11-Sep-2014 Shriram Ganesh <sganesh@codeaurora.org> IMS: Unsol TTY notification support

Code changes to support UNSOL_TTY_NOTIFICATION handling.

Change-Id: Ic5f308bb3b05a5f88178e725c1c541fc7ca22291
ndroid/ims/internal/ImsCallSession.java
c403b7bee582ed58bd7ae799b5190393b5f7f536 14-Aug-2014 Shriram Ganesh <sganesh@codeaurora.org> Ims: Send user selected TTY mode to lower layers.

Irrespective of whether TTY device is connected or not
send TTY mode setting to modem whenever user changes it
from settings.

Change-Id: I1b6cf0a68f02da1faf438d89e70591037b9d9651
ndroid/ims/ImsManager.java
3ddaa6ec08d417d2848775ad3b5b01b865a9c891 11-Sep-2014 Tyler Gunn <tgunn@google.com> Renaming Telecomm to Telecom.

- Changing package from android.telecomm to android.telecom
- Changing package from com.android.telecomm to
com.android.server.telecomm.
- Renaming TelecommManager to TelecomManager.

Bug: 17364651
Change-Id: Ibf964b6d88935e7787304954295528f8921c0e21
ndroid/ims/internal/ImsVideoCallProvider.java
ndroid/ims/internal/ImsVideoCallProviderWrapper.java
111eecc9845826e985c48133b754e453fb3aca84 11-Sep-2014 Etan Cohen <etancohen@google.com> Added support for VoLTE conference hold and resume.

Bug: 17368957
Change-Id: I0aa1034f24c4860dbf5a2baafc340b89cc41f03a
ndroid/ims/ImsCall.java
af55a405c3838bbc6ea64de521e66eab57547f22 05-Sep-2014 Etan Cohen <etancohen@google.com> Use device and carrier configuration to determine whether phone supports VoLTE.

Additionally, provide a debug override system property.

Bug: 17365969
Change-Id: I07ebaeddc3f37b41b819d43be221f70f6363000c
ndroid/ims/ImsManager.java
d43b5302d8edf4df90a28055f043786f542df219 29-Aug-2014 Uma Maheswari Ramalingam <umam@codeaurora.org> Pick the correct callsession for conference calls

Call requests for confernce calls have to be
triggered on owner call session.

Handle conference call hangup scenario to close all
the connections properly

Bug: 17321414
Change-Id: Ice04b0574c001969b9c12140790a7d1c0aa628a8
ndroid/ims/ImsCall.java
2f92daf76a66d7d2fe6fb7b1a28fc1b5888a7b7c 24-Aug-2014 Libin.Tang@motorola.com <w16529@motorola.com> IMS: modify sendDtmf to pass char input as the vendor implementation does
the conversion from char to int.

Bug: 17282921
Change-Id: I738e6da09df7b54d1aaef2e644e1dcb63d67dd7b
ndroid/ims/ImsCall.java
ndroid/ims/internal/ImsCallSession.java
e229678c0502930303de5dfdb939c0214a67d151 19-Aug-2014 Libin.Tang@motorola.com <w16529@motorola.com> IMS: added implementation for registrationFeatureCapabilityChanged.

Bug: 17182366
Change-Id: I78d89dd6ed1a69a9f1d1ddde929a2a8e25751e92
ndroid/ims/ImsConnectionStateListener.java
ndroid/ims/ImsManager.java
45b5f3131eb0fab88ab77e64aa7294742aab3478 20-Aug-2014 Etan Cohen <etancohen@google.com> Added utility functions to obtain VoLTE/VT platform & user configuration.

Bug: 17134661
Change-Id: Icbdc86c05069aa883582678e1be0f1548826d948
ndroid/ims/ImsManager.java
5b4aa98b59f51ce8eea2c4e39a2bd1c188ac3e26 14-Aug-2014 Etan Cohen <etancohen@google.com> ImsException: include code in exception description

Change-Id: Iba108c437df7af6e828145de553e191e8ba039cf
ndroid/ims/ImsException.java
a8f37ae37c05ebc16ebfd18299df43a807d64ee7 14-Aug-2014 Etan Cohen <etancohen@google.com> Defined constant for default initial IMS state: set to false

False default is a temporary setting until VZN provisioning is added.

Change-Id: Idd0e5945b4caad862c6750cbaf127a493efe6d90
ndroid/ims/ImsManager.java
ed7fbd60ee7f2d72d7bdf78718663774f526a1bc 13-Aug-2014 Ihab Awad <ihab@google.com> Final structural tweaks to Telecomm API (7/8)

Bug: 16416927
Bug: 16494880
Change-Id: I572145da40cda2bd9cc20d5277491c99cc66bb95
ndroid/ims/internal/ImsVideoCallProvider.java
ndroid/ims/internal/ImsVideoCallProviderWrapper.java
5216bd9de165e7fd1ec9b1caea983ab6ca50784e 13-Aug-2014 Libin.Tang@motorola.com <w16529@motorola.com> IMS:fix wrong logging msg.

Change-Id: I674dacb3365421858791949f50c0904846725119
ndroid/ims/ImsConfig.java
19604c01257e846c0702f24ea0b8357f19272b20 11-Aug-2014 Etan Cohen <etancohen@google.com> Move IMS configuration constants from packages/apps/Settings to common location

Constants for Enhanced 4G LTE Mode needed in packages/apps/Settings as well as
in other shared code (e.g. GSMPhone, CDMAPhone). Moved to shared (common)
location.

Change-Id: I0a718218f2e75754346e1caafaa4250000706ad6
ndroid/ims/ImsManager.java
cfc784d17278697e9ce0675acf39d0f1f56e4bea 08-Aug-2014 Etan Cohen <etancohen@google.com> Add function to enable/disable "advanced 4G features"

Perform needed configuration settings and IMS turn on/off.

Some carriers may allow disabling of specific IMS features (e.g. VoLTE)
but require that the IMS service itself is never "turned off". Add code
to use configuration bool (which can be overlayed) to control actual
turnOffIms() function execution.

Change-Id: I3cc0fef1426a31924ff5d5cd4516972bcfae040d
ndroid/ims/ImsManager.java
01b4ea445b5cdc6c1b32153d4f0216f429ede8af 08-Aug-2014 Andrew Lee <anwlee@google.com> Implement Ims's VideoCallProvider, including a wrapper.

+ Implements ConnectionService.VideoCallProvider as
ImsVideoCallProviderWrapper. ConnectionService treats this as
the concrete implementation of VideoCallProvider. In detail though,
it is a wrapper around ImsVideoCallProvider which should be extended
in ImsService and implements the actual video call provider
functionality. This wrapper intermediates communication for commands
sent through Telephony and carried out in ImsService. It also
implements the callback class whose binder is provided to the
ImsVideoCallProvider.
+ ImsVideoCallProvider is an abstract class which defines
functionality which satisfies ConnectionService.VideoCallProvider.
We don't directly extend VideoCallProvider because of the
inter-process communication necessary across Telephony and
ImsService. This class provides a binder which is passed to the
ImsVideoCallProviderWrapper.
+ Implement getVideoCallProvider on ImsCallSession.

Bug: 16886403
Change-Id: I9b995baa74149b3c046789f797ab0ff49ae7165b
ndroid/ims/internal/ImsCallSession.java
ndroid/ims/internal/ImsVideoCallProvider.java
ndroid/ims/internal/ImsVideoCallProviderWrapper.java
f54a9cc3d97915245086cdbf32cc2fbe8bfaea8c 09-Jul-2014 Shriram Ganesh <sganesh@codeaurora.org> IMS Framework Changes to Support Call Barring & String Error Codes

ImsUt and ImsUtInterface are being modified for
supporting call barring and propagation of string
error codes from the Ims Service layer.

Change-Id: I66fdbbd175c13261c283627999f37071259f7a6a
ndroid/ims/ImsUt.java
ndroid/ims/ImsUtInterface.java
f398093ec531d9cbb063a23ebfd1f16578157e51 05-Aug-2014 Etan Cohen <etancohen@google.com> Default implementations for IMS session handover callbacks

Change-Id: I863fb0b268315821fa1a0a3246ca60323e9f7585
ndroid/ims/internal/ImsCallSession.java
4f2161d99a69051145f2a5c843b13441f5226afa 01-Aug-2014 Uma Maheswari Ramalingam <umam@codeaurora.org> Add ECBM functionality for IMS

Code for adding ECBM functionality for IMS.

Change-Id: I2833c81baf0a55a18ac6433c47fd76bad7cf0ec9
ndroid/ims/ImsEcbm.java
ndroid/ims/ImsEcbmStateListener.java
ndroid/ims/ImsManager.java
0c9c09e19840dcfe8048757ad27a2405c954f372 25-Jul-2014 Etan Cohen <etancohen@google.com> Make sure IMS service is created before calling on/off APIs.

Change-Id: I5ab50e570d06865b3b12a65454c0d4b2803c4ffc
ndroid/ims/ImsManager.java
7da5a11accec318cc3da2087fb3a891db4f661f7 16-Jul-2014 ram <ram.pl@samsung.com> IMS: Added ims on/off changes & callbacks for features enabled.

Change-Id: Ie2ea119086d7beaee38f39881d3987b87b7a11ea
ndroid/ims/ImsConfig.java
ndroid/ims/ImsManager.java
d1edfd8cf9ffeb191a84e08522bb570cd8cd4381 18-Jul-2014 Tyler Gunn <tgunn@google.com> Various IMS changes. (2/3)

- Modifying "accept" in ImsCall to pass along the accepted call type.

Bug: 15893156
Change-Id: Ie4f171b56d7026b2620f81cd4075b8d0c0e98abe
ndroid/ims/ImsCall.java
d772746bfbbd8391376928d71235edde4505ea0a 12-Jul-2014 Etan Cohen <etancohen@google.com> MSIM support for IMS

Added support to handle IMS in MSIM scenarios. Supports an ImsService interface per
subscription.

Note: These individual ImsService interfaces can be implemented on a single or multiple
IMS stacks.

Change-Id: I6d4ce7dd1cc6f75f89a41951ef8fce78afde811c
ndroid/ims/ImsManager.java
076c55df56906453aade4a741b435f1df72778a2 24-Jun-2014 Libin.Tang@motorola.com <w16529@motorola.com> IMS: Add Config interface to get/set IMS service/capabilities

Change-Id: I5f422aae105cbf8e85aee711aaa49b5d2e958573
ndroid/ims/ImsConfig.java
ndroid/ims/ImsManager.java
9b4ca89882b8b403b36462972b826ac9199a34a4 01-Jul-2014 Etan Cohen <etancohen@google.com> IMS Framework and AIDL Changes to Support CLIR/P and COLR/P

Change-Id: I7d15b092feb8fa0eaf6764223d5890ed17c3a143
ndroid/ims/ImsUt.java
ndroid/ims/ImsUtInterface.java
ca45f58a57eb782153c034ae067f59c0018799ca 19-May-2014 Uma Maheswari Ramalingam <uramalin@quicinc.com> Skip hold request for Conference operation

Currently for conference operation, apps
sends out hold request followed by merge.

Certain IMS service implementation will execute
merge operation without waiting for apps to
put the call on hold explicitly.
For these scenarios, block hold request based on the
config value.

Change-Id: I1aec0f95381d43b3f7f1704fce988f0796839c36
ndroid/ims/ImsCall.java
5f0467a8b9b8aaa7a3d78d7b593f1961e9c59947 26-Jun-2014 Wink Saville <wink@google.com> Fix lpdk build.

Move aidl files from frameworks/opt/net/ims to frameworks/base so lpdk
compiles. The reason is lpdk doesn't have frameworks/base sources so
references to Pending and Bundle in aidl files breaks the pdk build.

I had to move all of them and the ims/*java files for dependency reasons.

Change-Id: I92452562591b157cecdfc01bcd892c4f35f5965c
ndroid/ims/ImsCallForwardInfo.aidl
ndroid/ims/ImsCallForwardInfo.java
ndroid/ims/ImsCallProfile.aidl
ndroid/ims/ImsCallProfile.java
ndroid/ims/ImsConferenceState.aidl
ndroid/ims/ImsConferenceState.java
ndroid/ims/ImsReasonInfo.aidl
ndroid/ims/ImsReasonInfo.java
ndroid/ims/ImsSsInfo.aidl
ndroid/ims/ImsSsInfo.java
ndroid/ims/ImsStreamMediaProfile.aidl
ndroid/ims/ImsStreamMediaProfile.java
ndroid/ims/internal/IImsCallSession.aidl
ndroid/ims/internal/IImsCallSessionListener.aidl
ndroid/ims/internal/IImsRegistrationListener.aidl
ndroid/ims/internal/IImsService.aidl
ndroid/ims/internal/IImsStreamMediaSession.aidl
ndroid/ims/internal/IImsUt.aidl
ndroid/ims/internal/IImsUtListener.aidl
ef36ef67e009449300b0150c60c9f637e205d79e 11-Jun-2014 Wink Saville <wink@google.com> Merge kwd to master

Change-Id: Idb607c0aa32f80fe4fe1539aedea7a221e9e7f04
ndroid/ims/ImsCall.java
ndroid/ims/ImsCallForwardInfo.aidl
ndroid/ims/ImsCallForwardInfo.java
ndroid/ims/ImsCallGroup.java
ndroid/ims/ImsCallProfile.aidl
ndroid/ims/ImsCallProfile.java
ndroid/ims/ImsConferenceState.aidl
ndroid/ims/ImsConferenceState.java
ndroid/ims/ImsConnectionStateListener.java
ndroid/ims/ImsException.java
ndroid/ims/ImsManager.java
ndroid/ims/ImsReasonInfo.aidl
ndroid/ims/ImsReasonInfo.java
ndroid/ims/ImsServiceClass.java
ndroid/ims/ImsSsInfo.aidl
ndroid/ims/ImsSsInfo.java
ndroid/ims/ImsStreamMediaProfile.aidl
ndroid/ims/ImsStreamMediaProfile.java
ndroid/ims/ImsUt.java
ndroid/ims/ImsUtInterface.java
ndroid/ims/internal/CallGroup.java
ndroid/ims/internal/CallGroupManager.java
ndroid/ims/internal/ICall.java
ndroid/ims/internal/ICallGroup.java
ndroid/ims/internal/IImsCallSession.aidl
ndroid/ims/internal/IImsCallSessionListener.aidl
ndroid/ims/internal/IImsRegistrationListener.aidl
ndroid/ims/internal/IImsService.aidl
ndroid/ims/internal/IImsStreamMediaSession.aidl
ndroid/ims/internal/IImsUt.aidl
ndroid/ims/internal/IImsUtListener.aidl
ndroid/ims/internal/ImsCallSession.java
ndroid/ims/internal/ImsStreamMediaSession.java