diff --git a/library/common/src/main/java/com/google/android/exoplayer2/Player.java b/library/common/src/main/java/com/google/android/exoplayer2/Player.java
index 12ba2e1cab..8867644629 100644
--- a/library/common/src/main/java/com/google/android/exoplayer2/Player.java
+++ b/library/common/src/main/java/com/google/android/exoplayer2/Player.java
@@ -33,7 +33,7 @@ import com.google.android.exoplayer2.source.TrackGroupArray;
import com.google.android.exoplayer2.text.Cue;
import com.google.android.exoplayer2.text.TextOutput;
import com.google.android.exoplayer2.trackselection.TrackSelectionArray;
-import com.google.android.exoplayer2.util.ExoFlags;
+import com.google.android.exoplayer2.util.FlagSet;
import com.google.android.exoplayer2.util.Util;
import com.google.android.exoplayer2.video.VideoListener;
import com.google.android.exoplayer2.video.VideoSize;
@@ -345,14 +345,14 @@ public interface Player {
/** A set of {@link EventFlags}. */
final class Events {
- private final ExoFlags flags;
+ private final FlagSet flags;
/**
* Creates an instance.
*
- * @param flags The {@link ExoFlags} containing the {@link EventFlags} in the set.
+ * @param flags The {@link FlagSet} containing the {@link EventFlags} in the set.
*/
- public Events(ExoFlags flags) {
+ public Events(FlagSet flags) {
this.flags = flags;
}
@@ -608,15 +608,15 @@ public interface Player {
COMMAND_GET_TEXT
};
- private final ExoFlags.Builder flagsBuilder;
+ private final FlagSet.Builder flagsBuilder;
/** Creates a builder. */
public Builder() {
- flagsBuilder = new ExoFlags.Builder();
+ flagsBuilder = new FlagSet.Builder();
}
private Builder(Commands commands) {
- flagsBuilder = new ExoFlags.Builder();
+ flagsBuilder = new FlagSet.Builder();
flagsBuilder.addAll(commands.flags);
}
@@ -730,9 +730,9 @@ public interface Player {
/** An empty set of commands. */
public static final Commands EMPTY = new Builder().build();
- private final ExoFlags flags;
+ private final FlagSet flags;
- private Commands(ExoFlags flags) {
+ private Commands(FlagSet flags) {
this.flags = flags;
}
diff --git a/library/common/src/main/java/com/google/android/exoplayer2/util/ExoFlags.java b/library/common/src/main/java/com/google/android/exoplayer2/util/FlagSet.java
similarity index 93%
rename from library/common/src/main/java/com/google/android/exoplayer2/util/ExoFlags.java
rename to library/common/src/main/java/com/google/android/exoplayer2/util/FlagSet.java
index a78af0cfab..6322114b90 100644
--- a/library/common/src/main/java/com/google/android/exoplayer2/util/ExoFlags.java
+++ b/library/common/src/main/java/com/google/android/exoplayer2/util/FlagSet.java
@@ -29,9 +29,9 @@ import androidx.annotation.Nullable;
*
*
Instances are immutable.
*/
-public final class ExoFlags {
+public final class FlagSet {
- /** A builder for {@link ExoFlags} instances. */
+ /** A builder for {@link FlagSet} instances. */
public static final class Builder {
private final SparseBooleanArray flags;
@@ -86,13 +86,13 @@ public final class ExoFlags {
}
/**
- * Adds {@link ExoFlags flags}.
+ * Adds {@link FlagSet flags}.
*
* @param flags The set of flags to add.
* @return This builder.
* @throws IllegalStateException If {@link #build()} has already been called.
*/
- public Builder addAll(ExoFlags flags) {
+ public Builder addAll(FlagSet flags) {
for (int i = 0; i < flags.size(); i++) {
add(flags.get(i));
}
@@ -142,21 +142,21 @@ public final class ExoFlags {
}
/**
- * Builds an {@link ExoFlags} instance.
+ * Builds an {@link FlagSet} instance.
*
* @throws IllegalStateException If this method has already been called.
*/
- public ExoFlags build() {
+ public FlagSet build() {
checkState(!buildCalled);
buildCalled = true;
- return new ExoFlags(flags);
+ return new FlagSet(flags);
}
}
// A SparseBooleanArray is used instead of a Set to avoid auto-boxing the flag values.
private final SparseBooleanArray flags;
- private ExoFlags(SparseBooleanArray flags) {
+ private FlagSet(SparseBooleanArray flags) {
this.flags = flags;
}
@@ -207,10 +207,10 @@ public final class ExoFlags {
if (this == o) {
return true;
}
- if (!(o instanceof ExoFlags)) {
+ if (!(o instanceof FlagSet)) {
return false;
}
- ExoFlags that = (ExoFlags) o;
+ FlagSet that = (FlagSet) o;
return flags.equals(that.flags);
}
diff --git a/library/common/src/main/java/com/google/android/exoplayer2/util/ListenerSet.java b/library/common/src/main/java/com/google/android/exoplayer2/util/ListenerSet.java
index fec99ea2a2..81715e8b98 100644
--- a/library/common/src/main/java/com/google/android/exoplayer2/util/ListenerSet.java
+++ b/library/common/src/main/java/com/google/android/exoplayer2/util/ListenerSet.java
@@ -60,10 +60,10 @@ public final class ListenerSet {
* Invokes the iteration finished event.
*
* @param listener The listener to invoke the event on.
- * @param eventFlags The combined event {@link ExoFlags flags} of all events sent in this
+ * @param eventFlags The combined event {@link FlagSet flags} of all events sent in this
* iteration.
*/
- void invoke(T listener, ExoFlags eventFlags);
+ void invoke(T listener, FlagSet eventFlags);
}
private static final int MSG_ITERATION_FINISHED = 0;
@@ -259,13 +259,13 @@ public final class ListenerSet {
@Nonnull public final T listener;
- private ExoFlags.Builder flagsBuilder;
+ private FlagSet.Builder flagsBuilder;
private boolean needsIterationFinishedEvent;
private boolean released;
public ListenerHolder(@Nonnull T listener) {
this.listener = listener;
- this.flagsBuilder = new ExoFlags.Builder();
+ this.flagsBuilder = new FlagSet.Builder();
}
public void release(IterationFinishedEvent event) {
@@ -289,8 +289,8 @@ public final class ListenerSet {
if (!released && needsIterationFinishedEvent) {
// Reset flags before invoking the listener to ensure we keep all new flags that are set by
// recursive events triggered from this callback.
- ExoFlags flagsToNotify = flagsBuilder.build();
- flagsBuilder = new ExoFlags.Builder();
+ FlagSet flagsToNotify = flagsBuilder.build();
+ flagsBuilder = new FlagSet.Builder();
needsIterationFinishedEvent = false;
event.invoke(listener, flagsToNotify);
}
diff --git a/library/common/src/test/java/com/google/android/exoplayer2/ForwardingPlayerTest.java b/library/common/src/test/java/com/google/android/exoplayer2/ForwardingPlayerTest.java
index edfe2693d5..38bf115135 100644
--- a/library/common/src/test/java/com/google/android/exoplayer2/ForwardingPlayerTest.java
+++ b/library/common/src/test/java/com/google/android/exoplayer2/ForwardingPlayerTest.java
@@ -26,7 +26,7 @@ import static org.mockito.Mockito.verify;
import androidx.test.ext.junit.runners.AndroidJUnit4;
import com.google.android.exoplayer2.testutil.StubExoPlayer;
-import com.google.android.exoplayer2.util.ExoFlags;
+import com.google.android.exoplayer2.util.FlagSet;
import java.lang.reflect.Method;
import java.lang.reflect.Modifier;
import java.util.ArrayDeque;
@@ -123,7 +123,7 @@ public class ForwardingPlayerTest {
forwardingListener.onEvents(
player,
new Player.Events(
- new ExoFlags.Builder()
+ new FlagSet.Builder()
.addAll(
EVENT_TIMELINE_CHANGED, EVENT_MEDIA_ITEM_TRANSITION, EVENT_IS_PLAYING_CHANGED)
.build()));
diff --git a/library/common/src/test/java/com/google/android/exoplayer2/util/ExoFlagsTest.java b/library/common/src/test/java/com/google/android/exoplayer2/util/FlagSetTest.java
similarity index 87%
rename from library/common/src/test/java/com/google/android/exoplayer2/util/ExoFlagsTest.java
rename to library/common/src/test/java/com/google/android/exoplayer2/util/FlagSetTest.java
index 0cc71a2881..91ea26b846 100644
--- a/library/common/src/test/java/com/google/android/exoplayer2/util/ExoFlagsTest.java
+++ b/library/common/src/test/java/com/google/android/exoplayer2/util/FlagSetTest.java
@@ -24,13 +24,13 @@ import java.util.List;
import org.junit.Test;
import org.junit.runner.RunWith;
-/** Unit test for {@link ExoFlags}. */
+/** Unit test for {@link FlagSet}. */
@RunWith(AndroidJUnit4.class)
-public final class ExoFlagsTest {
+public final class FlagSetTest {
@Test
public void contains_withoutAdd_returnsFalseForAllValues() {
- ExoFlags flags = new ExoFlags.Builder().build();
+ FlagSet flags = new FlagSet.Builder().build();
assertThat(flags.contains(/* flag= */ -1234)).isFalse();
assertThat(flags.contains(/* flag= */ 0)).isFalse();
@@ -40,8 +40,8 @@ public final class ExoFlagsTest {
@Test
public void contains_afterAdd_returnsTrueForAddedValues() {
- ExoFlags flags =
- new ExoFlags.Builder()
+ FlagSet flags =
+ new FlagSet.Builder()
.add(/* flag= */ -1234)
.add(/* flag= */ 0)
.add(/* flag= */ 2)
@@ -59,8 +59,8 @@ public final class ExoFlagsTest {
@Test
public void contains_afterAddIf_returnsTrueForAddedValues() {
- ExoFlags flags =
- new ExoFlags.Builder()
+ FlagSet flags =
+ new FlagSet.Builder()
.addIf(/* flag= */ -1234, /* condition= */ true)
.addIf(/* flag= */ 0, /* condition= */ false)
.addIf(/* flag= */ 2, /* condition= */ true)
@@ -78,15 +78,15 @@ public final class ExoFlagsTest {
@Test
public void containsAny_withoutAdd_returnsFalseForAllValues() {
- ExoFlags flags = new ExoFlags.Builder().build();
+ FlagSet flags = new FlagSet.Builder().build();
assertThat(flags.containsAny(/* flags...= */ -1234, 0, 2, Integer.MAX_VALUE)).isFalse();
}
@Test
public void containsAny_afterAdd_returnsTrueForAddedValues() {
- ExoFlags flags =
- new ExoFlags.Builder()
+ FlagSet flags =
+ new FlagSet.Builder()
.add(/* flag= */ -1234)
.add(/* flag= */ 0)
.add(/* flag= */ 2)
@@ -102,15 +102,15 @@ public final class ExoFlagsTest {
@Test
public void size_withoutAdd_returnsZero() {
- ExoFlags flags = new ExoFlags.Builder().build();
+ FlagSet flags = new FlagSet.Builder().build();
assertThat(flags.size()).isEqualTo(0);
}
@Test
public void size_afterAdd_returnsNumberUniqueOfElements() {
- ExoFlags flags =
- new ExoFlags.Builder()
+ FlagSet flags =
+ new FlagSet.Builder()
.add(/* flag= */ 0)
.add(/* flag= */ 0)
.add(/* flag= */ 0)
@@ -123,22 +123,22 @@ public final class ExoFlagsTest {
@Test
public void get_withNegativeIndex_throwsIndexOutOfBoundsException() {
- ExoFlags flags = new ExoFlags.Builder().build();
+ FlagSet flags = new FlagSet.Builder().build();
assertThrows(IndexOutOfBoundsException.class, () -> flags.get(/* index= */ -1));
}
@Test
public void get_withIndexExceedingSize_throwsIndexOutOfBoundsException() {
- ExoFlags flags = new ExoFlags.Builder().add(/* flag= */ 0).add(/* flag= */ 123).build();
+ FlagSet flags = new FlagSet.Builder().add(/* flag= */ 0).add(/* flag= */ 123).build();
assertThrows(IndexOutOfBoundsException.class, () -> flags.get(/* index= */ 2));
}
@Test
public void get_afterAdd_returnsAllUniqueValues() {
- ExoFlags flags =
- new ExoFlags.Builder()
+ FlagSet flags =
+ new FlagSet.Builder()
.add(/* flag= */ 0)
.add(/* flag= */ 0)
.add(/* flag= */ 0)
diff --git a/library/common/src/test/java/com/google/android/exoplayer2/util/ListenerSetTest.java b/library/common/src/test/java/com/google/android/exoplayer2/util/ListenerSetTest.java
index f8e6061998..e8ad326092 100644
--- a/library/common/src/test/java/com/google/android/exoplayer2/util/ListenerSetTest.java
+++ b/library/common/src/test/java/com/google/android/exoplayer2/util/ListenerSetTest.java
@@ -148,22 +148,22 @@ public class ListenerSetTest {
InOrder inOrder = Mockito.inOrder(listener1, listener2);
inOrder.verify(listener1).callback2();
inOrder.verify(listener2).callback2();
- inOrder.verify(listener1).iterationFinished(createExoFlags(EVENT_ID_2));
- inOrder.verify(listener2).iterationFinished(createExoFlags(EVENT_ID_2));
+ inOrder.verify(listener1).iterationFinished(createFlagSet(EVENT_ID_2));
+ inOrder.verify(listener2).iterationFinished(createFlagSet(EVENT_ID_2));
inOrder.verify(listener1).callback1();
inOrder.verify(listener2).callback1();
inOrder.verify(listener1).callback2();
inOrder.verify(listener2).callback2();
inOrder.verify(listener1).callback1();
inOrder.verify(listener2).callback1();
- inOrder.verify(listener1).iterationFinished(createExoFlags(EVENT_ID_1, EVENT_ID_2));
- inOrder.verify(listener2).iterationFinished(createExoFlags(EVENT_ID_1, EVENT_ID_2));
+ inOrder.verify(listener1).iterationFinished(createFlagSet(EVENT_ID_1, EVENT_ID_2));
+ inOrder.verify(listener2).iterationFinished(createFlagSet(EVENT_ID_1, EVENT_ID_2));
inOrder.verify(listener1).callback3();
inOrder.verify(listener2).callback3();
inOrder.verify(listener1).callback1();
inOrder.verify(listener2).callback1();
- inOrder.verify(listener1).iterationFinished(createExoFlags(EVENT_ID_1, EVENT_ID_3));
- inOrder.verify(listener2).iterationFinished(createExoFlags(EVENT_ID_1, EVENT_ID_3));
+ inOrder.verify(listener1).iterationFinished(createFlagSet(EVENT_ID_1, EVENT_ID_3));
+ inOrder.verify(listener2).iterationFinished(createFlagSet(EVENT_ID_1, EVENT_ID_3));
inOrder.verifyNoMoreInteractions();
}
@@ -178,7 +178,7 @@ public class ListenerSetTest {
boolean eventSent;
@Override
- public void iterationFinished(ExoFlags flags) {
+ public void iterationFinished(FlagSet flags) {
if (!eventSent) {
listenerSet.sendEvent(EVENT_ID_1, TestListener::callback1);
eventSent = true;
@@ -198,14 +198,14 @@ public class ListenerSetTest {
inOrder.verify(listener1).callback2();
inOrder.verify(listener2).callback2();
inOrder.verify(listener3).callback2();
- inOrder.verify(listener1).iterationFinished(createExoFlags(EVENT_ID_2));
- inOrder.verify(listener2).iterationFinished(createExoFlags(EVENT_ID_2));
+ inOrder.verify(listener1).iterationFinished(createFlagSet(EVENT_ID_2));
+ inOrder.verify(listener2).iterationFinished(createFlagSet(EVENT_ID_2));
inOrder.verify(listener1).callback1();
inOrder.verify(listener2).callback1();
inOrder.verify(listener3).callback1();
- inOrder.verify(listener1).iterationFinished(createExoFlags(EVENT_ID_1));
- inOrder.verify(listener2).iterationFinished(createExoFlags(EVENT_ID_1));
- inOrder.verify(listener3).iterationFinished(createExoFlags(EVENT_ID_1, EVENT_ID_2));
+ inOrder.verify(listener1).iterationFinished(createFlagSet(EVENT_ID_1));
+ inOrder.verify(listener2).iterationFinished(createFlagSet(EVENT_ID_1));
+ inOrder.verify(listener3).iterationFinished(createFlagSet(EVENT_ID_1, EVENT_ID_2));
inOrder.verifyNoMoreInteractions();
}
@@ -248,8 +248,8 @@ public class ListenerSetTest {
inOrder.verify(listener1).callback1();
inOrder.verify(listener1).callback2();
inOrder.verify(listener2).callback2();
- inOrder.verify(listener1).iterationFinished(createExoFlags(EVENT_ID_1, EVENT_ID_2));
- inOrder.verify(listener2).iterationFinished(createExoFlags(EVENT_ID_2));
+ inOrder.verify(listener1).iterationFinished(createFlagSet(EVENT_ID_1, EVENT_ID_2));
+ inOrder.verify(listener2).iterationFinished(createFlagSet(EVENT_ID_2));
inOrder.verifyNoMoreInteractions();
}
@@ -273,8 +273,8 @@ public class ListenerSetTest {
inOrder.verify(listener1).callback1();
inOrder.verify(listener1).callback2();
inOrder.verify(listener2).callback2();
- inOrder.verify(listener1).iterationFinished(createExoFlags(EVENT_ID_1, EVENT_ID_2));
- inOrder.verify(listener2).iterationFinished(createExoFlags(EVENT_ID_2));
+ inOrder.verify(listener1).iterationFinished(createFlagSet(EVENT_ID_1, EVENT_ID_2));
+ inOrder.verify(listener2).iterationFinished(createFlagSet(EVENT_ID_2));
inOrder.verifyNoMoreInteractions();
}
@@ -302,7 +302,7 @@ public class ListenerSetTest {
ShadowLooper.runMainLooperToNextTask();
verify(listener1).callback1();
- verify(listener1).iterationFinished(createExoFlags(EVENT_ID_1));
+ verify(listener1).iterationFinished(createFlagSet(EVENT_ID_1));
verifyNoMoreInteractions(listener1, listener2);
}
@@ -323,7 +323,7 @@ public class ListenerSetTest {
ShadowLooper.runMainLooperToNextTask();
verify(listener2, times(2)).callback1();
- verify(listener2).iterationFinished(createExoFlags(EVENT_ID_1));
+ verify(listener2).iterationFinished(createFlagSet(EVENT_ID_1));
verifyNoMoreInteractions(listener1, listener2);
}
@@ -350,7 +350,7 @@ public class ListenerSetTest {
ShadowLooper.runMainLooperToNextTask();
verify(listener1).callback1();
- verify(listener1).iterationFinished(createExoFlags(EVENT_ID_1));
+ verify(listener1).iterationFinished(createFlagSet(EVENT_ID_1));
verifyNoMoreInteractions(listener1, listener2);
}
@@ -390,8 +390,8 @@ public class ListenerSetTest {
// lazy release.
verify(listener, times(3)).callback1();
verify(listener).callback3();
- verify(listener).iterationFinished(createExoFlags(EVENT_ID_1));
- verify(listener).iterationFinished(createExoFlags(EVENT_ID_1, EVENT_ID_3));
+ verify(listener).iterationFinished(createFlagSet(EVENT_ID_1));
+ verify(listener).iterationFinished(createFlagSet(EVENT_ID_1, EVENT_ID_3));
verifyNoMoreInteractions(listener);
}
@@ -402,11 +402,11 @@ public class ListenerSetTest {
default void callback3() {}
- default void iterationFinished(ExoFlags flags) {}
+ default void iterationFinished(FlagSet flags) {}
}
- private static ExoFlags createExoFlags(int... flagValues) {
- ExoFlags.Builder flagsBuilder = new ExoFlags.Builder();
+ private static FlagSet createFlagSet(int... flagValues) {
+ FlagSet.Builder flagsBuilder = new FlagSet.Builder();
for (int value : flagValues) {
flagsBuilder.add(value);
}
diff --git a/library/core/src/main/java/com/google/android/exoplayer2/analytics/AnalyticsListener.java b/library/core/src/main/java/com/google/android/exoplayer2/analytics/AnalyticsListener.java
index 0085274a7e..6c349b9935 100644
--- a/library/core/src/main/java/com/google/android/exoplayer2/analytics/AnalyticsListener.java
+++ b/library/core/src/main/java/com/google/android/exoplayer2/analytics/AnalyticsListener.java
@@ -49,7 +49,7 @@ import com.google.android.exoplayer2.source.MediaLoadData;
import com.google.android.exoplayer2.source.MediaSource.MediaPeriodId;
import com.google.android.exoplayer2.source.TrackGroupArray;
import com.google.android.exoplayer2.trackselection.TrackSelectionArray;
-import com.google.android.exoplayer2.util.ExoFlags;
+import com.google.android.exoplayer2.util.FlagSet;
import com.google.android.exoplayer2.video.VideoDecoderOutputBufferRenderer;
import com.google.android.exoplayer2.video.VideoSize;
import com.google.common.base.Objects;
@@ -76,18 +76,18 @@ public interface AnalyticsListener {
/** A set of {@link EventFlags}. */
final class Events {
- private final ExoFlags flags;
+ private final FlagSet flags;
private final SparseArray eventTimes;
/**
* Creates an instance.
*
- * @param flags The {@link ExoFlags} containing the {@link EventFlags} in the set.
+ * @param flags The {@link FlagSet} containing the {@link EventFlags} in the set.
* @param eventTimes A map from {@link EventFlags} to {@link EventTime}. Must at least contain
* all the events recorded in {@code flags}. Events that are not recorded in {@code flags}
* are ignored.
*/
- public Events(ExoFlags flags, SparseArray eventTimes) {
+ public Events(FlagSet flags, SparseArray eventTimes) {
this.flags = flags;
SparseArray flagsToTimes = new SparseArray<>(/* initialCapacity= */ flags.size());
for (int i = 0; i < flags.size(); i++) {