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

Commit 2a0840f4 authored by William Escande's avatar William Escande
Browse files

Migrate BluetoothService to kotlin

Bug: 262605980
Test: No-op on code. Build + boot
Change-Id: I08b1e381a14db36d33e9115660fda75c5a6d0aea
parent d9e14197
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -21,6 +21,7 @@ filegroup {
    srcs: [
        ":statslog-bluetooth-java-gen",
        "src/**/*.java",
        "src/**/*.kt",
    ],
    visibility: [
        "//frameworks/base/services",
+63 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2015 The Android Open Source Project
 * Copyright (C) 2023 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
@@ -13,64 +13,51 @@
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package com.android.server.bluetooth

package com.android.server.bluetooth;
import android.bluetooth.BluetoothAdapter
import android.content.Context
import android.os.UserManager
import com.android.server.SystemService
import com.android.server.SystemService.TargetUser

import android.annotation.NonNull;
import android.annotation.Nullable;
import android.bluetooth.BluetoothAdapter;
import android.content.Context;
import android.os.UserManager;
class BluetoothService(context: Context) : SystemService(context) {
    private val mBluetoothManagerService = BluetoothManagerService(context)
    private var mInitialized = false

import com.android.server.SystemService;
import com.android.server.SystemService.TargetUser;

public class BluetoothService extends SystemService {
    private BluetoothManagerService mBluetoothManagerService;
    private boolean mInitialized = false;

    public BluetoothService(Context context) {
        super(context);
        mBluetoothManagerService = new BluetoothManagerService(context);
    }

    private void initialize() {
    private fun initialize() {
        if (!mInitialized) {
            mBluetoothManagerService.handleOnBootPhase();
            mInitialized = true;
            mBluetoothManagerService.handleOnBootPhase()
            mInitialized = true
        }
    }

    @Override
    public void onStart() {
    }
    override fun onStart() {}

    @Override
    public void onBootPhase(int phase) {
    override fun onBootPhase(phase: Int) {
        if (phase == SystemService.PHASE_SYSTEM_SERVICES_READY) {
            publishBinderService(BluetoothAdapter.BLUETOOTH_MANAGER_SERVICE,
                    mBluetoothManagerService);
            publishBinderService(
                BluetoothAdapter.BLUETOOTH_MANAGER_SERVICE,
                mBluetoothManagerService
            )
        }
    }

    @Override
    public void onUserStarting(@NonNull TargetUser user) {
    override fun onUserStarting(user: TargetUser) {
        if (!UserManager.isHeadlessSystemUserMode()) {
            initialize();
            initialize()
        }
    }

    @Override
    public void onUserSwitching(@Nullable TargetUser from, @NonNull TargetUser to) {
    override fun onUserSwitching(from: TargetUser?, to: TargetUser) {
        if (!mInitialized) {
            initialize();
            initialize()
        } else {
            mBluetoothManagerService.onSwitchUser(to.getUserHandle());
            mBluetoothManagerService.onSwitchUser(to.getUserHandle())
        }
    }

    @Override
    public void onUserUnlocking(@NonNull TargetUser user) {
        mBluetoothManagerService.handleOnUnlockUser(user.getUserHandle());
    override fun onUserUnlocking(user: TargetUser) {
        mBluetoothManagerService.handleOnUnlockUser(user.getUserHandle())
    }
}