IMS-VT: Peer capabilities

-Add support for peer capabilities

Change-Id: I3af365caaacb4c3c48f73a54da6e5de6bab321aa
IMS-VT: Change call data usage parameters

Change call data usage methods to take parameter of long type
instead of int

CRs-Fixed: 747694

Change-Id: I543aa082337d437ec7c2bf249bafb9658f34dd1b
Merge "IMS-VT: Peer capabilities"
Merge "IMS-VT: Change call data usage parameters"
Propagate the call substate changed message to the UI

Change-Id: I695736ccfa4e4446912ba6c3df1713bae6d4486a
CRs-Fixed: 749824
CSVT: Add CSVT service class for ImsManager.

Circuit Switched Video Telephony is supported with this class.

Change-Id: I9e3600543df5dc349244a9e7177a2a6b6ea08190
Merge "Propagate the call substate changed message to the UI"
Merge "CSVT: Add CSVT service class for ImsManager."
IMS: start and stop dtmf tones

Support of start and stop dtmf tones in Imsphone

Change-Id: I04f5d6f88088e5b77d314d4db9271fd49abf5dca
CRs-Fixed: 751797
Merge "IMS: start and stop dtmf tones"
IMS: Fix VoLTE conferencing.

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

Change-Id: I7a529105b8f8225372a7f07a1de365bf4251e6d7
IMS: Reset mHold flag once call is merged

Conf call is in Hold state and merged then need to reset
the mHold flag as conf call will become active after merge.

Change-Id: Icb0b2b52d7dfe64c456b4e7c1b2e7458640ee1da
Merge "IMS: Fix VoLTE conferencing."
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

Propagating isMultiParty indicator from RIL up into Telephony layer.

- Adding isMultiParty() methods to ImsCall and ImsCallSession.

Bug: 18058253
Change-Id: I6c31dc31ca4dc0556c781388059256e525c37528

IMS call merge call-back changes.

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

Bug: 18056632
Change-Id: Id560965722f8651646e6ed5ec158747d1cb5e210

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

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

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

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

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

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

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

commit 49c059220a3df5ea6d4e9ee2fdbdc9556cbbb1b1
Author: Omkar Kolangade <omkark@codeaurora.org>
Date:   Wed Nov 5 13:56:57 2014 -0800

    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

Change-Id: Ibb981bdeb8e1f8d0fca6fde3845876aba13e93e3
Merge "IMS: Reset mHold flag once call is merged"
Merge "Creating connections for conference event package participants."