tonihei 3c4a976a41 Clean up subclassing behaviour of AnalyticsCollector.
AnalyticsCollector is allowed to be subclassed to simplify adding
new events that make use of the EventTime generation.

Clean up the subclassing interface to simplify this:
 - Make generateCurrentPlayerMediaPeriodEventTime protected. This is
   arguably the most useful method for extended clients. Other
   generateXXXEventTime methods are left private as they can't be
   useful for extensions because they require some integration into
   the ExoPlayer playback thread to make sense. So keeping them
   private to cause less confusion.
 - Some existing callback handling should be final as all the others.
 - Adding @CallSuper to all lifecycle management methods that might
   be helpful to subclasses but require to call the super method.
 - Make sendEvent protected to let subclasses use the simple
   event sending method.

PiperOrigin-RevId: 351766369
2021-01-15 10:56:27 +00:00
..