Commit 95abd7d3 by tonihei Committed by Ian Baker

Add some missing thread verifications

This adds some missing calls to verifyApplicationThread to
ExoPlayerImpl.

Now all public methods start with this call, except listener
registrations because registration after construction on a background
thread is allowed and supported.

PiperOrigin-RevId: 428009498
parent 644524f4
...@@ -382,6 +382,7 @@ import java.util.concurrent.TimeoutException; ...@@ -382,6 +382,7 @@ import java.util.concurrent.TimeoutException;
@Override @Override
@Deprecated @Deprecated
public AudioComponent getAudioComponent() { public AudioComponent getAudioComponent() {
verifyApplicationThread();
return this; return this;
} }
...@@ -389,6 +390,7 @@ import java.util.concurrent.TimeoutException; ...@@ -389,6 +390,7 @@ import java.util.concurrent.TimeoutException;
@Override @Override
@Deprecated @Deprecated
public VideoComponent getVideoComponent() { public VideoComponent getVideoComponent() {
verifyApplicationThread();
return this; return this;
} }
...@@ -396,6 +398,7 @@ import java.util.concurrent.TimeoutException; ...@@ -396,6 +398,7 @@ import java.util.concurrent.TimeoutException;
@Override @Override
@Deprecated @Deprecated
public TextComponent getTextComponent() { public TextComponent getTextComponent() {
verifyApplicationThread();
return this; return this;
} }
...@@ -403,6 +406,7 @@ import java.util.concurrent.TimeoutException; ...@@ -403,6 +406,7 @@ import java.util.concurrent.TimeoutException;
@Override @Override
@Deprecated @Deprecated
public DeviceComponent getDeviceComponent() { public DeviceComponent getDeviceComponent() {
verifyApplicationThread();
return this; return this;
} }
...@@ -476,6 +480,7 @@ import java.util.concurrent.TimeoutException; ...@@ -476,6 +480,7 @@ import java.util.concurrent.TimeoutException;
@Override @Override
@Deprecated @Deprecated
public void retry() { public void retry() {
verifyApplicationThread();
prepare(); prepare();
} }
...@@ -906,6 +911,7 @@ import java.util.concurrent.TimeoutException; ...@@ -906,6 +911,7 @@ import java.util.concurrent.TimeoutException;
@Override @Override
public void stop() { public void stop() {
verifyApplicationThread();
stop(/* reset= */ false); stop(/* reset= */ false);
} }
...@@ -1189,6 +1195,7 @@ import java.util.concurrent.TimeoutException; ...@@ -1189,6 +1195,7 @@ import java.util.concurrent.TimeoutException;
@Override @Override
public @C.VideoScalingMode int getVideoScalingMode() { public @C.VideoScalingMode int getVideoScalingMode() {
verifyApplicationThread();
return videoScalingMode; return videoScalingMode;
} }
...@@ -1206,11 +1213,13 @@ import java.util.concurrent.TimeoutException; ...@@ -1206,11 +1213,13 @@ import java.util.concurrent.TimeoutException;
@Override @Override
public @C.VideoChangeFrameRateStrategy int getVideoChangeFrameRateStrategy() { public @C.VideoChangeFrameRateStrategy int getVideoChangeFrameRateStrategy() {
verifyApplicationThread();
return videoChangeFrameRateStrategy; return videoChangeFrameRateStrategy;
} }
@Override @Override
public VideoSize getVideoSize() { public VideoSize getVideoSize() {
verifyApplicationThread();
return videoSize; return videoSize;
} }
...@@ -1357,6 +1366,7 @@ import java.util.concurrent.TimeoutException; ...@@ -1357,6 +1366,7 @@ import java.util.concurrent.TimeoutException;
@Override @Override
public AudioAttributes getAudioAttributes() { public AudioAttributes getAudioAttributes() {
verifyApplicationThread();
return audioAttributes; return audioAttributes;
} }
...@@ -1387,6 +1397,7 @@ import java.util.concurrent.TimeoutException; ...@@ -1387,6 +1397,7 @@ import java.util.concurrent.TimeoutException;
@Override @Override
public int getAudioSessionId() { public int getAudioSessionId() {
verifyApplicationThread();
return audioSessionId; return audioSessionId;
} }
...@@ -1398,6 +1409,7 @@ import java.util.concurrent.TimeoutException; ...@@ -1398,6 +1409,7 @@ import java.util.concurrent.TimeoutException;
@Override @Override
public void clearAuxEffectInfo() { public void clearAuxEffectInfo() {
verifyApplicationThread();
setAuxEffectInfo(new AuxEffectInfo(AuxEffectInfo.NO_AUX_EFFECT_ID, /* sendLevel= */ 0f)); setAuxEffectInfo(new AuxEffectInfo(AuxEffectInfo.NO_AUX_EFFECT_ID, /* sendLevel= */ 0f));
} }
...@@ -1416,11 +1428,13 @@ import java.util.concurrent.TimeoutException; ...@@ -1416,11 +1428,13 @@ import java.util.concurrent.TimeoutException;
@Override @Override
public float getVolume() { public float getVolume() {
verifyApplicationThread();
return volume; return volume;
} }
@Override @Override
public boolean getSkipSilenceEnabled() { public boolean getSkipSilenceEnabled() {
verifyApplicationThread();
return skipSilenceEnabled; return skipSilenceEnabled;
} }
...@@ -1439,6 +1453,7 @@ import java.util.concurrent.TimeoutException; ...@@ -1439,6 +1453,7 @@ import java.util.concurrent.TimeoutException;
@Override @Override
public AnalyticsCollector getAnalyticsCollector() { public AnalyticsCollector getAnalyticsCollector() {
verifyApplicationThread();
return analyticsCollector; return analyticsCollector;
} }
...@@ -1485,24 +1500,28 @@ import java.util.concurrent.TimeoutException; ...@@ -1485,24 +1500,28 @@ import java.util.concurrent.TimeoutException;
@Override @Override
@Nullable @Nullable
public Format getVideoFormat() { public Format getVideoFormat() {
verifyApplicationThread();
return videoFormat; return videoFormat;
} }
@Override @Override
@Nullable @Nullable
public Format getAudioFormat() { public Format getAudioFormat() {
verifyApplicationThread();
return audioFormat; return audioFormat;
} }
@Override @Override
@Nullable @Nullable
public DecoderCounters getVideoDecoderCounters() { public DecoderCounters getVideoDecoderCounters() {
verifyApplicationThread();
return videoDecoderCounters; return videoDecoderCounters;
} }
@Override @Override
@Nullable @Nullable
public DecoderCounters getAudioDecoderCounters() { public DecoderCounters getAudioDecoderCounters() {
verifyApplicationThread();
return audioDecoderCounters; return audioDecoderCounters;
} }
...@@ -1572,6 +1591,7 @@ import java.util.concurrent.TimeoutException; ...@@ -1572,6 +1591,7 @@ import java.util.concurrent.TimeoutException;
@Override @Override
public void setHandleWakeLock(boolean handleWakeLock) { public void setHandleWakeLock(boolean handleWakeLock) {
verifyApplicationThread();
setWakeMode(handleWakeLock ? C.WAKE_MODE_LOCAL : C.WAKE_MODE_NONE); setWakeMode(handleWakeLock ? C.WAKE_MODE_LOCAL : C.WAKE_MODE_NONE);
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment