Explicitly override all non-deprecated methods in Player.Listener

Most of the super-interfaces are deprecated, but the intention is that
only the types are deprecated and the methods themselves shouldn't be.
In order to reflect this in javadoc we override all the methods in
`Player.Listener` in order to 'cancel' the deprecation.

This change deliberately doesn't override methods that are explicitly
deprecated with documented replacements (like
`Player.EventListener#onPlayerStateChanged`) - these should contine to
be marked as deprecated in javadoc.

PiperOrigin-RevId: 384253725
This commit is contained in:
ibaker 2021-07-12 17:39:47 +01:00 committed by Ian Baker
parent c7d34d768d
commit a47eb8a08a

View File

@ -325,6 +325,9 @@ public interface Player {
* <p>State changes and events that happen within one {@link Looper} message queue iteration are
* reported together and only after all individual callbacks were triggered.
*
* <p>Only state changes represented by {@link EventFlags events} are reported through this
* method.
*
* <p>Listeners should prefer this method over individual callbacks in the following cases:
*
* <ul>
@ -700,12 +703,94 @@ public interface Player {
DeviceListener,
EventListener {
// For backward compatibility TextOutput and MetadataOutput must stay functional interfaces.
@Override
default void onTimelineChanged(Timeline timeline, @TimelineChangeReason int reason) {}
@Override
default void onMediaItemTransition(
@Nullable MediaItem mediaItem, @MediaItemTransitionReason int reason) {}
@Override
default void onTracksChanged(
TrackGroupArray trackGroups, TrackSelectionArray trackSelections) {}
@Override
default void onIsLoadingChanged(boolean isLoading) {}
@Override
default void onAvailableCommandsChanged(Commands availableCommands) {}
@Override
default void onPlaybackStateChanged(@State int state) {}
@Override
default void onPlayWhenReadyChanged(
boolean playWhenReady, @PlayWhenReadyChangeReason int reason) {}
@Override
default void onPlaybackSuppressionReasonChanged(
@PlaybackSuppressionReason int playbackSuppressionReason) {}
@Override
default void onIsPlayingChanged(boolean isPlaying) {}
@Override
default void onRepeatModeChanged(@RepeatMode int repeatMode) {}
@Override
default void onShuffleModeEnabledChanged(boolean shuffleModeEnabled) {}
@Override
default void onPlayerError(ExoPlaybackException error) {}
@Override
default void onPositionDiscontinuity(
PositionInfo oldPosition, PositionInfo newPosition, @DiscontinuityReason int reason) {}
@Override
default void onPlaybackParametersChanged(PlaybackParameters playbackParameters) {}
@Override
default void onAudioSessionIdChanged(int audioSessionId) {}
@Override
default void onAudioAttributesChanged(AudioAttributes audioAttributes) {}
@Override
default void onVolumeChanged(float volume) {}
@Override
default void onSkipSilenceEnabledChanged(boolean skipSilenceEnabled) {}
@Override
default void onDeviceInfoChanged(DeviceInfo deviceInfo) {}
@Override
default void onDeviceVolumeChanged(int volume, boolean muted) {}
@Override
default void onEvents(Player player, Events events) {}
@Override
default void onVideoSizeChanged(VideoSize videoSize) {}
@Override
default void onSurfaceSizeChanged(int width, int height) {}
@Override
default void onRenderedFirstFrame() {}
@Override
default void onCues(List<Cue> cues) {}
@Override
default void onMetadata(Metadata metadata) {}
@Override
default void onMediaMetadataChanged(MediaMetadata mediaMetadata) {}
@Override
default void onStaticMetadataChanged(List<Metadata> metadataList) {}
}
/**