diff options
-rw-r--r-- | framework/api/current.txt | 10 | ||||
-rw-r--r-- | framework/java/android/bluetooth/BluetoothCodecConfig.java | 1 | ||||
-rw-r--r-- | framework/java/android/bluetooth/BluetoothCodecStatus.java | 58 |
3 files changed, 67 insertions, 2 deletions
diff --git a/framework/api/current.txt b/framework/api/current.txt index 23739cbbc7..6f8bb1abea 100644 --- a/framework/api/current.txt +++ b/framework/api/current.txt @@ -412,7 +412,6 @@ package android.bluetooth { } public final class BluetoothCodecConfig implements android.os.Parcelable { - ctor public BluetoothCodecConfig(int); method public int describeContents(); method public int getBitsPerSample(); method public int getChannelMode(); @@ -466,7 +465,6 @@ package android.bluetooth { } public final class BluetoothCodecStatus implements android.os.Parcelable { - ctor public BluetoothCodecStatus(@Nullable android.bluetooth.BluetoothCodecConfig, @Nullable java.util.List<android.bluetooth.BluetoothCodecConfig>, @Nullable java.util.List<android.bluetooth.BluetoothCodecConfig>); method public int describeContents(); method @Nullable public android.bluetooth.BluetoothCodecConfig getCodecConfig(); method @NonNull public java.util.List<android.bluetooth.BluetoothCodecConfig> getCodecsLocalCapabilities(); @@ -477,6 +475,14 @@ package android.bluetooth { field public static final String EXTRA_CODEC_STATUS = "android.bluetooth.extra.CODEC_STATUS"; } + public static final class BluetoothCodecStatus.Builder { + ctor public BluetoothCodecStatus.Builder(); + method @NonNull public android.bluetooth.BluetoothCodecStatus build(); + method @NonNull public android.bluetooth.BluetoothCodecStatus.Builder setCodecConfig(@NonNull android.bluetooth.BluetoothCodecConfig); + method @NonNull public android.bluetooth.BluetoothCodecStatus.Builder setCodecsLocalCapabilities(@NonNull java.util.List<android.bluetooth.BluetoothCodecConfig>); + method @NonNull public android.bluetooth.BluetoothCodecStatus.Builder setCodecsSelectableCapabilities(@NonNull java.util.List<android.bluetooth.BluetoothCodecConfig>); + } + public final class BluetoothCsipSetCoordinator implements java.lang.AutoCloseable android.bluetooth.BluetoothProfile { method public void close(); method protected void finalize(); diff --git a/framework/java/android/bluetooth/BluetoothCodecConfig.java b/framework/java/android/bluetooth/BluetoothCodecConfig.java index 91e234aaaf..b7609c5d64 100644 --- a/framework/java/android/bluetooth/BluetoothCodecConfig.java +++ b/framework/java/android/bluetooth/BluetoothCodecConfig.java @@ -272,6 +272,7 @@ public final class BluetoothCodecConfig implements Parcelable { * values to 0. * * @param codecType the source codec type + * @hide */ public BluetoothCodecConfig(@SourceCodecType int codecType) { this(codecType, BluetoothCodecConfig.CODEC_PRIORITY_DEFAULT, diff --git a/framework/java/android/bluetooth/BluetoothCodecStatus.java b/framework/java/android/bluetooth/BluetoothCodecStatus.java index 02606feb3b..6884a3ce93 100644 --- a/framework/java/android/bluetooth/BluetoothCodecStatus.java +++ b/framework/java/android/bluetooth/BluetoothCodecStatus.java @@ -45,6 +45,11 @@ public final class BluetoothCodecStatus implements Parcelable { private final @Nullable List<BluetoothCodecConfig> mCodecsLocalCapabilities; private final @Nullable List<BluetoothCodecConfig> mCodecsSelectableCapabilities; + /** + * Creates a new BluetoothCodecStatus. + * + * @hide + */ public BluetoothCodecStatus(@Nullable BluetoothCodecConfig codecConfig, @Nullable List<BluetoothCodecConfig> codecsLocalCapabilities, @Nullable List<BluetoothCodecConfig> codecsSelectableCapabilities) { @@ -205,4 +210,57 @@ public final class BluetoothCodecStatus implements Parcelable { return (mCodecsSelectableCapabilities == null) ? Collections.emptyList() : mCodecsSelectableCapabilities; } + + /** + * Builder for {@link BluetoothCodecStatus}. + */ + public static final class Builder { + private BluetoothCodecConfig mCodecConfig = null; + private List<BluetoothCodecConfig> mCodecsLocalCapabilities = null; + private List<BluetoothCodecConfig> mCodecsSelectableCapabilities = null; + + /** + * Set Bluetooth codec config for this codec status. + * + * @param codecConfig of this codec status + * @return the same Builder instance + */ + public @NonNull Builder setCodecConfig(@NonNull BluetoothCodecConfig codecConfig) { + mCodecConfig = codecConfig; + return this; + } + + /** + * Set codec local capabilities list for this codec status. + * + * @param codecsLocalCapabilities of this codec status + * @return the same Builder instance + */ + public @NonNull Builder setCodecsLocalCapabilities( + @NonNull List<BluetoothCodecConfig> codecsLocalCapabilities) { + mCodecsLocalCapabilities = codecsLocalCapabilities; + return this; + } + + /** + * Set codec selectable capabilities list for this codec status. + * + * @param codecsSelectableCapabilities of this codec status + * @return the same Builder instance + */ + public @NonNull Builder setCodecsSelectableCapabilities( + @NonNull List<BluetoothCodecConfig> codecsSelectableCapabilities) { + mCodecsSelectableCapabilities = codecsSelectableCapabilities; + return this; + } + + /** + * Build {@link BluetoothCodecStatus}. + * @return new BluetoothCodecStatus built + */ + public @NonNull BluetoothCodecStatus build() { + return new BluetoothCodecStatus(mCodecConfig, mCodecsLocalCapabilities, + mCodecsSelectableCapabilities); + } + } } |