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

Commit 5d52ce9b authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Update LocalBluetoothProfile api"

parents 18108f0a cadc63cb
Loading
Loading
Loading
Loading
+13 −22
Original line number Diff line number Diff line
@@ -153,21 +153,6 @@ public class A2dpProfile implements LocalBluetoothProfile {
        return mService.getDevicesMatchingConnectionStates(states);
    }

    public boolean connect(BluetoothDevice device) {
        if (mService == null) {
            return false;
        }
        return mService.setConnectionPolicy(device, CONNECTION_POLICY_ALLOWED);
    }

    public boolean disconnect(BluetoothDevice device) {
        if (mService == null) {
            return false;
        }

        return mService.setConnectionPolicy(device, CONNECTION_POLICY_FORBIDDEN);
    }

    public int getConnectionStatus(BluetoothDevice device) {
        if (mService == null) {
            return BluetoothProfile.STATE_DISCONNECTED;
@@ -187,31 +172,37 @@ public class A2dpProfile implements LocalBluetoothProfile {
        return mService.getActiveDevice();
    }

    public boolean isPreferred(BluetoothDevice device) {
    @Override
    public boolean isEnabled(BluetoothDevice device) {
        if (mService == null) {
            return false;
        }
        return mService.getConnectionPolicy(device) > CONNECTION_POLICY_FORBIDDEN;
    }

    public int getPreferred(BluetoothDevice device) {
    @Override
    public int getConnectionPolicy(BluetoothDevice device) {
        if (mService == null) {
            return CONNECTION_POLICY_FORBIDDEN;
        }
        return mService.getConnectionPolicy(device);
    }

    public void setPreferred(BluetoothDevice device, boolean preferred) {
    @Override
    public boolean setEnabled(BluetoothDevice device, boolean enabled) {
        boolean isEnabled = false;
        if (mService == null) {
            return;
            return false;
        }
        if (preferred) {
        if (enabled) {
            if (mService.getConnectionPolicy(device) < CONNECTION_POLICY_ALLOWED) {
                mService.setConnectionPolicy(device, CONNECTION_POLICY_ALLOWED);
                isEnabled = mService.setConnectionPolicy(device, CONNECTION_POLICY_ALLOWED);
            }
        } else {
            mService.setConnectionPolicy(device, CONNECTION_POLICY_FORBIDDEN);
            isEnabled = mService.setConnectionPolicy(device, CONNECTION_POLICY_FORBIDDEN);
        }

        return isEnabled;
    }
    boolean isA2dpPlaying() {
        if (mService == null) return false;
+13 −22
Original line number Diff line number Diff line
@@ -115,21 +115,6 @@ final class A2dpSinkProfile implements LocalBluetoothProfile {
                         BluetoothProfile.STATE_DISCONNECTING});
    }

    public boolean connect(BluetoothDevice device) {
        if (mService == null) {
            return false;
        }
        return mService.setConnectionPolicy(device, CONNECTION_POLICY_ALLOWED);
    }

    public boolean disconnect(BluetoothDevice device) {
        if (mService == null) {
            return false;
        }

        return mService.setConnectionPolicy(device, CONNECTION_POLICY_FORBIDDEN);
    }

    public int getConnectionStatus(BluetoothDevice device) {
        if (mService == null) {
            return BluetoothProfile.STATE_DISCONNECTED;
@@ -137,31 +122,37 @@ final class A2dpSinkProfile implements LocalBluetoothProfile {
        return mService.getConnectionState(device);
    }

    public boolean isPreferred(BluetoothDevice device) {
    @Override
    public boolean isEnabled(BluetoothDevice device) {
        if (mService == null) {
            return false;
        }
        return mService.getConnectionPolicy(device) > CONNECTION_POLICY_FORBIDDEN;
    }

    public int getPreferred(BluetoothDevice device) {
    @Override
    public int getConnectionPolicy(BluetoothDevice device) {
        if (mService == null) {
            return CONNECTION_POLICY_FORBIDDEN;
        }
        return mService.getConnectionPolicy(device);
    }

    public void setPreferred(BluetoothDevice device, boolean preferred) {
    @Override
    public boolean setEnabled(BluetoothDevice device, boolean enabled) {
        boolean isEnabled = false;
        if (mService == null) {
            return;
            return false;
        }
        if (preferred) {
        if (enabled) {
            if (mService.getConnectionPolicy(device) < CONNECTION_POLICY_ALLOWED) {
                mService.setConnectionPolicy(device, CONNECTION_POLICY_ALLOWED);
                isEnabled = mService.setConnectionPolicy(device, CONNECTION_POLICY_ALLOWED);
            }
        } else {
            mService.setConnectionPolicy(device, CONNECTION_POLICY_FORBIDDEN);
            isEnabled = mService.setConnectionPolicy(device, CONNECTION_POLICY_FORBIDDEN);
        }

        return isEnabled;
    }

    boolean isAudioPlaying() {
+5 −5
Original line number Diff line number Diff line
@@ -195,7 +195,7 @@ public class CachedBluetoothDevice implements Comparable<CachedBluetoothDevice>

            if (newProfileState == BluetoothProfile.STATE_CONNECTED) {
                if (profile instanceof MapProfile) {
                    profile.setPreferred(mDevice, true);
                    profile.setEnabled(mDevice, true);
                }
                if (!mProfiles.contains(profile)) {
                    mRemovedProfiles.remove(profile);
@@ -208,7 +208,7 @@ public class CachedBluetoothDevice implements Comparable<CachedBluetoothDevice>
                }
            } else if (profile instanceof MapProfile
                    && newProfileState == BluetoothProfile.STATE_DISCONNECTED) {
                profile.setPreferred(mDevice, false);
                profile.setEnabled(mDevice, false);
            } else if (mLocalNapRoleConnected && profile instanceof PanProfile
                    && ((PanProfile) profile).isLocalRoleNap(mDevice)
                    && newProfileState == BluetoothProfile.STATE_DISCONNECTED) {
@@ -250,12 +250,12 @@ public class CachedBluetoothDevice implements Comparable<CachedBluetoothDevice>
        PbapServerProfile PbapProfile = mProfileManager.getPbapProfile();
        if (PbapProfile != null && isConnectedProfile(PbapProfile))
        {
            PbapProfile.disconnect(mDevice);
            PbapProfile.setEnabled(mDevice, false);
        }
    }

    public void disconnect(LocalBluetoothProfile profile) {
        if (profile.disconnect(mDevice)) {
        if (profile.setEnabled(mDevice, false)) {
            if (BluetoothUtils.D) {
                Log.d(TAG, "Command sent successfully:DISCONNECT " + describe(profile));
            }
@@ -342,7 +342,7 @@ public class CachedBluetoothDevice implements Comparable<CachedBluetoothDevice>
        if (!ensurePaired()) {
            return;
        }
        if (profile.connect(mDevice)) {
        if (profile.setEnabled(mDevice, true)) {
            if (BluetoothUtils.D) {
                Log.d(TAG, "Command sent successfully:CONNECT " + describe(profile));
            }
+13 −22
Original line number Diff line number Diff line
@@ -114,21 +114,6 @@ public class HeadsetProfile implements LocalBluetoothProfile {
        return true;
    }

    public boolean connect(BluetoothDevice device) {
        if (mService == null) {
            return false;
        }
        return mService.setConnectionPolicy(device, CONNECTION_POLICY_ALLOWED);
    }

    public boolean disconnect(BluetoothDevice device) {
        if (mService == null) {
            return false;
        }

        return mService.setConnectionPolicy(device, CONNECTION_POLICY_FORBIDDEN);
    }

    public int getConnectionStatus(BluetoothDevice device) {
        if (mService == null) {
            return BluetoothProfile.STATE_DISCONNECTED;
@@ -164,31 +149,37 @@ public class HeadsetProfile implements LocalBluetoothProfile {
        return mService.getAudioState(device);
    }

    public boolean isPreferred(BluetoothDevice device) {
    @Override
    public boolean isEnabled(BluetoothDevice device) {
        if (mService == null) {
            return false;
        }
        return mService.getConnectionPolicy(device) > CONNECTION_POLICY_FORBIDDEN;
    }

    public int getPreferred(BluetoothDevice device) {
    @Override
    public int getConnectionPolicy(BluetoothDevice device) {
        if (mService == null) {
            return CONNECTION_POLICY_FORBIDDEN;
        }
        return mService.getConnectionPolicy(device);
    }

    public void setPreferred(BluetoothDevice device, boolean preferred) {
    @Override
    public boolean setEnabled(BluetoothDevice device, boolean enabled) {
        boolean isEnabled = false;
        if (mService == null) {
            return;
            return false;
        }
        if (preferred) {
        if (enabled) {
            if (mService.getConnectionPolicy(device) < CONNECTION_POLICY_ALLOWED) {
                mService.setConnectionPolicy(device, CONNECTION_POLICY_ALLOWED);
                isEnabled = mService.setConnectionPolicy(device, CONNECTION_POLICY_ALLOWED);
            }
        } else {
            mService.setConnectionPolicy(device, CONNECTION_POLICY_FORBIDDEN);
            isEnabled = mService.setConnectionPolicy(device, CONNECTION_POLICY_FORBIDDEN);
        }

        return isEnabled;
    }

    public List<BluetoothDevice> getConnectedDevices() {
+13 −22
Original line number Diff line number Diff line
@@ -151,21 +151,6 @@ public class HearingAidProfile implements LocalBluetoothProfile {
        return mService.getDevicesMatchingConnectionStates(states);
    }

    public boolean connect(BluetoothDevice device) {
        if (mService == null) {
            return false;
        }
        return mService.setConnectionPolicy(device, CONNECTION_POLICY_ALLOWED);
    }

    public boolean disconnect(BluetoothDevice device) {
        if (mService == null) {
            return false;
        }

        return mService.setConnectionPolicy(device, CONNECTION_POLICY_FORBIDDEN);
    }

    public int getConnectionStatus(BluetoothDevice device) {
        if (mService == null) {
            return BluetoothProfile.STATE_DISCONNECTED;
@@ -185,31 +170,37 @@ public class HearingAidProfile implements LocalBluetoothProfile {
        return mService.getActiveDevices();
    }

    public boolean isPreferred(BluetoothDevice device) {
    @Override
    public boolean isEnabled(BluetoothDevice device) {
        if (mService == null) {
            return false;
        }
        return mService.getConnectionPolicy(device) > CONNECTION_POLICY_FORBIDDEN;
    }

    public int getPreferred(BluetoothDevice device) {
    @Override
    public int getConnectionPolicy(BluetoothDevice device) {
        if (mService == null) {
            return CONNECTION_POLICY_FORBIDDEN;
        }
        return mService.getConnectionPolicy(device);
    }

    public void setPreferred(BluetoothDevice device, boolean preferred) {
    @Override
    public boolean setEnabled(BluetoothDevice device, boolean enabled) {
        boolean isEnabled = false;
        if (mService == null) {
            return;
            return false;
        }
        if (preferred) {
        if (enabled) {
            if (mService.getConnectionPolicy(device) < CONNECTION_POLICY_ALLOWED) {
                mService.setConnectionPolicy(device, CONNECTION_POLICY_ALLOWED);
                isEnabled = mService.setConnectionPolicy(device, CONNECTION_POLICY_ALLOWED);
            }
        } else {
            mService.setConnectionPolicy(device, CONNECTION_POLICY_FORBIDDEN);
            isEnabled = mService.setConnectionPolicy(device, CONNECTION_POLICY_FORBIDDEN);
        }

        return isEnabled;
    }

    public void setVolume(int volume) {
Loading