From 8ae04bcfee3f2c23496bc11ecd986ff7527ec036 Mon Sep 17 00:00:00 2001 From: ibaker Date: Tue, 14 Jul 2020 17:08:32 +0100 Subject: [PATCH] Migrate usages of deprecated Window#tag PiperOrigin-RevId: 321169585 --- .../android/exoplayer2/source/SilenceMediaSource.java | 3 ++- .../android/exoplayer2/source/SingleSampleMediaSource.java | 3 ++- .../android/exoplayer2/source/SinglePeriodTimelineTest.java | 4 ++++ .../google/android/exoplayer2/testutil/TimelineAsserts.java | 6 +++++- 4 files changed, 13 insertions(+), 3 deletions(-) diff --git a/library/core/src/main/java/com/google/android/exoplayer2/source/SilenceMediaSource.java b/library/core/src/main/java/com/google/android/exoplayer2/source/SilenceMediaSource.java index ed5db6634f..535e917299 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/source/SilenceMediaSource.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/source/SilenceMediaSource.java @@ -55,7 +55,8 @@ public final class SilenceMediaSource extends BaseMediaSource { /** * Sets a tag for the media source which will be published in the {@link * com.google.android.exoplayer2.Timeline} of the source as {@link - * com.google.android.exoplayer2.Timeline.Window#tag}. + * com.google.android.exoplayer2.MediaItem.PlaybackProperties#tag + * Window#mediaItem.playbackProperties.tag}. * * @param tag A tag for the media source. * @return This factory, for convenience. diff --git a/library/core/src/main/java/com/google/android/exoplayer2/source/SingleSampleMediaSource.java b/library/core/src/main/java/com/google/android/exoplayer2/source/SingleSampleMediaSource.java index e18e1738a2..ab63ed83e6 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/source/SingleSampleMediaSource.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/source/SingleSampleMediaSource.java @@ -80,7 +80,8 @@ public final class SingleSampleMediaSource extends BaseMediaSource { /** * Sets a tag for the media source which will be published in the {@link Timeline} of the source - * as {@link Timeline.Window#tag}. + * as {@link com.google.android.exoplayer2.MediaItem.PlaybackProperties#tag + * Window#mediaItem.playbackProperties.tag}. * * @param tag A tag for the media source. * @return This factory, for convenience. diff --git a/library/core/src/test/java/com/google/android/exoplayer2/source/SinglePeriodTimelineTest.java b/library/core/src/test/java/com/google/android/exoplayer2/source/SinglePeriodTimelineTest.java index 0d1542b0c9..4fce17e336 100644 --- a/library/core/src/test/java/com/google/android/exoplayer2/source/SinglePeriodTimelineTest.java +++ b/library/core/src/test/java/com/google/android/exoplayer2/source/SinglePeriodTimelineTest.java @@ -89,6 +89,7 @@ public final class SinglePeriodTimelineTest { } @Test + @SuppressWarnings("deprecation") // Testing deprecated Window.tag is still populated correctly. public void setNullTag_returnsNullTag_butUsesDefaultUid() { SinglePeriodTimeline timeline = new SinglePeriodTimeline( @@ -100,6 +101,8 @@ public final class SinglePeriodTimelineTest { new MediaItem.Builder().setUri(Uri.EMPTY).setTag(null).build()); assertThat(timeline.getWindow(/* windowIndex= */ 0, window).tag).isNull(); + assertThat(timeline.getWindow(/* windowIndex= */ 0, window).mediaItem.playbackProperties.tag) + .isNull(); assertThat(timeline.getPeriod(/* periodIndex= */ 0, period, /* setIds= */ false).id).isNull(); assertThat(timeline.getPeriod(/* periodIndex= */ 0, period, /* setIds= */ true).id).isNull(); assertThat(timeline.getPeriod(/* periodIndex= */ 0, period, /* setIds= */ false).uid).isNull(); @@ -108,6 +111,7 @@ public final class SinglePeriodTimelineTest { } @Test + @SuppressWarnings("deprecation") // Testing deprecated Window.tag is still populated correctly. public void getWindow_setsTag() { Object tag = new Object(); SinglePeriodTimeline timeline = diff --git a/testutils/src/main/java/com/google/android/exoplayer2/testutil/TimelineAsserts.java b/testutils/src/main/java/com/google/android/exoplayer2/testutil/TimelineAsserts.java index 7d31bc7ee3..efcca8cd92 100644 --- a/testutils/src/main/java/com/google/android/exoplayer2/testutil/TimelineAsserts.java +++ b/testutils/src/main/java/com/google/android/exoplayer2/testutil/TimelineAsserts.java @@ -18,11 +18,13 @@ package com.google.android.exoplayer2.testutil; import static com.google.common.truth.Truth.assertThat; import com.google.android.exoplayer2.C; +import com.google.android.exoplayer2.MediaItem; import com.google.android.exoplayer2.Player; import com.google.android.exoplayer2.Timeline; import com.google.android.exoplayer2.Timeline.Period; import com.google.android.exoplayer2.Timeline.Window; import com.google.android.exoplayer2.util.Assertions; +import com.google.android.exoplayer2.util.Util; import org.checkerframework.checker.nullness.compatqual.NullableType; /** Unit test for {@link Timeline}. */ @@ -57,7 +59,9 @@ public final class TimelineAsserts { for (int i = 0; i < timeline.getWindowCount(); i++) { timeline.getWindow(i, window); if (expectedWindowTags[i] != null) { - assertThat(window.tag).isEqualTo(expectedWindowTags[i]); + MediaItem.PlaybackProperties playbackProperties = window.mediaItem.playbackProperties; + assertThat(playbackProperties).isNotNull(); + assertThat(Util.castNonNull(playbackProperties).tag).isEqualTo(expectedWindowTags[i]); } } }