From 155e27ec7c2832c58ec7b12cfc1ba9328ca0c2e0 Mon Sep 17 00:00:00 2001 From: aquilescanta Date: Mon, 28 Jun 2021 21:59:30 +0100 Subject: [PATCH] Move ExoPlaybackException back into core PiperOrigin-RevId: 381941053 --- .../android/exoplayer2/ext/cast/CastPlayer.java | 4 ++-- .../ext/leanback/LeanbackPlayerAdapter.java | 11 +++++------ .../android/exoplayer2/ExoPlaybackException.java | 7 +++---- 3 files changed, 10 insertions(+), 12 deletions(-) rename library/{common => core}/src/main/java/com/google/android/exoplayer2/ExoPlaybackException.java (98%) diff --git a/extensions/cast/src/main/java/com/google/android/exoplayer2/ext/cast/CastPlayer.java b/extensions/cast/src/main/java/com/google/android/exoplayer2/ext/cast/CastPlayer.java index e439b8fff5..a2f95033ae 100644 --- a/extensions/cast/src/main/java/com/google/android/exoplayer2/ext/cast/CastPlayer.java +++ b/extensions/cast/src/main/java/com/google/android/exoplayer2/ext/cast/CastPlayer.java @@ -28,10 +28,10 @@ import androidx.annotation.Nullable; import androidx.annotation.VisibleForTesting; import com.google.android.exoplayer2.BasePlayer; import com.google.android.exoplayer2.C; -import com.google.android.exoplayer2.ExoPlaybackException; import com.google.android.exoplayer2.ExoPlayerLibraryInfo; import com.google.android.exoplayer2.MediaItem; import com.google.android.exoplayer2.MediaMetadata; +import com.google.android.exoplayer2.PlaybackException; import com.google.android.exoplayer2.PlaybackParameters; import com.google.android.exoplayer2.Player; import com.google.android.exoplayer2.Timeline; @@ -338,7 +338,7 @@ public final class CastPlayer extends BasePlayer { @Override @Nullable - public ExoPlaybackException getPlayerError() { + public PlaybackException getPlayerError() { return null; } diff --git a/extensions/leanback/src/main/java/com/google/android/exoplayer2/ext/leanback/LeanbackPlayerAdapter.java b/extensions/leanback/src/main/java/com/google/android/exoplayer2/ext/leanback/LeanbackPlayerAdapter.java index f39226485c..edcc493e37 100644 --- a/extensions/leanback/src/main/java/com/google/android/exoplayer2/ext/leanback/LeanbackPlayerAdapter.java +++ b/extensions/leanback/src/main/java/com/google/android/exoplayer2/ext/leanback/LeanbackPlayerAdapter.java @@ -28,7 +28,6 @@ import androidx.leanback.media.SurfaceHolderGlueHost; import com.google.android.exoplayer2.C; import com.google.android.exoplayer2.ControlDispatcher; import com.google.android.exoplayer2.DefaultControlDispatcher; -import com.google.android.exoplayer2.ExoPlaybackException; import com.google.android.exoplayer2.ExoPlayerLibraryInfo; import com.google.android.exoplayer2.PlaybackException; import com.google.android.exoplayer2.Player; @@ -262,14 +261,14 @@ public final class LeanbackPlayerAdapter extends PlayerAdapter implements Runnab Pair errorMessage = errorMessageProvider.getErrorMessage(exception); callback.onError(LeanbackPlayerAdapter.this, errorMessage.first, errorMessage.second); } else { - int rendererIndex = C.INDEX_UNSET; - if (exception instanceof ExoPlaybackException) { - rendererIndex = ((ExoPlaybackException) exception).rendererIndex; - } callback.onError( LeanbackPlayerAdapter.this, exception.errorCode, - context.getString(R.string.lb_media_player_error, exception.errorCode, rendererIndex)); + // This string was probably tailored for MediaPlayer, whose callback takes 2 ints as + // error code. Since ExoPlayer provides a single error code, we just pass 0 as the + // extra. + context.getString( + R.string.lb_media_player_error, /* formatArgs...= */ exception.errorCode, 0)); } } diff --git a/library/common/src/main/java/com/google/android/exoplayer2/ExoPlaybackException.java b/library/core/src/main/java/com/google/android/exoplayer2/ExoPlaybackException.java similarity index 98% rename from library/common/src/main/java/com/google/android/exoplayer2/ExoPlaybackException.java rename to library/core/src/main/java/com/google/android/exoplayer2/ExoPlaybackException.java index 1be297a2f1..291fce21cd 100644 --- a/library/common/src/main/java/com/google/android/exoplayer2/ExoPlaybackException.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/ExoPlaybackException.java @@ -23,6 +23,7 @@ import androidx.annotation.IntDef; import androidx.annotation.Nullable; import com.google.android.exoplayer2.C.FormatSupport; import com.google.android.exoplayer2.source.MediaPeriodId; +import com.google.android.exoplayer2.source.MediaSource; import com.google.android.exoplayer2.util.Assertions; import com.google.android.exoplayer2.util.Util; import java.io.IOException; @@ -43,18 +44,16 @@ public final class ExoPlaybackException extends PlaybackException { @IntDef({TYPE_SOURCE, TYPE_RENDERER, TYPE_UNEXPECTED, TYPE_REMOTE}) public @interface Type {} /** - * The error occurred loading data from a {@code MediaSource}. + * The error occurred loading data from a {@link MediaSource}. * *

Call {@link #getSourceException()} to retrieve the underlying cause. */ - // TODO(b/172315872) MediaSource was a link. Link to equivalent concept or remove @code. public static final int TYPE_SOURCE = 0; /** - * The error occurred in a {@code Renderer}. + * The error occurred in a {@link Renderer}. * *

Call {@link #getRendererException()} to retrieve the underlying cause. */ - // TODO(b/172315872) Renderer was a link. Link to equivalent concept or remove @code. public static final int TYPE_RENDERER = 1; /** * The error was an unexpected {@link RuntimeException}.