Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Skip to content
Commit d7224be7 authored by Abhishek Adappa's avatar Abhishek Adappa Committed by Linux Build Service Account
Browse files

Clean up Icc Refresh handling.

1. When a SIM refresh is received of type INIT or RESET,
don't immediately start re-fetching the records, because
the app might not be ready. In this case, we could end up
broadcasting that all records are loaded pre-maturely.

On a refresh of the above type, the app will move out of the
ready state and back into the PIN state, if PIN is enabled.
Start reading the records only after the PIN has been verified
and the app has moved to the READY state.

2. UiccController will listen for refresh and propagate it to
the Card and the Apps. The App will set its state to UNKNOWN
on receiving a refresh.
UiccController will also request card status on receiving
refresh to get the latest state.

This avoids having to make assumptions on the ordering of the
Unsols for Sim Refresh and card state changes. This also
ensures that after an app state is marked UNKNOWN,
it will move to READY, if it is truly ready.

3. Moved common implementation for refresh into IccRecords
for better code reuse.

4. Side effect of #3 is RuimRecords will now reset AdnCache when
refresh of type INIT is received.

Change-Id: I58b1237a49d4f943a699d751a8680c25ce4394ad
CRs-Fixed: 503646
(cherry picked from commit 6000bfc07122c07f7b8f075f272fdf1e384032e6)
(cherry picked from commit 5a1abe073cb648a8772bcfa2d5fdee88070e4b8b)
(cherry picked from commit 12a9a344eb49498b44ddb0e4f1c8126c6507b56e)
parent f6887afc
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment