NPE can happen when calls are canceled immediately before incallservice
has a chance to respond.
Bug:17362107
Change-Id: I6bf318f5f7d89731b686a1523678a26764fa9bf3
These methods are redundant because there are already other methods
listening to the connection adding and removing.
Bug: 17262026
Change-Id: I1c87af539932673a11e5ceee62755c2aec6aa43f
Hiding in Connection, ConnectionRequest, and ConnectionService.
Also @hiding PhoneAccount and PhoneCapabilities attributes related
to VT.
Bug: 17243002
Change-Id: I685305cddb99e1d2eb767982106253894a8d282f
Return empty List instead of null so calling functions don't throw NPE
when dereferencing return value.
Bug:17282683
Bug:17262485
Change-Id: Ica4952b11a8af28787a4a0b6a991ab888386aa7b
PhoneManager
- handlePinMMI docs should explain what a Pin is and what MMI is
- rename isInAPhoneCall to isInCall
- rename showCallScreen to showInCallScreen
- merge this class into TelecommManager, we don't need both
Bug: 16960458
Change-Id: I7d573e27ed093f2ddb7849703cc62f9916835393
1) Connection.setConference() checked to see if the conference was valid
before setting it. This prevented us from populating child connections
on a new conference until it was added. Now we allow it but dont sent
the update unless the conference has already been sent.
2) removed unnecessary ArrayList<>() wrappers on CopyOnWriteLists.
3) Updated disconnect/hold/unhold so that they are sent to Conference
objects as well as Connection objects.
4) Added support for separating a child conference call.
5) Additional Logging
Bug: 15621105
Bug: 17136172
Change-Id: I939c36bc9694b9d81f0ff582e2fbe335006aa485
This CL fixes serveral issues with the createConnection code:
- it uses failureCode/failureMessage which were never set.
Renamed to disconnectCode and disconnectMessage and set
those fields in Connection.setDisconnected
- Connection.CANCELED_CONNECTION was static and it caused
lots of log spew which was confusing. Changed to create
a new connection every time, same as failure
- moved sNullConnection from Connection to ConnectionService
- made FailureSignalingConnection private and removed type
checks for it. Using disconnect code is better, this is
already what ConnectionServiceWrapper does
Note, the current code still expects connections to be cancelled
or failed in synchronously. This bug is being tracked separately.
Bug: 17156304
Change-Id: I0b13a78b738c4bf37a69de9fd5dcd17be0c45c14
Refactor ConnectionService API so it has only one "completed"
callback, and connection state and failure codes indicates what
happened. Previous design where we had separate callbacks for failure,
cancellation and success was error prone because it was easy to forget
to implement one of them.
Bug: 16993846
Bug: 17070939
Change-Id: I84bf5d041cf78193ccf80db201b08db3b7014830
Clean up conference call APIs to use a distinct type separate from
Connection. Also allow the addition of Conference calls at any point
using addConference() API method.
Bug:16844332
Bug:16449372
Change-Id: I34e45fde1aa43559f5f4e29b990929c188b16875
Use sets backed by ConcurrentHashMaps instead of HashSets, and
CopyOnWriteArrayLists instead of ArrayLists, to prevent concurrent
exceptions if listeners try to remove themselves in callbacks while
iterating over the listeners.
Bug:16325026
Change-Id: I55e081eda6ba19fa466bbf019c648bbdaf833c33
Switch from HashSet to set backed by a ConcurrentHashMap to prevent
ConcurrentModificationExceptions.
(Relanding ag/521178. This got reveretd in ag/520450).
Bug: 16901565
Change-Id: I997898ed94f305d9b8c57eead04e0dfe6c04a884
To be able to pass information from dialer to incallui,
telecomm.Call needs to hold extra information. Add this extra bundle to
the intent.
Bug: 15284651
Change-Id: Ie462c35ece41647c7104c657cc1de947ff284729
Also cleans up incidental issues including:
* Remote connection service disconnects from the service it
represents if it is not currently handling any connections;
hope to avert excessive service pinning in the future.
* Fix destroyed connection handling.
Bug: 16828152
Change-Id: Id4555f91ddac5e9c1a12ce00bfd1ee0d6d2cb1d9