Package com.castlabs.android.player
Class PlayerListeners
- java.lang.Object
-
- com.castlabs.android.player.PlayerListeners
-
public class PlayerListeners extends Object
This class helps to manage a set ofPlayerListener
s and delegates to the listener methods. It can manages the list of listeners and ensure that concurrent modification are prevented and listeners can be added and removed in a thread safe manner. If you are using thefireError(CastlabsPlayerException)
methods to delegate errors to the listeners, please note that the delegation will be done one the same thread.- Since:
- 3.0.0
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addListener(AdInterface.Listener listener)
void
addListener(CustomDashEventListener listener)
Register the givenCustomDashEventListener
void
fireError(CastlabsPlayerException error)
Iterates the registered listeners and delegates toPlayerListener.onError(CastlabsPlayerException)
.void
fireFatalErrorOccurred(CastlabsPlayerException error)
Iterates the registered listeners and delegates toPlayerListener.onFatalErrorOccurred(CastlabsPlayerException)
.void
fireLicenseKeysChanged()
INTERNAL: Fire an license keys changed event to all registered listeners.void
fireLicenseKeysLoaded()
INTERNAL: Fire an license keys loaded event to all registered listeners.void
fireLicenseLoadError(int currentAttempt, int maxAttempts, DownloadException downloadException)
void
removeListener(AdInterface.Listener listener)
void
removeListener(CustomDashEventListener listener)
Remove the givenCustomDashEventListener
void
reportConnectivityGained()
Call this method to report loss of connectivity.void
reportConnectivityLost()
Call this method to report loss of connectivity.void
reset()
-
-
-
Method Detail
-
removeListener
public void removeListener(@NonNull AdInterface.Listener listener)
-
addListener
public void addListener(@NonNull AdInterface.Listener listener)
-
addListener
public void addListener(@NonNull CustomDashEventListener listener)
Register the givenCustomDashEventListener
- Parameters:
listener
- the listener
-
removeListener
public void removeListener(@NonNull CustomDashEventListener listener)
Remove the givenCustomDashEventListener
- Parameters:
listener
- the listener
-
fireFatalErrorOccurred
public void fireFatalErrorOccurred(@NonNull CastlabsPlayerException error)
Iterates the registered listeners and delegates toPlayerListener.onFatalErrorOccurred(CastlabsPlayerException)
.- Parameters:
error
- the error
-
fireError
public void fireError(@NonNull CastlabsPlayerException error)
Iterates the registered listeners and delegates toPlayerListener.onError(CastlabsPlayerException)
.- Parameters:
error
- the error
-
fireLicenseKeysLoaded
public void fireLicenseKeysLoaded()
INTERNAL: Fire an license keys loaded event to all registered listeners.
-
fireLicenseKeysChanged
public void fireLicenseKeysChanged()
INTERNAL: Fire an license keys changed event to all registered listeners.
-
fireLicenseLoadError
public void fireLicenseLoadError(int currentAttempt, int maxAttempts, @Nullable DownloadException downloadException)
-
reportConnectivityLost
public void reportConnectivityLost()
Call this method to report loss of connectivity. This will delegate a new error to any registered listeners and cache the connectivity state.
-
reportConnectivityGained
public void reportConnectivityGained()
Call this method to report loss of connectivity. This will delegate a new error to any registered listeners and cache the connectivity state.
-
reset
public void reset()
-
-