summaryrefslogtreecommitdiff
path: root/telecomm/java/android/telecom/Logging/Session.java
AgeCommit message (Collapse)Author
2021-04-29Bound Telecom logging recursionBrad Ebinger
Put a bound on the recursion in Session#toString to ensure we do not accidently cause a Stack overflow Bug: 186694546 AOSP: aosp/1691210 Test: atest TeleServiceTests Change-Id: I52f44dd02d0d860d0894e9b84fded8cf5ff5a18e
2020-05-05Improve connection manager logging.Tyler Gunn
1. In ConnectionService, upping the incoming log level to info from debug; this ensures we can better trace whether methods are actually called. 2. Added the ability in the logging class to get a new external session which supplies the owner info which will be passed in to the recipient of the external session. This allows Telecom or a connection manager to pass in a package abbreviation which will form the calling owner info when the receiver continues the external session. 3. Add owner info to the Session.Info class so it can be passed about. 4. Ensure owner info is copied when getting Session.Info; subsessions were not showing the owner info in the past; this corrects that. 5. When retrieving the external session info, creating a "package call stack" with the owner info. This lets us see the hierarchy of where calls originated. Example: cad/cast/ccme Shows that com.android.dialer send a message to com.android.server.telecom which relayed a message to com.connection.manager.example. 6. Start sessions in RemoteConnection API methods and pass along external session info. This bridges session tracing across a connection manager so we can now trace a method call all the way from dialer, through telecom, through the connection manager, and finally into telephony. Test: Manual call testing with connection manager to verify log behavior. Bug: 153899641 Change-Id: I4518a50550203818374b4e0b52eccb84ffd561dc
2020-04-17Improve remote connection logging.Tyler Gunn
This CL improves traceability of calls initiated via a remote connection service. For regular incoming/outgoing calls, when initiating a request to create a remote connection in RemoteConnectionService, we set EXTRA_REQUESTING_PACKAGE_NAME in the parcelled request to the package name of the connection manager. In ConnectionService this serves as an indicator that the incoming request is via a connection manager and is used to trigger setting of EXTRA_REMOTE_PHONE_ACCOUNT_HANDLE with the phone account handle the remote connection service uses to place the call. For conferences and existing connections, the initial request is from the remote connection service to the connection manager so we can just set the EXTRA_REMOTE_PHONE_ACCOUNT handle there directly. Also cleaned up logging in the telecom session logging to remove the assumption that the ownerInfo is an incall service. Test: Manual testing with connection manager to verify logging. Fixes: 154353494 Change-Id: Iee1b5cfd3334a5de08d7b04022b7c6d5af6a4b04
2019-11-13Fix infinite recursion due to error log messageBrad Ebinger
Bug: 144446106 Test: atest TelecomUnitTests:SessionTest Change-Id: I382f90ad6f91262b06ac8816ecf1ecabfa9f6bb6
2019-08-13Merge "Prevent Infinite Recursion in Telecom Sessions"Brad Ebinger
am: 8dec6de25a Change-Id: I779c9424dc7a1f9f14f7907bba76a24b9026ec5a
2019-08-13Prevent Infinite Recursion in Telecom SessionsBrad Ebinger
There looks to be a case where infinite recursion is occuring when printing information about Telecom Sessions. Set a reasonable limit of iterations and throw a warning when this condition occurs to better track down a root cause. Bug: 139045282 Test: atest TelecomUnitTests:SessionTest Merged-In: Iae69c5db070c5e58ae5d37c12d1c4df027138611 Change-Id: Iae69c5db070c5e58ae5d37c12d1c4df027138611
2019-02-28All Parcelable CREATOR fields are @NonNull.Jeff Sharkey
If they were null, then the Parcelable would fail to work. Bug: 126726802 Test: manual Change-Id: I7929ffa2f20e5de1c8e68e8263cca99496e9d014 Exempt-From-Owner-Approval: Trivial API annotations
2016-11-16Readability improvements in LoggingBrad Ebinger
We now truncate Session method paths and IDs based on the Logging level to improve Session Logging readability in logcat. If another external session is started off of an existing external Session, the preceding histories are replaced with "..." so that the Session information is not overwhelming. Bug: 26571395 Test: Unit Tests and manual tests pass Change-Id: I9ffda3d64f1072fa6228a82a86116a5e47d18c96
2016-10-27Modify AIDLs to include Session.InfoBrad Ebinger
Modifies the IConnectionService.aidl file to include Session.Info information to pass from Telecom to Telephony, which is used to start external Sessions in Telephony from Telecom. Test: Manual testing and Unit Tests pass Bug: 26571395 Change-Id: Ia09a0abfa13d5167542d4c67465ea9aa1930b58b
2016-10-25Add support for starting external SessionsBrad Ebinger
This change adds support for parceling Session Information to be transmitted over AIDLs and starting an external session in the external process. Test: Telecom Unit tests and new SessionManager Tests. Bug: 26571395 Change-Id: Ie27ed88d4a8c344b34568025ddcf150fdcb38d62
2016-10-13Add support for new SessionManager and EventManager testsBrad Ebinger
Test: Ran new unit tests Bug: 26571395 Change-Id: I6d14d7c05b8fdc8dc1319a81f0e41f7bcd989b85
2016-09-30Transplant the Logging system from TelecomBrad Ebinger
This change is the preliminary transplant of the functionality from Telecom into android.telecom. It is currently not being used anywhere and is not hooked into Telecom yet. It will be after this change is committed. Test: Refactoring CL. Existing tests still pass Bug: 26571395 Change-Id: I406975e686c6eaab7e31b1efa426b3406c8e90cf