Move non-player specific classes to common

These will all be needed in common to break dependencies
between decoder extension modules and the core module.

PiperOrigin-RevId: 389871983
This commit is contained in:
olly 2021-08-10 14:51:19 +01:00 committed by Christos Tsilopoulos
parent b4e99304c4
commit 31a839c848
4 changed files with 4 additions and 2 deletions

View File

@ -40,9 +40,9 @@ public abstract class SimpleDecoder<
private int availableInputBufferCount;
private int availableOutputBufferCount;
private I dequeuedInputBuffer;
@Nullable private I dequeuedInputBuffer;
private E exception;
@Nullable private E exception;
private boolean flushed;
private boolean released;
private int skippedOutputBufferCount;
@ -51,6 +51,7 @@ public abstract class SimpleDecoder<
* @param inputBuffers An array of nulls that will be used to store references to input buffers.
* @param outputBuffers An array of nulls that will be used to store references to output buffers.
*/
@SuppressWarnings("nullness:method.invocation")
protected SimpleDecoder(I[] inputBuffers, O[] outputBuffers) {
lock = new Object();
queuedInputBuffers = new ArrayDeque<>();
@ -178,6 +179,7 @@ public abstract class SimpleDecoder<
* @throws E The decode exception.
*/
private void maybeThrowException() throws E {
@Nullable E exception = this.exception;
if (exception != null) {
throw exception;
}