Commit c095a9ff by olly Committed by Oliver Woodman

Make SingleSampleMediaSource.Factory reusable

PiperOrigin-RevId: 292879934
parent b6bd57ab
......@@ -59,7 +59,6 @@ public final class SingleSampleMediaSource extends BaseMediaSource {
private LoadErrorHandlingPolicy loadErrorHandlingPolicy;
private boolean treatLoadErrorsAsEndOfStream;
private boolean isCreateCalled;
@Nullable private Object tag;
/**
......@@ -81,8 +80,7 @@ public final class SingleSampleMediaSource extends BaseMediaSource {
* @return This factory, for convenience.
* @throws IllegalStateException If one of the {@code create} methods has already been called.
*/
public Factory setTag(Object tag) {
Assertions.checkState(!isCreateCalled);
public Factory setTag(@Nullable Object tag) {
this.tag = tag;
return this;
}
......@@ -115,9 +113,12 @@ public final class SingleSampleMediaSource extends BaseMediaSource {
* @return This factory, for convenience.
* @throws IllegalStateException If one of the {@code create} methods has already been called.
*/
public Factory setLoadErrorHandlingPolicy(LoadErrorHandlingPolicy loadErrorHandlingPolicy) {
Assertions.checkState(!isCreateCalled);
this.loadErrorHandlingPolicy = loadErrorHandlingPolicy;
public Factory setLoadErrorHandlingPolicy(
@Nullable LoadErrorHandlingPolicy loadErrorHandlingPolicy) {
this.loadErrorHandlingPolicy =
loadErrorHandlingPolicy != null
? loadErrorHandlingPolicy
: new DefaultLoadErrorHandlingPolicy();
return this;
}
......@@ -132,7 +133,6 @@ public final class SingleSampleMediaSource extends BaseMediaSource {
* @throws IllegalStateException If one of the {@code create} methods has already been called.
*/
public Factory setTreatLoadErrorsAsEndOfStream(boolean treatLoadErrorsAsEndOfStream) {
Assertions.checkState(!isCreateCalled);
this.treatLoadErrorsAsEndOfStream = treatLoadErrorsAsEndOfStream;
return this;
}
......@@ -146,7 +146,6 @@ public final class SingleSampleMediaSource extends BaseMediaSource {
* @return The new {@link SingleSampleMediaSource}.
*/
public SingleSampleMediaSource createMediaSource(Uri uri, Format format, long durationUs) {
isCreateCalled = true;
return new SingleSampleMediaSource(
uri,
dataSourceFactory,
......
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