summaryrefslogtreecommitdiff
path: root/src/android/net/util/NetworkStackUtils.java
diff options
context:
space:
mode:
authorAaron Huang <huangaaron@google.com>2019-02-20 17:14:02 +0800
committerAaron Huang <huangaaron@google.com>2019-03-25 23:38:41 +0800
commitbacde59fb7e5dbf6276d852abb5686d9b263dde4 (patch)
treea453a644121c49b7d97d7e1fa4647253729091a2 /src/android/net/util/NetworkStackUtils.java
parent2fef7f76f4cc7731f9fc0bd10f850bd2a764c9d1 (diff)
apf: Documentation improvements and code optimizations for keepalive filters
Optimizing instruction to reduce code size of keepalive filters. Bug: 123992088 Test: atest NetworkStackTests Change-Id: I9ae55977c6d6740277ba55603ee957f33a97ecaa
Diffstat (limited to 'src/android/net/util/NetworkStackUtils.java')
-rw-r--r--src/android/net/util/NetworkStackUtils.java16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/android/net/util/NetworkStackUtils.java b/src/android/net/util/NetworkStackUtils.java
index 481dbda..fedb8d1 100644
--- a/src/android/net/util/NetworkStackUtils.java
+++ b/src/android/net/util/NetworkStackUtils.java
@@ -17,10 +17,13 @@
package android.net.util;
import android.annotation.NonNull;
+import android.util.SparseArray;
import java.io.FileDescriptor;
import java.io.IOException;
import java.util.List;
+import java.util.function.Predicate;
+
/**
* Collection of utilities for the network stack.
@@ -65,4 +68,17 @@ public class NetworkStackUtils {
}
return array;
}
+
+ /**
+ * @return True if there exists at least one element in the sparse array for which
+ * condition {@code predicate}
+ */
+ public static <T> boolean any(SparseArray<T> array, Predicate<T> predicate) {
+ for (int i = 0; i < array.size(); ++i) {
+ if (predicate.test(array.valueAt(i))) {
+ return true;
+ }
+ }
+ return false;
+ }
}