Remove instances of j.u.Optional from EGLRenderer
j.u.Optional isn't available for sdk version <24 and our minsdk is 21.
Bug: webrtc:351858995
Change-Id: Iadf50a96fc5462d16b53857116fab271cecc8c3c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/374061
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Auto-Submit: Ranveer Aggarwal <ranvr@webrtc.org>
Reviewed-by: Zoé Lepaul <xalep@webrtc.org>
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43935}
diff --git a/sdk/android/api/org/webrtc/EglRenderer.java b/sdk/android/api/org/webrtc/EglRenderer.java
index 0487698..f8bcd57 100644
--- a/sdk/android/api/org/webrtc/EglRenderer.java
+++ b/sdk/android/api/org/webrtc/EglRenderer.java
@@ -22,7 +22,6 @@
import java.text.DecimalFormat;
import java.util.ArrayList;
import java.util.Iterator;
-import java.util.Optional;
import java.util.UUID;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.TimeUnit;
@@ -33,6 +32,7 @@
*/
public class EglRenderer implements VideoSink {
private static final String TAG = "EglRenderer";
+ private static final UUID EMPTY_UUID = new UUID(0L, 0L); // All zeros
private static final long LOG_INTERVAL_SEC = 4;
public interface FrameListener { void onFrame(Bitmap frame); }
@@ -98,7 +98,7 @@
// An id to uniquely identify the renderer, used for when we're scheduling
// frames for render.
- private Optional<UUID> id = Optional.empty();
+ private UUID id = EMPTY_UUID;
// `eglThread` is used for rendering, and is synchronized on `threadLock`.
private final Object threadLock = new Object();
@@ -233,7 +233,7 @@
boolean usePresentationTimeStamp,
boolean overwritePendingFrames) {
if (overwritePendingFrames) {
- id = Optional.of(UUID.randomUUID());
+ id = UUID.randomUUID();
}
init(eglThread, drawer, usePresentationTimeStamp);
}
@@ -661,10 +661,10 @@
renderSwapBufferTimeNs += (System.nanoTime() - swapBuffersStartTimeNs);
}
};
- if (id.isPresent()) {
- eglThread.scheduleRenderUpdate(id.get(), renderUpdate);
- } else {
+ if (id.equals(EMPTY_UUID)) {
eglThread.scheduleRenderUpdate(renderUpdate);
+ } else {
+ eglThread.scheduleRenderUpdate(id, renderUpdate);
}
}
}