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

Commit d1bffc35 authored by Rongxuan Liu's avatar Rongxuan Liu
Browse files

Bass: Use API flag for hasMessagesOrCallbacks

hasMessagesOrCallbacks is behind new OS api flag.
We should use API flag for such usages.

Bug: 384874314
Flag: EXEMPT; refactor for new API flagging, no fuctional change
Test: atest BassClientServiceTest
Change-Id: I65785bf8f74f7bc6717acfeb9df8b10f3711596f
parent 0b2daf1e
Loading
Loading
Loading
Loading
+13 −3
Original line number Diff line number Diff line
@@ -287,7 +287,7 @@ public class BassClientService extends ProfileService {
                                            break;
                                    }
                                    Handler handler = getOrCreateHandler(broadcastId);
                                    if (!handler.hasMessagesOrCallbacks()) {
                                    if (!hasAnyMessagesOrCallbacks(handler)) {
                                        mHandlers.remove(broadcastId);
                                    }
                                }
@@ -310,7 +310,7 @@ public class BassClientService extends ProfileService {
            }
            Handler handler = getOrCreateHandler(broadcastId);
            handler.removeMessages(msg);
            if (!handler.hasMessagesOrCallbacks()) {
            if (!hasAnyMessagesOrCallbacks(handler)) {
                mHandlers.remove(broadcastId);
            }
        }
@@ -328,7 +328,7 @@ public class BassClientService extends ProfileService {
                Map.Entry<Integer, Handler> entry = iterator.next();
                Handler handler = entry.getValue();
                handler.removeMessages(msg);
                if (!handler.hasMessagesOrCallbacks()) {
                if (!hasAnyMessagesOrCallbacks(handler)) {
                    iterator.remove();
                }
            }
@@ -341,6 +341,16 @@ public class BassClientService extends ProfileService {
            Handler handler = getOrCreateHandler(broadcastId);
            return handler.hasMessages(msg);
        }

        private boolean hasAnyMessagesOrCallbacks(Handler handler) {
            if (android.os.Flags.mainlineVcnPlatformApi()) {
                return handler.hasMessagesOrCallbacks();
            } else {
                return handler.hasMessages(MESSAGE_SYNC_LOST_TIMEOUT)
                        || handler.hasMessages(MESSAGE_BROADCAST_MONITOR_TIMEOUT)
                        || handler.hasMessages(MESSAGE_BIG_MONITOR_TIMEOUT);
            }
        }
    }

    public BassClientService(Context ctx) {