mirror of
https://github.com/androidx/media.git
synced 2025-05-18 13:09:56 +08:00
Rename ExoFlags to FlagSet
We want to remove mentions of ExoPlayer for convergence. PiperOrigin-RevId: 377290376
This commit is contained in:
parent
36841d4f6f
commit
b0a3bc5b28
@ -33,7 +33,7 @@ import com.google.android.exoplayer2.source.TrackGroupArray;
|
|||||||
import com.google.android.exoplayer2.text.Cue;
|
import com.google.android.exoplayer2.text.Cue;
|
||||||
import com.google.android.exoplayer2.text.TextOutput;
|
import com.google.android.exoplayer2.text.TextOutput;
|
||||||
import com.google.android.exoplayer2.trackselection.TrackSelectionArray;
|
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.util.Util;
|
||||||
import com.google.android.exoplayer2.video.VideoListener;
|
import com.google.android.exoplayer2.video.VideoListener;
|
||||||
import com.google.android.exoplayer2.video.VideoSize;
|
import com.google.android.exoplayer2.video.VideoSize;
|
||||||
@ -345,14 +345,14 @@ public interface Player {
|
|||||||
/** A set of {@link EventFlags}. */
|
/** A set of {@link EventFlags}. */
|
||||||
final class Events {
|
final class Events {
|
||||||
|
|
||||||
private final ExoFlags flags;
|
private final FlagSet flags;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Creates an instance.
|
* 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;
|
this.flags = flags;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -608,15 +608,15 @@ public interface Player {
|
|||||||
COMMAND_GET_TEXT
|
COMMAND_GET_TEXT
|
||||||
};
|
};
|
||||||
|
|
||||||
private final ExoFlags.Builder flagsBuilder;
|
private final FlagSet.Builder flagsBuilder;
|
||||||
|
|
||||||
/** Creates a builder. */
|
/** Creates a builder. */
|
||||||
public Builder() {
|
public Builder() {
|
||||||
flagsBuilder = new ExoFlags.Builder();
|
flagsBuilder = new FlagSet.Builder();
|
||||||
}
|
}
|
||||||
|
|
||||||
private Builder(Commands commands) {
|
private Builder(Commands commands) {
|
||||||
flagsBuilder = new ExoFlags.Builder();
|
flagsBuilder = new FlagSet.Builder();
|
||||||
flagsBuilder.addAll(commands.flags);
|
flagsBuilder.addAll(commands.flags);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -730,9 +730,9 @@ public interface Player {
|
|||||||
/** An empty set of commands. */
|
/** An empty set of commands. */
|
||||||
public static final Commands EMPTY = new Builder().build();
|
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;
|
this.flags = flags;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -29,9 +29,9 @@ import androidx.annotation.Nullable;
|
|||||||
*
|
*
|
||||||
* <p>Instances are immutable.
|
* <p>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 {
|
public static final class Builder {
|
||||||
|
|
||||||
private final SparseBooleanArray flags;
|
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.
|
* @param flags The set of flags to add.
|
||||||
* @return This builder.
|
* @return This builder.
|
||||||
* @throws IllegalStateException If {@link #build()} has already been called.
|
* @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++) {
|
for (int i = 0; i < flags.size(); i++) {
|
||||||
add(flags.get(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.
|
* @throws IllegalStateException If this method has already been called.
|
||||||
*/
|
*/
|
||||||
public ExoFlags build() {
|
public FlagSet build() {
|
||||||
checkState(!buildCalled);
|
checkState(!buildCalled);
|
||||||
buildCalled = true;
|
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.
|
// A SparseBooleanArray is used instead of a Set to avoid auto-boxing the flag values.
|
||||||
private final SparseBooleanArray flags;
|
private final SparseBooleanArray flags;
|
||||||
|
|
||||||
private ExoFlags(SparseBooleanArray flags) {
|
private FlagSet(SparseBooleanArray flags) {
|
||||||
this.flags = flags;
|
this.flags = flags;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -207,10 +207,10 @@ public final class ExoFlags {
|
|||||||
if (this == o) {
|
if (this == o) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
if (!(o instanceof ExoFlags)) {
|
if (!(o instanceof FlagSet)) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
ExoFlags that = (ExoFlags) o;
|
FlagSet that = (FlagSet) o;
|
||||||
return flags.equals(that.flags);
|
return flags.equals(that.flags);
|
||||||
}
|
}
|
||||||
|
|
@ -60,10 +60,10 @@ public final class ListenerSet<T> {
|
|||||||
* Invokes the iteration finished event.
|
* Invokes the iteration finished event.
|
||||||
*
|
*
|
||||||
* @param listener The listener to invoke the event on.
|
* @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.
|
* iteration.
|
||||||
*/
|
*/
|
||||||
void invoke(T listener, ExoFlags eventFlags);
|
void invoke(T listener, FlagSet eventFlags);
|
||||||
}
|
}
|
||||||
|
|
||||||
private static final int MSG_ITERATION_FINISHED = 0;
|
private static final int MSG_ITERATION_FINISHED = 0;
|
||||||
@ -259,13 +259,13 @@ public final class ListenerSet<T> {
|
|||||||
|
|
||||||
@Nonnull public final T listener;
|
@Nonnull public final T listener;
|
||||||
|
|
||||||
private ExoFlags.Builder flagsBuilder;
|
private FlagSet.Builder flagsBuilder;
|
||||||
private boolean needsIterationFinishedEvent;
|
private boolean needsIterationFinishedEvent;
|
||||||
private boolean released;
|
private boolean released;
|
||||||
|
|
||||||
public ListenerHolder(@Nonnull T listener) {
|
public ListenerHolder(@Nonnull T listener) {
|
||||||
this.listener = listener;
|
this.listener = listener;
|
||||||
this.flagsBuilder = new ExoFlags.Builder();
|
this.flagsBuilder = new FlagSet.Builder();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void release(IterationFinishedEvent<T> event) {
|
public void release(IterationFinishedEvent<T> event) {
|
||||||
@ -289,8 +289,8 @@ public final class ListenerSet<T> {
|
|||||||
if (!released && needsIterationFinishedEvent) {
|
if (!released && needsIterationFinishedEvent) {
|
||||||
// Reset flags before invoking the listener to ensure we keep all new flags that are set by
|
// Reset flags before invoking the listener to ensure we keep all new flags that are set by
|
||||||
// recursive events triggered from this callback.
|
// recursive events triggered from this callback.
|
||||||
ExoFlags flagsToNotify = flagsBuilder.build();
|
FlagSet flagsToNotify = flagsBuilder.build();
|
||||||
flagsBuilder = new ExoFlags.Builder();
|
flagsBuilder = new FlagSet.Builder();
|
||||||
needsIterationFinishedEvent = false;
|
needsIterationFinishedEvent = false;
|
||||||
event.invoke(listener, flagsToNotify);
|
event.invoke(listener, flagsToNotify);
|
||||||
}
|
}
|
||||||
|
@ -26,7 +26,7 @@ import static org.mockito.Mockito.verify;
|
|||||||
|
|
||||||
import androidx.test.ext.junit.runners.AndroidJUnit4;
|
import androidx.test.ext.junit.runners.AndroidJUnit4;
|
||||||
import com.google.android.exoplayer2.testutil.StubExoPlayer;
|
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.Method;
|
||||||
import java.lang.reflect.Modifier;
|
import java.lang.reflect.Modifier;
|
||||||
import java.util.ArrayDeque;
|
import java.util.ArrayDeque;
|
||||||
@ -123,7 +123,7 @@ public class ForwardingPlayerTest {
|
|||||||
forwardingListener.onEvents(
|
forwardingListener.onEvents(
|
||||||
player,
|
player,
|
||||||
new Player.Events(
|
new Player.Events(
|
||||||
new ExoFlags.Builder()
|
new FlagSet.Builder()
|
||||||
.addAll(
|
.addAll(
|
||||||
EVENT_TIMELINE_CHANGED, EVENT_MEDIA_ITEM_TRANSITION, EVENT_IS_PLAYING_CHANGED)
|
EVENT_TIMELINE_CHANGED, EVENT_MEDIA_ITEM_TRANSITION, EVENT_IS_PLAYING_CHANGED)
|
||||||
.build()));
|
.build()));
|
||||||
|
@ -24,13 +24,13 @@ import java.util.List;
|
|||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
|
|
||||||
/** Unit test for {@link ExoFlags}. */
|
/** Unit test for {@link FlagSet}. */
|
||||||
@RunWith(AndroidJUnit4.class)
|
@RunWith(AndroidJUnit4.class)
|
||||||
public final class ExoFlagsTest {
|
public final class FlagSetTest {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void contains_withoutAdd_returnsFalseForAllValues() {
|
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= */ -1234)).isFalse();
|
||||||
assertThat(flags.contains(/* flag= */ 0)).isFalse();
|
assertThat(flags.contains(/* flag= */ 0)).isFalse();
|
||||||
@ -40,8 +40,8 @@ public final class ExoFlagsTest {
|
|||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void contains_afterAdd_returnsTrueForAddedValues() {
|
public void contains_afterAdd_returnsTrueForAddedValues() {
|
||||||
ExoFlags flags =
|
FlagSet flags =
|
||||||
new ExoFlags.Builder()
|
new FlagSet.Builder()
|
||||||
.add(/* flag= */ -1234)
|
.add(/* flag= */ -1234)
|
||||||
.add(/* flag= */ 0)
|
.add(/* flag= */ 0)
|
||||||
.add(/* flag= */ 2)
|
.add(/* flag= */ 2)
|
||||||
@ -59,8 +59,8 @@ public final class ExoFlagsTest {
|
|||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void contains_afterAddIf_returnsTrueForAddedValues() {
|
public void contains_afterAddIf_returnsTrueForAddedValues() {
|
||||||
ExoFlags flags =
|
FlagSet flags =
|
||||||
new ExoFlags.Builder()
|
new FlagSet.Builder()
|
||||||
.addIf(/* flag= */ -1234, /* condition= */ true)
|
.addIf(/* flag= */ -1234, /* condition= */ true)
|
||||||
.addIf(/* flag= */ 0, /* condition= */ false)
|
.addIf(/* flag= */ 0, /* condition= */ false)
|
||||||
.addIf(/* flag= */ 2, /* condition= */ true)
|
.addIf(/* flag= */ 2, /* condition= */ true)
|
||||||
@ -78,15 +78,15 @@ public final class ExoFlagsTest {
|
|||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void containsAny_withoutAdd_returnsFalseForAllValues() {
|
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();
|
assertThat(flags.containsAny(/* flags...= */ -1234, 0, 2, Integer.MAX_VALUE)).isFalse();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void containsAny_afterAdd_returnsTrueForAddedValues() {
|
public void containsAny_afterAdd_returnsTrueForAddedValues() {
|
||||||
ExoFlags flags =
|
FlagSet flags =
|
||||||
new ExoFlags.Builder()
|
new FlagSet.Builder()
|
||||||
.add(/* flag= */ -1234)
|
.add(/* flag= */ -1234)
|
||||||
.add(/* flag= */ 0)
|
.add(/* flag= */ 0)
|
||||||
.add(/* flag= */ 2)
|
.add(/* flag= */ 2)
|
||||||
@ -102,15 +102,15 @@ public final class ExoFlagsTest {
|
|||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void size_withoutAdd_returnsZero() {
|
public void size_withoutAdd_returnsZero() {
|
||||||
ExoFlags flags = new ExoFlags.Builder().build();
|
FlagSet flags = new FlagSet.Builder().build();
|
||||||
|
|
||||||
assertThat(flags.size()).isEqualTo(0);
|
assertThat(flags.size()).isEqualTo(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void size_afterAdd_returnsNumberUniqueOfElements() {
|
public void size_afterAdd_returnsNumberUniqueOfElements() {
|
||||||
ExoFlags flags =
|
FlagSet flags =
|
||||||
new ExoFlags.Builder()
|
new FlagSet.Builder()
|
||||||
.add(/* flag= */ 0)
|
.add(/* flag= */ 0)
|
||||||
.add(/* flag= */ 0)
|
.add(/* flag= */ 0)
|
||||||
.add(/* flag= */ 0)
|
.add(/* flag= */ 0)
|
||||||
@ -123,22 +123,22 @@ public final class ExoFlagsTest {
|
|||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void get_withNegativeIndex_throwsIndexOutOfBoundsException() {
|
public void get_withNegativeIndex_throwsIndexOutOfBoundsException() {
|
||||||
ExoFlags flags = new ExoFlags.Builder().build();
|
FlagSet flags = new FlagSet.Builder().build();
|
||||||
|
|
||||||
assertThrows(IndexOutOfBoundsException.class, () -> flags.get(/* index= */ -1));
|
assertThrows(IndexOutOfBoundsException.class, () -> flags.get(/* index= */ -1));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void get_withIndexExceedingSize_throwsIndexOutOfBoundsException() {
|
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));
|
assertThrows(IndexOutOfBoundsException.class, () -> flags.get(/* index= */ 2));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void get_afterAdd_returnsAllUniqueValues() {
|
public void get_afterAdd_returnsAllUniqueValues() {
|
||||||
ExoFlags flags =
|
FlagSet flags =
|
||||||
new ExoFlags.Builder()
|
new FlagSet.Builder()
|
||||||
.add(/* flag= */ 0)
|
.add(/* flag= */ 0)
|
||||||
.add(/* flag= */ 0)
|
.add(/* flag= */ 0)
|
||||||
.add(/* flag= */ 0)
|
.add(/* flag= */ 0)
|
@ -148,22 +148,22 @@ public class ListenerSetTest {
|
|||||||
InOrder inOrder = Mockito.inOrder(listener1, listener2);
|
InOrder inOrder = Mockito.inOrder(listener1, listener2);
|
||||||
inOrder.verify(listener1).callback2();
|
inOrder.verify(listener1).callback2();
|
||||||
inOrder.verify(listener2).callback2();
|
inOrder.verify(listener2).callback2();
|
||||||
inOrder.verify(listener1).iterationFinished(createExoFlags(EVENT_ID_2));
|
inOrder.verify(listener1).iterationFinished(createFlagSet(EVENT_ID_2));
|
||||||
inOrder.verify(listener2).iterationFinished(createExoFlags(EVENT_ID_2));
|
inOrder.verify(listener2).iterationFinished(createFlagSet(EVENT_ID_2));
|
||||||
inOrder.verify(listener1).callback1();
|
inOrder.verify(listener1).callback1();
|
||||||
inOrder.verify(listener2).callback1();
|
inOrder.verify(listener2).callback1();
|
||||||
inOrder.verify(listener1).callback2();
|
inOrder.verify(listener1).callback2();
|
||||||
inOrder.verify(listener2).callback2();
|
inOrder.verify(listener2).callback2();
|
||||||
inOrder.verify(listener1).callback1();
|
inOrder.verify(listener1).callback1();
|
||||||
inOrder.verify(listener2).callback1();
|
inOrder.verify(listener2).callback1();
|
||||||
inOrder.verify(listener1).iterationFinished(createExoFlags(EVENT_ID_1, EVENT_ID_2));
|
inOrder.verify(listener1).iterationFinished(createFlagSet(EVENT_ID_1, EVENT_ID_2));
|
||||||
inOrder.verify(listener2).iterationFinished(createExoFlags(EVENT_ID_1, EVENT_ID_2));
|
inOrder.verify(listener2).iterationFinished(createFlagSet(EVENT_ID_1, EVENT_ID_2));
|
||||||
inOrder.verify(listener1).callback3();
|
inOrder.verify(listener1).callback3();
|
||||||
inOrder.verify(listener2).callback3();
|
inOrder.verify(listener2).callback3();
|
||||||
inOrder.verify(listener1).callback1();
|
inOrder.verify(listener1).callback1();
|
||||||
inOrder.verify(listener2).callback1();
|
inOrder.verify(listener2).callback1();
|
||||||
inOrder.verify(listener1).iterationFinished(createExoFlags(EVENT_ID_1, EVENT_ID_3));
|
inOrder.verify(listener1).iterationFinished(createFlagSet(EVENT_ID_1, EVENT_ID_3));
|
||||||
inOrder.verify(listener2).iterationFinished(createExoFlags(EVENT_ID_1, EVENT_ID_3));
|
inOrder.verify(listener2).iterationFinished(createFlagSet(EVENT_ID_1, EVENT_ID_3));
|
||||||
inOrder.verifyNoMoreInteractions();
|
inOrder.verifyNoMoreInteractions();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -178,7 +178,7 @@ public class ListenerSetTest {
|
|||||||
boolean eventSent;
|
boolean eventSent;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void iterationFinished(ExoFlags flags) {
|
public void iterationFinished(FlagSet flags) {
|
||||||
if (!eventSent) {
|
if (!eventSent) {
|
||||||
listenerSet.sendEvent(EVENT_ID_1, TestListener::callback1);
|
listenerSet.sendEvent(EVENT_ID_1, TestListener::callback1);
|
||||||
eventSent = true;
|
eventSent = true;
|
||||||
@ -198,14 +198,14 @@ public class ListenerSetTest {
|
|||||||
inOrder.verify(listener1).callback2();
|
inOrder.verify(listener1).callback2();
|
||||||
inOrder.verify(listener2).callback2();
|
inOrder.verify(listener2).callback2();
|
||||||
inOrder.verify(listener3).callback2();
|
inOrder.verify(listener3).callback2();
|
||||||
inOrder.verify(listener1).iterationFinished(createExoFlags(EVENT_ID_2));
|
inOrder.verify(listener1).iterationFinished(createFlagSet(EVENT_ID_2));
|
||||||
inOrder.verify(listener2).iterationFinished(createExoFlags(EVENT_ID_2));
|
inOrder.verify(listener2).iterationFinished(createFlagSet(EVENT_ID_2));
|
||||||
inOrder.verify(listener1).callback1();
|
inOrder.verify(listener1).callback1();
|
||||||
inOrder.verify(listener2).callback1();
|
inOrder.verify(listener2).callback1();
|
||||||
inOrder.verify(listener3).callback1();
|
inOrder.verify(listener3).callback1();
|
||||||
inOrder.verify(listener1).iterationFinished(createExoFlags(EVENT_ID_1));
|
inOrder.verify(listener1).iterationFinished(createFlagSet(EVENT_ID_1));
|
||||||
inOrder.verify(listener2).iterationFinished(createExoFlags(EVENT_ID_1));
|
inOrder.verify(listener2).iterationFinished(createFlagSet(EVENT_ID_1));
|
||||||
inOrder.verify(listener3).iterationFinished(createExoFlags(EVENT_ID_1, EVENT_ID_2));
|
inOrder.verify(listener3).iterationFinished(createFlagSet(EVENT_ID_1, EVENT_ID_2));
|
||||||
inOrder.verifyNoMoreInteractions();
|
inOrder.verifyNoMoreInteractions();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -248,8 +248,8 @@ public class ListenerSetTest {
|
|||||||
inOrder.verify(listener1).callback1();
|
inOrder.verify(listener1).callback1();
|
||||||
inOrder.verify(listener1).callback2();
|
inOrder.verify(listener1).callback2();
|
||||||
inOrder.verify(listener2).callback2();
|
inOrder.verify(listener2).callback2();
|
||||||
inOrder.verify(listener1).iterationFinished(createExoFlags(EVENT_ID_1, EVENT_ID_2));
|
inOrder.verify(listener1).iterationFinished(createFlagSet(EVENT_ID_1, EVENT_ID_2));
|
||||||
inOrder.verify(listener2).iterationFinished(createExoFlags(EVENT_ID_2));
|
inOrder.verify(listener2).iterationFinished(createFlagSet(EVENT_ID_2));
|
||||||
inOrder.verifyNoMoreInteractions();
|
inOrder.verifyNoMoreInteractions();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -273,8 +273,8 @@ public class ListenerSetTest {
|
|||||||
inOrder.verify(listener1).callback1();
|
inOrder.verify(listener1).callback1();
|
||||||
inOrder.verify(listener1).callback2();
|
inOrder.verify(listener1).callback2();
|
||||||
inOrder.verify(listener2).callback2();
|
inOrder.verify(listener2).callback2();
|
||||||
inOrder.verify(listener1).iterationFinished(createExoFlags(EVENT_ID_1, EVENT_ID_2));
|
inOrder.verify(listener1).iterationFinished(createFlagSet(EVENT_ID_1, EVENT_ID_2));
|
||||||
inOrder.verify(listener2).iterationFinished(createExoFlags(EVENT_ID_2));
|
inOrder.verify(listener2).iterationFinished(createFlagSet(EVENT_ID_2));
|
||||||
inOrder.verifyNoMoreInteractions();
|
inOrder.verifyNoMoreInteractions();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -302,7 +302,7 @@ public class ListenerSetTest {
|
|||||||
ShadowLooper.runMainLooperToNextTask();
|
ShadowLooper.runMainLooperToNextTask();
|
||||||
|
|
||||||
verify(listener1).callback1();
|
verify(listener1).callback1();
|
||||||
verify(listener1).iterationFinished(createExoFlags(EVENT_ID_1));
|
verify(listener1).iterationFinished(createFlagSet(EVENT_ID_1));
|
||||||
verifyNoMoreInteractions(listener1, listener2);
|
verifyNoMoreInteractions(listener1, listener2);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -323,7 +323,7 @@ public class ListenerSetTest {
|
|||||||
ShadowLooper.runMainLooperToNextTask();
|
ShadowLooper.runMainLooperToNextTask();
|
||||||
|
|
||||||
verify(listener2, times(2)).callback1();
|
verify(listener2, times(2)).callback1();
|
||||||
verify(listener2).iterationFinished(createExoFlags(EVENT_ID_1));
|
verify(listener2).iterationFinished(createFlagSet(EVENT_ID_1));
|
||||||
verifyNoMoreInteractions(listener1, listener2);
|
verifyNoMoreInteractions(listener1, listener2);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -350,7 +350,7 @@ public class ListenerSetTest {
|
|||||||
ShadowLooper.runMainLooperToNextTask();
|
ShadowLooper.runMainLooperToNextTask();
|
||||||
|
|
||||||
verify(listener1).callback1();
|
verify(listener1).callback1();
|
||||||
verify(listener1).iterationFinished(createExoFlags(EVENT_ID_1));
|
verify(listener1).iterationFinished(createFlagSet(EVENT_ID_1));
|
||||||
verifyNoMoreInteractions(listener1, listener2);
|
verifyNoMoreInteractions(listener1, listener2);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -390,8 +390,8 @@ public class ListenerSetTest {
|
|||||||
// lazy release.
|
// lazy release.
|
||||||
verify(listener, times(3)).callback1();
|
verify(listener, times(3)).callback1();
|
||||||
verify(listener).callback3();
|
verify(listener).callback3();
|
||||||
verify(listener).iterationFinished(createExoFlags(EVENT_ID_1));
|
verify(listener).iterationFinished(createFlagSet(EVENT_ID_1));
|
||||||
verify(listener).iterationFinished(createExoFlags(EVENT_ID_1, EVENT_ID_3));
|
verify(listener).iterationFinished(createFlagSet(EVENT_ID_1, EVENT_ID_3));
|
||||||
verifyNoMoreInteractions(listener);
|
verifyNoMoreInteractions(listener);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -402,11 +402,11 @@ public class ListenerSetTest {
|
|||||||
|
|
||||||
default void callback3() {}
|
default void callback3() {}
|
||||||
|
|
||||||
default void iterationFinished(ExoFlags flags) {}
|
default void iterationFinished(FlagSet flags) {}
|
||||||
}
|
}
|
||||||
|
|
||||||
private static ExoFlags createExoFlags(int... flagValues) {
|
private static FlagSet createFlagSet(int... flagValues) {
|
||||||
ExoFlags.Builder flagsBuilder = new ExoFlags.Builder();
|
FlagSet.Builder flagsBuilder = new FlagSet.Builder();
|
||||||
for (int value : flagValues) {
|
for (int value : flagValues) {
|
||||||
flagsBuilder.add(value);
|
flagsBuilder.add(value);
|
||||||
}
|
}
|
||||||
|
@ -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.MediaSource.MediaPeriodId;
|
||||||
import com.google.android.exoplayer2.source.TrackGroupArray;
|
import com.google.android.exoplayer2.source.TrackGroupArray;
|
||||||
import com.google.android.exoplayer2.trackselection.TrackSelectionArray;
|
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.VideoDecoderOutputBufferRenderer;
|
||||||
import com.google.android.exoplayer2.video.VideoSize;
|
import com.google.android.exoplayer2.video.VideoSize;
|
||||||
import com.google.common.base.Objects;
|
import com.google.common.base.Objects;
|
||||||
@ -76,18 +76,18 @@ public interface AnalyticsListener {
|
|||||||
/** A set of {@link EventFlags}. */
|
/** A set of {@link EventFlags}. */
|
||||||
final class Events {
|
final class Events {
|
||||||
|
|
||||||
private final ExoFlags flags;
|
private final FlagSet flags;
|
||||||
private final SparseArray<EventTime> eventTimes;
|
private final SparseArray<EventTime> eventTimes;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Creates an instance.
|
* 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
|
* @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}
|
* all the events recorded in {@code flags}. Events that are not recorded in {@code flags}
|
||||||
* are ignored.
|
* are ignored.
|
||||||
*/
|
*/
|
||||||
public Events(ExoFlags flags, SparseArray<EventTime> eventTimes) {
|
public Events(FlagSet flags, SparseArray<EventTime> eventTimes) {
|
||||||
this.flags = flags;
|
this.flags = flags;
|
||||||
SparseArray<EventTime> flagsToTimes = new SparseArray<>(/* initialCapacity= */ flags.size());
|
SparseArray<EventTime> flagsToTimes = new SparseArray<>(/* initialCapacity= */ flags.size());
|
||||||
for (int i = 0; i < flags.size(); i++) {
|
for (int i = 0; i < flags.size(); i++) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user