Package com.castlabs.analytics
Class AnalyticsSessionProxy
- java.lang.Object
-
- com.castlabs.analytics.AnalyticsSession
-
- com.castlabs.analytics.AnalyticsSessionProxy
-
- All Implemented Interfaces:
IAnalyticsSession
,PlayerControllerPlugin.Component
public class AnalyticsSessionProxy extends AnalyticsSession
Proxy which extendsAnalyticsSession
that can delegate to a list of session.- Since:
- 3.1.0
-
-
Constructor Summary
Constructors Constructor Description AnalyticsSessionProxy(List<AnalyticsSession> sessions)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
adErrorInternal(CastlabsPlayerException exception)
void
adSkippedInternal()
void
adStartInternal(Ad ad)
void
adStopInternal()
void
detachFromControllerInternal()
List<AnalyticsSession>
getSessions()
Class
id()
Returns the class that is used to identify this component when it is registered with the player controller.void
onDestroy(PlayerController playerController)
Called when the controller is destroyed.void
onExoPlayerStateChangedInternal(boolean playWhenReady, int playbackState)
void
onOpenBundle(PlayerController playerController, Bundle bundle)
Called when the player controller is opened with a bundle.void
onOpenState(PlayerController playerController, PlayerConfig playerConfig)
Called when the player controller is opened with a config.void
releaseInternal()
void
reportPlayerStateInternal(PlayerController.State state)
void
seekEndInternal()
void
seekProcessedInternal()
void
seekStartInternal(long newPosition)
void
sendErrorInternal(String code, String message, int severity)
void
setEnabled(boolean enabled)
Enable or disable the session.void
startInternal(PlayerController playerController, AnalyticsMetaData analyticsMetaData)
void
stopInternal()
-
Methods inherited from class com.castlabs.analytics.AnalyticsSession
adError, adSkipped, adStart, adStop, detachFromController, getEnabled, onExoPlayerStateChanged, release, reportPlayerState, seekEnd, seekProcessed, seekStart, sendError, start, stop
-
-
-
-
Constructor Detail
-
AnalyticsSessionProxy
public AnalyticsSessionProxy(@Nullable List<AnalyticsSession> sessions)
-
-
Method Detail
-
getSessions
@Nullable public List<AnalyticsSession> getSessions()
-
setEnabled
public void setEnabled(boolean enabled)
Description copied from class:AnalyticsSession
Enable or disable the session.- Overrides:
setEnabled
in classAnalyticsSession
- Parameters:
enabled
- the value
-
startInternal
public void startInternal(@NonNull PlayerController playerController, @NonNull AnalyticsMetaData analyticsMetaData)
-
stopInternal
public void stopInternal()
-
adStartInternal
public void adStartInternal(Ad ad)
-
adStopInternal
public void adStopInternal()
-
adErrorInternal
public void adErrorInternal(CastlabsPlayerException exception)
-
adSkippedInternal
public void adSkippedInternal()
-
reportPlayerStateInternal
public void reportPlayerStateInternal(PlayerController.State state)
-
seekStartInternal
public void seekStartInternal(long newPosition)
-
seekEndInternal
public void seekEndInternal()
-
seekProcessedInternal
public void seekProcessedInternal()
-
detachFromControllerInternal
public void detachFromControllerInternal()
-
releaseInternal
public void releaseInternal()
-
onExoPlayerStateChangedInternal
public void onExoPlayerStateChangedInternal(boolean playWhenReady, int playbackState)
-
id
@NonNull public Class id()
Description copied from interface:PlayerControllerPlugin.Component
Returns the class that is used to identify this component when it is registered with the player controller. This is what you need to pass toPlayerController.getComponent(Class)
to get the registered instance of this component.- Returns:
- The class that identifies this component.
-
onDestroy
public void onDestroy(@NonNull PlayerController playerController)
Description copied from interface:PlayerControllerPlugin.Component
Called when the controller is destroyed. Implementation must use this to unregister any listeners that were attached to the controller before.- Parameters:
playerController
- The player controller
-
onOpenBundle
public void onOpenBundle(@NonNull PlayerController playerController, @NonNull Bundle bundle)
Description copied from interface:PlayerControllerPlugin.Component
Called when the player controller is opened with a bundle. Implementations can use this to extract or modify bundle data.- Parameters:
playerController
- The player controllerbundle
- The bundle
-
onOpenState
public void onOpenState(PlayerController playerController, PlayerConfig playerConfig)
Description copied from interface:PlayerControllerPlugin.Component
Called when the player controller is opened with a config. Implementations can use this to extract or modify config data.- Parameters:
playerController
- The player controllerplayerConfig
- The playback state
-
-