Commit 4a7b4c88 by jbibik Committed by Tofunmi Adigun-Hameed

Remove previously deprecated `MediaItem.PlaybackProperties` in favour of `LocalConfiguration`.

Deprecated field `MediaItem.playbackProperties` remains for backwards compatibility, but its type is changed from `MediaItem.PlaybackProperties` to `MediaItem.LocalConfiguration`. The private `MediaItem` constructor will now also take in a `LocalConfiguration` argument instead.

PiperOrigin-RevId: 535648420
(cherry picked from commit b89cc652e5d466591617bfb5c9183a033cdf74b9)
parent a21b2c85
...@@ -95,7 +95,7 @@ public class IntentUtil { ...@@ -95,7 +95,7 @@ public class IntentUtil {
if (mediaItem.mediaMetadata.title != null) { if (mediaItem.mediaMetadata.title != null) {
intent.putExtra(TITLE_EXTRA, mediaItem.mediaMetadata.title); intent.putExtra(TITLE_EXTRA, mediaItem.mediaMetadata.title);
} }
addPlaybackPropertiesToIntent(localConfiguration, intent, /* extrasKeySuffix= */ ""); addLocalConfigurationToIntent(localConfiguration, intent, /* extrasKeySuffix= */ "");
addClippingConfigurationToIntent( addClippingConfigurationToIntent(
mediaItem.clippingConfiguration, intent, /* extrasKeySuffix= */ ""); mediaItem.clippingConfiguration, intent, /* extrasKeySuffix= */ "");
} else { } else {
...@@ -105,7 +105,7 @@ public class IntentUtil { ...@@ -105,7 +105,7 @@ public class IntentUtil {
MediaItem.LocalConfiguration localConfiguration = MediaItem.LocalConfiguration localConfiguration =
checkNotNull(mediaItem.localConfiguration); checkNotNull(mediaItem.localConfiguration);
intent.putExtra(URI_EXTRA + ("_" + i), localConfiguration.uri.toString()); intent.putExtra(URI_EXTRA + ("_" + i), localConfiguration.uri.toString());
addPlaybackPropertiesToIntent(localConfiguration, intent, /* extrasKeySuffix= */ "_" + i); addLocalConfigurationToIntent(localConfiguration, intent, /* extrasKeySuffix= */ "_" + i);
addClippingConfigurationToIntent( addClippingConfigurationToIntent(
mediaItem.clippingConfiguration, intent, /* extrasKeySuffix= */ "_" + i); mediaItem.clippingConfiguration, intent, /* extrasKeySuffix= */ "_" + i);
if (mediaItem.mediaMetadata.title != null) { if (mediaItem.mediaMetadata.title != null) {
...@@ -196,7 +196,7 @@ public class IntentUtil { ...@@ -196,7 +196,7 @@ public class IntentUtil {
return builder; return builder;
} }
private static void addPlaybackPropertiesToIntent( private static void addLocalConfigurationToIntent(
MediaItem.LocalConfiguration localConfiguration, Intent intent, String extrasKeySuffix) { MediaItem.LocalConfiguration localConfiguration, Intent intent, String extrasKeySuffix) {
intent intent
.putExtra(MIME_TYPE_EXTRA + extrasKeySuffix, localConfiguration.mimeType) .putExtra(MIME_TYPE_EXTRA + extrasKeySuffix, localConfiguration.mimeType)
......
...@@ -390,7 +390,7 @@ follows these steps: ...@@ -390,7 +390,7 @@ follows these steps:
Playback of downloaded adaptive content requires configuring the player and Playback of downloaded adaptive content requires configuring the player and
passing the corresponding `MediaItem`, as described above. passing the corresponding `MediaItem`, as described above.
When building the `MediaItem`, `MediaItem.playbackProperties.streamKeys` must be When building the `MediaItem`, `MediaItem.localConfiguration.streamKeys` must be
set to match those in the `DownloadRequest` so that the player only tries to set to match those in the `DownloadRequest` so that the player only tries to
play the subset of tracks that have been downloaded. Using play the subset of tracks that have been downloaded. Using
`Download.request.toMediaItem` and `DownloadRequest.toMediaItem` to build the `Download.request.toMediaItem` and `DownloadRequest.toMediaItem` to build the
......
...@@ -544,15 +544,14 @@ public final class MediaItem implements Bundleable { ...@@ -544,15 +544,14 @@ public final class MediaItem implements Bundleable {
} }
/** Returns a new {@link MediaItem} instance with the current builder values. */ /** Returns a new {@link MediaItem} instance with the current builder values. */
@SuppressWarnings("deprecation") // Using PlaybackProperties while it exists.
public MediaItem build() { public MediaItem build() {
// TODO: remove this check once all the deprecated individual DRM setters are removed. // TODO: remove this check once all the deprecated individual DRM setters are removed.
checkState(drmConfiguration.licenseUri == null || drmConfiguration.scheme != null); checkState(drmConfiguration.licenseUri == null || drmConfiguration.scheme != null);
@Nullable PlaybackProperties localConfiguration = null; @Nullable LocalConfiguration localConfiguration = null;
@Nullable Uri uri = this.uri; @Nullable Uri uri = this.uri;
if (uri != null) { if (uri != null) {
localConfiguration = localConfiguration =
new PlaybackProperties( new LocalConfiguration(
uri, uri,
mimeType, mimeType,
drmConfiguration.scheme != null ? drmConfiguration.build() : null, drmConfiguration.scheme != null ? drmConfiguration.build() : null,
...@@ -1055,8 +1054,7 @@ public final class MediaItem implements Bundleable { ...@@ -1055,8 +1054,7 @@ public final class MediaItem implements Bundleable {
} }
/** Properties for local playback. */ /** Properties for local playback. */
// TODO: Mark this final when PlaybackProperties is deleted. public static final class LocalConfiguration {
public static class LocalConfiguration {
/** The {@link Uri}. */ /** The {@link Uri}. */
public final Uri uri; public final Uri uri;
...@@ -1154,33 +1152,6 @@ public final class MediaItem implements Bundleable { ...@@ -1154,33 +1152,6 @@ public final class MediaItem implements Bundleable {
} }
} }
/**
* @deprecated Use {@link LocalConfiguration}.
*/
@Deprecated
public static final class PlaybackProperties extends LocalConfiguration {
private PlaybackProperties(
Uri uri,
@Nullable String mimeType,
@Nullable DrmConfiguration drmConfiguration,
@Nullable AdsConfiguration adsConfiguration,
List<StreamKey> streamKeys,
@Nullable String customCacheKey,
ImmutableList<SubtitleConfiguration> subtitleConfigurations,
@Nullable Object tag) {
super(
uri,
mimeType,
drmConfiguration,
adsConfiguration,
streamKeys,
customCacheKey,
subtitleConfigurations,
tag);
}
}
/** Live playback configuration. */ /** Live playback configuration. */
public static final class LiveConfiguration implements Bundleable { public static final class LiveConfiguration implements Bundleable {
...@@ -2069,7 +2040,7 @@ public final class MediaItem implements Bundleable { ...@@ -2069,7 +2040,7 @@ public final class MediaItem implements Bundleable {
/** /**
* @deprecated Use {@link #localConfiguration} instead. * @deprecated Use {@link #localConfiguration} instead.
*/ */
@Deprecated @Nullable public final PlaybackProperties playbackProperties; @Deprecated @Nullable public final LocalConfiguration playbackProperties;
/** The live playback configuration. */ /** The live playback configuration. */
public final LiveConfiguration liveConfiguration; public final LiveConfiguration liveConfiguration;
...@@ -2087,12 +2058,12 @@ public final class MediaItem implements Bundleable { ...@@ -2087,12 +2058,12 @@ public final class MediaItem implements Bundleable {
/** The media {@link RequestMetadata}. */ /** The media {@link RequestMetadata}. */
public final RequestMetadata requestMetadata; public final RequestMetadata requestMetadata;
// Using PlaybackProperties and ClippingProperties until they're deleted. // Using ClippingProperties until they're deleted.
@SuppressWarnings("deprecation") @SuppressWarnings("deprecation")
private MediaItem( private MediaItem(
String mediaId, String mediaId,
ClippingProperties clippingConfiguration, ClippingProperties clippingConfiguration,
@Nullable PlaybackProperties localConfiguration, @Nullable LocalConfiguration localConfiguration,
LiveConfiguration liveConfiguration, LiveConfiguration liveConfiguration,
MediaMetadata mediaMetadata, MediaMetadata mediaMetadata,
RequestMetadata requestMetadata) { RequestMetadata requestMetadata) {
......
...@@ -799,7 +799,7 @@ public class MediaItemTest { ...@@ -799,7 +799,7 @@ public class MediaItemTest {
MediaItem copy = mediaItem.buildUpon().build(); MediaItem copy = mediaItem.buildUpon().build();
assertThat(copy).isEqualTo(mediaItem); assertThat(copy).isEqualTo(mediaItem);
assertThat(copy.localConfiguration).isEqualTo(mediaItem.playbackProperties); assertThat(copy.localConfiguration).isEqualTo(mediaItem.localConfiguration);
} }
@Test @Test
...@@ -864,7 +864,7 @@ public class MediaItemTest { ...@@ -864,7 +864,7 @@ public class MediaItemTest {
} }
@Test @Test
public void roundTripViaBundle_withoutPlaybackProperties_yieldsEqualInstance() { public void roundTripViaBundle_withoutLocalConfiguration_yieldsEqualInstance() {
MediaItem mediaItem = MediaItem mediaItem =
new MediaItem.Builder() new MediaItem.Builder()
.setMediaId("mediaId") .setMediaId("mediaId")
...@@ -894,7 +894,7 @@ public class MediaItemTest { ...@@ -894,7 +894,7 @@ public class MediaItemTest {
} }
@Test @Test
public void roundTripViaBundle_withPlaybackProperties_dropsPlaybackProperties() { public void roundTripViaBundle_withLocalConfiguration_dropsLocalConfiguration() {
MediaItem mediaItem = new MediaItem.Builder().setUri(URI_STRING).build(); MediaItem mediaItem = new MediaItem.Builder().setUri(URI_STRING).build();
assertThat(mediaItem.localConfiguration).isNotNull(); assertThat(mediaItem.localConfiguration).isNotNull();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment