summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYurii Zubrytskyi <zyy@google.com>2022-04-26 12:32:19 -0700
committerYurii Zubrytskyi <zyy@google.com>2022-04-26 13:33:13 -0700
commitd77e77b6746acba806c263344711eb0c4df2b108 (patch)
tree579accfad52046e276d210a1bde1d62530dd2801
parent8440aab4a8b0cb50643f53695403205216bab0de (diff)
downloadsdk-d77e77b6746acba806c263344711eb0c4df2b108.tar.gz
Finalize artifacts for extension SDK 3
Import from build id 8501766. Generated with: $ packages/modules/common/tools/finalize_sdk.py -b 225745567 -f 3 -bn Tiramisu-SDK-Finalization-sdk 8501766 Bug: 225745567 Test: presubmit Change-Id: Id8ec7ed65be3e368ca7e47334f62331b56c2f2c7 Merged-In: Id8ec7ed65be3e368ca7e47334f62331b56c2f2c7
-rw-r--r--extensions/3/module-lib/api/android.net.ipsec.ike-removed.txt1
-rw-r--r--extensions/3/module-lib/api/android.net.ipsec.ike.txt1
-rw-r--r--extensions/3/module-lib/api/art.module.public.api-removed.txt1
-rw-r--r--extensions/3/module-lib/api/art.module.public.api.txt864
-rw-r--r--extensions/3/module-lib/api/conscrypt.module.public.api-removed.txt1
-rw-r--r--extensions/3/module-lib/api/conscrypt.module.public.api.txt1
-rw-r--r--extensions/3/module-lib/api/framework-adservices-removed.txt1
-rw-r--r--extensions/3/module-lib/api/framework-adservices.txt9
-rw-r--r--extensions/3/module-lib/api/framework-appsearch-removed.txt1
-rw-r--r--extensions/3/module-lib/api/framework-appsearch.txt1
-rw-r--r--extensions/3/module-lib/api/framework-connectivity-removed.txt1
-rw-r--r--extensions/3/module-lib/api/framework-connectivity-t-removed.txt1
-rw-r--r--extensions/3/module-lib/api/framework-connectivity-t.txt209
-rw-r--r--extensions/3/module-lib/api/framework-connectivity.txt236
-rw-r--r--extensions/3/module-lib/api/framework-media-removed.txt1
-rw-r--r--extensions/3/module-lib/api/framework-media.txt31
-rw-r--r--extensions/3/module-lib/api/framework-mediaprovider-removed.txt1
-rw-r--r--extensions/3/module-lib/api/framework-mediaprovider.txt1
-rw-r--r--extensions/3/module-lib/api/framework-ondevicepersonalization-removed.txt1
-rw-r--r--extensions/3/module-lib/api/framework-ondevicepersonalization.txt9
-rw-r--r--extensions/3/module-lib/api/framework-permission-removed.txt1
-rw-r--r--extensions/3/module-lib/api/framework-permission-s-removed.txt1
-rw-r--r--extensions/3/module-lib/api/framework-permission-s.txt23
-rw-r--r--extensions/3/module-lib/api/framework-permission.txt1
-rw-r--r--extensions/3/module-lib/api/framework-scheduling-removed.txt1
-rw-r--r--extensions/3/module-lib/api/framework-scheduling.txt9
-rw-r--r--extensions/3/module-lib/api/framework-sdkextensions-removed.txt1
-rw-r--r--extensions/3/module-lib/api/framework-sdkextensions.txt1
-rw-r--r--extensions/3/module-lib/api/framework-sdksandbox-removed.txt1
-rw-r--r--extensions/3/module-lib/api/framework-sdksandbox.txt9
-rw-r--r--extensions/3/module-lib/api/framework-statsd-removed.txt1
-rw-r--r--extensions/3/module-lib/api/framework-statsd.txt10
-rw-r--r--extensions/3/module-lib/api/framework-tethering-removed.txt1
-rw-r--r--extensions/3/module-lib/api/framework-tethering.txt50
-rw-r--r--extensions/3/module-lib/api/framework-uwb-removed.txt1
-rw-r--r--extensions/3/module-lib/api/framework-uwb.txt9
-rw-r--r--extensions/3/module-lib/api/framework-wifi-removed.txt1
-rw-r--r--extensions/3/module-lib/api/framework-wifi.txt10
-rw-r--r--extensions/3/public/api/android.net.ipsec.ike-removed.txt1
-rw-r--r--extensions/3/public/api/android.net.ipsec.ike.txt458
-rw-r--r--extensions/3/public/api/art.module.public.api-removed.txt1
-rw-r--r--extensions/3/public/api/art.module.public.api.txt20884
-rw-r--r--extensions/3/public/api/conscrypt.module.intra.core.api-removed.txt1
-rw-r--r--extensions/3/public/api/conscrypt.module.intra.core.api.txt40
-rw-r--r--extensions/3/public/api/conscrypt.module.platform.api-removed.txt1
-rw-r--r--extensions/3/public/api/conscrypt.module.platform.api.txt100
-rw-r--r--extensions/3/public/api/conscrypt.module.public.api-removed.txt1
-rw-r--r--extensions/3/public/api/conscrypt.module.public.api.txt17
-rw-r--r--extensions/3/public/api/framework-adservices-removed.txt1
-rw-r--r--extensions/3/public/api/framework-adservices.txt9
-rw-r--r--extensions/3/public/api/framework-appsearch-removed.txt1
-rw-r--r--extensions/3/public/api/framework-appsearch.txt518
-rw-r--r--extensions/3/public/api/framework-connectivity-removed.txt11
-rw-r--r--extensions/3/public/api/framework-connectivity-t-removed.txt9
-rw-r--r--extensions/3/public/api/framework-connectivity-t.txt251
-rw-r--r--extensions/3/public/api/framework-connectivity.txt526
-rw-r--r--extensions/3/public/api/framework-media-removed.txt1
-rw-r--r--extensions/3/public/api/framework-media.txt267
-rw-r--r--extensions/3/public/api/framework-mediaprovider-removed.txt43
-rw-r--r--extensions/3/public/api/framework-mediaprovider.txt524
-rw-r--r--extensions/3/public/api/framework-ondevicepersonalization-removed.txt1
-rw-r--r--extensions/3/public/api/framework-ondevicepersonalization.txt1
-rw-r--r--extensions/3/public/api/framework-permission-removed.txt1
-rw-r--r--extensions/3/public/api/framework-permission-s-removed.txt1
-rw-r--r--extensions/3/public/api/framework-permission-s.txt19
-rw-r--r--extensions/3/public/api/framework-permission.txt1
-rw-r--r--extensions/3/public/api/framework-scheduling-removed.txt1
-rw-r--r--extensions/3/public/api/framework-scheduling.txt1
-rw-r--r--extensions/3/public/api/framework-sdkextensions-removed.txt1
-rw-r--r--extensions/3/public/api/framework-sdkextensions.txt10
-rw-r--r--extensions/3/public/api/framework-sdksandbox-removed.txt1
-rw-r--r--extensions/3/public/api/framework-sdksandbox.txt11
-rw-r--r--extensions/3/public/api/framework-statsd-removed.txt1
-rw-r--r--extensions/3/public/api/framework-statsd.txt12
-rw-r--r--extensions/3/public/api/framework-tethering-removed.txt1
-rw-r--r--extensions/3/public/api/framework-tethering.txt1
-rw-r--r--extensions/3/public/api/framework-uwb-removed.txt1
-rw-r--r--extensions/3/public/api/framework-uwb.txt1
-rw-r--r--extensions/3/public/api/framework-wifi-removed.txt1
-rw-r--r--extensions/3/public/api/framework-wifi.txt1588
-rw-r--r--extensions/3/public/api/service-art-removed.txt1
-rw-r--r--extensions/3/public/api/service-art.txt9
-rw-r--r--extensions/3/public/api/service-media-s-removed.txt1
-rw-r--r--extensions/3/public/api/service-media-s.txt1
-rw-r--r--extensions/3/public/api/service-permission-removed.txt1
-rw-r--r--extensions/3/public/api/service-permission.txt1
-rw-r--r--extensions/3/public/api/service-sdksandbox-removed.txt1
-rw-r--r--extensions/3/public/api/service-sdksandbox.txt1
-rw-r--r--extensions/3/system-server/api/service-art-removed.txt1
-rw-r--r--extensions/3/system-server/api/service-art.txt9
-rw-r--r--extensions/3/system-server/api/service-media-s-removed.txt1
-rw-r--r--extensions/3/system-server/api/service-media-s.txt1
-rw-r--r--extensions/3/system-server/api/service-permission-removed.txt1
-rw-r--r--extensions/3/system-server/api/service-permission.txt54
-rw-r--r--extensions/3/system-server/api/service-sdksandbox-removed.txt1
-rw-r--r--extensions/3/system-server/api/service-sdksandbox.txt16
-rw-r--r--extensions/3/system/api/android.net.ipsec.ike-removed.txt1
-rw-r--r--extensions/3/system/api/android.net.ipsec.ike.txt155
-rw-r--r--extensions/3/system/api/art.module.public.api-removed.txt1
-rw-r--r--extensions/3/system/api/art.module.public.api.txt1
-rw-r--r--extensions/3/system/api/conscrypt.module.public.api-removed.txt1
-rw-r--r--extensions/3/system/api/conscrypt.module.public.api.txt1
-rw-r--r--extensions/3/system/api/framework-adservices-removed.txt1
-rw-r--r--extensions/3/system/api/framework-adservices.txt1
-rw-r--r--extensions/3/system/api/framework-appsearch-removed.txt1
-rw-r--r--extensions/3/system/api/framework-appsearch.txt9
-rw-r--r--extensions/3/system/api/framework-connectivity-removed.txt1
-rw-r--r--extensions/3/system/api/framework-connectivity-t-removed.txt1
-rw-r--r--extensions/3/system/api/framework-connectivity-t.txt349
-rw-r--r--extensions/3/system/api/framework-connectivity.txt522
-rw-r--r--extensions/3/system/api/framework-media-removed.txt1
-rw-r--r--extensions/3/system/api/framework-media.txt68
-rw-r--r--extensions/3/system/api/framework-mediaprovider-removed.txt1
-rw-r--r--extensions/3/system/api/framework-mediaprovider.txt15
-rw-r--r--extensions/3/system/api/framework-ondevicepersonalization-removed.txt1
-rw-r--r--extensions/3/system/api/framework-ondevicepersonalization.txt1
-rw-r--r--extensions/3/system/api/framework-permission-removed.txt1
-rw-r--r--extensions/3/system/api/framework-permission-s-removed.txt1
-rw-r--r--extensions/3/system/api/framework-permission-s.txt514
-rw-r--r--extensions/3/system/api/framework-permission.txt1
-rw-r--r--extensions/3/system/api/framework-scheduling-removed.txt1
-rw-r--r--extensions/3/system/api/framework-scheduling.txt26
-rw-r--r--extensions/3/system/api/framework-sdkextensions-removed.txt1
-rw-r--r--extensions/3/system/api/framework-sdkextensions.txt1
-rw-r--r--extensions/3/system/api/framework-sdksandbox-removed.txt1
-rw-r--r--extensions/3/system/api/framework-sdksandbox.txt1
-rw-r--r--extensions/3/system/api/framework-statsd-removed.txt1
-rw-r--r--extensions/3/system/api/framework-statsd.txt124
-rw-r--r--extensions/3/system/api/framework-tethering-removed.txt1
-rw-r--r--extensions/3/system/api/framework-tethering.txt117
-rw-r--r--extensions/3/system/api/framework-uwb-removed.txt1
-rw-r--r--extensions/3/system/api/framework-uwb.txt230
-rw-r--r--extensions/3/system/api/framework-wifi-removed.txt16
-rw-r--r--extensions/3/system/api/framework-wifi.txt1276
134 files changed, 30369 insertions, 0 deletions
diff --git a/extensions/3/module-lib/api/android.net.ipsec.ike-removed.txt b/extensions/3/module-lib/api/android.net.ipsec.ike-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/module-lib/api/android.net.ipsec.ike-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/module-lib/api/android.net.ipsec.ike.txt b/extensions/3/module-lib/api/android.net.ipsec.ike.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/module-lib/api/android.net.ipsec.ike.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/module-lib/api/art.module.public.api-removed.txt b/extensions/3/module-lib/api/art.module.public.api-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/module-lib/api/art.module.public.api-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/module-lib/api/art.module.public.api.txt b/extensions/3/module-lib/api/art.module.public.api.txt
new file mode 100644
index 000000000..c85cffb88
--- /dev/null
+++ b/extensions/3/module-lib/api/art.module.public.api.txt
@@ -0,0 +1,864 @@
+// Signature format: 2.0
+package android.compat {
+
+ public final class Compatibility {
+ method public static void clearBehaviorChangeDelegate();
+ method public static void clearOverrides();
+ method public static boolean isChangeEnabled(long);
+ method public static void reportUnconditionalChange(long);
+ method public static void setBehaviorChangeDelegate(android.compat.Compatibility.BehaviorChangeDelegate);
+ method public static void setOverrides(android.compat.Compatibility.ChangeConfig);
+ }
+
+ public static interface Compatibility.BehaviorChangeDelegate {
+ method public default boolean isChangeEnabled(long);
+ method public default void onChangeReported(long);
+ }
+
+ public static final class Compatibility.ChangeConfig {
+ ctor public Compatibility.ChangeConfig(@NonNull java.util.Set<java.lang.Long>, @NonNull java.util.Set<java.lang.Long>);
+ method @NonNull public long[] getDisabledChangesArray();
+ method @NonNull public java.util.Set<java.lang.Long> getDisabledSet();
+ method @NonNull public long[] getEnabledChangesArray();
+ method @NonNull public java.util.Set<java.lang.Long> getEnabledSet();
+ method public boolean isEmpty();
+ method public boolean isForceDisabled(long);
+ method public boolean isForceEnabled(long);
+ }
+
+}
+
+package android.system {
+
+ public final class NetlinkSocketAddress extends java.net.SocketAddress {
+ ctor public NetlinkSocketAddress(int, int);
+ method public int getGroupsMask();
+ method public int getPortId();
+ }
+
+ public final class Os {
+ method @Nullable public static android.system.StructCapUserData[] capget(@NonNull android.system.StructCapUserHeader) throws android.system.ErrnoException;
+ method public static void capset(@NonNull android.system.StructCapUserHeader, @NonNull android.system.StructCapUserData[]) throws android.system.ErrnoException;
+ method public static int getpgid(int) throws android.system.ErrnoException;
+ method @Nullable public static android.system.StructRlimit getrlimit(int) throws android.system.ErrnoException;
+ method public static int getsockoptInt(@NonNull java.io.FileDescriptor, int, int) throws android.system.ErrnoException;
+ method @Nullable public static android.system.StructLinger getsockoptLinger(@NonNull java.io.FileDescriptor, int, int) throws android.system.ErrnoException;
+ method public static int ioctlInt(@NonNull java.io.FileDescriptor, int) throws android.system.ErrnoException;
+ method @Nullable public static java.io.FileDescriptor[] pipe2(int) throws android.system.ErrnoException;
+ method @Nullable public static String realpath(@Nullable String) throws android.system.ErrnoException;
+ method public static void setpgid(int, int) throws android.system.ErrnoException;
+ method public static void setregid(int, int) throws android.system.ErrnoException;
+ method public static void setreuid(int, int) throws android.system.ErrnoException;
+ method public static void setsockoptIfreq(@NonNull java.io.FileDescriptor, int, int, @Nullable String) throws android.system.ErrnoException;
+ method public static void setsockoptLinger(@NonNull java.io.FileDescriptor, int, int, @NonNull android.system.StructLinger) throws android.system.ErrnoException;
+ method public static long splice(@NonNull java.io.FileDescriptor, @Nullable android.system.Int64Ref, @NonNull java.io.FileDescriptor, @Nullable android.system.Int64Ref, long, int) throws android.system.ErrnoException;
+ method public static void unlink(@Nullable String) throws android.system.ErrnoException;
+ }
+
+ public final class OsConstants {
+ method public static int CAP_TO_INDEX(int);
+ method public static int CAP_TO_MASK(int);
+ field public static final int ARPHRD_LOOPBACK;
+ field public static final int EUSERS;
+ field public static final int MAP_POPULATE;
+ field public static final int O_DIRECT;
+ field public static final int PR_CAP_AMBIENT;
+ field public static final int PR_CAP_AMBIENT_RAISE;
+ field public static final int RLIMIT_NOFILE;
+ field public static final int RTMGRP_IPV4_IFADDR;
+ field public static final int SPLICE_F_MORE;
+ field public static final int SPLICE_F_MOVE;
+ field public static final int TIOCOUTQ;
+ field public static final int UDP_ENCAP;
+ field public static final int UDP_ENCAP_ESPINUDP;
+ field public static final int XATTR_CREATE;
+ field public static final int XATTR_REPLACE;
+ field public static final int _LINUX_CAPABILITY_VERSION_3;
+ }
+
+ public final class PacketSocketAddress extends java.net.SocketAddress {
+ ctor public PacketSocketAddress(int, int, byte[]);
+ }
+
+ public final class StructCapUserData {
+ ctor public StructCapUserData(int, int, int);
+ field public final int effective;
+ field public final int inheritable;
+ field public final int permitted;
+ }
+
+ public final class StructCapUserHeader {
+ ctor public StructCapUserHeader(int, int);
+ }
+
+ public final class StructLinger {
+ ctor public StructLinger(int, int);
+ method public boolean isOn();
+ field public final int l_linger;
+ }
+
+ public final class StructRlimit {
+ field public final long rlim_cur;
+ }
+
+ public final class UnixSocketAddress extends java.net.SocketAddress {
+ method public static android.system.UnixSocketAddress createFileSystem(String);
+ }
+
+}
+
+package com.android.okhttp.internalandroidapi {
+
+ public final class AndroidResponseCacheAdapter {
+ ctor public AndroidResponseCacheAdapter(@NonNull com.android.okhttp.internalandroidapi.HasCacheHolder.CacheHolder);
+ method public void close() throws java.io.IOException;
+ method public void delete() throws java.io.IOException;
+ method public void flush() throws java.io.IOException;
+ method @Nullable public java.net.CacheResponse get(@NonNull java.net.URI, @NonNull String, @Nullable java.util.Map<java.lang.String,java.util.List<java.lang.String>>) throws java.io.IOException;
+ method @NonNull public com.android.okhttp.internalandroidapi.HasCacheHolder.CacheHolder getCacheHolder();
+ method public int getHitCount();
+ method public long getMaxSize();
+ method public int getNetworkCount();
+ method public int getRequestCount();
+ method public long getSize() throws java.io.IOException;
+ method @Nullable public java.net.CacheRequest put(@NonNull java.net.URI, @NonNull java.net.URLConnection) throws java.io.IOException;
+ }
+
+ public interface HasCacheHolder {
+ method @NonNull public com.android.okhttp.internalandroidapi.HasCacheHolder.CacheHolder getCacheHolder();
+ }
+
+ public static final class HasCacheHolder.CacheHolder {
+ method @NonNull public static com.android.okhttp.internalandroidapi.HasCacheHolder.CacheHolder create(@NonNull java.io.File, long);
+ method public boolean isEquivalent(@NonNull java.io.File, long);
+ }
+
+}
+
+package dalvik.annotation.codegen {
+
+ @java.lang.annotation.Repeatable(CovariantReturnType.CovariantReturnTypes.class) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({java.lang.annotation.ElementType.METHOD}) public @interface CovariantReturnType {
+ method public abstract int presentAfter();
+ method public abstract Class<?> returnType();
+ }
+
+ @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({java.lang.annotation.ElementType.METHOD}) public static @interface CovariantReturnType.CovariantReturnTypes {
+ method public abstract dalvik.annotation.codegen.CovariantReturnType[] value();
+ }
+
+}
+
+package dalvik.annotation.optimization {
+
+ @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.METHOD) public @interface CriticalNative {
+ }
+
+ @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.METHOD) public @interface FastNative {
+ }
+
+ @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.METHOD) public @interface NeverCompile {
+ }
+
+}
+
+package dalvik.system {
+
+ public final class AnnotatedStackTraceElement {
+ method @Nullable public Object getBlockedOn();
+ method @Nullable public Object[] getHeldLocks();
+ method @NonNull public StackTraceElement getStackTraceElement();
+ }
+
+ public class AppSpecializationHooks {
+ method public static void handleCompatChangesBeforeBindingApplication();
+ }
+
+ public class BaseDexClassLoader extends java.lang.ClassLoader {
+ method public void addDexPath(@Nullable String);
+ method public void addNativePath(@NonNull java.util.Collection<java.lang.String>);
+ method @NonNull public String getLdLibraryPath();
+ method public void reportClassLoaderChain();
+ method public static void setReporter(@Nullable dalvik.system.BaseDexClassLoader.Reporter);
+ }
+
+ public static interface BaseDexClassLoader.Reporter {
+ method public void report(@NonNull java.util.Map<java.lang.String,java.lang.String>);
+ }
+
+ public final class BlockGuard {
+ method @NonNull public static dalvik.system.BlockGuard.Policy getThreadPolicy();
+ method @NonNull public static dalvik.system.BlockGuard.VmPolicy getVmPolicy();
+ method public static void setThreadPolicy(@NonNull dalvik.system.BlockGuard.Policy);
+ method public static void setVmPolicy(@NonNull dalvik.system.BlockGuard.VmPolicy);
+ field public static final dalvik.system.BlockGuard.Policy LAX_POLICY;
+ field public static final dalvik.system.BlockGuard.VmPolicy LAX_VM_POLICY;
+ }
+
+ public static interface BlockGuard.Policy {
+ method public int getPolicyMask();
+ method public void onReadFromDisk();
+ method public void onUnbufferedIO();
+ method public void onWriteToDisk();
+ }
+
+ public static interface BlockGuard.VmPolicy {
+ method public void onPathAccess(@NonNull String);
+ }
+
+ public final class CloseGuard {
+ method public void close();
+ method public static dalvik.system.CloseGuard get();
+ method public static dalvik.system.CloseGuard.Reporter getReporter();
+ method public void open(String);
+ method public void openWithCallSite(String, String);
+ method public static void setEnabled(boolean);
+ method public static void setReporter(dalvik.system.CloseGuard.Reporter);
+ method public void warnIfOpen();
+ }
+
+ public static interface CloseGuard.Reporter {
+ method public void report(String, Throwable);
+ method public default void report(String);
+ }
+
+ public final class DelegateLastClassLoader extends dalvik.system.PathClassLoader {
+ ctor public DelegateLastClassLoader(String, String, ClassLoader, ClassLoader[]);
+ ctor public DelegateLastClassLoader(String, String, ClassLoader, ClassLoader[], ClassLoader[]);
+ }
+
+ @Deprecated public final class DexFile {
+ method @Deprecated @NonNull public static dalvik.system.DexFile.OptimizationInfo getDexFileOptimizationInfo(@NonNull String, @NonNull String) throws java.io.FileNotFoundException;
+ method @Deprecated @Nullable public static String[] getDexFileOutputPaths(@NonNull String, @NonNull String) throws java.io.FileNotFoundException;
+ method @Deprecated public static int getDexOptNeeded(@NonNull String, @NonNull String, @NonNull String, @Nullable String, boolean, boolean) throws java.io.FileNotFoundException, java.io.IOException;
+ method @Deprecated @NonNull public static String getSafeModeCompilerFilter(@NonNull String);
+ method @Deprecated public static boolean isProfileGuidedCompilerFilter(@NonNull String);
+ method @Deprecated public static boolean isValidCompilerFilter(@NonNull String);
+ field @Deprecated public static final int DEX2OAT_FOR_FILTER = 3; // 0x3
+ field @Deprecated public static final int NO_DEXOPT_NEEDED = 0; // 0x0
+ }
+
+ @Deprecated public static final class DexFile.OptimizationInfo {
+ method @Deprecated @NonNull public String getReason();
+ method @Deprecated @NonNull public String getStatus();
+ }
+
+ public class PathClassLoader extends dalvik.system.BaseDexClassLoader {
+ ctor public PathClassLoader(@NonNull String, @Nullable String, @Nullable ClassLoader, @Nullable ClassLoader[]);
+ ctor public PathClassLoader(@NonNull String, @Nullable String, @Nullable ClassLoader, @Nullable ClassLoader[], @Nullable ClassLoader[]);
+ }
+
+ public final class RuntimeHooks {
+ method public static void setTimeZoneIdSupplier(@NonNull java.util.function.Supplier<java.lang.String>);
+ method public static void setUncaughtExceptionPreHandler(@Nullable java.lang.Thread.UncaughtExceptionHandler);
+ }
+
+ public abstract class SocketTagger {
+ ctor public SocketTagger();
+ method public static dalvik.system.SocketTagger get();
+ method public static void set(dalvik.system.SocketTagger);
+ method public abstract void tag(java.io.FileDescriptor) throws java.net.SocketException;
+ method public final void tag(java.net.Socket) throws java.net.SocketException;
+ method public final void tag(java.net.DatagramSocket) throws java.net.SocketException;
+ method public abstract void untag(java.io.FileDescriptor) throws java.net.SocketException;
+ method public final void untag(java.net.Socket) throws java.net.SocketException;
+ method public final void untag(java.net.DatagramSocket) throws java.net.SocketException;
+ }
+
+ public final class VMDebug {
+ method public static void attachAgent(String, ClassLoader) throws java.io.IOException;
+ method public static long countInstancesOfClass(Class, boolean);
+ method public static long[] countInstancesOfClasses(Class[], boolean);
+ method public static void dumpHprofData(String) throws java.io.IOException;
+ method public static void dumpHprofData(String, java.io.FileDescriptor) throws java.io.IOException;
+ method public static void dumpHprofDataDdms();
+ method public static void dumpReferenceTables();
+ method public static int getAllocCount(int);
+ method @dalvik.annotation.optimization.FastNative public static int getLoadedClassCount();
+ method public static int getMethodTracingMode();
+ method public static String getRuntimeStat(String);
+ method public static java.util.Map<java.lang.String,java.lang.String> getRuntimeStats();
+ method public static String[] getVmFeatureList();
+ method @dalvik.annotation.optimization.FastNative public static boolean isDebuggerConnected();
+ method @dalvik.annotation.optimization.FastNative public static boolean isDebuggingEnabled();
+ method @dalvik.annotation.optimization.FastNative public static long lastDebuggerActivity();
+ method @dalvik.annotation.optimization.FastNative public static void printLoadedClasses(int);
+ method public static void resetAllocCount(int);
+ method public static void setAllocTrackerStackDepth(int);
+ method public static void startAllocCounting();
+ method public static void startMethodTracing(String, int, int, boolean, int);
+ method public static void startMethodTracing(String, java.io.FileDescriptor, int, int, boolean, int, boolean);
+ method public static void startMethodTracingDdms(int, int, boolean, int);
+ method public static void stopAllocCounting();
+ method public static void stopMethodTracing();
+ method @dalvik.annotation.optimization.FastNative public static long threadCpuTimeNanos();
+ field public static final int KIND_ALL_COUNTS = -1; // 0xffffffff
+ field public static final int KIND_GLOBAL_ALLOCATED_BYTES = 2; // 0x2
+ field public static final int KIND_GLOBAL_ALLOCATED_OBJECTS = 1; // 0x1
+ field public static final int KIND_GLOBAL_CLASS_INIT_COUNT = 32; // 0x20
+ field public static final int KIND_GLOBAL_CLASS_INIT_TIME = 64; // 0x40
+ field public static final int KIND_GLOBAL_FREED_BYTES = 8; // 0x8
+ field public static final int KIND_GLOBAL_FREED_OBJECTS = 4; // 0x4
+ field public static final int KIND_GLOBAL_GC_INVOCATIONS = 16; // 0x10
+ field public static final int KIND_THREAD_ALLOCATED_BYTES = 131072; // 0x20000
+ field public static final int KIND_THREAD_ALLOCATED_OBJECTS = 65536; // 0x10000
+ field public static final int KIND_THREAD_GC_INVOCATIONS = 1048576; // 0x100000
+ field public static final int TRACE_COUNT_ALLOCS = 1; // 0x1
+ }
+
+ public final class VMRuntime {
+ method @dalvik.annotation.optimization.FastNative public long addressOf(Object);
+ method public static void bootCompleted();
+ method public void clampGrowthLimit();
+ method public void clearGrowthLimit();
+ method public static String getCurrentInstructionSet();
+ method public static String getInstructionSet(String);
+ method public static dalvik.system.VMRuntime getRuntime();
+ method public int getTargetSdkVersion();
+ method @dalvik.annotation.optimization.FastNative public boolean is64Bit();
+ method public static boolean is64BitAbi(String);
+ method public static boolean is64BitInstructionSet(String);
+ method @dalvik.annotation.optimization.FastNative public boolean isCheckJniEnabled();
+ method @dalvik.annotation.optimization.FastNative public boolean isNativeDebuggable();
+ method public static boolean isValidClassLoaderContext(String);
+ method @dalvik.annotation.optimization.FastNative public Object newNonMovableArray(Class<?>, int);
+ method @dalvik.annotation.optimization.FastNative public Object newUnpaddedArray(Class<?>, int);
+ method public void notifyStartupCompleted();
+ method public void preloadDexCaches();
+ method public static void registerAppInfo(String, String, String, String[], int);
+ method public void registerNativeAllocation(long);
+ method @Deprecated public void registerNativeAllocation(int);
+ method public void registerNativeFree(long);
+ method @Deprecated public void registerNativeFree(int);
+ method public static void registerSensitiveThread();
+ method public void requestConcurrentGC();
+ method public static void resetJitCounters();
+ method public static void setDedupeHiddenApiWarnings(boolean);
+ method public void setDisabledCompatChanges(long[]);
+ method public void setHiddenApiAccessLogSamplingRate(int);
+ method public void setHiddenApiExemptions(String[]);
+ method public static void setHiddenApiUsageLogger(dalvik.system.VMRuntime.HiddenApiUsageLogger);
+ method public static void setNonSdkApiUsageConsumer(java.util.function.Consumer<java.lang.String>);
+ method public static void setProcessDataDirectory(String);
+ method public static void setProcessPackageName(String);
+ method public void setTargetSdkVersion(int);
+ method public void updateProcessState(int);
+ method public String vmInstructionSet();
+ method public String vmLibrary();
+ field public static final int CODE_PATH_TYPE_PRIMARY_APK = 1; // 0x1
+ field public static final int CODE_PATH_TYPE_SECONDARY_DEX = 4; // 0x4
+ field public static final int CODE_PATH_TYPE_SPLIT_APK = 2; // 0x2
+ field public static final int SDK_VERSION_CUR_DEVELOPMENT = 10000; // 0x2710
+ }
+
+ public static interface VMRuntime.HiddenApiUsageLogger {
+ method public void hiddenApiUsed(int, String, String, int, boolean);
+ field public static final int ACCESS_METHOD_JNI = 2; // 0x2
+ field public static final int ACCESS_METHOD_LINKING = 3; // 0x3
+ field public static final int ACCESS_METHOD_NONE = 0; // 0x0
+ field public static final int ACCESS_METHOD_REFLECTION = 1; // 0x1
+ }
+
+ public final class VMStack {
+ method @Nullable @dalvik.annotation.optimization.FastNative public static dalvik.system.AnnotatedStackTraceElement[] getAnnotatedThreadStackTrace(Thread);
+ }
+
+ public final class ZygoteHooks {
+ method public static void gcAndFinalize();
+ method public static boolean isIndefiniteThreadSuspensionSafe();
+ method public static void onBeginPreload();
+ method public static void onEndPreload();
+ method public static void postForkChild(int, boolean, boolean, String);
+ method public static void postForkCommon();
+ method public static void postForkSystemServer(int);
+ method public static void preFork();
+ method public static void startZygoteNoThreadCreation();
+ method public static void stopZygoteNoThreadCreation();
+ }
+
+}
+
+package java.io {
+
+ public final class FileDescriptor {
+ method public int getInt$();
+ method public void setInt$(int);
+ }
+
+ public class FileInputStream extends java.io.InputStream {
+ ctor public FileInputStream(java.io.FileDescriptor, boolean);
+ }
+
+}
+
+package java.lang {
+
+ public class Thread implements java.lang.Runnable {
+ method public static java.lang.Thread.UncaughtExceptionHandler getUncaughtExceptionPreHandler();
+ method public static void setUncaughtExceptionPreHandler(java.lang.Thread.UncaughtExceptionHandler);
+ }
+
+}
+
+package java.net {
+
+ public class DatagramSocket implements java.io.Closeable {
+ method public java.io.FileDescriptor getFileDescriptor$();
+ }
+
+ public final class Inet4Address extends java.net.InetAddress {
+ field public static final java.net.InetAddress ALL;
+ field public static final java.net.InetAddress ANY;
+ field public static final java.net.InetAddress LOOPBACK;
+ }
+
+ public final class Inet6Address extends java.net.InetAddress {
+ field public static final java.net.InetAddress ANY;
+ field public static final java.net.InetAddress LOOPBACK;
+ }
+
+ public class InetAddress implements java.io.Serializable {
+ method public static void clearDnsCache();
+ method @NonNull public static java.net.InetAddress[] getAllByNameOnNet(@Nullable String, int) throws java.net.UnknownHostException;
+ method @NonNull public static java.net.InetAddress getByNameOnNet(@Nullable String, int) throws java.net.UnknownHostException;
+ method @Deprecated public static boolean isNumeric(String);
+ method @Deprecated public static java.net.InetAddress parseNumericAddress(String);
+ }
+
+ public class InetSocketAddress extends java.net.SocketAddress {
+ ctor public InetSocketAddress();
+ }
+
+ public class ServerSocket implements java.io.Closeable {
+ method public java.net.SocketImpl getImpl() throws java.net.SocketException;
+ }
+
+ public class Socket implements java.io.Closeable {
+ method public java.io.FileDescriptor getFileDescriptor$();
+ }
+
+ public abstract class SocketImpl implements java.net.SocketOptions {
+ method public java.io.FileDescriptor getFD$();
+ }
+
+}
+
+package java.nio {
+
+ public abstract class ByteBuffer extends java.nio.Buffer implements java.lang.Comparable<java.nio.ByteBuffer> {
+ method public void setAccessible(boolean);
+ }
+
+ public class DirectByteBuffer extends java.nio.MappedByteBuffer {
+ ctor public DirectByteBuffer(int, long, java.io.FileDescriptor, Runnable, boolean);
+ method public final long address();
+ method public final void setAccessible(boolean);
+ }
+
+ public final class NIOAccess {
+ method public static Object getBaseArray(java.nio.Buffer);
+ method public static int getBaseArrayOffset(java.nio.Buffer);
+ }
+
+ public final class NioUtils {
+ method public static void freeDirectBuffer(java.nio.ByteBuffer);
+ method public static byte[] unsafeArray(java.nio.ByteBuffer);
+ method public static int unsafeArrayOffset(java.nio.ByteBuffer);
+ }
+
+}
+
+package java.security {
+
+ public abstract class Provider extends java.util.Properties {
+ method public void warmUpServiceProvision();
+ }
+
+ public abstract class Signature extends java.security.SignatureSpi {
+ method public java.security.SignatureSpi getCurrentSpi();
+ }
+
+}
+
+package java.text {
+
+ public abstract class DateFormat extends java.text.Format {
+ method public static final void set24HourTimePref(Boolean);
+ }
+
+}
+
+package java.util {
+
+ public class LinkedHashMap<K, V> extends java.util.HashMap<K,V> implements java.util.Map<K,V> {
+ method public java.util.Map.Entry<K,V> eldest();
+ }
+
+}
+
+package java.util.zip {
+
+ public class ZipEntry implements java.lang.Cloneable {
+ method public long getDataOffset();
+ }
+
+}
+
+package javax.crypto {
+
+ public class Cipher {
+ method public javax.crypto.CipherSpi getCurrentSpi();
+ }
+
+ public class Mac implements java.lang.Cloneable {
+ method public javax.crypto.MacSpi getCurrentSpi();
+ }
+
+}
+
+package javax.net.ssl {
+
+ public abstract class HttpsURLConnection extends java.net.HttpURLConnection {
+ method public static javax.net.ssl.HostnameVerifier getStrictHostnameVerifier();
+ }
+
+}
+
+package libcore.content.type {
+
+ public final class MimeMap {
+ method @NonNull public libcore.content.type.MimeMap.Builder buildUpon();
+ method @NonNull public static libcore.content.type.MimeMap.Builder builder();
+ method @NonNull public java.util.Set<java.lang.String> extensions();
+ method @NonNull public static libcore.content.type.MimeMap getDefault();
+ method @Nullable public String guessExtensionFromMimeType(@Nullable String);
+ method @Nullable public String guessMimeTypeFromExtension(@Nullable String);
+ method public boolean hasExtension(@Nullable String);
+ method public boolean hasMimeType(@Nullable String);
+ method @NonNull public java.util.Set<java.lang.String> mimeTypes();
+ method public static void setDefaultSupplier(@NonNull java.util.function.Supplier<libcore.content.type.MimeMap>);
+ }
+
+ public static final class MimeMap.Builder {
+ method @NonNull public libcore.content.type.MimeMap.Builder addMimeMapping(@NonNull String, @NonNull java.util.List<java.lang.String>);
+ method @NonNull public libcore.content.type.MimeMap build();
+ }
+
+}
+
+package libcore.io {
+
+ public class ForwardingOs implements libcore.io.Os {
+ ctor protected ForwardingOs(@NonNull libcore.io.Os);
+ method public boolean access(@Nullable String, int) throws android.system.ErrnoException;
+ method public java.io.FileDescriptor open(@Nullable String, int, int) throws android.system.ErrnoException;
+ method public void remove(@Nullable String) throws android.system.ErrnoException;
+ method public void rename(@Nullable String, @Nullable String) throws android.system.ErrnoException;
+ method @Nullable public android.system.StructStat stat(@Nullable String) throws android.system.ErrnoException;
+ method public void unlink(@Nullable String) throws android.system.ErrnoException;
+ }
+
+ public final class IoBridge {
+ method public static void closeAndSignalBlockedThreads(@NonNull java.io.FileDescriptor) throws java.io.IOException;
+ method @NonNull public static java.io.FileDescriptor open(@NonNull String, int) throws java.io.FileNotFoundException;
+ method public static int read(@NonNull java.io.FileDescriptor, @NonNull byte[], int, int) throws java.io.IOException;
+ method public static void write(@NonNull java.io.FileDescriptor, @NonNull byte[], int, int) throws java.io.IOException;
+ }
+
+ public final class IoUtils {
+ method public static int acquireRawFd(@NonNull java.io.FileDescriptor);
+ method public static void close(@Nullable java.io.FileDescriptor) throws java.io.IOException;
+ method public static void closeQuietly(@Nullable AutoCloseable);
+ method public static void closeQuietly(@Nullable java.io.FileDescriptor);
+ method public static void closeQuietly(@Nullable java.net.Socket);
+ method @NonNull public static byte[] readFileAsByteArray(@NonNull String) throws java.io.IOException;
+ method @NonNull public static String readFileAsString(@NonNull String) throws java.io.IOException;
+ method public static void setBlocking(@NonNull java.io.FileDescriptor, boolean) throws java.io.IOException;
+ method public static void setFdOwner(@NonNull java.io.FileDescriptor, @NonNull Object);
+ }
+
+ public final class Memory {
+ method public static void memmove(@NonNull Object, int, @NonNull Object, int, long);
+ method public static int peekInt(@NonNull byte[], int, @NonNull java.nio.ByteOrder);
+ method public static short peekShort(@NonNull byte[], int, @NonNull java.nio.ByteOrder);
+ method public static void pokeInt(@NonNull byte[], int, int, @NonNull java.nio.ByteOrder);
+ method public static void pokeLong(@NonNull byte[], int, long, @NonNull java.nio.ByteOrder);
+ method public static void pokeShort(@NonNull byte[], int, short, @NonNull java.nio.ByteOrder);
+ }
+
+ public interface Os {
+ method public static boolean compareAndSetDefault(libcore.io.Os, libcore.io.Os);
+ method public static libcore.io.Os getDefault();
+ }
+
+ public final class Streams {
+ method public static int copy(@NonNull java.io.InputStream, @NonNull java.io.OutputStream) throws java.io.IOException;
+ method public static void readFully(@NonNull java.io.InputStream, @NonNull byte[]) throws java.io.IOException;
+ method @NonNull public static byte[] readFully(@NonNull java.io.InputStream) throws java.io.IOException;
+ method @NonNull public static String readFully(@NonNull java.io.Reader) throws java.io.IOException;
+ method @NonNull public static byte[] readFullyNoClose(@NonNull java.io.InputStream) throws java.io.IOException;
+ method public static int readSingleByte(@NonNull java.io.InputStream) throws java.io.IOException;
+ method public static long skipByReading(@NonNull java.io.InputStream, long) throws java.io.IOException;
+ method public static void writeSingleByte(@NonNull java.io.OutputStream, int) throws java.io.IOException;
+ }
+
+}
+
+package libcore.net {
+
+ public class InetAddressUtils {
+ method public static boolean isNumericAddress(String);
+ method public static java.net.InetAddress parseNumericAddress(String);
+ }
+
+ public abstract class NetworkSecurityPolicy {
+ ctor public NetworkSecurityPolicy();
+ method public static libcore.net.NetworkSecurityPolicy getInstance();
+ method public abstract boolean isCertificateTransparencyVerificationRequired(String);
+ method public abstract boolean isCleartextTrafficPermitted();
+ method public abstract boolean isCleartextTrafficPermitted(String);
+ method public static void setInstance(libcore.net.NetworkSecurityPolicy);
+ }
+
+}
+
+package libcore.net.event {
+
+ public final class NetworkEventDispatcher {
+ method public void dispatchNetworkConfigurationChange();
+ method public static libcore.net.event.NetworkEventDispatcher getInstance();
+ }
+
+}
+
+package libcore.net.http {
+
+ public interface Dns {
+ method @NonNull public java.util.List<java.net.InetAddress> lookup(@Nullable String) throws java.net.UnknownHostException;
+ }
+
+ public class HttpURLConnectionFactory {
+ method @NonNull public static libcore.net.http.HttpURLConnectionFactory createInstance();
+ method public java.net.URLConnection openConnection(@NonNull java.net.URL, @NonNull javax.net.SocketFactory, @NonNull java.net.Proxy) throws java.io.IOException;
+ method public void setDns(@NonNull libcore.net.http.Dns);
+ method public void setNewConnectionPool(int, long, @NonNull java.util.concurrent.TimeUnit);
+ }
+
+}
+
+package libcore.util {
+
+ public final class EmptyArray {
+ field @NonNull public static final boolean[] BOOLEAN;
+ field @NonNull public static final byte[] BYTE;
+ field @NonNull public static final float[] FLOAT;
+ field @NonNull public static final int[] INT;
+ field @NonNull public static final long[] LONG;
+ field @NonNull public static final Object[] OBJECT;
+ field @NonNull public static final String[] STRING;
+ }
+
+ public final class FP16 {
+ method public static short ceil(short);
+ method public static int compare(short, short);
+ method public static boolean equals(short, short);
+ method public static short floor(short);
+ method public static boolean greater(short, short);
+ method public static boolean greaterEquals(short, short);
+ method public static boolean isInfinite(short);
+ method public static boolean isNaN(short);
+ method public static boolean isNormalized(short);
+ method public static boolean less(short, short);
+ method public static boolean lessEquals(short, short);
+ method public static short max(short, short);
+ method public static short min(short, short);
+ method public static short rint(short);
+ method public static float toFloat(short);
+ method public static short toHalf(float);
+ method public static String toHexString(short);
+ method public static short trunc(short);
+ field public static final short EPSILON = 5120; // 0x1400
+ field public static final int EXPONENT_BIAS = 15; // 0xf
+ field public static final int EXPONENT_SHIFT = 10; // 0xa
+ field public static final int EXPONENT_SIGNIFICAND_MASK = 32767; // 0x7fff
+ field public static final short LOWEST_VALUE = -1025; // 0xfffffbff
+ field public static final int MAX_EXPONENT = 15; // 0xf
+ field public static final short MAX_VALUE = 31743; // 0x7bff
+ field public static final int MIN_EXPONENT = -14; // 0xfffffff2
+ field public static final short MIN_NORMAL = 1024; // 0x400
+ field public static final short MIN_VALUE = 1; // 0x1
+ field public static final short NEGATIVE_INFINITY = -1024; // 0xfffffc00
+ field public static final short NEGATIVE_ZERO = -32768; // 0xffff8000
+ field public static final short NaN = 32256; // 0x7e00
+ field public static final short POSITIVE_INFINITY = 31744; // 0x7c00
+ field public static final short POSITIVE_ZERO = 0; // 0x0
+ field public static final int SHIFTED_EXPONENT_MASK = 31; // 0x1f
+ field public static final int SIGNIFICAND_MASK = 1023; // 0x3ff
+ field public static final int SIGN_MASK = 32768; // 0x8000
+ field public static final int SIGN_SHIFT = 15; // 0xf
+ field public static final int SIZE = 16; // 0x10
+ }
+
+ public class HexEncoding {
+ method public static byte[] decode(String) throws java.lang.IllegalArgumentException;
+ method public static byte[] decode(String, boolean) throws java.lang.IllegalArgumentException;
+ method public static byte[] decode(char[]) throws java.lang.IllegalArgumentException;
+ method public static byte[] decode(char[], boolean) throws java.lang.IllegalArgumentException;
+ method public static char[] encode(byte[]);
+ method public static char[] encode(byte[], boolean);
+ method public static char[] encode(byte[], int, int);
+ method public static String encodeToString(byte, boolean);
+ method public static String encodeToString(byte[]);
+ method public static String encodeToString(byte[], boolean);
+ }
+
+ public class NativeAllocationRegistry {
+ ctor public NativeAllocationRegistry(@NonNull ClassLoader, long, long);
+ method public static void applyFreeFunction(long, long);
+ method public static libcore.util.NativeAllocationRegistry createMalloced(@NonNull ClassLoader, long, long);
+ method public static libcore.util.NativeAllocationRegistry createMalloced(@NonNull ClassLoader, long);
+ method public static libcore.util.NativeAllocationRegistry createNonmalloced(@NonNull ClassLoader, long, long);
+ method @NonNull public Runnable registerNativeAllocation(@NonNull Object, long);
+ }
+
+ public class SneakyThrow {
+ method public static void sneakyThrow(@NonNull Throwable);
+ }
+
+ public class XmlObjectFactory {
+ method @NonNull public static org.xml.sax.XMLReader newXMLReader();
+ method @NonNull public static org.xmlpull.v1.XmlPullParser newXmlPullParser();
+ method @NonNull public static org.xmlpull.v1.XmlSerializer newXmlSerializer();
+ }
+
+}
+
+package org.apache.harmony.dalvik.ddmc {
+
+ public class Chunk {
+ ctor public Chunk(int, byte[], int, int);
+ ctor public Chunk(int, java.nio.ByteBuffer);
+ field public int type;
+ }
+
+ public abstract class ChunkHandler {
+ ctor public ChunkHandler();
+ method public static org.apache.harmony.dalvik.ddmc.Chunk createFailChunk(int, String);
+ method public abstract org.apache.harmony.dalvik.ddmc.Chunk handleChunk(org.apache.harmony.dalvik.ddmc.Chunk);
+ method public static String name(int);
+ method public abstract void onConnected();
+ method public abstract void onDisconnected();
+ method public static int type(String);
+ method public static java.nio.ByteBuffer wrapChunk(org.apache.harmony.dalvik.ddmc.Chunk);
+ field public static final java.nio.ByteOrder CHUNK_ORDER;
+ }
+
+ public final class DdmServer {
+ method public static void registerHandler(int, org.apache.harmony.dalvik.ddmc.ChunkHandler);
+ method public static void registrationComplete();
+ method public static void sendChunk(org.apache.harmony.dalvik.ddmc.Chunk);
+ method public static org.apache.harmony.dalvik.ddmc.ChunkHandler unregisterHandler(int);
+ }
+
+ public final class DdmVmInternal {
+ method public static void setRecentAllocationsTrackingEnabled(boolean);
+ method public static void setThreadNotifyEnabled(boolean);
+ }
+
+}
+
+package org.json {
+
+ public class JSONObject {
+ method @NonNull public java.util.Set<java.lang.String> keySet();
+ }
+
+}
+
+package sun.misc {
+
+ public class Cleaner extends java.lang.ref.PhantomReference<java.lang.Object> {
+ method public void clean();
+ method public static sun.misc.Cleaner create(Object, Runnable);
+ }
+
+ public final class Unsafe {
+ method public int arrayBaseOffset(Class);
+ method public int arrayIndexScale(Class);
+ method @dalvik.annotation.optimization.FastNative public void copyMemory(long, long, long);
+ method @dalvik.annotation.optimization.FastNative public boolean getBoolean(Object, long);
+ method @dalvik.annotation.optimization.FastNative public byte getByte(Object, long);
+ method @dalvik.annotation.optimization.FastNative public byte getByte(long);
+ method @dalvik.annotation.optimization.FastNative public double getDouble(Object, long);
+ method @dalvik.annotation.optimization.FastNative public double getDouble(long);
+ method @dalvik.annotation.optimization.FastNative public float getFloat(Object, long);
+ method @dalvik.annotation.optimization.FastNative public float getFloat(long);
+ method @dalvik.annotation.optimization.FastNative public int getInt(Object, long);
+ method @dalvik.annotation.optimization.FastNative public int getInt(long);
+ method @dalvik.annotation.optimization.FastNative public long getLong(Object, long);
+ method @dalvik.annotation.optimization.FastNative public long getLong(long);
+ method @dalvik.annotation.optimization.FastNative public Object getObject(Object, long);
+ method public static sun.misc.Unsafe getUnsafe();
+ method public long objectFieldOffset(java.lang.reflect.Field);
+ method @dalvik.annotation.optimization.FastNative public void putBoolean(Object, long, boolean);
+ method @dalvik.annotation.optimization.FastNative public void putByte(Object, long, byte);
+ method @dalvik.annotation.optimization.FastNative public void putByte(long, byte);
+ method @dalvik.annotation.optimization.FastNative public void putDouble(Object, long, double);
+ method @dalvik.annotation.optimization.FastNative public void putDouble(long, double);
+ method @dalvik.annotation.optimization.FastNative public void putFloat(Object, long, float);
+ method @dalvik.annotation.optimization.FastNative public void putFloat(long, float);
+ method @dalvik.annotation.optimization.FastNative public void putInt(Object, long, int);
+ method @dalvik.annotation.optimization.FastNative public void putInt(long, int);
+ method @dalvik.annotation.optimization.FastNative public void putLong(Object, long, long);
+ method @dalvik.annotation.optimization.FastNative public void putLong(long, long);
+ method @dalvik.annotation.optimization.FastNative public void putObject(Object, long, Object);
+ }
+
+}
+
+package sun.security.jca {
+
+ public class Providers {
+ method public static Object startJarVerification();
+ method public static void stopJarVerification(Object);
+ }
+
+}
+
+package sun.security.pkcs {
+
+ public class PKCS7 {
+ ctor public PKCS7(java.io.InputStream) throws java.io.IOException, sun.security.pkcs.ParsingException;
+ ctor public PKCS7(byte[]) throws sun.security.pkcs.ParsingException;
+ method public java.security.cert.X509Certificate[] getCertificates();
+ method public sun.security.pkcs.SignerInfo[] getSignerInfos();
+ method public sun.security.pkcs.SignerInfo verify(sun.security.pkcs.SignerInfo, java.io.InputStream) throws java.io.IOException, java.security.NoSuchAlgorithmException, java.security.SignatureException;
+ method public sun.security.pkcs.SignerInfo[] verify(byte[]) throws java.security.NoSuchAlgorithmException, java.security.SignatureException;
+ }
+
+ public class ParsingException extends java.io.IOException {
+ }
+
+ public class SignerInfo {
+ ctor public SignerInfo();
+ method public java.util.ArrayList<java.security.cert.X509Certificate> getCertificateChain(sun.security.pkcs.PKCS7) throws java.io.IOException;
+ }
+
+}
+
+package sun.security.util {
+
+ public final class ObjectIdentifier implements java.io.Serializable {
+ ctor public ObjectIdentifier(String) throws java.io.IOException;
+ }
+
+}
+
+package sun.security.x509 {
+
+ public class AlgorithmId implements java.io.Serializable {
+ ctor public AlgorithmId(sun.security.util.ObjectIdentifier);
+ method public String getName();
+ }
+
+}
+
diff --git a/extensions/3/module-lib/api/conscrypt.module.public.api-removed.txt b/extensions/3/module-lib/api/conscrypt.module.public.api-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/module-lib/api/conscrypt.module.public.api-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/module-lib/api/conscrypt.module.public.api.txt b/extensions/3/module-lib/api/conscrypt.module.public.api.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/module-lib/api/conscrypt.module.public.api.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/module-lib/api/framework-adservices-removed.txt b/extensions/3/module-lib/api/framework-adservices-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/module-lib/api/framework-adservices-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/module-lib/api/framework-adservices.txt b/extensions/3/module-lib/api/framework-adservices.txt
new file mode 100644
index 000000000..3a3276d5f
--- /dev/null
+++ b/extensions/3/module-lib/api/framework-adservices.txt
@@ -0,0 +1,9 @@
+// Signature format: 2.0
+package android.adservices {
+
+ public class AdServicesFrameworkInitializer {
+ method public static void registerServiceWrappers();
+ }
+
+}
+
diff --git a/extensions/3/module-lib/api/framework-appsearch-removed.txt b/extensions/3/module-lib/api/framework-appsearch-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/module-lib/api/framework-appsearch-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/module-lib/api/framework-appsearch.txt b/extensions/3/module-lib/api/framework-appsearch.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/module-lib/api/framework-appsearch.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/module-lib/api/framework-connectivity-removed.txt b/extensions/3/module-lib/api/framework-connectivity-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/module-lib/api/framework-connectivity-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/module-lib/api/framework-connectivity-t-removed.txt b/extensions/3/module-lib/api/framework-connectivity-t-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/module-lib/api/framework-connectivity-t-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/module-lib/api/framework-connectivity-t.txt b/extensions/3/module-lib/api/framework-connectivity-t.txt
new file mode 100644
index 000000000..5a8d47b5f
--- /dev/null
+++ b/extensions/3/module-lib/api/framework-connectivity-t.txt
@@ -0,0 +1,209 @@
+// Signature format: 2.0
+package android.app.usage {
+
+ public class NetworkStatsManager {
+ method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK}) public void forceUpdate();
+ method public static int getCollapsedRatType(int);
+ method @NonNull @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK}) public android.net.NetworkStats getMobileUidStats();
+ method @NonNull @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK}) public android.net.NetworkStats getWifiUidStats();
+ method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK}) public void noteUidForeground(int, boolean);
+ method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK}) public void notifyNetworkStatus(@NonNull java.util.List<android.net.Network>, @NonNull java.util.List<android.net.NetworkStateSnapshot>, @Nullable String, @NonNull java.util.List<android.net.UnderlyingNetworkInfo>);
+ method @NonNull @WorkerThread public android.app.usage.NetworkStats queryDetailsForDevice(@NonNull android.net.NetworkTemplate, long, long);
+ method @NonNull @WorkerThread public android.app.usage.NetworkStats queryDetailsForUidTagState(@NonNull android.net.NetworkTemplate, long, long, int, int, int) throws java.lang.SecurityException;
+ method @NonNull @WorkerThread public android.app.usage.NetworkStats querySummary(@NonNull android.net.NetworkTemplate, long, long) throws java.lang.SecurityException;
+ method @NonNull @WorkerThread public android.app.usage.NetworkStats.Bucket querySummaryForDevice(@NonNull android.net.NetworkTemplate, long, long);
+ method @NonNull @WorkerThread public android.app.usage.NetworkStats queryTaggedSummary(@NonNull android.net.NetworkTemplate, long, long) throws java.lang.SecurityException;
+ method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK}, conditional=true) public void registerUsageCallback(@NonNull android.net.NetworkTemplate, long, @NonNull java.util.concurrent.Executor, @NonNull android.app.usage.NetworkStatsManager.UsageCallback);
+ method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK}) public void setDefaultGlobalAlert(long);
+ method public void setPollForce(boolean);
+ method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK}) public void setPollOnOpen(boolean);
+ method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK}) public void setStatsProviderWarningAndLimitAsync(@NonNull String, long, long);
+ field public static final int NETWORK_TYPE_5G_NSA = -2; // 0xfffffffe
+ }
+
+ public abstract static class NetworkStatsManager.UsageCallback {
+ method public void onThresholdReached(@NonNull android.net.NetworkTemplate);
+ }
+
+}
+
+package android.nearby {
+
+ public final class NearbyFrameworkInitializer {
+ method public static void registerServiceWrappers();
+ }
+
+}
+
+package android.net {
+
+ public final class ConnectivityFrameworkInitializerTiramisu {
+ method public static void registerServiceWrappers();
+ }
+
+ public class EthernetManager {
+ method @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public void addEthernetStateListener(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.IntConsumer);
+ method @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public void addInterfaceStateListener(@NonNull java.util.concurrent.Executor, @NonNull android.net.EthernetManager.InterfaceStateListener);
+ method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public java.util.List<java.lang.String> getInterfaceList();
+ method @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public void removeEthernetStateListener(@NonNull java.util.function.IntConsumer);
+ method public void removeInterfaceStateListener(@NonNull android.net.EthernetManager.InterfaceStateListener);
+ method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK, android.Manifest.permission.NETWORK_SETTINGS}) public void setEthernetEnabled(boolean);
+ method public void setIncludeTestInterfaces(boolean);
+ field public static final int ETHERNET_STATE_DISABLED = 0; // 0x0
+ field public static final int ETHERNET_STATE_ENABLED = 1; // 0x1
+ field public static final int ROLE_CLIENT = 1; // 0x1
+ field public static final int ROLE_NONE = 0; // 0x0
+ field public static final int ROLE_SERVER = 2; // 0x2
+ field public static final int STATE_ABSENT = 0; // 0x0
+ field public static final int STATE_LINK_DOWN = 1; // 0x1
+ field public static final int STATE_LINK_UP = 2; // 0x2
+ }
+
+ public static interface EthernetManager.InterfaceStateListener {
+ method public void onInterfaceStateChanged(@NonNull String, int, int, @Nullable android.net.IpConfiguration);
+ }
+
+ public class IpSecManager {
+ field public static final int DIRECTION_FWD = 2; // 0x2
+ }
+
+ public static final class IpSecManager.UdpEncapsulationSocket implements java.lang.AutoCloseable {
+ method public int getResourceId();
+ }
+
+ public class NetworkIdentity {
+ method public int getOemManaged();
+ method public int getRatType();
+ method public int getSubId();
+ method @Nullable public String getSubscriberId();
+ method public int getType();
+ method @Nullable public String getWifiNetworkKey();
+ method public boolean isDefaultNetwork();
+ method public boolean isMetered();
+ method public boolean isRoaming();
+ }
+
+ public static final class NetworkIdentity.Builder {
+ ctor public NetworkIdentity.Builder();
+ method @NonNull public android.net.NetworkIdentity build();
+ method @NonNull public android.net.NetworkIdentity.Builder clearRatType();
+ method @NonNull public android.net.NetworkIdentity.Builder setDefaultNetwork(boolean);
+ method @NonNull public android.net.NetworkIdentity.Builder setMetered(boolean);
+ method @NonNull public android.net.NetworkIdentity.Builder setNetworkStateSnapshot(@NonNull android.net.NetworkStateSnapshot);
+ method @NonNull public android.net.NetworkIdentity.Builder setOemManaged(int);
+ method @NonNull public android.net.NetworkIdentity.Builder setRatType(int);
+ method @NonNull public android.net.NetworkIdentity.Builder setRoaming(boolean);
+ method @NonNull public android.net.NetworkIdentity.Builder setSubId(int);
+ method @NonNull public android.net.NetworkIdentity.Builder setSubscriberId(@Nullable String);
+ method @NonNull public android.net.NetworkIdentity.Builder setType(int);
+ method @NonNull public android.net.NetworkIdentity.Builder setWifiNetworkKey(@Nullable String);
+ }
+
+ public final class NetworkStateSnapshot implements android.os.Parcelable {
+ ctor public NetworkStateSnapshot(@NonNull android.net.Network, @NonNull android.net.NetworkCapabilities, @NonNull android.net.LinkProperties, @Nullable String, int);
+ method public int describeContents();
+ method public int getLegacyType();
+ method @NonNull public android.net.LinkProperties getLinkProperties();
+ method @NonNull public android.net.Network getNetwork();
+ method @NonNull public android.net.NetworkCapabilities getNetworkCapabilities();
+ method public int getSubId();
+ method @Deprecated @Nullable public String getSubscriberId();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.NetworkStateSnapshot> CREATOR;
+ }
+
+ public class NetworkStatsCollection {
+ method @NonNull public java.util.Map<android.net.NetworkStatsCollection.Key,android.net.NetworkStatsHistory> getEntries();
+ }
+
+ public static final class NetworkStatsCollection.Builder {
+ ctor public NetworkStatsCollection.Builder(long);
+ method @NonNull public android.net.NetworkStatsCollection.Builder addEntry(@NonNull android.net.NetworkStatsCollection.Key, @NonNull android.net.NetworkStatsHistory);
+ method @NonNull public android.net.NetworkStatsCollection build();
+ }
+
+ public static final class NetworkStatsCollection.Key {
+ ctor public NetworkStatsCollection.Key(@NonNull java.util.Set<android.net.NetworkIdentity>, int, int, int);
+ }
+
+ public final class NetworkStatsHistory implements android.os.Parcelable {
+ method public int describeContents();
+ method @NonNull public java.util.List<android.net.NetworkStatsHistory.Entry> getEntries();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.NetworkStatsHistory> CREATOR;
+ }
+
+ public static final class NetworkStatsHistory.Builder {
+ ctor public NetworkStatsHistory.Builder(long, int);
+ method @NonNull public android.net.NetworkStatsHistory.Builder addEntry(@NonNull android.net.NetworkStatsHistory.Entry);
+ method @NonNull public android.net.NetworkStatsHistory build();
+ }
+
+ public static final class NetworkStatsHistory.Entry {
+ ctor public NetworkStatsHistory.Entry(long, long, long, long, long, long, long);
+ method public long getActiveTime();
+ method public long getBucketStart();
+ method public long getOperations();
+ method public long getRxBytes();
+ method public long getRxPackets();
+ method public long getTxBytes();
+ method public long getTxPackets();
+ }
+
+ public final class NetworkTemplate implements android.os.Parcelable {
+ method public int describeContents();
+ method public int getDefaultNetworkStatus();
+ method public int getMatchRule();
+ method public int getMeteredness();
+ method public int getOemManaged();
+ method public int getRatType();
+ method public int getRoaming();
+ method @NonNull public java.util.Set<java.lang.String> getSubscriberIds();
+ method @NonNull public java.util.Set<java.lang.String> getWifiNetworkKeys();
+ method public boolean matches(@NonNull android.net.NetworkIdentity);
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.NetworkTemplate> CREATOR;
+ field public static final int MATCH_BLUETOOTH = 8; // 0x8
+ field public static final int MATCH_CARRIER = 10; // 0xa
+ field public static final int MATCH_ETHERNET = 5; // 0x5
+ field public static final int MATCH_MOBILE = 1; // 0x1
+ field public static final int MATCH_PROXY = 9; // 0x9
+ field public static final int MATCH_WIFI = 4; // 0x4
+ field public static final int NETWORK_TYPE_ALL = -1; // 0xffffffff
+ field public static final int OEM_MANAGED_ALL = -1; // 0xffffffff
+ field public static final int OEM_MANAGED_NO = 0; // 0x0
+ field public static final int OEM_MANAGED_PAID = 1; // 0x1
+ field public static final int OEM_MANAGED_PRIVATE = 2; // 0x2
+ field public static final int OEM_MANAGED_YES = -2; // 0xfffffffe
+ }
+
+ public static final class NetworkTemplate.Builder {
+ ctor public NetworkTemplate.Builder(int);
+ method @NonNull public android.net.NetworkTemplate build();
+ method @NonNull public android.net.NetworkTemplate.Builder setDefaultNetworkStatus(int);
+ method @NonNull public android.net.NetworkTemplate.Builder setMeteredness(int);
+ method @NonNull public android.net.NetworkTemplate.Builder setOemManaged(int);
+ method @NonNull public android.net.NetworkTemplate.Builder setRatType(int);
+ method @NonNull public android.net.NetworkTemplate.Builder setRoaming(int);
+ method @NonNull public android.net.NetworkTemplate.Builder setSubscriberIds(@NonNull java.util.Set<java.lang.String>);
+ method @NonNull public android.net.NetworkTemplate.Builder setWifiNetworkKeys(@NonNull java.util.Set<java.lang.String>);
+ }
+
+ public class TrafficStats {
+ method public static void attachSocketTagger();
+ method public static void init(@NonNull android.content.Context);
+ method public static void setThreadStatsTagDownload();
+ }
+
+ public final class UnderlyingNetworkInfo implements android.os.Parcelable {
+ ctor public UnderlyingNetworkInfo(int, @NonNull String, @NonNull java.util.List<java.lang.String>);
+ method public int describeContents();
+ method @NonNull public String getInterface();
+ method public int getOwnerUid();
+ method @NonNull public java.util.List<java.lang.String> getUnderlyingInterfaces();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.UnderlyingNetworkInfo> CREATOR;
+ }
+
+}
+
diff --git a/extensions/3/module-lib/api/framework-connectivity.txt b/extensions/3/module-lib/api/framework-connectivity.txt
new file mode 100644
index 000000000..ddac19d87
--- /dev/null
+++ b/extensions/3/module-lib/api/framework-connectivity.txt
@@ -0,0 +1,236 @@
+// Signature format: 2.0
+package android.net {
+
+ public final class ConnectivityFrameworkInitializer {
+ method public static void registerServiceWrappers();
+ }
+
+ public class ConnectivityManager {
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void addUidToMeteredNetworkAllowList(int);
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void addUidToMeteredNetworkDenyList(int);
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void factoryReset();
+ method @NonNull @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK, android.Manifest.permission.NETWORK_SETTINGS}) public java.util.List<android.net.NetworkStateSnapshot> getAllNetworkStateSnapshots();
+ method @Nullable public android.net.ProxyInfo getGlobalProxy();
+ method @NonNull public static android.util.Range<java.lang.Integer> getIpSecNetIdRange();
+ method @Nullable @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK, android.Manifest.permission.NETWORK_SETTINGS}) public android.net.LinkProperties getRedactedLinkPropertiesForPackage(@NonNull android.net.LinkProperties, int, @NonNull String);
+ method @Nullable @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK, android.Manifest.permission.NETWORK_SETTINGS}) public android.net.NetworkCapabilities getRedactedNetworkCapabilitiesForPackage(@NonNull android.net.NetworkCapabilities, int, @NonNull String);
+ method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_SETTINGS}) public void registerDefaultNetworkCallbackForUid(int, @NonNull android.net.ConnectivityManager.NetworkCallback, @NonNull android.os.Handler);
+ method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_SETTINGS}) public void registerSystemDefaultNetworkCallback(@NonNull android.net.ConnectivityManager.NetworkCallback, @NonNull android.os.Handler);
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void removeUidFromMeteredNetworkAllowList(int);
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void removeUidFromMeteredNetworkDenyList(int);
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void replaceFirewallChain(int, @NonNull int[]);
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void requestBackgroundNetwork(@NonNull android.net.NetworkRequest, @NonNull android.net.ConnectivityManager.NetworkCallback, @NonNull android.os.Handler);
+ method @Deprecated public boolean requestRouteToHostAddress(int, java.net.InetAddress);
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD, android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void setAcceptPartialConnectivity(@NonNull android.net.Network, boolean, boolean);
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD, android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void setAcceptUnvalidated(@NonNull android.net.Network, boolean, boolean);
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD, android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void setAvoidUnvalidated(@NonNull android.net.Network);
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void setFirewallChainEnabled(int, boolean);
+ method @RequiresPermission(android.Manifest.permission.NETWORK_STACK) public void setGlobalProxy(@Nullable android.net.ProxyInfo);
+ method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK, android.Manifest.permission.NETWORK_SETTINGS}) public void setLegacyLockdownVpnEnabled(boolean);
+ method @Deprecated @RequiresPermission(android.Manifest.permission.NETWORK_STACK) public void setProfileNetworkPreference(@NonNull android.os.UserHandle, int, @Nullable java.util.concurrent.Executor, @Nullable Runnable);
+ method @RequiresPermission(android.Manifest.permission.NETWORK_STACK) public void setProfileNetworkPreferences(@NonNull android.os.UserHandle, @NonNull java.util.List<android.net.ProfileNetworkPreference>, @Nullable java.util.concurrent.Executor, @Nullable Runnable);
+ method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK, android.Manifest.permission.NETWORK_SETTINGS}) public void setRequireVpnForUids(boolean, @NonNull java.util.Collection<android.util.Range<java.lang.Integer>>);
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void setUidFirewallRule(int, int, int);
+ method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_TEST_NETWORKS, android.Manifest.permission.NETWORK_STACK}) public void simulateDataStall(int, long, @NonNull android.net.Network, @NonNull android.os.PersistableBundle);
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void startCaptivePortalApp(@NonNull android.net.Network);
+ method public void systemReady();
+ field public static final String ACTION_CLEAR_DNS_CACHE = "android.net.action.CLEAR_DNS_CACHE";
+ field public static final String ACTION_PROMPT_LOST_VALIDATION = "android.net.action.PROMPT_LOST_VALIDATION";
+ field public static final String ACTION_PROMPT_PARTIAL_CONNECTIVITY = "android.net.action.PROMPT_PARTIAL_CONNECTIVITY";
+ field public static final String ACTION_PROMPT_UNVALIDATED = "android.net.action.PROMPT_UNVALIDATED";
+ field public static final int BLOCKED_METERED_REASON_ADMIN_DISABLED = 262144; // 0x40000
+ field public static final int BLOCKED_METERED_REASON_DATA_SAVER = 65536; // 0x10000
+ field public static final int BLOCKED_METERED_REASON_MASK = -65536; // 0xffff0000
+ field public static final int BLOCKED_METERED_REASON_USER_RESTRICTED = 131072; // 0x20000
+ field public static final int BLOCKED_REASON_APP_STANDBY = 4; // 0x4
+ field public static final int BLOCKED_REASON_BATTERY_SAVER = 1; // 0x1
+ field public static final int BLOCKED_REASON_DOZE = 2; // 0x2
+ field public static final int BLOCKED_REASON_LOCKDOWN_VPN = 16; // 0x10
+ field public static final int BLOCKED_REASON_LOW_POWER_STANDBY = 32; // 0x20
+ field public static final int BLOCKED_REASON_NONE = 0; // 0x0
+ field public static final int BLOCKED_REASON_RESTRICTED_MODE = 8; // 0x8
+ field public static final int FIREWALL_CHAIN_DOZABLE = 1; // 0x1
+ field public static final int FIREWALL_CHAIN_LOW_POWER_STANDBY = 5; // 0x5
+ field public static final int FIREWALL_CHAIN_POWERSAVE = 3; // 0x3
+ field public static final int FIREWALL_CHAIN_RESTRICTED = 4; // 0x4
+ field public static final int FIREWALL_CHAIN_STANDBY = 2; // 0x2
+ field public static final int FIREWALL_RULE_ALLOW = 1; // 0x1
+ field public static final int FIREWALL_RULE_DEFAULT = 0; // 0x0
+ field public static final int FIREWALL_RULE_DENY = 2; // 0x2
+ field public static final int PROFILE_NETWORK_PREFERENCE_DEFAULT = 0; // 0x0
+ field public static final int PROFILE_NETWORK_PREFERENCE_ENTERPRISE = 1; // 0x1
+ field public static final int PROFILE_NETWORK_PREFERENCE_ENTERPRISE_NO_FALLBACK = 2; // 0x2
+ }
+
+ public static class ConnectivityManager.NetworkCallback {
+ method public void onBlockedStatusChanged(@NonNull android.net.Network, int);
+ }
+
+ public class ConnectivitySettingsManager {
+ method public static void clearGlobalProxy(@NonNull android.content.Context);
+ method @Nullable public static String getCaptivePortalHttpUrl(@NonNull android.content.Context);
+ method public static int getCaptivePortalMode(@NonNull android.content.Context, int);
+ method @NonNull public static java.time.Duration getConnectivityKeepPendingIntentDuration(@NonNull android.content.Context, @NonNull java.time.Duration);
+ method @NonNull public static android.util.Range<java.lang.Integer> getDnsResolverSampleRanges(@NonNull android.content.Context);
+ method @NonNull public static java.time.Duration getDnsResolverSampleValidityDuration(@NonNull android.content.Context, @NonNull java.time.Duration);
+ method public static int getDnsResolverSuccessThresholdPercent(@NonNull android.content.Context, int);
+ method @Nullable public static android.net.ProxyInfo getGlobalProxy(@NonNull android.content.Context);
+ method public static long getIngressRateLimitInBytesPerSecond(@NonNull android.content.Context);
+ method @NonNull public static java.time.Duration getMobileDataActivityTimeout(@NonNull android.content.Context, @NonNull java.time.Duration);
+ method public static boolean getMobileDataAlwaysOn(@NonNull android.content.Context, boolean);
+ method @NonNull public static java.util.Set<java.lang.Integer> getMobileDataPreferredUids(@NonNull android.content.Context);
+ method public static int getNetworkAvoidBadWifi(@NonNull android.content.Context);
+ method @Nullable public static String getNetworkMeteredMultipathPreference(@NonNull android.content.Context);
+ method public static int getNetworkSwitchNotificationMaximumDailyCount(@NonNull android.content.Context, int);
+ method @NonNull public static java.time.Duration getNetworkSwitchNotificationRateDuration(@NonNull android.content.Context, @NonNull java.time.Duration);
+ method @NonNull public static String getPrivateDnsDefaultMode(@NonNull android.content.Context);
+ method @Nullable public static String getPrivateDnsHostname(@NonNull android.content.Context);
+ method public static int getPrivateDnsMode(@NonNull android.content.Context);
+ method @NonNull public static java.util.Set<java.lang.Integer> getUidsAllowedOnRestrictedNetworks(@NonNull android.content.Context);
+ method public static boolean getWifiAlwaysRequested(@NonNull android.content.Context, boolean);
+ method @NonNull public static java.time.Duration getWifiDataActivityTimeout(@NonNull android.content.Context, @NonNull java.time.Duration);
+ method public static void setCaptivePortalHttpUrl(@NonNull android.content.Context, @Nullable String);
+ method public static void setCaptivePortalMode(@NonNull android.content.Context, int);
+ method public static void setConnectivityKeepPendingIntentDuration(@NonNull android.content.Context, @NonNull java.time.Duration);
+ method public static void setDnsResolverSampleRanges(@NonNull android.content.Context, @NonNull android.util.Range<java.lang.Integer>);
+ method public static void setDnsResolverSampleValidityDuration(@NonNull android.content.Context, @NonNull java.time.Duration);
+ method public static void setDnsResolverSuccessThresholdPercent(@NonNull android.content.Context, @IntRange(from=0, to=100) int);
+ method public static void setGlobalProxy(@NonNull android.content.Context, @NonNull android.net.ProxyInfo);
+ method public static void setIngressRateLimitInBytesPerSecond(@NonNull android.content.Context, @IntRange(from=-1L, to=4294967295L) long);
+ method public static void setMobileDataActivityTimeout(@NonNull android.content.Context, @NonNull java.time.Duration);
+ method public static void setMobileDataAlwaysOn(@NonNull android.content.Context, boolean);
+ method public static void setMobileDataPreferredUids(@NonNull android.content.Context, @NonNull java.util.Set<java.lang.Integer>);
+ method public static void setNetworkAvoidBadWifi(@NonNull android.content.Context, int);
+ method public static void setNetworkMeteredMultipathPreference(@NonNull android.content.Context, @NonNull String);
+ method public static void setNetworkSwitchNotificationMaximumDailyCount(@NonNull android.content.Context, @IntRange(from=0) int);
+ method public static void setNetworkSwitchNotificationRateDuration(@NonNull android.content.Context, @NonNull java.time.Duration);
+ method public static void setPrivateDnsDefaultMode(@NonNull android.content.Context, @NonNull int);
+ method public static void setPrivateDnsHostname(@NonNull android.content.Context, @Nullable String);
+ method public static void setPrivateDnsMode(@NonNull android.content.Context, int);
+ method public static void setUidsAllowedOnRestrictedNetworks(@NonNull android.content.Context, @NonNull java.util.Set<java.lang.Integer>);
+ method public static void setWifiAlwaysRequested(@NonNull android.content.Context, boolean);
+ method public static void setWifiDataActivityTimeout(@NonNull android.content.Context, @NonNull java.time.Duration);
+ field public static final int CAPTIVE_PORTAL_MODE_AVOID = 2; // 0x2
+ field public static final int CAPTIVE_PORTAL_MODE_IGNORE = 0; // 0x0
+ field public static final int CAPTIVE_PORTAL_MODE_PROMPT = 1; // 0x1
+ field public static final int NETWORK_AVOID_BAD_WIFI_AVOID = 2; // 0x2
+ field public static final int NETWORK_AVOID_BAD_WIFI_IGNORE = 0; // 0x0
+ field public static final int NETWORK_AVOID_BAD_WIFI_PROMPT = 1; // 0x1
+ field public static final int PRIVATE_DNS_MODE_OFF = 1; // 0x1
+ field public static final int PRIVATE_DNS_MODE_OPPORTUNISTIC = 2; // 0x2
+ field public static final int PRIVATE_DNS_MODE_PROVIDER_HOSTNAME = 3; // 0x3
+ }
+
+ public final class DhcpOption implements android.os.Parcelable {
+ ctor public DhcpOption(byte, @Nullable byte[]);
+ method public int describeContents();
+ method public byte getType();
+ method @Nullable public byte[] getValue();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.DhcpOption> CREATOR;
+ }
+
+ public final class NetworkAgentConfig implements android.os.Parcelable {
+ method @Nullable public String getSubscriberId();
+ method public boolean isBypassableVpn();
+ method public boolean isVpnValidationRequired();
+ }
+
+ public static final class NetworkAgentConfig.Builder {
+ method @NonNull public android.net.NetworkAgentConfig.Builder setBypassableVpn(boolean);
+ method @NonNull public android.net.NetworkAgentConfig.Builder setLocalRoutesExcludedForVpn(boolean);
+ method @NonNull public android.net.NetworkAgentConfig.Builder setSubscriberId(@Nullable String);
+ method @NonNull public android.net.NetworkAgentConfig.Builder setVpnRequiresValidation(boolean);
+ }
+
+ public final class NetworkCapabilities implements android.os.Parcelable {
+ method @NonNull @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY) public java.util.Set<java.lang.Integer> getAllowedUids();
+ method @Nullable public java.util.Set<android.util.Range<java.lang.Integer>> getUids();
+ method public boolean hasForbiddenCapability(int);
+ field public static final long REDACT_ALL = -1L; // 0xffffffffffffffffL
+ field public static final long REDACT_FOR_ACCESS_FINE_LOCATION = 1L; // 0x1L
+ field public static final long REDACT_FOR_LOCAL_MAC_ADDRESS = 2L; // 0x2L
+ field public static final long REDACT_FOR_NETWORK_SETTINGS = 4L; // 0x4L
+ field public static final long REDACT_NONE = 0L; // 0x0L
+ field public static final int TRANSPORT_TEST = 7; // 0x7
+ }
+
+ public static final class NetworkCapabilities.Builder {
+ method @NonNull @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY) public android.net.NetworkCapabilities.Builder setAllowedUids(@NonNull java.util.Set<java.lang.Integer>);
+ method @NonNull public android.net.NetworkCapabilities.Builder setUids(@Nullable java.util.Set<android.util.Range<java.lang.Integer>>);
+ }
+
+ public class NetworkRequest implements android.os.Parcelable {
+ method @NonNull public int[] getEnterpriseIds();
+ method @NonNull public int[] getForbiddenCapabilities();
+ method public boolean hasEnterpriseId(int);
+ method public boolean hasForbiddenCapability(int);
+ }
+
+ public static class NetworkRequest.Builder {
+ method @NonNull public android.net.NetworkRequest.Builder addForbiddenCapability(int);
+ method @NonNull public android.net.NetworkRequest.Builder removeForbiddenCapability(int);
+ method @NonNull public android.net.NetworkRequest.Builder setUids(@Nullable java.util.Set<android.util.Range<java.lang.Integer>>);
+ }
+
+ public final class ProfileNetworkPreference implements android.os.Parcelable {
+ method public int describeContents();
+ method @NonNull public int[] getExcludedUids();
+ method @NonNull public int[] getIncludedUids();
+ method public int getPreference();
+ method public int getPreferenceEnterpriseId();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.ProfileNetworkPreference> CREATOR;
+ }
+
+ public static final class ProfileNetworkPreference.Builder {
+ ctor public ProfileNetworkPreference.Builder();
+ method @NonNull public android.net.ProfileNetworkPreference build();
+ method @NonNull public android.net.ProfileNetworkPreference.Builder setExcludedUids(@NonNull int[]);
+ method @NonNull public android.net.ProfileNetworkPreference.Builder setIncludedUids(@NonNull int[]);
+ method @NonNull public android.net.ProfileNetworkPreference.Builder setPreference(int);
+ method @NonNull public android.net.ProfileNetworkPreference.Builder setPreferenceEnterpriseId(int);
+ }
+
+ public final class TestNetworkInterface implements android.os.Parcelable {
+ ctor public TestNetworkInterface(@NonNull android.os.ParcelFileDescriptor, @NonNull String);
+ method public int describeContents();
+ method @NonNull public android.os.ParcelFileDescriptor getFileDescriptor();
+ method @NonNull public String getInterfaceName();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.TestNetworkInterface> CREATOR;
+ }
+
+ public class TestNetworkManager {
+ method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_TEST_NETWORKS) public android.net.TestNetworkInterface createTapInterface();
+ method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_TEST_NETWORKS) public android.net.TestNetworkInterface createTunInterface(@NonNull java.util.Collection<android.net.LinkAddress>);
+ method @RequiresPermission(android.Manifest.permission.MANAGE_TEST_NETWORKS) public void setupTestNetwork(@NonNull String, @NonNull android.os.IBinder);
+ method @RequiresPermission(android.Manifest.permission.MANAGE_TEST_NETWORKS) public void teardownTestNetwork(@NonNull android.net.Network);
+ field public static final String TEST_TAP_PREFIX = "testtap";
+ }
+
+ public final class TestNetworkSpecifier extends android.net.NetworkSpecifier implements android.os.Parcelable {
+ ctor public TestNetworkSpecifier(@NonNull String);
+ method public int describeContents();
+ method @Nullable public String getInterfaceName();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.TestNetworkSpecifier> CREATOR;
+ }
+
+ public interface TransportInfo {
+ method public default long getApplicableRedactions();
+ method @NonNull public default android.net.TransportInfo makeCopy(long);
+ }
+
+ public final class VpnTransportInfo implements android.os.Parcelable android.net.TransportInfo {
+ ctor public VpnTransportInfo(int, @Nullable String);
+ method public int describeContents();
+ method @Nullable public String getSessionId();
+ method public int getType();
+ method @NonNull public android.net.VpnTransportInfo makeCopy(long);
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.VpnTransportInfo> CREATOR;
+ }
+
+}
+
diff --git a/extensions/3/module-lib/api/framework-media-removed.txt b/extensions/3/module-lib/api/framework-media-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/module-lib/api/framework-media-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/module-lib/api/framework-media.txt b/extensions/3/module-lib/api/framework-media.txt
new file mode 100644
index 000000000..7317f148b
--- /dev/null
+++ b/extensions/3/module-lib/api/framework-media.txt
@@ -0,0 +1,31 @@
+// Signature format: 2.0
+package android.media {
+
+ public class MediaCommunicationManager {
+ method public void dispatchMediaKeyEvent(@NonNull android.view.KeyEvent, boolean);
+ method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void registerSessionCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.MediaCommunicationManager.SessionCallback);
+ method public void unregisterSessionCallback(@NonNull android.media.MediaCommunicationManager.SessionCallback);
+ }
+
+ public static interface MediaCommunicationManager.SessionCallback {
+ method public default void onSession2TokenCreated(@NonNull android.media.Session2Token);
+ method public default void onSession2TokensChanged(@NonNull java.util.List<android.media.Session2Token>);
+ }
+
+ public class MediaFrameworkInitializer {
+ method public static void registerServiceWrappers();
+ method public static void setMediaServiceManager(@NonNull android.media.MediaServiceManager);
+ }
+
+ @Deprecated public final class MediaParceledListSlice<T extends android.os.Parcelable> implements android.os.Parcelable {
+ ctor @Deprecated public MediaParceledListSlice(@NonNull java.util.List<T>);
+ method @Deprecated public int describeContents();
+ method @Deprecated @NonNull public static <T extends android.os.Parcelable> android.media.MediaParceledListSlice<T> emptyList();
+ method @Deprecated public java.util.List<T> getList();
+ method @Deprecated public void setInlineCountLimit(int);
+ method @Deprecated public void writeToParcel(android.os.Parcel, int);
+ field @Deprecated @NonNull public static final android.os.Parcelable.ClassLoaderCreator<android.media.MediaParceledListSlice> CREATOR;
+ }
+
+}
+
diff --git a/extensions/3/module-lib/api/framework-mediaprovider-removed.txt b/extensions/3/module-lib/api/framework-mediaprovider-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/module-lib/api/framework-mediaprovider-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/module-lib/api/framework-mediaprovider.txt b/extensions/3/module-lib/api/framework-mediaprovider.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/module-lib/api/framework-mediaprovider.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/module-lib/api/framework-ondevicepersonalization-removed.txt b/extensions/3/module-lib/api/framework-ondevicepersonalization-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/module-lib/api/framework-ondevicepersonalization-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/module-lib/api/framework-ondevicepersonalization.txt b/extensions/3/module-lib/api/framework-ondevicepersonalization.txt
new file mode 100644
index 000000000..f4da3d0da
--- /dev/null
+++ b/extensions/3/module-lib/api/framework-ondevicepersonalization.txt
@@ -0,0 +1,9 @@
+// Signature format: 2.0
+package android.ondevicepersonalization {
+
+ public class OnDevicePersonalizationFrameworkInitializer {
+ method public static void registerServiceWrappers();
+ }
+
+}
+
diff --git a/extensions/3/module-lib/api/framework-permission-removed.txt b/extensions/3/module-lib/api/framework-permission-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/module-lib/api/framework-permission-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/module-lib/api/framework-permission-s-removed.txt b/extensions/3/module-lib/api/framework-permission-s-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/module-lib/api/framework-permission-s-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/module-lib/api/framework-permission-s.txt b/extensions/3/module-lib/api/framework-permission-s.txt
new file mode 100644
index 000000000..80f1cde45
--- /dev/null
+++ b/extensions/3/module-lib/api/framework-permission-s.txt
@@ -0,0 +1,23 @@
+// Signature format: 2.0
+package android.app.role {
+
+ public class RoleFrameworkInitializer {
+ method public static void registerServiceWrappers();
+ }
+
+ public final class RoleManager {
+ method @Nullable public String getBrowserRoleHolder(int);
+ method @Nullable public String getSmsRoleHolder(int);
+ method @Nullable @RequiresPermission(android.Manifest.permission.SET_PREFERRED_APPLICATIONS) public boolean setBrowserRoleHolder(@Nullable String, int);
+ }
+
+}
+
+package android.safetycenter {
+
+ public final class SafetyCenterFrameworkInitializer {
+ method public static void registerServiceWrappers();
+ }
+
+}
+
diff --git a/extensions/3/module-lib/api/framework-permission.txt b/extensions/3/module-lib/api/framework-permission.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/module-lib/api/framework-permission.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/module-lib/api/framework-scheduling-removed.txt b/extensions/3/module-lib/api/framework-scheduling-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/module-lib/api/framework-scheduling-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/module-lib/api/framework-scheduling.txt b/extensions/3/module-lib/api/framework-scheduling.txt
new file mode 100644
index 000000000..9356eb741
--- /dev/null
+++ b/extensions/3/module-lib/api/framework-scheduling.txt
@@ -0,0 +1,9 @@
+// Signature format: 2.0
+package android.scheduling {
+
+ public class SchedulingFrameworkInitializer {
+ method public static void registerServiceWrappers();
+ }
+
+}
+
diff --git a/extensions/3/module-lib/api/framework-sdkextensions-removed.txt b/extensions/3/module-lib/api/framework-sdkextensions-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/module-lib/api/framework-sdkextensions-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/module-lib/api/framework-sdkextensions.txt b/extensions/3/module-lib/api/framework-sdkextensions.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/module-lib/api/framework-sdkextensions.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/module-lib/api/framework-sdksandbox-removed.txt b/extensions/3/module-lib/api/framework-sdksandbox-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/module-lib/api/framework-sdksandbox-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/module-lib/api/framework-sdksandbox.txt b/extensions/3/module-lib/api/framework-sdksandbox.txt
new file mode 100644
index 000000000..c4fcb762e
--- /dev/null
+++ b/extensions/3/module-lib/api/framework-sdksandbox.txt
@@ -0,0 +1,9 @@
+// Signature format: 2.0
+package android.app.sdksandbox {
+
+ public class SdkSandboxManagerFrameworkInitializer {
+ method public static void registerServiceWrappers();
+ }
+
+}
+
diff --git a/extensions/3/module-lib/api/framework-statsd-removed.txt b/extensions/3/module-lib/api/framework-statsd-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/module-lib/api/framework-statsd-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/module-lib/api/framework-statsd.txt b/extensions/3/module-lib/api/framework-statsd.txt
new file mode 100644
index 000000000..8b6e21700
--- /dev/null
+++ b/extensions/3/module-lib/api/framework-statsd.txt
@@ -0,0 +1,10 @@
+// Signature format: 2.0
+package android.os {
+
+ public class StatsFrameworkInitializer {
+ method public static void registerServiceWrappers();
+ method public static void setStatsServiceManager(@NonNull android.os.StatsServiceManager);
+ }
+
+}
+
diff --git a/extensions/3/module-lib/api/framework-tethering-removed.txt b/extensions/3/module-lib/api/framework-tethering-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/module-lib/api/framework-tethering-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/module-lib/api/framework-tethering.txt b/extensions/3/module-lib/api/framework-tethering.txt
new file mode 100644
index 000000000..460c21621
--- /dev/null
+++ b/extensions/3/module-lib/api/framework-tethering.txt
@@ -0,0 +1,50 @@
+// Signature format: 2.0
+package android.net {
+
+ public final class TetheringConstants {
+ field public static final String EXTRA_ADD_TETHER_TYPE = "extraAddTetherType";
+ field public static final String EXTRA_PROVISION_CALLBACK = "extraProvisionCallback";
+ field public static final String EXTRA_REM_TETHER_TYPE = "extraRemTetherType";
+ field public static final String EXTRA_RUN_PROVISION = "extraRunProvision";
+ field public static final String EXTRA_SET_ALARM = "extraSetAlarm";
+ }
+
+ public class TetheringManager {
+ ctor public TetheringManager(@NonNull android.content.Context, @NonNull java.util.function.Supplier<android.os.IBinder>);
+ method public int getLastTetherError(@NonNull String);
+ method @NonNull public String[] getTetherableBluetoothRegexs();
+ method @NonNull public String[] getTetherableIfaces();
+ method @NonNull public String[] getTetherableUsbRegexs();
+ method @NonNull public String[] getTetherableWifiRegexs();
+ method @NonNull public String[] getTetheredIfaces();
+ method @NonNull public String[] getTetheringErroredIfaces();
+ method public boolean isTetheringSupported();
+ method public boolean isTetheringSupported(@NonNull String);
+ method public void requestLatestTetheringEntitlementResult(int, @NonNull android.os.ResultReceiver, boolean);
+ method @Deprecated public int setUsbTethering(boolean);
+ method @RequiresPermission(anyOf={android.Manifest.permission.TETHER_PRIVILEGED, android.Manifest.permission.WRITE_SETTINGS}) public void startTethering(int, @NonNull java.util.concurrent.Executor, @NonNull android.net.TetheringManager.StartTetheringCallback);
+ method @Deprecated public int tether(@NonNull String);
+ method @Deprecated public int untether(@NonNull String);
+ }
+
+ public static interface TetheringManager.TetheredInterfaceCallback {
+ method public void onAvailable(@NonNull String);
+ method public void onUnavailable();
+ }
+
+ public static interface TetheringManager.TetheredInterfaceRequest {
+ method public void release();
+ }
+
+ public static interface TetheringManager.TetheringEventCallback {
+ method @Deprecated public default void onTetherableInterfaceRegexpsChanged(@NonNull android.net.TetheringManager.TetheringInterfaceRegexps);
+ }
+
+ @Deprecated public static class TetheringManager.TetheringInterfaceRegexps {
+ method @Deprecated @NonNull public java.util.List<java.lang.String> getTetherableBluetoothRegexs();
+ method @Deprecated @NonNull public java.util.List<java.lang.String> getTetherableUsbRegexs();
+ method @Deprecated @NonNull public java.util.List<java.lang.String> getTetherableWifiRegexs();
+ }
+
+}
+
diff --git a/extensions/3/module-lib/api/framework-uwb-removed.txt b/extensions/3/module-lib/api/framework-uwb-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/module-lib/api/framework-uwb-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/module-lib/api/framework-uwb.txt b/extensions/3/module-lib/api/framework-uwb.txt
new file mode 100644
index 000000000..0f0b03154
--- /dev/null
+++ b/extensions/3/module-lib/api/framework-uwb.txt
@@ -0,0 +1,9 @@
+// Signature format: 2.0
+package android.uwb {
+
+ public class UwbFrameworkInitializer {
+ method public static void registerServiceWrappers();
+ }
+
+}
+
diff --git a/extensions/3/module-lib/api/framework-wifi-removed.txt b/extensions/3/module-lib/api/framework-wifi-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/module-lib/api/framework-wifi-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/module-lib/api/framework-wifi.txt b/extensions/3/module-lib/api/framework-wifi.txt
new file mode 100644
index 000000000..7027f2556
--- /dev/null
+++ b/extensions/3/module-lib/api/framework-wifi.txt
@@ -0,0 +1,10 @@
+// Signature format: 2.0
+package android.net.wifi {
+
+ public class WifiManager {
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.OVERRIDE_WIFI_CONFIG}) public void addCustomDhcpOptions(@NonNull android.net.wifi.WifiSsid, @NonNull byte[], @NonNull java.util.List<android.net.DhcpOption>);
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.OVERRIDE_WIFI_CONFIG}) public void removeCustomDhcpOptions(@NonNull android.net.wifi.WifiSsid, @NonNull byte[]);
+ }
+
+}
+
diff --git a/extensions/3/public/api/android.net.ipsec.ike-removed.txt b/extensions/3/public/api/android.net.ipsec.ike-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/public/api/android.net.ipsec.ike-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/public/api/android.net.ipsec.ike.txt b/extensions/3/public/api/android.net.ipsec.ike.txt
new file mode 100644
index 000000000..21afce48e
--- /dev/null
+++ b/extensions/3/public/api/android.net.ipsec.ike.txt
@@ -0,0 +1,458 @@
+// Signature format: 2.0
+package android.net.eap {
+
+ public final class EapAkaInfo extends android.net.eap.EapInfo {
+ method @Nullable public byte[] getReauthId();
+ }
+
+ public static final class EapAkaInfo.Builder {
+ ctor public EapAkaInfo.Builder();
+ method @NonNull public android.net.eap.EapAkaInfo build();
+ method @NonNull public android.net.eap.EapAkaInfo.Builder setReauthId(@NonNull byte[]);
+ }
+
+ public abstract class EapInfo {
+ method public final int getEapMethodType();
+ }
+
+ public final class EapSessionConfig {
+ method @Nullable public android.net.eap.EapSessionConfig.EapAkaConfig getEapAkaConfig();
+ method @Nullable public android.net.eap.EapSessionConfig.EapAkaPrimeConfig getEapAkaPrimeConfig();
+ method @NonNull public byte[] getEapIdentity();
+ method @Nullable public android.net.eap.EapSessionConfig.EapMsChapV2Config getEapMsChapV2Config();
+ method @Nullable public android.net.eap.EapSessionConfig.EapSimConfig getEapSimConfig();
+ method @Nullable public android.net.eap.EapSessionConfig.EapTtlsConfig getEapTtlsConfig();
+ }
+
+ public static final class EapSessionConfig.Builder {
+ ctor public EapSessionConfig.Builder();
+ method @NonNull public android.net.eap.EapSessionConfig build();
+ method @NonNull public android.net.eap.EapSessionConfig.Builder setEapAkaConfig(int, int);
+ method @NonNull public android.net.eap.EapSessionConfig.Builder setEapAkaConfig(int, int, @NonNull android.net.eap.EapSessionConfig.EapAkaOption);
+ method @NonNull public android.net.eap.EapSessionConfig.Builder setEapAkaPrimeConfig(int, int, @NonNull String, boolean);
+ method @NonNull public android.net.eap.EapSessionConfig.Builder setEapIdentity(@NonNull byte[]);
+ method @NonNull public android.net.eap.EapSessionConfig.Builder setEapMsChapV2Config(@NonNull String, @NonNull String);
+ method @NonNull public android.net.eap.EapSessionConfig.Builder setEapSimConfig(int, int);
+ method @NonNull public android.net.eap.EapSessionConfig.Builder setEapTtlsConfig(@Nullable java.security.cert.X509Certificate, @NonNull android.net.eap.EapSessionConfig);
+ }
+
+ public static class EapSessionConfig.EapAkaConfig extends android.net.eap.EapSessionConfig.EapMethodConfig {
+ method public int getAppType();
+ method @NonNull public android.net.eap.EapSessionConfig.EapAkaOption getEapAkaOption();
+ method public int getSubId();
+ }
+
+ public static final class EapSessionConfig.EapAkaOption {
+ method @Nullable public byte[] getReauthId();
+ }
+
+ public static final class EapSessionConfig.EapAkaOption.Builder {
+ ctor public EapSessionConfig.EapAkaOption.Builder();
+ method @NonNull public android.net.eap.EapSessionConfig.EapAkaOption build();
+ method @NonNull public android.net.eap.EapSessionConfig.EapAkaOption.Builder setReauthId(@NonNull byte[]);
+ }
+
+ public static class EapSessionConfig.EapAkaPrimeConfig extends android.net.eap.EapSessionConfig.EapAkaConfig {
+ method public boolean allowsMismatchedNetworkNames();
+ method @NonNull public String getNetworkName();
+ }
+
+ public abstract static class EapSessionConfig.EapMethodConfig {
+ method public int getMethodType();
+ field public static final int EAP_TYPE_AKA = 23; // 0x17
+ field public static final int EAP_TYPE_AKA_PRIME = 50; // 0x32
+ field public static final int EAP_TYPE_MSCHAP_V2 = 26; // 0x1a
+ field public static final int EAP_TYPE_SIM = 18; // 0x12
+ field public static final int EAP_TYPE_TTLS = 21; // 0x15
+ }
+
+ public static class EapSessionConfig.EapMsChapV2Config extends android.net.eap.EapSessionConfig.EapMethodConfig {
+ method @NonNull public String getPassword();
+ method @NonNull public String getUsername();
+ }
+
+ public static class EapSessionConfig.EapSimConfig extends android.net.eap.EapSessionConfig.EapMethodConfig {
+ method public int getAppType();
+ method public int getSubId();
+ }
+
+ public static class EapSessionConfig.EapTtlsConfig extends android.net.eap.EapSessionConfig.EapMethodConfig {
+ method @NonNull public android.net.eap.EapSessionConfig getInnerEapSessionConfig();
+ method @Nullable public java.security.cert.X509Certificate getServerCaCert();
+ }
+
+}
+
+package android.net.ipsec.ike {
+
+ public final class ChildSaProposal extends android.net.ipsec.ike.SaProposal {
+ method @NonNull public static java.util.Set<java.lang.Integer> getSupportedEncryptionAlgorithms();
+ method @NonNull public static java.util.Set<java.lang.Integer> getSupportedIntegrityAlgorithms();
+ }
+
+ public static final class ChildSaProposal.Builder {
+ ctor public ChildSaProposal.Builder();
+ method @NonNull public android.net.ipsec.ike.ChildSaProposal.Builder addDhGroup(int);
+ method @NonNull public android.net.ipsec.ike.ChildSaProposal.Builder addEncryptionAlgorithm(int, int);
+ method @NonNull public android.net.ipsec.ike.ChildSaProposal.Builder addIntegrityAlgorithm(int);
+ method @NonNull public android.net.ipsec.ike.ChildSaProposal build();
+ }
+
+ public interface ChildSessionCallback {
+ method public void onClosed();
+ method public default void onClosedWithException(@NonNull android.net.ipsec.ike.exceptions.IkeException);
+ method public void onIpSecTransformCreated(@NonNull android.net.IpSecTransform, int);
+ method public void onIpSecTransformDeleted(@NonNull android.net.IpSecTransform, int);
+ method public void onOpened(@NonNull android.net.ipsec.ike.ChildSessionConfiguration);
+ }
+
+ public final class ChildSessionConfiguration {
+ method @NonNull public java.util.List<android.net.ipsec.ike.IkeTrafficSelector> getInboundTrafficSelectors();
+ method @NonNull public java.util.List<android.net.ipsec.ike.IkeTrafficSelector> getOutboundTrafficSelectors();
+ }
+
+ public static final class ChildSessionConfiguration.Builder {
+ ctor public ChildSessionConfiguration.Builder(@NonNull java.util.List<android.net.ipsec.ike.IkeTrafficSelector>, @NonNull java.util.List<android.net.ipsec.ike.IkeTrafficSelector>);
+ method @NonNull public android.net.ipsec.ike.ChildSessionConfiguration build();
+ }
+
+ public abstract class ChildSessionParams {
+ method @NonNull public java.util.List<android.net.ipsec.ike.ChildSaProposal> getChildSaProposals();
+ method @IntRange(from=0x12c, to=0x3840) public int getHardLifetimeSeconds();
+ method @NonNull public java.util.List<android.net.ipsec.ike.IkeTrafficSelector> getInboundTrafficSelectors();
+ method @NonNull public java.util.List<android.net.ipsec.ike.IkeTrafficSelector> getOutboundTrafficSelectors();
+ method @IntRange(from=0x78, to=0x3840) public int getSoftLifetimeSeconds();
+ }
+
+ public final class IkeDerAsn1DnIdentification extends android.net.ipsec.ike.IkeIdentification {
+ ctor public IkeDerAsn1DnIdentification(@NonNull javax.security.auth.x500.X500Principal);
+ field @NonNull public final javax.security.auth.x500.X500Principal derAsn1Dn;
+ }
+
+ public class IkeFqdnIdentification extends android.net.ipsec.ike.IkeIdentification {
+ ctor public IkeFqdnIdentification(@NonNull String);
+ field @NonNull public final String fqdn;
+ }
+
+ public abstract class IkeIdentification {
+ }
+
+ public final class IkeIpv4AddrIdentification extends android.net.ipsec.ike.IkeIdentification {
+ ctor public IkeIpv4AddrIdentification(@NonNull java.net.Inet4Address);
+ field @NonNull public final java.net.Inet4Address ipv4Address;
+ }
+
+ public class IkeIpv6AddrIdentification extends android.net.ipsec.ike.IkeIdentification {
+ ctor public IkeIpv6AddrIdentification(@NonNull java.net.Inet6Address);
+ field @NonNull public final java.net.Inet6Address ipv6Address;
+ }
+
+ public final class IkeKeyIdIdentification extends android.net.ipsec.ike.IkeIdentification {
+ ctor public IkeKeyIdIdentification(@NonNull byte[]);
+ field @NonNull public final byte[] keyId;
+ }
+
+ public final class IkeRfc822AddrIdentification extends android.net.ipsec.ike.IkeIdentification {
+ ctor public IkeRfc822AddrIdentification(@NonNull String);
+ field @NonNull public final String rfc822Name;
+ }
+
+ public final class IkeSaProposal extends android.net.ipsec.ike.SaProposal {
+ method @NonNull public java.util.List<java.lang.Integer> getPseudorandomFunctions();
+ method @NonNull public static java.util.Set<java.lang.Integer> getSupportedEncryptionAlgorithms();
+ method @NonNull public static java.util.Set<java.lang.Integer> getSupportedIntegrityAlgorithms();
+ method @NonNull public static java.util.Set<java.lang.Integer> getSupportedPseudorandomFunctions();
+ }
+
+ public static final class IkeSaProposal.Builder {
+ ctor public IkeSaProposal.Builder();
+ method @NonNull public android.net.ipsec.ike.IkeSaProposal.Builder addDhGroup(int);
+ method @NonNull public android.net.ipsec.ike.IkeSaProposal.Builder addEncryptionAlgorithm(int, int);
+ method @NonNull public android.net.ipsec.ike.IkeSaProposal.Builder addIntegrityAlgorithm(int);
+ method @NonNull public android.net.ipsec.ike.IkeSaProposal.Builder addPseudorandomFunction(int);
+ method @NonNull public android.net.ipsec.ike.IkeSaProposal build();
+ }
+
+ public final class IkeSession implements java.lang.AutoCloseable {
+ ctor public IkeSession(@NonNull android.content.Context, @NonNull android.net.ipsec.ike.IkeSessionParams, @NonNull android.net.ipsec.ike.ChildSessionParams, @NonNull java.util.concurrent.Executor, @NonNull android.net.ipsec.ike.IkeSessionCallback, @NonNull android.net.ipsec.ike.ChildSessionCallback);
+ method public void close();
+ method public void closeChildSession(@NonNull android.net.ipsec.ike.ChildSessionCallback);
+ method public void finalize();
+ method public void kill();
+ method public void openChildSession(@NonNull android.net.ipsec.ike.ChildSessionParams, @NonNull android.net.ipsec.ike.ChildSessionCallback);
+ }
+
+ public interface IkeSessionCallback {
+ method public void onClosed();
+ method public default void onClosedWithException(@NonNull android.net.ipsec.ike.exceptions.IkeException);
+ method public default void onError(@NonNull android.net.ipsec.ike.exceptions.IkeException);
+ method public void onOpened(@NonNull android.net.ipsec.ike.IkeSessionConfiguration);
+ }
+
+ public final class IkeSessionConfiguration {
+ method @Nullable public android.net.eap.EapInfo getEapInfo();
+ method @NonNull public android.net.ipsec.ike.IkeSessionConnectionInfo getIkeSessionConnectionInfo();
+ method @NonNull public String getRemoteApplicationVersion();
+ method @NonNull public java.util.List<byte[]> getRemoteVendorIds();
+ method public boolean isIkeExtensionEnabled(int);
+ field public static final int EXTENSION_TYPE_FRAGMENTATION = 1; // 0x1
+ field public static final int EXTENSION_TYPE_MOBIKE = 2; // 0x2
+ }
+
+ public static final class IkeSessionConfiguration.Builder {
+ ctor public IkeSessionConfiguration.Builder(@NonNull android.net.ipsec.ike.IkeSessionConnectionInfo);
+ method @NonNull public android.net.ipsec.ike.IkeSessionConfiguration.Builder addIkeExtension(int);
+ method @NonNull public android.net.ipsec.ike.IkeSessionConfiguration.Builder addRemoteVendorId(@NonNull byte[]);
+ method @NonNull public android.net.ipsec.ike.IkeSessionConfiguration build();
+ method @NonNull public android.net.ipsec.ike.IkeSessionConfiguration.Builder clearIkeExtensions();
+ method @NonNull public android.net.ipsec.ike.IkeSessionConfiguration.Builder clearRemoteApplicationVersion();
+ method @NonNull public android.net.ipsec.ike.IkeSessionConfiguration.Builder clearRemoteVendorIds();
+ method @NonNull public android.net.ipsec.ike.IkeSessionConfiguration.Builder setEapInfo(@Nullable android.net.eap.EapInfo);
+ method @NonNull public android.net.ipsec.ike.IkeSessionConfiguration.Builder setRemoteApplicationVersion(@NonNull String);
+ }
+
+ public final class IkeSessionConnectionInfo {
+ ctor public IkeSessionConnectionInfo(@NonNull java.net.InetAddress, @NonNull java.net.InetAddress, @NonNull android.net.Network);
+ method @NonNull public java.net.InetAddress getLocalAddress();
+ method @NonNull public android.net.Network getNetwork();
+ method @NonNull public java.net.InetAddress getRemoteAddress();
+ }
+
+ public final class IkeSessionParams {
+ method @IntRange(from=0x14, to=0x708) public int getDpdDelaySeconds();
+ method @IntRange(from=0x12c, to=0x15180) public int getHardLifetimeSeconds();
+ method @NonNull public java.util.List<android.net.ipsec.ike.IkeSaProposal> getIkeSaProposals();
+ method @NonNull public android.net.ipsec.ike.IkeSessionParams.IkeAuthConfig getLocalAuthConfig();
+ method @NonNull public android.net.ipsec.ike.IkeIdentification getLocalIdentification();
+ method @IntRange(from=0xa, to=0xe10) public int getNattKeepAliveDelaySeconds();
+ method @Nullable public android.net.Network getNetwork();
+ method @NonNull public android.net.ipsec.ike.IkeSessionParams.IkeAuthConfig getRemoteAuthConfig();
+ method @NonNull public android.net.ipsec.ike.IkeIdentification getRemoteIdentification();
+ method @NonNull public int[] getRetransmissionTimeoutsMillis();
+ method @NonNull public String getServerHostname();
+ method @IntRange(from=0x78, to=0x15180) public int getSoftLifetimeSeconds();
+ method public boolean hasIkeOption(int);
+ field public static final int IKE_OPTION_ACCEPT_ANY_REMOTE_ID = 0; // 0x0
+ field public static final int IKE_OPTION_EAP_ONLY_AUTH = 1; // 0x1
+ field public static final int IKE_OPTION_FORCE_PORT_4500 = 3; // 0x3
+ field public static final int IKE_OPTION_INITIAL_CONTACT = 4; // 0x4
+ field public static final int IKE_OPTION_MOBIKE = 2; // 0x2
+ }
+
+ public static final class IkeSessionParams.Builder {
+ ctor public IkeSessionParams.Builder();
+ ctor public IkeSessionParams.Builder(@NonNull android.net.ipsec.ike.IkeSessionParams);
+ method @NonNull public android.net.ipsec.ike.IkeSessionParams.Builder addIkeOption(int);
+ method @NonNull public android.net.ipsec.ike.IkeSessionParams.Builder addIkeSaProposal(@NonNull android.net.ipsec.ike.IkeSaProposal);
+ method @NonNull public android.net.ipsec.ike.IkeSessionParams build();
+ method @NonNull public android.net.ipsec.ike.IkeSessionParams.Builder removeIkeOption(int);
+ method @NonNull public android.net.ipsec.ike.IkeSessionParams.Builder setAuthDigitalSignature(@Nullable java.security.cert.X509Certificate, @NonNull java.security.cert.X509Certificate, @NonNull java.security.PrivateKey);
+ method @NonNull public android.net.ipsec.ike.IkeSessionParams.Builder setAuthDigitalSignature(@Nullable java.security.cert.X509Certificate, @NonNull java.security.cert.X509Certificate, @NonNull java.util.List<java.security.cert.X509Certificate>, @NonNull java.security.PrivateKey);
+ method @NonNull public android.net.ipsec.ike.IkeSessionParams.Builder setAuthEap(@Nullable java.security.cert.X509Certificate, @NonNull android.net.eap.EapSessionConfig);
+ method @NonNull public android.net.ipsec.ike.IkeSessionParams.Builder setAuthPsk(@NonNull byte[]);
+ method @NonNull public android.net.ipsec.ike.IkeSessionParams.Builder setDpdDelaySeconds(@IntRange(from=0x14, to=0x708) int);
+ method @NonNull public android.net.ipsec.ike.IkeSessionParams.Builder setLifetimeSeconds(@IntRange(from=0x12c, to=0x15180) int, @IntRange(from=0x78, to=0x15180) int);
+ method @NonNull public android.net.ipsec.ike.IkeSessionParams.Builder setLocalIdentification(@NonNull android.net.ipsec.ike.IkeIdentification);
+ method @NonNull public android.net.ipsec.ike.IkeSessionParams.Builder setNattKeepAliveDelaySeconds(@IntRange(from=0xa, to=0xe10) int);
+ method @NonNull public android.net.ipsec.ike.IkeSessionParams.Builder setNetwork(@Nullable android.net.Network);
+ method @NonNull public android.net.ipsec.ike.IkeSessionParams.Builder setRemoteIdentification(@NonNull android.net.ipsec.ike.IkeIdentification);
+ method @NonNull public android.net.ipsec.ike.IkeSessionParams.Builder setRetransmissionTimeoutsMillis(@NonNull int[]);
+ method @NonNull public android.net.ipsec.ike.IkeSessionParams.Builder setServerHostname(@NonNull String);
+ }
+
+ public abstract static class IkeSessionParams.IkeAuthConfig {
+ }
+
+ public static class IkeSessionParams.IkeAuthDigitalSignLocalConfig extends android.net.ipsec.ike.IkeSessionParams.IkeAuthConfig {
+ method @NonNull public java.security.cert.X509Certificate getClientEndCertificate();
+ method @NonNull public java.util.List<java.security.cert.X509Certificate> getIntermediateCertificates();
+ method @NonNull public java.security.PrivateKey getPrivateKey();
+ }
+
+ public static class IkeSessionParams.IkeAuthDigitalSignRemoteConfig extends android.net.ipsec.ike.IkeSessionParams.IkeAuthConfig {
+ method @Nullable public java.security.cert.X509Certificate getRemoteCaCert();
+ }
+
+ public static class IkeSessionParams.IkeAuthEapConfig extends android.net.ipsec.ike.IkeSessionParams.IkeAuthConfig {
+ method @NonNull public android.net.eap.EapSessionConfig getEapConfig();
+ }
+
+ public static class IkeSessionParams.IkeAuthPskConfig extends android.net.ipsec.ike.IkeSessionParams.IkeAuthConfig {
+ method @NonNull public byte[] getPsk();
+ }
+
+ public final class IkeTrafficSelector {
+ ctor public IkeTrafficSelector(int, int, @NonNull java.net.InetAddress, @NonNull java.net.InetAddress);
+ field public final int endPort;
+ field @NonNull public final java.net.InetAddress endingAddress;
+ field public final int startPort;
+ field @NonNull public final java.net.InetAddress startingAddress;
+ }
+
+ public final class IkeTunnelConnectionParams {
+ ctor public IkeTunnelConnectionParams(@NonNull android.net.ipsec.ike.IkeSessionParams, @NonNull android.net.ipsec.ike.TunnelModeChildSessionParams);
+ method @NonNull public android.net.ipsec.ike.IkeSessionParams getIkeSessionParams();
+ method @NonNull public android.net.ipsec.ike.TunnelModeChildSessionParams getTunnelModeChildSessionParams();
+ }
+
+ public abstract class SaProposal {
+ method @NonNull public java.util.List<java.lang.Integer> getDhGroups();
+ method @NonNull public java.util.List<android.util.Pair<java.lang.Integer,java.lang.Integer>> getEncryptionAlgorithms();
+ method @NonNull public java.util.List<java.lang.Integer> getIntegrityAlgorithms();
+ method @NonNull public static java.util.Set<java.lang.Integer> getSupportedDhGroups();
+ field public static final int DH_GROUP_1024_BIT_MODP = 2; // 0x2
+ field public static final int DH_GROUP_1536_BIT_MODP = 5; // 0x5
+ field public static final int DH_GROUP_2048_BIT_MODP = 14; // 0xe
+ field public static final int DH_GROUP_3072_BIT_MODP = 15; // 0xf
+ field public static final int DH_GROUP_4096_BIT_MODP = 16; // 0x10
+ field public static final int DH_GROUP_CURVE_25519 = 31; // 0x1f
+ field public static final int DH_GROUP_NONE = 0; // 0x0
+ field public static final int ENCRYPTION_ALGORITHM_3DES = 3; // 0x3
+ field public static final int ENCRYPTION_ALGORITHM_AES_CBC = 12; // 0xc
+ field public static final int ENCRYPTION_ALGORITHM_AES_CTR = 13; // 0xd
+ field public static final int ENCRYPTION_ALGORITHM_AES_GCM_12 = 19; // 0x13
+ field public static final int ENCRYPTION_ALGORITHM_AES_GCM_16 = 20; // 0x14
+ field public static final int ENCRYPTION_ALGORITHM_AES_GCM_8 = 18; // 0x12
+ field public static final int ENCRYPTION_ALGORITHM_CHACHA20_POLY1305 = 28; // 0x1c
+ field public static final int INTEGRITY_ALGORITHM_AES_CMAC_96 = 8; // 0x8
+ field public static final int INTEGRITY_ALGORITHM_AES_XCBC_96 = 5; // 0x5
+ field public static final int INTEGRITY_ALGORITHM_HMAC_SHA1_96 = 2; // 0x2
+ field public static final int INTEGRITY_ALGORITHM_HMAC_SHA2_256_128 = 12; // 0xc
+ field public static final int INTEGRITY_ALGORITHM_HMAC_SHA2_384_192 = 13; // 0xd
+ field public static final int INTEGRITY_ALGORITHM_HMAC_SHA2_512_256 = 14; // 0xe
+ field public static final int INTEGRITY_ALGORITHM_NONE = 0; // 0x0
+ field public static final int KEY_LEN_AES_128 = 128; // 0x80
+ field public static final int KEY_LEN_AES_192 = 192; // 0xc0
+ field public static final int KEY_LEN_AES_256 = 256; // 0x100
+ field public static final int KEY_LEN_UNUSED = 0; // 0x0
+ field public static final int PSEUDORANDOM_FUNCTION_AES128_CMAC = 8; // 0x8
+ field public static final int PSEUDORANDOM_FUNCTION_AES128_XCBC = 4; // 0x4
+ field public static final int PSEUDORANDOM_FUNCTION_HMAC_SHA1 = 2; // 0x2
+ field public static final int PSEUDORANDOM_FUNCTION_SHA2_256 = 5; // 0x5
+ field public static final int PSEUDORANDOM_FUNCTION_SHA2_384 = 6; // 0x6
+ field public static final int PSEUDORANDOM_FUNCTION_SHA2_512 = 7; // 0x7
+ }
+
+ public final class TransportModeChildSessionParams extends android.net.ipsec.ike.ChildSessionParams {
+ }
+
+ public static final class TransportModeChildSessionParams.Builder {
+ ctor public TransportModeChildSessionParams.Builder();
+ ctor public TransportModeChildSessionParams.Builder(@NonNull android.net.ipsec.ike.TransportModeChildSessionParams);
+ method @NonNull public android.net.ipsec.ike.TransportModeChildSessionParams.Builder addChildSaProposal(@NonNull android.net.ipsec.ike.ChildSaProposal);
+ method @NonNull public android.net.ipsec.ike.TransportModeChildSessionParams.Builder addInboundTrafficSelectors(@NonNull android.net.ipsec.ike.IkeTrafficSelector);
+ method @NonNull public android.net.ipsec.ike.TransportModeChildSessionParams.Builder addOutboundTrafficSelectors(@NonNull android.net.ipsec.ike.IkeTrafficSelector);
+ method @NonNull public android.net.ipsec.ike.TransportModeChildSessionParams build();
+ method @NonNull public android.net.ipsec.ike.TransportModeChildSessionParams.Builder setLifetimeSeconds(@IntRange(from=0x12c, to=0x3840) int, @IntRange(from=0x78, to=0x3840) int);
+ }
+
+ public final class TunnelModeChildSessionParams extends android.net.ipsec.ike.ChildSessionParams {
+ method @NonNull public java.util.List<android.net.ipsec.ike.TunnelModeChildSessionParams.TunnelModeChildConfigRequest> getConfigurationRequests();
+ }
+
+ public static final class TunnelModeChildSessionParams.Builder {
+ ctor public TunnelModeChildSessionParams.Builder();
+ ctor public TunnelModeChildSessionParams.Builder(@NonNull android.net.ipsec.ike.TunnelModeChildSessionParams);
+ method @NonNull public android.net.ipsec.ike.TunnelModeChildSessionParams.Builder addChildSaProposal(@NonNull android.net.ipsec.ike.ChildSaProposal);
+ method @NonNull public android.net.ipsec.ike.TunnelModeChildSessionParams.Builder addInboundTrafficSelectors(@NonNull android.net.ipsec.ike.IkeTrafficSelector);
+ method @NonNull public android.net.ipsec.ike.TunnelModeChildSessionParams.Builder addInternalAddressRequest(int);
+ method @NonNull public android.net.ipsec.ike.TunnelModeChildSessionParams.Builder addInternalAddressRequest(@NonNull java.net.Inet4Address);
+ method @NonNull public android.net.ipsec.ike.TunnelModeChildSessionParams.Builder addInternalAddressRequest(@NonNull java.net.Inet6Address, int);
+ method @NonNull public android.net.ipsec.ike.TunnelModeChildSessionParams.Builder addInternalDhcpServerRequest(int);
+ method @NonNull public android.net.ipsec.ike.TunnelModeChildSessionParams.Builder addInternalDnsServerRequest(int);
+ method @NonNull public android.net.ipsec.ike.TunnelModeChildSessionParams.Builder addOutboundTrafficSelectors(@NonNull android.net.ipsec.ike.IkeTrafficSelector);
+ method @NonNull public android.net.ipsec.ike.TunnelModeChildSessionParams build();
+ method @NonNull public android.net.ipsec.ike.TunnelModeChildSessionParams.Builder setLifetimeSeconds(@IntRange(from=0x12c, to=0x3840) int, @IntRange(from=0x78, to=0x3840) int);
+ }
+
+ public static interface TunnelModeChildSessionParams.ConfigRequestIpv4Address extends android.net.ipsec.ike.TunnelModeChildSessionParams.TunnelModeChildConfigRequest {
+ method @Nullable public java.net.Inet4Address getAddress();
+ }
+
+ public static interface TunnelModeChildSessionParams.ConfigRequestIpv4DhcpServer extends android.net.ipsec.ike.TunnelModeChildSessionParams.TunnelModeChildConfigRequest {
+ }
+
+ public static interface TunnelModeChildSessionParams.ConfigRequestIpv4DnsServer extends android.net.ipsec.ike.TunnelModeChildSessionParams.TunnelModeChildConfigRequest {
+ }
+
+ public static interface TunnelModeChildSessionParams.ConfigRequestIpv4Netmask extends android.net.ipsec.ike.TunnelModeChildSessionParams.TunnelModeChildConfigRequest {
+ }
+
+ public static interface TunnelModeChildSessionParams.ConfigRequestIpv6Address extends android.net.ipsec.ike.TunnelModeChildSessionParams.TunnelModeChildConfigRequest {
+ method @Nullable public java.net.Inet6Address getAddress();
+ method public int getPrefixLength();
+ }
+
+ public static interface TunnelModeChildSessionParams.ConfigRequestIpv6DnsServer extends android.net.ipsec.ike.TunnelModeChildSessionParams.TunnelModeChildConfigRequest {
+ }
+
+ public static interface TunnelModeChildSessionParams.TunnelModeChildConfigRequest {
+ }
+
+}
+
+package android.net.ipsec.ike.exceptions {
+
+ public abstract class IkeException extends java.lang.Exception {
+ }
+
+ public final class IkeIOException extends android.net.ipsec.ike.exceptions.IkeNonProtocolException {
+ ctor public IkeIOException(@NonNull java.io.IOException);
+ method @NonNull public java.io.IOException getCause();
+ }
+
+ public final class IkeInternalException extends android.net.ipsec.ike.exceptions.IkeNonProtocolException {
+ ctor public IkeInternalException(@NonNull Throwable);
+ ctor public IkeInternalException(@NonNull String, @NonNull Throwable);
+ }
+
+ public final class IkeNetworkLostException extends android.net.ipsec.ike.exceptions.IkeNonProtocolException {
+ ctor public IkeNetworkLostException(@NonNull android.net.Network);
+ method @NonNull public android.net.Network getNetwork();
+ }
+
+ public abstract class IkeNonProtocolException extends android.net.ipsec.ike.exceptions.IkeException {
+ }
+
+ public abstract class IkeProtocolException extends android.net.ipsec.ike.exceptions.IkeException {
+ method public int getErrorType();
+ field public static final int ERROR_TYPE_AUTHENTICATION_FAILED = 24; // 0x18
+ field public static final int ERROR_TYPE_CHILD_SA_NOT_FOUND = 44; // 0x2c
+ field public static final int ERROR_TYPE_FAILED_CP_REQUIRED = 37; // 0x25
+ field public static final int ERROR_TYPE_INTERNAL_ADDRESS_FAILURE = 36; // 0x24
+ field public static final int ERROR_TYPE_INVALID_IKE_SPI = 4; // 0x4
+ field public static final int ERROR_TYPE_INVALID_KE_PAYLOAD = 17; // 0x11
+ field public static final int ERROR_TYPE_INVALID_MAJOR_VERSION = 5; // 0x5
+ field public static final int ERROR_TYPE_INVALID_MESSAGE_ID = 9; // 0x9
+ field public static final int ERROR_TYPE_INVALID_SELECTORS = 39; // 0x27
+ field public static final int ERROR_TYPE_INVALID_SYNTAX = 7; // 0x7
+ field public static final int ERROR_TYPE_NO_ADDITIONAL_SAS = 35; // 0x23
+ field public static final int ERROR_TYPE_NO_PROPOSAL_CHOSEN = 14; // 0xe
+ field public static final int ERROR_TYPE_SINGLE_PAIR_REQUIRED = 34; // 0x22
+ field public static final int ERROR_TYPE_TEMPORARY_FAILURE = 43; // 0x2b
+ field public static final int ERROR_TYPE_TS_UNACCEPTABLE = 38; // 0x26
+ field public static final int ERROR_TYPE_UNSUPPORTED_CRITICAL_PAYLOAD = 1; // 0x1
+ }
+
+ public final class IkeTimeoutException extends java.io.IOException {
+ ctor public IkeTimeoutException(@NonNull String);
+ }
+
+ public final class InvalidKeException extends android.net.ipsec.ike.exceptions.IkeProtocolException {
+ ctor public InvalidKeException(int);
+ method public int getDhGroup();
+ }
+
+ public final class InvalidMajorVersionException extends android.net.ipsec.ike.exceptions.IkeProtocolException {
+ ctor public InvalidMajorVersionException(byte);
+ method public byte getMajorVersion();
+ }
+
+ public final class InvalidSelectorsException extends android.net.ipsec.ike.exceptions.IkeProtocolException {
+ ctor public InvalidSelectorsException(int, @NonNull byte[]);
+ method @NonNull public byte[] getIpSecPacketInfo();
+ method public int getIpSecSpi();
+ }
+
+}
+
diff --git a/extensions/3/public/api/art.module.public.api-removed.txt b/extensions/3/public/api/art.module.public.api-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/public/api/art.module.public.api-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/public/api/art.module.public.api.txt b/extensions/3/public/api/art.module.public.api.txt
new file mode 100644
index 000000000..fb751ead3
--- /dev/null
+++ b/extensions/3/public/api/art.module.public.api.txt
@@ -0,0 +1,20884 @@
+// Signature format: 2.0
+package android.system {
+
+ public final class ErrnoException extends java.lang.Exception {
+ ctor public ErrnoException(String, int);
+ ctor public ErrnoException(String, int, Throwable);
+ method @NonNull public java.io.IOException rethrowAsIOException() throws java.io.IOException;
+ method @NonNull public java.net.SocketException rethrowAsSocketException() throws java.net.SocketException;
+ field public final int errno;
+ }
+
+ public class Int64Ref {
+ ctor public Int64Ref(long);
+ field public long value;
+ }
+
+ public final class Os {
+ method public static java.io.FileDescriptor accept(java.io.FileDescriptor, java.net.InetSocketAddress) throws android.system.ErrnoException, java.net.SocketException;
+ method public static boolean access(String, int) throws android.system.ErrnoException;
+ method public static void bind(java.io.FileDescriptor, java.net.InetAddress, int) throws android.system.ErrnoException, java.net.SocketException;
+ method public static void bind(@NonNull java.io.FileDescriptor, @NonNull java.net.SocketAddress) throws android.system.ErrnoException, java.net.SocketException;
+ method public static void chmod(String, int) throws android.system.ErrnoException;
+ method public static void chown(String, int, int) throws android.system.ErrnoException;
+ method public static void close(java.io.FileDescriptor) throws android.system.ErrnoException;
+ method public static void connect(java.io.FileDescriptor, java.net.InetAddress, int) throws android.system.ErrnoException, java.net.SocketException;
+ method public static void connect(@NonNull java.io.FileDescriptor, @NonNull java.net.SocketAddress) throws android.system.ErrnoException, java.net.SocketException;
+ method public static java.io.FileDescriptor dup(java.io.FileDescriptor) throws android.system.ErrnoException;
+ method public static java.io.FileDescriptor dup2(java.io.FileDescriptor, int) throws android.system.ErrnoException;
+ method public static String[] environ();
+ method public static void execv(String, String[]) throws android.system.ErrnoException;
+ method public static void execve(String, String[], String[]) throws android.system.ErrnoException;
+ method public static void fchmod(java.io.FileDescriptor, int) throws android.system.ErrnoException;
+ method public static void fchown(java.io.FileDescriptor, int, int) throws android.system.ErrnoException;
+ method public static int fcntlInt(@NonNull java.io.FileDescriptor, int, int) throws android.system.ErrnoException;
+ method public static void fdatasync(java.io.FileDescriptor) throws android.system.ErrnoException;
+ method public static android.system.StructStat fstat(java.io.FileDescriptor) throws android.system.ErrnoException;
+ method public static android.system.StructStatVfs fstatvfs(java.io.FileDescriptor) throws android.system.ErrnoException;
+ method public static void fsync(java.io.FileDescriptor) throws android.system.ErrnoException;
+ method public static void ftruncate(java.io.FileDescriptor, long) throws android.system.ErrnoException;
+ method public static String gai_strerror(int);
+ method public static int getegid();
+ method public static String getenv(String);
+ method public static int geteuid();
+ method public static int getgid();
+ method public static java.net.SocketAddress getpeername(java.io.FileDescriptor) throws android.system.ErrnoException;
+ method public static int getpid();
+ method public static int getppid();
+ method public static java.net.SocketAddress getsockname(java.io.FileDescriptor) throws android.system.ErrnoException;
+ method @NonNull public static android.system.StructTimeval getsockoptTimeval(@NonNull java.io.FileDescriptor, int, int) throws android.system.ErrnoException;
+ method public static int gettid();
+ method public static int getuid();
+ method public static byte[] getxattr(String, String) throws android.system.ErrnoException;
+ method public static String if_indextoname(int);
+ method public static int if_nametoindex(String);
+ method public static java.net.InetAddress inet_pton(int, String);
+ method public static boolean isatty(java.io.FileDescriptor);
+ method public static void kill(int, int) throws android.system.ErrnoException;
+ method public static void lchown(String, int, int) throws android.system.ErrnoException;
+ method public static void link(String, String) throws android.system.ErrnoException;
+ method public static void listen(java.io.FileDescriptor, int) throws android.system.ErrnoException;
+ method public static String[] listxattr(String) throws android.system.ErrnoException;
+ method public static long lseek(java.io.FileDescriptor, long, int) throws android.system.ErrnoException;
+ method public static android.system.StructStat lstat(String) throws android.system.ErrnoException;
+ method @NonNull public static java.io.FileDescriptor memfd_create(@NonNull String, int) throws android.system.ErrnoException;
+ method public static void mincore(long, long, byte[]) throws android.system.ErrnoException;
+ method public static void mkdir(String, int) throws android.system.ErrnoException;
+ method public static void mkfifo(String, int) throws android.system.ErrnoException;
+ method public static void mlock(long, long) throws android.system.ErrnoException;
+ method public static long mmap(long, long, int, int, java.io.FileDescriptor, long) throws android.system.ErrnoException;
+ method public static void msync(long, long, int) throws android.system.ErrnoException;
+ method public static void munlock(long, long) throws android.system.ErrnoException;
+ method public static void munmap(long, long) throws android.system.ErrnoException;
+ method public static java.io.FileDescriptor open(String, int, int) throws android.system.ErrnoException;
+ method public static java.io.FileDescriptor[] pipe() throws android.system.ErrnoException;
+ method public static int poll(android.system.StructPollfd[], int) throws android.system.ErrnoException;
+ method public static void posix_fallocate(java.io.FileDescriptor, long, long) throws android.system.ErrnoException;
+ method public static int prctl(int, long, long, long, long) throws android.system.ErrnoException;
+ method public static int pread(java.io.FileDescriptor, java.nio.ByteBuffer, long) throws android.system.ErrnoException, java.io.InterruptedIOException;
+ method public static int pread(java.io.FileDescriptor, byte[], int, int, long) throws android.system.ErrnoException, java.io.InterruptedIOException;
+ method public static int pwrite(java.io.FileDescriptor, java.nio.ByteBuffer, long) throws android.system.ErrnoException, java.io.InterruptedIOException;
+ method public static int pwrite(java.io.FileDescriptor, byte[], int, int, long) throws android.system.ErrnoException, java.io.InterruptedIOException;
+ method public static int read(java.io.FileDescriptor, java.nio.ByteBuffer) throws android.system.ErrnoException, java.io.InterruptedIOException;
+ method public static int read(java.io.FileDescriptor, byte[], int, int) throws android.system.ErrnoException, java.io.InterruptedIOException;
+ method public static String readlink(String) throws android.system.ErrnoException;
+ method public static int readv(java.io.FileDescriptor, Object[], int[], int[]) throws android.system.ErrnoException, java.io.InterruptedIOException;
+ method public static int recvfrom(java.io.FileDescriptor, java.nio.ByteBuffer, int, java.net.InetSocketAddress) throws android.system.ErrnoException, java.net.SocketException;
+ method public static int recvfrom(java.io.FileDescriptor, byte[], int, int, int, java.net.InetSocketAddress) throws android.system.ErrnoException, java.net.SocketException;
+ method public static int recvmsg(@NonNull java.io.FileDescriptor, @NonNull android.system.StructMsghdr, int) throws android.system.ErrnoException, java.net.SocketException;
+ method public static void remove(String) throws android.system.ErrnoException;
+ method public static void removexattr(String, String) throws android.system.ErrnoException;
+ method public static void rename(String, String) throws android.system.ErrnoException;
+ method public static long sendfile(java.io.FileDescriptor, java.io.FileDescriptor, android.system.Int64Ref, long) throws android.system.ErrnoException;
+ method public static int sendmsg(@NonNull java.io.FileDescriptor, @NonNull android.system.StructMsghdr, int) throws android.system.ErrnoException, java.net.SocketException;
+ method public static int sendto(java.io.FileDescriptor, java.nio.ByteBuffer, int, java.net.InetAddress, int) throws android.system.ErrnoException, java.net.SocketException;
+ method public static int sendto(java.io.FileDescriptor, byte[], int, int, int, java.net.InetAddress, int) throws android.system.ErrnoException, java.net.SocketException;
+ method public static int sendto(@NonNull java.io.FileDescriptor, @NonNull byte[], int, int, int, @Nullable java.net.SocketAddress) throws android.system.ErrnoException, java.net.SocketException;
+ method @Deprecated public static void setegid(int) throws android.system.ErrnoException;
+ method public static void setenv(String, String, boolean) throws android.system.ErrnoException;
+ method @Deprecated public static void seteuid(int) throws android.system.ErrnoException;
+ method @Deprecated public static void setgid(int) throws android.system.ErrnoException;
+ method public static int setsid() throws android.system.ErrnoException;
+ method public static void setsockoptInt(java.io.FileDescriptor, int, int, int) throws android.system.ErrnoException;
+ method public static void setsockoptTimeval(@NonNull java.io.FileDescriptor, int, int, @NonNull android.system.StructTimeval) throws android.system.ErrnoException;
+ method @Deprecated public static void setuid(int) throws android.system.ErrnoException;
+ method public static void setxattr(String, String, byte[], int) throws android.system.ErrnoException;
+ method public static void shutdown(java.io.FileDescriptor, int) throws android.system.ErrnoException;
+ method public static java.io.FileDescriptor socket(int, int, int) throws android.system.ErrnoException;
+ method public static void socketpair(int, int, int, java.io.FileDescriptor, java.io.FileDescriptor) throws android.system.ErrnoException;
+ method public static android.system.StructStat stat(String) throws android.system.ErrnoException;
+ method public static android.system.StructStatVfs statvfs(String) throws android.system.ErrnoException;
+ method public static String strerror(int);
+ method public static String strsignal(int);
+ method public static void symlink(String, String) throws android.system.ErrnoException;
+ method public static long sysconf(int);
+ method public static void tcdrain(java.io.FileDescriptor) throws android.system.ErrnoException;
+ method public static void tcsendbreak(java.io.FileDescriptor, int) throws android.system.ErrnoException;
+ method public static int umask(int);
+ method public static android.system.StructUtsname uname();
+ method public static void unsetenv(String) throws android.system.ErrnoException;
+ method public static int write(java.io.FileDescriptor, java.nio.ByteBuffer) throws android.system.ErrnoException, java.io.InterruptedIOException;
+ method public static int write(java.io.FileDescriptor, byte[], int, int) throws android.system.ErrnoException, java.io.InterruptedIOException;
+ method public static int writev(java.io.FileDescriptor, Object[], int[], int[]) throws android.system.ErrnoException, java.io.InterruptedIOException;
+ }
+
+ public final class OsConstants {
+ method public static boolean S_ISBLK(int);
+ method public static boolean S_ISCHR(int);
+ method public static boolean S_ISDIR(int);
+ method public static boolean S_ISFIFO(int);
+ method public static boolean S_ISLNK(int);
+ method public static boolean S_ISREG(int);
+ method public static boolean S_ISSOCK(int);
+ method public static boolean WCOREDUMP(int);
+ method public static int WEXITSTATUS(int);
+ method public static boolean WIFEXITED(int);
+ method public static boolean WIFSIGNALED(int);
+ method public static boolean WIFSTOPPED(int);
+ method public static int WSTOPSIG(int);
+ method public static int WTERMSIG(int);
+ method public static String errnoName(int);
+ method public static String gaiName(int);
+ field public static final int AF_INET;
+ field public static final int AF_INET6;
+ field public static final int AF_NETLINK;
+ field public static final int AF_PACKET;
+ field public static final int AF_UNIX;
+ field public static final int AF_UNSPEC;
+ field public static final int AF_VSOCK;
+ field public static final int AI_ADDRCONFIG;
+ field public static final int AI_ALL;
+ field public static final int AI_CANONNAME;
+ field public static final int AI_NUMERICHOST;
+ field public static final int AI_NUMERICSERV;
+ field public static final int AI_PASSIVE;
+ field public static final int AI_V4MAPPED;
+ field public static final int ARPHRD_ETHER;
+ field public static final int CAP_AUDIT_CONTROL;
+ field public static final int CAP_AUDIT_WRITE;
+ field public static final int CAP_BLOCK_SUSPEND;
+ field public static final int CAP_CHOWN;
+ field public static final int CAP_DAC_OVERRIDE;
+ field public static final int CAP_DAC_READ_SEARCH;
+ field public static final int CAP_FOWNER;
+ field public static final int CAP_FSETID;
+ field public static final int CAP_IPC_LOCK;
+ field public static final int CAP_IPC_OWNER;
+ field public static final int CAP_KILL;
+ field public static final int CAP_LAST_CAP;
+ field public static final int CAP_LEASE;
+ field public static final int CAP_LINUX_IMMUTABLE;
+ field public static final int CAP_MAC_ADMIN;
+ field public static final int CAP_MAC_OVERRIDE;
+ field public static final int CAP_MKNOD;
+ field public static final int CAP_NET_ADMIN;
+ field public static final int CAP_NET_BIND_SERVICE;
+ field public static final int CAP_NET_BROADCAST;
+ field public static final int CAP_NET_RAW;
+ field public static final int CAP_SETFCAP;
+ field public static final int CAP_SETGID;
+ field public static final int CAP_SETPCAP;
+ field public static final int CAP_SETUID;
+ field public static final int CAP_SYSLOG;
+ field public static final int CAP_SYS_ADMIN;
+ field public static final int CAP_SYS_BOOT;
+ field public static final int CAP_SYS_CHROOT;
+ field public static final int CAP_SYS_MODULE;
+ field public static final int CAP_SYS_NICE;
+ field public static final int CAP_SYS_PACCT;
+ field public static final int CAP_SYS_PTRACE;
+ field public static final int CAP_SYS_RAWIO;
+ field public static final int CAP_SYS_RESOURCE;
+ field public static final int CAP_SYS_TIME;
+ field public static final int CAP_SYS_TTY_CONFIG;
+ field public static final int CAP_WAKE_ALARM;
+ field public static final int E2BIG;
+ field public static final int EACCES;
+ field public static final int EADDRINUSE;
+ field public static final int EADDRNOTAVAIL;
+ field public static final int EAFNOSUPPORT;
+ field public static final int EAGAIN;
+ field public static final int EAI_AGAIN;
+ field public static final int EAI_BADFLAGS;
+ field public static final int EAI_FAIL;
+ field public static final int EAI_FAMILY;
+ field public static final int EAI_MEMORY;
+ field public static final int EAI_NODATA;
+ field public static final int EAI_NONAME;
+ field public static final int EAI_OVERFLOW;
+ field public static final int EAI_SERVICE;
+ field public static final int EAI_SOCKTYPE;
+ field public static final int EAI_SYSTEM;
+ field public static final int EALREADY;
+ field public static final int EBADF;
+ field public static final int EBADMSG;
+ field public static final int EBUSY;
+ field public static final int ECANCELED;
+ field public static final int ECHILD;
+ field public static final int ECONNABORTED;
+ field public static final int ECONNREFUSED;
+ field public static final int ECONNRESET;
+ field public static final int EDEADLK;
+ field public static final int EDESTADDRREQ;
+ field public static final int EDOM;
+ field public static final int EDQUOT;
+ field public static final int EEXIST;
+ field public static final int EFAULT;
+ field public static final int EFBIG;
+ field public static final int EHOSTUNREACH;
+ field public static final int EIDRM;
+ field public static final int EILSEQ;
+ field public static final int EINPROGRESS;
+ field public static final int EINTR;
+ field public static final int EINVAL;
+ field public static final int EIO;
+ field public static final int EISCONN;
+ field public static final int EISDIR;
+ field public static final int ELOOP;
+ field public static final int EMFILE;
+ field public static final int EMLINK;
+ field public static final int EMSGSIZE;
+ field public static final int EMULTIHOP;
+ field public static final int ENAMETOOLONG;
+ field public static final int ENETDOWN;
+ field public static final int ENETRESET;
+ field public static final int ENETUNREACH;
+ field public static final int ENFILE;
+ field public static final int ENOBUFS;
+ field public static final int ENODATA;
+ field public static final int ENODEV;
+ field public static final int ENOENT;
+ field public static final int ENOEXEC;
+ field public static final int ENOLCK;
+ field public static final int ENOLINK;
+ field public static final int ENOMEM;
+ field public static final int ENOMSG;
+ field public static final int ENONET;
+ field public static final int ENOPROTOOPT;
+ field public static final int ENOSPC;
+ field public static final int ENOSR;
+ field public static final int ENOSTR;
+ field public static final int ENOSYS;
+ field public static final int ENOTCONN;
+ field public static final int ENOTDIR;
+ field public static final int ENOTEMPTY;
+ field public static final int ENOTSOCK;
+ field public static final int ENOTSUP;
+ field public static final int ENOTTY;
+ field public static final int ENXIO;
+ field public static final int EOPNOTSUPP;
+ field public static final int EOVERFLOW;
+ field public static final int EPERM;
+ field public static final int EPIPE;
+ field public static final int EPROTO;
+ field public static final int EPROTONOSUPPORT;
+ field public static final int EPROTOTYPE;
+ field public static final int ERANGE;
+ field public static final int EROFS;
+ field public static final int ESPIPE;
+ field public static final int ESRCH;
+ field public static final int ESTALE;
+ field public static final int ETH_P_ALL;
+ field public static final int ETH_P_ARP;
+ field public static final int ETH_P_IP;
+ field public static final int ETH_P_IPV6;
+ field public static final int ETIME;
+ field public static final int ETIMEDOUT;
+ field public static final int ETXTBSY;
+ field public static final int EXDEV;
+ field public static final int EXIT_FAILURE;
+ field public static final int EXIT_SUCCESS;
+ field public static final int FD_CLOEXEC;
+ field public static final int FIONREAD;
+ field public static final int F_DUPFD;
+ field public static final int F_DUPFD_CLOEXEC;
+ field public static final int F_GETFD;
+ field public static final int F_GETFL;
+ field public static final int F_GETLK;
+ field public static final int F_GETLK64;
+ field public static final int F_GETOWN;
+ field public static final int F_OK;
+ field public static final int F_RDLCK;
+ field public static final int F_SETFD;
+ field public static final int F_SETFL;
+ field public static final int F_SETLK;
+ field public static final int F_SETLK64;
+ field public static final int F_SETLKW;
+ field public static final int F_SETLKW64;
+ field public static final int F_SETOWN;
+ field public static final int F_UNLCK;
+ field public static final int F_WRLCK;
+ field public static final int ICMP6_ECHO_REPLY;
+ field public static final int ICMP6_ECHO_REQUEST;
+ field public static final int ICMP_ECHO;
+ field public static final int ICMP_ECHOREPLY;
+ field public static final int IFA_F_DADFAILED;
+ field public static final int IFA_F_DEPRECATED;
+ field public static final int IFA_F_HOMEADDRESS;
+ field public static final int IFA_F_NODAD;
+ field public static final int IFA_F_OPTIMISTIC;
+ field public static final int IFA_F_PERMANENT;
+ field public static final int IFA_F_SECONDARY;
+ field public static final int IFA_F_TEMPORARY;
+ field public static final int IFA_F_TENTATIVE;
+ field public static final int IFF_ALLMULTI;
+ field public static final int IFF_AUTOMEDIA;
+ field public static final int IFF_BROADCAST;
+ field public static final int IFF_DEBUG;
+ field public static final int IFF_DYNAMIC;
+ field public static final int IFF_LOOPBACK;
+ field public static final int IFF_MASTER;
+ field public static final int IFF_MULTICAST;
+ field public static final int IFF_NOARP;
+ field public static final int IFF_NOTRAILERS;
+ field public static final int IFF_POINTOPOINT;
+ field public static final int IFF_PORTSEL;
+ field public static final int IFF_PROMISC;
+ field public static final int IFF_RUNNING;
+ field public static final int IFF_SLAVE;
+ field public static final int IFF_UP;
+ field public static final int IPPROTO_ICMP;
+ field public static final int IPPROTO_ICMPV6;
+ field public static final int IPPROTO_IP;
+ field public static final int IPPROTO_IPV6;
+ field public static final int IPPROTO_RAW;
+ field public static final int IPPROTO_TCP;
+ field public static final int IPPROTO_UDP;
+ field public static final int IPV6_CHECKSUM;
+ field public static final int IPV6_MULTICAST_HOPS;
+ field public static final int IPV6_MULTICAST_IF;
+ field public static final int IPV6_MULTICAST_LOOP;
+ field public static final int IPV6_RECVDSTOPTS;
+ field public static final int IPV6_RECVHOPLIMIT;
+ field public static final int IPV6_RECVHOPOPTS;
+ field public static final int IPV6_RECVPKTINFO;
+ field public static final int IPV6_RECVRTHDR;
+ field public static final int IPV6_RECVTCLASS;
+ field public static final int IPV6_TCLASS;
+ field public static final int IPV6_UNICAST_HOPS;
+ field public static final int IPV6_V6ONLY;
+ field public static final int IP_MULTICAST_IF;
+ field public static final int IP_MULTICAST_LOOP;
+ field public static final int IP_MULTICAST_TTL;
+ field public static final int IP_TOS;
+ field public static final int IP_TTL;
+ field public static final int MAP_ANONYMOUS;
+ field public static final int MAP_FIXED;
+ field public static final int MAP_PRIVATE;
+ field public static final int MAP_SHARED;
+ field public static final int MCAST_BLOCK_SOURCE;
+ field public static final int MCAST_JOIN_GROUP;
+ field public static final int MCAST_JOIN_SOURCE_GROUP;
+ field public static final int MCAST_LEAVE_GROUP;
+ field public static final int MCAST_LEAVE_SOURCE_GROUP;
+ field public static final int MCAST_UNBLOCK_SOURCE;
+ field public static final int MCL_CURRENT;
+ field public static final int MCL_FUTURE;
+ field public static final int MFD_CLOEXEC;
+ field public static final int MSG_CTRUNC;
+ field public static final int MSG_DONTROUTE;
+ field public static final int MSG_EOR;
+ field public static final int MSG_OOB;
+ field public static final int MSG_PEEK;
+ field public static final int MSG_TRUNC;
+ field public static final int MSG_WAITALL;
+ field public static final int MS_ASYNC;
+ field public static final int MS_INVALIDATE;
+ field public static final int MS_SYNC;
+ field public static final int NETLINK_INET_DIAG;
+ field public static final int NETLINK_NETFILTER;
+ field public static final int NETLINK_ROUTE;
+ field public static final int NI_DGRAM;
+ field public static final int NI_NAMEREQD;
+ field public static final int NI_NOFQDN;
+ field public static final int NI_NUMERICHOST;
+ field public static final int NI_NUMERICSERV;
+ field public static final int O_ACCMODE;
+ field public static final int O_APPEND;
+ field public static final int O_CLOEXEC;
+ field public static final int O_CREAT;
+ field public static final int O_DSYNC;
+ field public static final int O_EXCL;
+ field public static final int O_NOCTTY;
+ field public static final int O_NOFOLLOW;
+ field public static final int O_NONBLOCK;
+ field public static final int O_RDONLY;
+ field public static final int O_RDWR;
+ field public static final int O_SYNC;
+ field public static final int O_TRUNC;
+ field public static final int O_WRONLY;
+ field public static final int POLLERR;
+ field public static final int POLLHUP;
+ field public static final int POLLIN;
+ field public static final int POLLNVAL;
+ field public static final int POLLOUT;
+ field public static final int POLLPRI;
+ field public static final int POLLRDBAND;
+ field public static final int POLLRDNORM;
+ field public static final int POLLWRBAND;
+ field public static final int POLLWRNORM;
+ field public static final int PROT_EXEC;
+ field public static final int PROT_NONE;
+ field public static final int PROT_READ;
+ field public static final int PROT_WRITE;
+ field public static final int PR_GET_DUMPABLE;
+ field public static final int PR_SET_DUMPABLE;
+ field public static final int PR_SET_NO_NEW_PRIVS;
+ field public static final int RTMGRP_NEIGH;
+ field public static final int RT_SCOPE_HOST;
+ field public static final int RT_SCOPE_LINK;
+ field public static final int RT_SCOPE_NOWHERE;
+ field public static final int RT_SCOPE_SITE;
+ field public static final int RT_SCOPE_UNIVERSE;
+ field public static final int R_OK;
+ field public static final int SEEK_CUR;
+ field public static final int SEEK_END;
+ field public static final int SEEK_SET;
+ field public static final int SHUT_RD;
+ field public static final int SHUT_RDWR;
+ field public static final int SHUT_WR;
+ field public static final int SIGABRT;
+ field public static final int SIGALRM;
+ field public static final int SIGBUS;
+ field public static final int SIGCHLD;
+ field public static final int SIGCONT;
+ field public static final int SIGFPE;
+ field public static final int SIGHUP;
+ field public static final int SIGILL;
+ field public static final int SIGINT;
+ field public static final int SIGIO;
+ field public static final int SIGKILL;
+ field public static final int SIGPIPE;
+ field public static final int SIGPROF;
+ field public static final int SIGPWR;
+ field public static final int SIGQUIT;
+ field public static final int SIGRTMAX;
+ field public static final int SIGRTMIN;
+ field public static final int SIGSEGV;
+ field public static final int SIGSTKFLT;
+ field public static final int SIGSTOP;
+ field public static final int SIGSYS;
+ field public static final int SIGTERM;
+ field public static final int SIGTRAP;
+ field public static final int SIGTSTP;
+ field public static final int SIGTTIN;
+ field public static final int SIGTTOU;
+ field public static final int SIGURG;
+ field public static final int SIGUSR1;
+ field public static final int SIGUSR2;
+ field public static final int SIGVTALRM;
+ field public static final int SIGWINCH;
+ field public static final int SIGXCPU;
+ field public static final int SIGXFSZ;
+ field public static final int SIOCGIFADDR;
+ field public static final int SIOCGIFBRDADDR;
+ field public static final int SIOCGIFDSTADDR;
+ field public static final int SIOCGIFNETMASK;
+ field public static final int SOCK_CLOEXEC;
+ field public static final int SOCK_DGRAM;
+ field public static final int SOCK_NONBLOCK;
+ field public static final int SOCK_RAW;
+ field public static final int SOCK_SEQPACKET;
+ field public static final int SOCK_STREAM;
+ field public static final int SOL_SOCKET;
+ field public static final int SOL_UDP;
+ field public static final int SO_BINDTODEVICE;
+ field public static final int SO_BROADCAST;
+ field public static final int SO_DEBUG;
+ field public static final int SO_DONTROUTE;
+ field public static final int SO_ERROR;
+ field public static final int SO_KEEPALIVE;
+ field public static final int SO_LINGER;
+ field public static final int SO_OOBINLINE;
+ field public static final int SO_PASSCRED;
+ field public static final int SO_PEERCRED;
+ field public static final int SO_RCVBUF;
+ field public static final int SO_RCVLOWAT;
+ field public static final int SO_RCVTIMEO;
+ field public static final int SO_REUSEADDR;
+ field public static final int SO_SNDBUF;
+ field public static final int SO_SNDLOWAT;
+ field public static final int SO_SNDTIMEO;
+ field public static final int SO_TYPE;
+ field public static final int STDERR_FILENO;
+ field public static final int STDIN_FILENO;
+ field public static final int STDOUT_FILENO;
+ field public static final int ST_MANDLOCK;
+ field public static final int ST_NOATIME;
+ field public static final int ST_NODEV;
+ field public static final int ST_NODIRATIME;
+ field public static final int ST_NOEXEC;
+ field public static final int ST_NOSUID;
+ field public static final int ST_RDONLY;
+ field public static final int ST_RELATIME;
+ field public static final int ST_SYNCHRONOUS;
+ field public static final int S_IFBLK;
+ field public static final int S_IFCHR;
+ field public static final int S_IFDIR;
+ field public static final int S_IFIFO;
+ field public static final int S_IFLNK;
+ field public static final int S_IFMT;
+ field public static final int S_IFREG;
+ field public static final int S_IFSOCK;
+ field public static final int S_IRGRP;
+ field public static final int S_IROTH;
+ field public static final int S_IRUSR;
+ field public static final int S_IRWXG;
+ field public static final int S_IRWXO;
+ field public static final int S_IRWXU;
+ field public static final int S_ISGID;
+ field public static final int S_ISUID;
+ field public static final int S_ISVTX;
+ field public static final int S_IWGRP;
+ field public static final int S_IWOTH;
+ field public static final int S_IWUSR;
+ field public static final int S_IXGRP;
+ field public static final int S_IXOTH;
+ field public static final int S_IXUSR;
+ field public static final int TCP_NODELAY;
+ field public static final int TCP_USER_TIMEOUT;
+ field public static final int UDP_GRO;
+ field public static final int UDP_SEGMENT;
+ field public static final int VMADDR_CID_ANY;
+ field public static final int VMADDR_CID_HOST;
+ field public static final int VMADDR_CID_LOCAL;
+ field public static final int VMADDR_PORT_ANY;
+ field public static final int WCONTINUED;
+ field public static final int WEXITED;
+ field public static final int WNOHANG;
+ field public static final int WNOWAIT;
+ field public static final int WSTOPPED;
+ field public static final int WUNTRACED;
+ field public static final int W_OK;
+ field public static final int X_OK;
+ field public static final int _SC_2_CHAR_TERM;
+ field public static final int _SC_2_C_BIND;
+ field public static final int _SC_2_C_DEV;
+ field public static final int _SC_2_C_VERSION;
+ field public static final int _SC_2_FORT_DEV;
+ field public static final int _SC_2_FORT_RUN;
+ field public static final int _SC_2_LOCALEDEF;
+ field public static final int _SC_2_SW_DEV;
+ field public static final int _SC_2_UPE;
+ field public static final int _SC_2_VERSION;
+ field public static final int _SC_AIO_LISTIO_MAX;
+ field public static final int _SC_AIO_MAX;
+ field public static final int _SC_AIO_PRIO_DELTA_MAX;
+ field public static final int _SC_ARG_MAX;
+ field public static final int _SC_ASYNCHRONOUS_IO;
+ field public static final int _SC_ATEXIT_MAX;
+ field public static final int _SC_AVPHYS_PAGES;
+ field public static final int _SC_BC_BASE_MAX;
+ field public static final int _SC_BC_DIM_MAX;
+ field public static final int _SC_BC_SCALE_MAX;
+ field public static final int _SC_BC_STRING_MAX;
+ field public static final int _SC_CHILD_MAX;
+ field public static final int _SC_CLK_TCK;
+ field public static final int _SC_COLL_WEIGHTS_MAX;
+ field public static final int _SC_DELAYTIMER_MAX;
+ field public static final int _SC_EXPR_NEST_MAX;
+ field public static final int _SC_FSYNC;
+ field public static final int _SC_GETGR_R_SIZE_MAX;
+ field public static final int _SC_GETPW_R_SIZE_MAX;
+ field public static final int _SC_IOV_MAX;
+ field public static final int _SC_JOB_CONTROL;
+ field public static final int _SC_LINE_MAX;
+ field public static final int _SC_LOGIN_NAME_MAX;
+ field public static final int _SC_MAPPED_FILES;
+ field public static final int _SC_MEMLOCK;
+ field public static final int _SC_MEMLOCK_RANGE;
+ field public static final int _SC_MEMORY_PROTECTION;
+ field public static final int _SC_MESSAGE_PASSING;
+ field public static final int _SC_MQ_OPEN_MAX;
+ field public static final int _SC_MQ_PRIO_MAX;
+ field public static final int _SC_NGROUPS_MAX;
+ field public static final int _SC_NPROCESSORS_CONF;
+ field public static final int _SC_NPROCESSORS_ONLN;
+ field public static final int _SC_OPEN_MAX;
+ field public static final int _SC_PAGESIZE;
+ field public static final int _SC_PAGE_SIZE;
+ field public static final int _SC_PASS_MAX;
+ field public static final int _SC_PHYS_PAGES;
+ field public static final int _SC_PRIORITIZED_IO;
+ field public static final int _SC_PRIORITY_SCHEDULING;
+ field public static final int _SC_REALTIME_SIGNALS;
+ field public static final int _SC_RE_DUP_MAX;
+ field public static final int _SC_RTSIG_MAX;
+ field public static final int _SC_SAVED_IDS;
+ field public static final int _SC_SEMAPHORES;
+ field public static final int _SC_SEM_NSEMS_MAX;
+ field public static final int _SC_SEM_VALUE_MAX;
+ field public static final int _SC_SHARED_MEMORY_OBJECTS;
+ field public static final int _SC_SIGQUEUE_MAX;
+ field public static final int _SC_STREAM_MAX;
+ field public static final int _SC_SYNCHRONIZED_IO;
+ field public static final int _SC_THREADS;
+ field public static final int _SC_THREAD_ATTR_STACKADDR;
+ field public static final int _SC_THREAD_ATTR_STACKSIZE;
+ field public static final int _SC_THREAD_DESTRUCTOR_ITERATIONS;
+ field public static final int _SC_THREAD_KEYS_MAX;
+ field public static final int _SC_THREAD_PRIORITY_SCHEDULING;
+ field public static final int _SC_THREAD_PRIO_INHERIT;
+ field public static final int _SC_THREAD_PRIO_PROTECT;
+ field public static final int _SC_THREAD_SAFE_FUNCTIONS;
+ field public static final int _SC_THREAD_STACK_MIN;
+ field public static final int _SC_THREAD_THREADS_MAX;
+ field public static final int _SC_TIMERS;
+ field public static final int _SC_TIMER_MAX;
+ field public static final int _SC_TTY_NAME_MAX;
+ field public static final int _SC_TZNAME_MAX;
+ field public static final int _SC_VERSION;
+ field public static final int _SC_XBS5_ILP32_OFF32;
+ field public static final int _SC_XBS5_ILP32_OFFBIG;
+ field public static final int _SC_XBS5_LP64_OFF64;
+ field public static final int _SC_XBS5_LPBIG_OFFBIG;
+ field public static final int _SC_XOPEN_CRYPT;
+ field public static final int _SC_XOPEN_ENH_I18N;
+ field public static final int _SC_XOPEN_LEGACY;
+ field public static final int _SC_XOPEN_REALTIME;
+ field public static final int _SC_XOPEN_REALTIME_THREADS;
+ field public static final int _SC_XOPEN_SHM;
+ field public static final int _SC_XOPEN_UNIX;
+ field public static final int _SC_XOPEN_VERSION;
+ field public static final int _SC_XOPEN_XCU_VERSION;
+ }
+
+ public final class StructCmsghdr {
+ ctor public StructCmsghdr(int, int, short);
+ ctor public StructCmsghdr(int, int, @NonNull byte[]);
+ field @NonNull public final byte[] cmsg_data;
+ field public final int cmsg_level;
+ field public final int cmsg_type;
+ }
+
+ public final class StructMsghdr {
+ ctor public StructMsghdr(@Nullable java.net.SocketAddress, @NonNull java.nio.ByteBuffer[], @Nullable android.system.StructCmsghdr[], int);
+ field @Nullable public android.system.StructCmsghdr[] msg_control;
+ field public int msg_flags;
+ field @NonNull public final java.nio.ByteBuffer[] msg_iov;
+ field @Nullable public java.net.SocketAddress msg_name;
+ }
+
+ public final class StructPollfd {
+ ctor public StructPollfd();
+ field public short events;
+ field public java.io.FileDescriptor fd;
+ field public short revents;
+ field public Object userData;
+ }
+
+ public final class StructStat {
+ ctor public StructStat(long, long, int, long, int, int, long, long, long, long, long, long, long);
+ ctor public StructStat(long, long, int, long, int, int, long, long, android.system.StructTimespec, android.system.StructTimespec, android.system.StructTimespec, long, long);
+ field public final android.system.StructTimespec st_atim;
+ field public final long st_atime;
+ field public final long st_blksize;
+ field public final long st_blocks;
+ field public final android.system.StructTimespec st_ctim;
+ field public final long st_ctime;
+ field public final long st_dev;
+ field public final int st_gid;
+ field public final long st_ino;
+ field public final int st_mode;
+ field public final android.system.StructTimespec st_mtim;
+ field public final long st_mtime;
+ field public final long st_nlink;
+ field public final long st_rdev;
+ field public final long st_size;
+ field public final int st_uid;
+ }
+
+ public final class StructStatVfs {
+ ctor public StructStatVfs(long, long, long, long, long, long, long, long, long, long, long);
+ field public final long f_bavail;
+ field public final long f_bfree;
+ field public final long f_blocks;
+ field public final long f_bsize;
+ field public final long f_favail;
+ field public final long f_ffree;
+ field public final long f_files;
+ field public final long f_flag;
+ field public final long f_frsize;
+ field public final long f_fsid;
+ field public final long f_namemax;
+ }
+
+ public final class StructTimespec implements java.lang.Comparable<android.system.StructTimespec> {
+ ctor public StructTimespec(long, long);
+ method public int compareTo(android.system.StructTimespec);
+ field public final long tv_nsec;
+ field public final long tv_sec;
+ }
+
+ public final class StructTimeval {
+ method @NonNull public static android.system.StructTimeval fromMillis(long);
+ method public long toMillis();
+ field public final long tv_sec;
+ field public final long tv_usec;
+ }
+
+ public final class StructUtsname {
+ ctor public StructUtsname(String, String, String, String, String);
+ field public final String machine;
+ field public final String nodename;
+ field public final String release;
+ field public final String sysname;
+ field public final String version;
+ }
+
+ public final class SystemCleaner {
+ method @NonNull public static java.lang.ref.Cleaner cleaner();
+ }
+
+ public final class VmSocketAddress extends java.net.SocketAddress {
+ ctor public VmSocketAddress(int, int);
+ method public int getSvmCid();
+ method public int getSvmPort();
+ }
+
+}
+
+package dalvik.annotation {
+
+ @Deprecated @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.RUNTIME) @java.lang.annotation.Target({java.lang.annotation.ElementType.ANNOTATION_TYPE}) public @interface TestTarget {
+ method @Deprecated public abstract String conceptName() default "";
+ method @Deprecated public abstract Class<?>[] methodArgs() default {};
+ method @Deprecated public abstract String methodName() default "";
+ }
+
+ @Deprecated @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.RUNTIME) @java.lang.annotation.Target({java.lang.annotation.ElementType.TYPE}) public @interface TestTargetClass {
+ method @Deprecated public abstract Class<?> value();
+ }
+
+}
+
+package dalvik.bytecode {
+
+ public final class OpcodeInfo {
+ field public static final int MAXIMUM_PACKED_VALUE;
+ field public static final int MAXIMUM_VALUE;
+ }
+
+ public interface Opcodes {
+ field public static final int OP_ADD_DOUBLE = 171; // 0xab
+ field public static final int OP_ADD_DOUBLE_2ADDR = 203; // 0xcb
+ field public static final int OP_ADD_FLOAT = 166; // 0xa6
+ field public static final int OP_ADD_FLOAT_2ADDR = 198; // 0xc6
+ field public static final int OP_ADD_INT = 144; // 0x90
+ field public static final int OP_ADD_INT_2ADDR = 176; // 0xb0
+ field public static final int OP_ADD_INT_LIT16 = 208; // 0xd0
+ field public static final int OP_ADD_INT_LIT8 = 216; // 0xd8
+ field public static final int OP_ADD_LONG = 155; // 0x9b
+ field public static final int OP_ADD_LONG_2ADDR = 187; // 0xbb
+ field public static final int OP_AGET = 68; // 0x44
+ field public static final int OP_AGET_BOOLEAN = 71; // 0x47
+ field public static final int OP_AGET_BYTE = 72; // 0x48
+ field public static final int OP_AGET_CHAR = 73; // 0x49
+ field public static final int OP_AGET_OBJECT = 70; // 0x46
+ field public static final int OP_AGET_SHORT = 74; // 0x4a
+ field public static final int OP_AGET_WIDE = 69; // 0x45
+ field public static final int OP_AND_INT = 149; // 0x95
+ field public static final int OP_AND_INT_2ADDR = 181; // 0xb5
+ field public static final int OP_AND_INT_LIT16 = 213; // 0xd5
+ field public static final int OP_AND_INT_LIT8 = 221; // 0xdd
+ field public static final int OP_AND_LONG = 160; // 0xa0
+ field public static final int OP_AND_LONG_2ADDR = 192; // 0xc0
+ field public static final int OP_APUT = 75; // 0x4b
+ field public static final int OP_APUT_BOOLEAN = 78; // 0x4e
+ field public static final int OP_APUT_BYTE = 79; // 0x4f
+ field public static final int OP_APUT_CHAR = 80; // 0x50
+ field public static final int OP_APUT_OBJECT = 77; // 0x4d
+ field public static final int OP_APUT_SHORT = 81; // 0x51
+ field public static final int OP_APUT_WIDE = 76; // 0x4c
+ field public static final int OP_ARRAY_LENGTH = 33; // 0x21
+ field @Deprecated public static final int OP_BREAKPOINT = 236; // 0xec
+ field public static final int OP_CHECK_CAST = 31; // 0x1f
+ field public static final int OP_CHECK_CAST_JUMBO = 511; // 0x1ff
+ field public static final int OP_CMPG_DOUBLE = 48; // 0x30
+ field public static final int OP_CMPG_FLOAT = 46; // 0x2e
+ field public static final int OP_CMPL_DOUBLE = 47; // 0x2f
+ field public static final int OP_CMPL_FLOAT = 45; // 0x2d
+ field public static final int OP_CMP_LONG = 49; // 0x31
+ field public static final int OP_CONST = 20; // 0x14
+ field public static final int OP_CONST_16 = 19; // 0x13
+ field public static final int OP_CONST_4 = 18; // 0x12
+ field public static final int OP_CONST_CLASS = 28; // 0x1c
+ field public static final int OP_CONST_CLASS_JUMBO = 255; // 0xff
+ field public static final int OP_CONST_HIGH16 = 21; // 0x15
+ field public static final int OP_CONST_METHOD_HANDLE = 254; // 0xfe
+ field public static final int OP_CONST_METHOD_TYPE = 255; // 0xff
+ field public static final int OP_CONST_STRING = 26; // 0x1a
+ field public static final int OP_CONST_STRING_JUMBO = 27; // 0x1b
+ field public static final int OP_CONST_WIDE = 24; // 0x18
+ field public static final int OP_CONST_WIDE_16 = 22; // 0x16
+ field public static final int OP_CONST_WIDE_32 = 23; // 0x17
+ field public static final int OP_CONST_WIDE_HIGH16 = 25; // 0x19
+ field public static final int OP_DIV_DOUBLE = 174; // 0xae
+ field public static final int OP_DIV_DOUBLE_2ADDR = 206; // 0xce
+ field public static final int OP_DIV_FLOAT = 169; // 0xa9
+ field public static final int OP_DIV_FLOAT_2ADDR = 201; // 0xc9
+ field public static final int OP_DIV_INT = 147; // 0x93
+ field public static final int OP_DIV_INT_2ADDR = 179; // 0xb3
+ field public static final int OP_DIV_INT_LIT16 = 211; // 0xd3
+ field public static final int OP_DIV_INT_LIT8 = 219; // 0xdb
+ field public static final int OP_DIV_LONG = 158; // 0x9e
+ field public static final int OP_DIV_LONG_2ADDR = 190; // 0xbe
+ field public static final int OP_DOUBLE_TO_FLOAT = 140; // 0x8c
+ field public static final int OP_DOUBLE_TO_INT = 138; // 0x8a
+ field public static final int OP_DOUBLE_TO_LONG = 139; // 0x8b
+ field @Deprecated public static final int OP_EXECUTE_INLINE = 238; // 0xee
+ field @Deprecated public static final int OP_EXECUTE_INLINE_RANGE = 239; // 0xef
+ field public static final int OP_FILLED_NEW_ARRAY = 36; // 0x24
+ field public static final int OP_FILLED_NEW_ARRAY_JUMBO = 1535; // 0x5ff
+ field public static final int OP_FILLED_NEW_ARRAY_RANGE = 37; // 0x25
+ field public static final int OP_FILL_ARRAY_DATA = 38; // 0x26
+ field public static final int OP_FLOAT_TO_DOUBLE = 137; // 0x89
+ field public static final int OP_FLOAT_TO_INT = 135; // 0x87
+ field public static final int OP_FLOAT_TO_LONG = 136; // 0x88
+ field public static final int OP_GOTO = 40; // 0x28
+ field public static final int OP_GOTO_16 = 41; // 0x29
+ field public static final int OP_GOTO_32 = 42; // 0x2a
+ field public static final int OP_IF_EQ = 50; // 0x32
+ field public static final int OP_IF_EQZ = 56; // 0x38
+ field public static final int OP_IF_GE = 53; // 0x35
+ field public static final int OP_IF_GEZ = 59; // 0x3b
+ field public static final int OP_IF_GT = 54; // 0x36
+ field public static final int OP_IF_GTZ = 60; // 0x3c
+ field public static final int OP_IF_LE = 55; // 0x37
+ field public static final int OP_IF_LEZ = 61; // 0x3d
+ field public static final int OP_IF_LT = 52; // 0x34
+ field public static final int OP_IF_LTZ = 58; // 0x3a
+ field public static final int OP_IF_NE = 51; // 0x33
+ field public static final int OP_IF_NEZ = 57; // 0x39
+ field public static final int OP_IGET = 82; // 0x52
+ field public static final int OP_IGET_BOOLEAN = 85; // 0x55
+ field public static final int OP_IGET_BOOLEAN_JUMBO = 2559; // 0x9ff
+ field public static final int OP_IGET_BYTE = 86; // 0x56
+ field public static final int OP_IGET_BYTE_JUMBO = 2815; // 0xaff
+ field public static final int OP_IGET_CHAR = 87; // 0x57
+ field public static final int OP_IGET_CHAR_JUMBO = 3071; // 0xbff
+ field public static final int OP_IGET_JUMBO = 1791; // 0x6ff
+ field public static final int OP_IGET_OBJECT = 84; // 0x54
+ field public static final int OP_IGET_OBJECT_JUMBO = 2303; // 0x8ff
+ field @Deprecated public static final int OP_IGET_OBJECT_QUICK = 244; // 0xf4
+ field @Deprecated public static final int OP_IGET_QUICK = 242; // 0xf2
+ field public static final int OP_IGET_SHORT = 88; // 0x58
+ field public static final int OP_IGET_SHORT_JUMBO = 3327; // 0xcff
+ field public static final int OP_IGET_WIDE = 83; // 0x53
+ field public static final int OP_IGET_WIDE_JUMBO = 2047; // 0x7ff
+ field @Deprecated public static final int OP_IGET_WIDE_QUICK = 243; // 0xf3
+ field @Deprecated public static final int OP_IGET_WIDE_VOLATILE = 232; // 0xe8
+ field public static final int OP_INSTANCE_OF = 32; // 0x20
+ field public static final int OP_INSTANCE_OF_JUMBO = 767; // 0x2ff
+ field public static final int OP_INT_TO_BYTE = 141; // 0x8d
+ field public static final int OP_INT_TO_CHAR = 142; // 0x8e
+ field public static final int OP_INT_TO_DOUBLE = 131; // 0x83
+ field public static final int OP_INT_TO_FLOAT = 130; // 0x82
+ field public static final int OP_INT_TO_LONG = 129; // 0x81
+ field public static final int OP_INT_TO_SHORT = 143; // 0x8f
+ field public static final int OP_INVOKE_CUSTOM = 252; // 0xfc
+ field public static final int OP_INVOKE_CUSTOM_RANGE = 253; // 0xfd
+ field public static final int OP_INVOKE_DIRECT = 112; // 0x70
+ field @Deprecated public static final int OP_INVOKE_DIRECT_EMPTY = 240; // 0xf0
+ field public static final int OP_INVOKE_DIRECT_JUMBO = 9471; // 0x24ff
+ field public static final int OP_INVOKE_DIRECT_RANGE = 118; // 0x76
+ field public static final int OP_INVOKE_INTERFACE = 114; // 0x72
+ field public static final int OP_INVOKE_INTERFACE_JUMBO = 9983; // 0x26ff
+ field public static final int OP_INVOKE_INTERFACE_RANGE = 120; // 0x78
+ field public static final int OP_INVOKE_POLYMORPHIC = 250; // 0xfa
+ field public static final int OP_INVOKE_POLYMORPHIC_RANGE = 251; // 0xfb
+ field public static final int OP_INVOKE_STATIC = 113; // 0x71
+ field public static final int OP_INVOKE_STATIC_JUMBO = 9727; // 0x25ff
+ field public static final int OP_INVOKE_STATIC_RANGE = 119; // 0x77
+ field public static final int OP_INVOKE_SUPER = 111; // 0x6f
+ field public static final int OP_INVOKE_SUPER_JUMBO = 9215; // 0x23ff
+ field @Deprecated public static final int OP_INVOKE_SUPER_QUICK = 250; // 0xfa
+ field @Deprecated public static final int OP_INVOKE_SUPER_QUICK_RANGE = 251; // 0xfb
+ field public static final int OP_INVOKE_SUPER_RANGE = 117; // 0x75
+ field public static final int OP_INVOKE_VIRTUAL = 110; // 0x6e
+ field public static final int OP_INVOKE_VIRTUAL_JUMBO = 8959; // 0x22ff
+ field @Deprecated public static final int OP_INVOKE_VIRTUAL_QUICK = 248; // 0xf8
+ field @Deprecated public static final int OP_INVOKE_VIRTUAL_QUICK_RANGE = 249; // 0xf9
+ field public static final int OP_INVOKE_VIRTUAL_RANGE = 116; // 0x74
+ field public static final int OP_IPUT = 89; // 0x59
+ field public static final int OP_IPUT_BOOLEAN = 92; // 0x5c
+ field public static final int OP_IPUT_BOOLEAN_JUMBO = 4351; // 0x10ff
+ field public static final int OP_IPUT_BYTE = 93; // 0x5d
+ field public static final int OP_IPUT_BYTE_JUMBO = 4607; // 0x11ff
+ field public static final int OP_IPUT_CHAR = 94; // 0x5e
+ field public static final int OP_IPUT_CHAR_JUMBO = 4863; // 0x12ff
+ field public static final int OP_IPUT_JUMBO = 3583; // 0xdff
+ field public static final int OP_IPUT_OBJECT = 91; // 0x5b
+ field public static final int OP_IPUT_OBJECT_JUMBO = 4095; // 0xfff
+ field @Deprecated public static final int OP_IPUT_OBJECT_QUICK = 247; // 0xf7
+ field @Deprecated public static final int OP_IPUT_QUICK = 245; // 0xf5
+ field public static final int OP_IPUT_SHORT = 95; // 0x5f
+ field public static final int OP_IPUT_SHORT_JUMBO = 5119; // 0x13ff
+ field public static final int OP_IPUT_WIDE = 90; // 0x5a
+ field public static final int OP_IPUT_WIDE_JUMBO = 3839; // 0xeff
+ field @Deprecated public static final int OP_IPUT_WIDE_QUICK = 246; // 0xf6
+ field @Deprecated public static final int OP_IPUT_WIDE_VOLATILE = 233; // 0xe9
+ field public static final int OP_LONG_TO_DOUBLE = 134; // 0x86
+ field public static final int OP_LONG_TO_FLOAT = 133; // 0x85
+ field public static final int OP_LONG_TO_INT = 132; // 0x84
+ field public static final int OP_MONITOR_ENTER = 29; // 0x1d
+ field public static final int OP_MONITOR_EXIT = 30; // 0x1e
+ field public static final int OP_MOVE = 1; // 0x1
+ field public static final int OP_MOVE_16 = 3; // 0x3
+ field public static final int OP_MOVE_EXCEPTION = 13; // 0xd
+ field public static final int OP_MOVE_FROM16 = 2; // 0x2
+ field public static final int OP_MOVE_OBJECT = 7; // 0x7
+ field public static final int OP_MOVE_OBJECT_16 = 9; // 0x9
+ field public static final int OP_MOVE_OBJECT_FROM16 = 8; // 0x8
+ field public static final int OP_MOVE_RESULT = 10; // 0xa
+ field public static final int OP_MOVE_RESULT_OBJECT = 12; // 0xc
+ field public static final int OP_MOVE_RESULT_WIDE = 11; // 0xb
+ field public static final int OP_MOVE_WIDE = 4; // 0x4
+ field public static final int OP_MOVE_WIDE_16 = 6; // 0x6
+ field public static final int OP_MOVE_WIDE_FROM16 = 5; // 0x5
+ field public static final int OP_MUL_DOUBLE = 173; // 0xad
+ field public static final int OP_MUL_DOUBLE_2ADDR = 205; // 0xcd
+ field public static final int OP_MUL_FLOAT = 168; // 0xa8
+ field public static final int OP_MUL_FLOAT_2ADDR = 200; // 0xc8
+ field public static final int OP_MUL_INT = 146; // 0x92
+ field public static final int OP_MUL_INT_2ADDR = 178; // 0xb2
+ field public static final int OP_MUL_INT_LIT16 = 210; // 0xd2
+ field public static final int OP_MUL_INT_LIT8 = 218; // 0xda
+ field public static final int OP_MUL_LONG = 157; // 0x9d
+ field public static final int OP_MUL_LONG_2ADDR = 189; // 0xbd
+ field public static final int OP_NEG_DOUBLE = 128; // 0x80
+ field public static final int OP_NEG_FLOAT = 127; // 0x7f
+ field public static final int OP_NEG_INT = 123; // 0x7b
+ field public static final int OP_NEG_LONG = 125; // 0x7d
+ field public static final int OP_NEW_ARRAY = 35; // 0x23
+ field public static final int OP_NEW_ARRAY_JUMBO = 1279; // 0x4ff
+ field public static final int OP_NEW_INSTANCE = 34; // 0x22
+ field public static final int OP_NEW_INSTANCE_JUMBO = 1023; // 0x3ff
+ field public static final int OP_NOP = 0; // 0x0
+ field public static final int OP_NOT_INT = 124; // 0x7c
+ field public static final int OP_NOT_LONG = 126; // 0x7e
+ field public static final int OP_OR_INT = 150; // 0x96
+ field public static final int OP_OR_INT_2ADDR = 182; // 0xb6
+ field public static final int OP_OR_INT_LIT16 = 214; // 0xd6
+ field public static final int OP_OR_INT_LIT8 = 222; // 0xde
+ field public static final int OP_OR_LONG = 161; // 0xa1
+ field public static final int OP_OR_LONG_2ADDR = 193; // 0xc1
+ field public static final int OP_PACKED_SWITCH = 43; // 0x2b
+ field public static final int OP_REM_DOUBLE = 175; // 0xaf
+ field public static final int OP_REM_DOUBLE_2ADDR = 207; // 0xcf
+ field public static final int OP_REM_FLOAT = 170; // 0xaa
+ field public static final int OP_REM_FLOAT_2ADDR = 202; // 0xca
+ field public static final int OP_REM_INT = 148; // 0x94
+ field public static final int OP_REM_INT_2ADDR = 180; // 0xb4
+ field public static final int OP_REM_INT_LIT16 = 212; // 0xd4
+ field public static final int OP_REM_INT_LIT8 = 220; // 0xdc
+ field public static final int OP_REM_LONG = 159; // 0x9f
+ field public static final int OP_REM_LONG_2ADDR = 191; // 0xbf
+ field public static final int OP_RETURN = 15; // 0xf
+ field public static final int OP_RETURN_OBJECT = 17; // 0x11
+ field public static final int OP_RETURN_VOID = 14; // 0xe
+ field public static final int OP_RETURN_WIDE = 16; // 0x10
+ field public static final int OP_RSUB_INT = 209; // 0xd1
+ field public static final int OP_RSUB_INT_LIT8 = 217; // 0xd9
+ field public static final int OP_SGET = 96; // 0x60
+ field public static final int OP_SGET_BOOLEAN = 99; // 0x63
+ field public static final int OP_SGET_BOOLEAN_JUMBO = 6143; // 0x17ff
+ field public static final int OP_SGET_BYTE = 100; // 0x64
+ field public static final int OP_SGET_BYTE_JUMBO = 6399; // 0x18ff
+ field public static final int OP_SGET_CHAR = 101; // 0x65
+ field public static final int OP_SGET_CHAR_JUMBO = 6655; // 0x19ff
+ field public static final int OP_SGET_JUMBO = 5375; // 0x14ff
+ field public static final int OP_SGET_OBJECT = 98; // 0x62
+ field public static final int OP_SGET_OBJECT_JUMBO = 5887; // 0x16ff
+ field public static final int OP_SGET_SHORT = 102; // 0x66
+ field public static final int OP_SGET_SHORT_JUMBO = 6911; // 0x1aff
+ field public static final int OP_SGET_WIDE = 97; // 0x61
+ field public static final int OP_SGET_WIDE_JUMBO = 5631; // 0x15ff
+ field @Deprecated public static final int OP_SGET_WIDE_VOLATILE = 234; // 0xea
+ field public static final int OP_SHL_INT = 152; // 0x98
+ field public static final int OP_SHL_INT_2ADDR = 184; // 0xb8
+ field public static final int OP_SHL_INT_LIT8 = 224; // 0xe0
+ field public static final int OP_SHL_LONG = 163; // 0xa3
+ field public static final int OP_SHL_LONG_2ADDR = 195; // 0xc3
+ field public static final int OP_SHR_INT = 153; // 0x99
+ field public static final int OP_SHR_INT_2ADDR = 185; // 0xb9
+ field public static final int OP_SHR_INT_LIT8 = 225; // 0xe1
+ field public static final int OP_SHR_LONG = 164; // 0xa4
+ field public static final int OP_SHR_LONG_2ADDR = 196; // 0xc4
+ field public static final int OP_SPARSE_SWITCH = 44; // 0x2c
+ field public static final int OP_SPUT = 103; // 0x67
+ field public static final int OP_SPUT_BOOLEAN = 106; // 0x6a
+ field public static final int OP_SPUT_BOOLEAN_JUMBO = 7935; // 0x1eff
+ field public static final int OP_SPUT_BYTE = 107; // 0x6b
+ field public static final int OP_SPUT_BYTE_JUMBO = 8191; // 0x1fff
+ field public static final int OP_SPUT_CHAR = 108; // 0x6c
+ field public static final int OP_SPUT_CHAR_JUMBO = 8447; // 0x20ff
+ field public static final int OP_SPUT_JUMBO = 7167; // 0x1bff
+ field public static final int OP_SPUT_OBJECT = 105; // 0x69
+ field public static final int OP_SPUT_OBJECT_JUMBO = 7679; // 0x1dff
+ field public static final int OP_SPUT_SHORT = 109; // 0x6d
+ field public static final int OP_SPUT_SHORT_JUMBO = 8703; // 0x21ff
+ field public static final int OP_SPUT_WIDE = 104; // 0x68
+ field public static final int OP_SPUT_WIDE_JUMBO = 7423; // 0x1cff
+ field @Deprecated public static final int OP_SPUT_WIDE_VOLATILE = 235; // 0xeb
+ field public static final int OP_SUB_DOUBLE = 172; // 0xac
+ field public static final int OP_SUB_DOUBLE_2ADDR = 204; // 0xcc
+ field public static final int OP_SUB_FLOAT = 167; // 0xa7
+ field public static final int OP_SUB_FLOAT_2ADDR = 199; // 0xc7
+ field public static final int OP_SUB_INT = 145; // 0x91
+ field public static final int OP_SUB_INT_2ADDR = 177; // 0xb1
+ field public static final int OP_SUB_LONG = 156; // 0x9c
+ field public static final int OP_SUB_LONG_2ADDR = 188; // 0xbc
+ field public static final int OP_THROW = 39; // 0x27
+ field @Deprecated public static final int OP_THROW_VERIFICATION_ERROR = 237; // 0xed
+ field public static final int OP_USHR_INT = 154; // 0x9a
+ field public static final int OP_USHR_INT_2ADDR = 186; // 0xba
+ field public static final int OP_USHR_INT_LIT8 = 226; // 0xe2
+ field public static final int OP_USHR_LONG = 165; // 0xa5
+ field public static final int OP_USHR_LONG_2ADDR = 197; // 0xc5
+ field public static final int OP_XOR_INT = 151; // 0x97
+ field public static final int OP_XOR_INT_2ADDR = 183; // 0xb7
+ field public static final int OP_XOR_INT_LIT16 = 215; // 0xd7
+ field public static final int OP_XOR_INT_LIT8 = 223; // 0xdf
+ field public static final int OP_XOR_LONG = 162; // 0xa2
+ field public static final int OP_XOR_LONG_2ADDR = 194; // 0xc2
+ }
+
+}
+
+package dalvik.system {
+
+ public class BaseDexClassLoader extends java.lang.ClassLoader {
+ ctor public BaseDexClassLoader(String, java.io.File, String, ClassLoader);
+ method public String findLibrary(String);
+ method protected java.util.Enumeration<java.net.URL> findResources(String);
+ }
+
+ public final class DelegateLastClassLoader extends dalvik.system.PathClassLoader {
+ ctor public DelegateLastClassLoader(String, ClassLoader);
+ ctor public DelegateLastClassLoader(String, String, ClassLoader);
+ ctor public DelegateLastClassLoader(@NonNull String, @Nullable String, @Nullable ClassLoader, boolean);
+ }
+
+ public class DexClassLoader extends dalvik.system.BaseDexClassLoader {
+ ctor public DexClassLoader(String, String, String, ClassLoader);
+ }
+
+ @Deprecated public final class DexFile {
+ ctor @Deprecated public DexFile(java.io.File) throws java.io.IOException;
+ ctor @Deprecated public DexFile(String) throws java.io.IOException;
+ method @Deprecated public void close() throws java.io.IOException;
+ method @Deprecated public java.util.Enumeration<java.lang.String> entries();
+ method @Deprecated public String getName();
+ method @Deprecated public static boolean isDexOptNeeded(String) throws java.io.FileNotFoundException, java.io.IOException;
+ method @Deprecated public Class loadClass(String, ClassLoader);
+ method @Deprecated public static dalvik.system.DexFile loadDex(String, String, int) throws java.io.IOException;
+ }
+
+ public final class InMemoryDexClassLoader extends dalvik.system.BaseDexClassLoader {
+ ctor public InMemoryDexClassLoader(@NonNull java.nio.ByteBuffer[], @Nullable String, @Nullable ClassLoader);
+ ctor public InMemoryDexClassLoader(@NonNull java.nio.ByteBuffer[], @Nullable ClassLoader);
+ ctor public InMemoryDexClassLoader(@NonNull java.nio.ByteBuffer, @Nullable ClassLoader);
+ }
+
+ public class PathClassLoader extends dalvik.system.BaseDexClassLoader {
+ ctor public PathClassLoader(String, ClassLoader);
+ ctor public PathClassLoader(String, String, ClassLoader);
+ }
+
+}
+
+package java.awt.font {
+
+ public final class NumericShaper implements java.io.Serializable {
+ method public static java.awt.font.NumericShaper getContextualShaper(int);
+ method public static java.awt.font.NumericShaper getContextualShaper(java.util.Set<java.awt.font.NumericShaper.Range>);
+ method public static java.awt.font.NumericShaper getContextualShaper(int, int);
+ method public static java.awt.font.NumericShaper getContextualShaper(java.util.Set<java.awt.font.NumericShaper.Range>, java.awt.font.NumericShaper.Range);
+ method public java.util.Set<java.awt.font.NumericShaper.Range> getRangeSet();
+ method public int getRanges();
+ method public static java.awt.font.NumericShaper getShaper(int);
+ method public static java.awt.font.NumericShaper getShaper(java.awt.font.NumericShaper.Range);
+ method public boolean isContextual();
+ method public void shape(char[], int, int);
+ method public void shape(char[], int, int, int);
+ method public void shape(char[], int, int, java.awt.font.NumericShaper.Range);
+ field public static final int ALL_RANGES = 524287; // 0x7ffff
+ field public static final int ARABIC = 2; // 0x2
+ field public static final int BENGALI = 16; // 0x10
+ field public static final int DEVANAGARI = 8; // 0x8
+ field public static final int EASTERN_ARABIC = 4; // 0x4
+ field public static final int ETHIOPIC = 65536; // 0x10000
+ field public static final int EUROPEAN = 1; // 0x1
+ field public static final int GUJARATI = 64; // 0x40
+ field public static final int GURMUKHI = 32; // 0x20
+ field public static final int KANNADA = 1024; // 0x400
+ field public static final int KHMER = 131072; // 0x20000
+ field public static final int LAO = 8192; // 0x2000
+ field public static final int MALAYALAM = 2048; // 0x800
+ field public static final int MONGOLIAN = 262144; // 0x40000
+ field public static final int MYANMAR = 32768; // 0x8000
+ field public static final int ORIYA = 128; // 0x80
+ field public static final int TAMIL = 256; // 0x100
+ field public static final int TELUGU = 512; // 0x200
+ field public static final int THAI = 4096; // 0x1000
+ field public static final int TIBETAN = 16384; // 0x4000
+ }
+
+ public enum NumericShaper.Range {
+ enum_constant public static final java.awt.font.NumericShaper.Range ARABIC;
+ enum_constant public static final java.awt.font.NumericShaper.Range BALINESE;
+ enum_constant public static final java.awt.font.NumericShaper.Range BENGALI;
+ enum_constant public static final java.awt.font.NumericShaper.Range CHAM;
+ enum_constant public static final java.awt.font.NumericShaper.Range DEVANAGARI;
+ enum_constant public static final java.awt.font.NumericShaper.Range EASTERN_ARABIC;
+ enum_constant public static final java.awt.font.NumericShaper.Range ETHIOPIC;
+ enum_constant public static final java.awt.font.NumericShaper.Range EUROPEAN;
+ enum_constant public static final java.awt.font.NumericShaper.Range GUJARATI;
+ enum_constant public static final java.awt.font.NumericShaper.Range GURMUKHI;
+ enum_constant public static final java.awt.font.NumericShaper.Range JAVANESE;
+ enum_constant public static final java.awt.font.NumericShaper.Range KANNADA;
+ enum_constant public static final java.awt.font.NumericShaper.Range KAYAH_LI;
+ enum_constant public static final java.awt.font.NumericShaper.Range KHMER;
+ enum_constant public static final java.awt.font.NumericShaper.Range LAO;
+ enum_constant public static final java.awt.font.NumericShaper.Range LEPCHA;
+ enum_constant public static final java.awt.font.NumericShaper.Range LIMBU;
+ enum_constant public static final java.awt.font.NumericShaper.Range MALAYALAM;
+ enum_constant public static final java.awt.font.NumericShaper.Range MEETEI_MAYEK;
+ enum_constant public static final java.awt.font.NumericShaper.Range MONGOLIAN;
+ enum_constant public static final java.awt.font.NumericShaper.Range MYANMAR;
+ enum_constant public static final java.awt.font.NumericShaper.Range MYANMAR_SHAN;
+ enum_constant public static final java.awt.font.NumericShaper.Range NEW_TAI_LUE;
+ enum_constant public static final java.awt.font.NumericShaper.Range NKO;
+ enum_constant public static final java.awt.font.NumericShaper.Range OL_CHIKI;
+ enum_constant public static final java.awt.font.NumericShaper.Range ORIYA;
+ enum_constant public static final java.awt.font.NumericShaper.Range SAURASHTRA;
+ enum_constant public static final java.awt.font.NumericShaper.Range SUNDANESE;
+ enum_constant public static final java.awt.font.NumericShaper.Range TAI_THAM_HORA;
+ enum_constant public static final java.awt.font.NumericShaper.Range TAI_THAM_THAM;
+ enum_constant public static final java.awt.font.NumericShaper.Range TAMIL;
+ enum_constant public static final java.awt.font.NumericShaper.Range TELUGU;
+ enum_constant public static final java.awt.font.NumericShaper.Range THAI;
+ enum_constant public static final java.awt.font.NumericShaper.Range TIBETAN;
+ enum_constant public static final java.awt.font.NumericShaper.Range VAI;
+ }
+
+ public final class TextAttribute extends java.text.AttributedCharacterIterator.Attribute {
+ ctor protected TextAttribute(String);
+ field public static final java.awt.font.TextAttribute BACKGROUND;
+ field public static final java.awt.font.TextAttribute BIDI_EMBEDDING;
+ field public static final java.awt.font.TextAttribute CHAR_REPLACEMENT;
+ field public static final java.awt.font.TextAttribute FAMILY;
+ field public static final java.awt.font.TextAttribute FONT;
+ field public static final java.awt.font.TextAttribute FOREGROUND;
+ field public static final java.awt.font.TextAttribute INPUT_METHOD_HIGHLIGHT;
+ field public static final java.awt.font.TextAttribute INPUT_METHOD_UNDERLINE;
+ field public static final java.awt.font.TextAttribute JUSTIFICATION;
+ field public static final Float JUSTIFICATION_FULL;
+ field public static final Float JUSTIFICATION_NONE;
+ field public static final java.awt.font.TextAttribute KERNING;
+ field public static final Integer KERNING_ON;
+ field public static final java.awt.font.TextAttribute LIGATURES;
+ field public static final Integer LIGATURES_ON;
+ field public static final java.awt.font.TextAttribute NUMERIC_SHAPING;
+ field public static final java.awt.font.TextAttribute POSTURE;
+ field public static final Float POSTURE_OBLIQUE;
+ field public static final Float POSTURE_REGULAR;
+ field public static final java.awt.font.TextAttribute RUN_DIRECTION;
+ field public static final Boolean RUN_DIRECTION_LTR;
+ field public static final Boolean RUN_DIRECTION_RTL;
+ field public static final java.awt.font.TextAttribute SIZE;
+ field public static final java.awt.font.TextAttribute STRIKETHROUGH;
+ field public static final Boolean STRIKETHROUGH_ON;
+ field public static final java.awt.font.TextAttribute SUPERSCRIPT;
+ field public static final Integer SUPERSCRIPT_SUB;
+ field public static final Integer SUPERSCRIPT_SUPER;
+ field public static final java.awt.font.TextAttribute SWAP_COLORS;
+ field public static final Boolean SWAP_COLORS_ON;
+ field public static final java.awt.font.TextAttribute TRACKING;
+ field public static final Float TRACKING_LOOSE;
+ field public static final Float TRACKING_TIGHT;
+ field public static final java.awt.font.TextAttribute TRANSFORM;
+ field public static final java.awt.font.TextAttribute UNDERLINE;
+ field public static final Integer UNDERLINE_LOW_DASHED;
+ field public static final Integer UNDERLINE_LOW_DOTTED;
+ field public static final Integer UNDERLINE_LOW_GRAY;
+ field public static final Integer UNDERLINE_LOW_ONE_PIXEL;
+ field public static final Integer UNDERLINE_LOW_TWO_PIXEL;
+ field public static final Integer UNDERLINE_ON;
+ field public static final java.awt.font.TextAttribute WEIGHT;
+ field public static final Float WEIGHT_BOLD;
+ field public static final Float WEIGHT_DEMIBOLD;
+ field public static final Float WEIGHT_DEMILIGHT;
+ field public static final Float WEIGHT_EXTRABOLD;
+ field public static final Float WEIGHT_EXTRA_LIGHT;
+ field public static final Float WEIGHT_HEAVY;
+ field public static final Float WEIGHT_LIGHT;
+ field public static final Float WEIGHT_MEDIUM;
+ field public static final Float WEIGHT_REGULAR;
+ field public static final Float WEIGHT_SEMIBOLD;
+ field public static final Float WEIGHT_ULTRABOLD;
+ field public static final java.awt.font.TextAttribute WIDTH;
+ field public static final Float WIDTH_CONDENSED;
+ field public static final Float WIDTH_EXTENDED;
+ field public static final Float WIDTH_REGULAR;
+ field public static final Float WIDTH_SEMI_CONDENSED;
+ field public static final Float WIDTH_SEMI_EXTENDED;
+ }
+
+}
+
+package java.beans {
+
+ public class IndexedPropertyChangeEvent extends java.beans.PropertyChangeEvent {
+ ctor public IndexedPropertyChangeEvent(Object, String, Object, Object, int);
+ method public int getIndex();
+ }
+
+ public class PropertyChangeEvent extends java.util.EventObject {
+ ctor public PropertyChangeEvent(Object, String, Object, Object);
+ method public Object getNewValue();
+ method public Object getOldValue();
+ method public Object getPropagationId();
+ method public String getPropertyName();
+ method public void setPropagationId(Object);
+ }
+
+ public interface PropertyChangeListener extends java.util.EventListener {
+ method public void propertyChange(java.beans.PropertyChangeEvent);
+ }
+
+ public class PropertyChangeListenerProxy extends java.util.EventListenerProxy<java.beans.PropertyChangeListener> implements java.beans.PropertyChangeListener {
+ ctor public PropertyChangeListenerProxy(String, java.beans.PropertyChangeListener);
+ method public String getPropertyName();
+ method public void propertyChange(java.beans.PropertyChangeEvent);
+ }
+
+ public class PropertyChangeSupport implements java.io.Serializable {
+ ctor public PropertyChangeSupport(Object);
+ method public void addPropertyChangeListener(java.beans.PropertyChangeListener);
+ method public void addPropertyChangeListener(String, java.beans.PropertyChangeListener);
+ method public void fireIndexedPropertyChange(String, int, Object, Object);
+ method public void fireIndexedPropertyChange(String, int, int, int);
+ method public void fireIndexedPropertyChange(String, int, boolean, boolean);
+ method public void firePropertyChange(String, Object, Object);
+ method public void firePropertyChange(String, int, int);
+ method public void firePropertyChange(String, boolean, boolean);
+ method public void firePropertyChange(java.beans.PropertyChangeEvent);
+ method public java.beans.PropertyChangeListener[] getPropertyChangeListeners();
+ method public java.beans.PropertyChangeListener[] getPropertyChangeListeners(String);
+ method public boolean hasListeners(String);
+ method public void removePropertyChangeListener(java.beans.PropertyChangeListener);
+ method public void removePropertyChangeListener(String, java.beans.PropertyChangeListener);
+ }
+
+}
+
+package java.io {
+
+ public class BufferedInputStream extends java.io.FilterInputStream {
+ ctor public BufferedInputStream(java.io.InputStream);
+ ctor public BufferedInputStream(java.io.InputStream, int);
+ field protected volatile byte[] buf;
+ field protected int count;
+ field protected int marklimit;
+ field protected int markpos;
+ field protected int pos;
+ }
+
+ public class BufferedOutputStream extends java.io.FilterOutputStream {
+ ctor public BufferedOutputStream(java.io.OutputStream);
+ ctor public BufferedOutputStream(java.io.OutputStream, int);
+ field protected byte[] buf;
+ field protected int count;
+ }
+
+ public class BufferedReader extends java.io.Reader {
+ ctor public BufferedReader(java.io.Reader, int);
+ ctor public BufferedReader(java.io.Reader);
+ method public void close() throws java.io.IOException;
+ method public java.util.stream.Stream<java.lang.String> lines();
+ method public int read(char[], int, int) throws java.io.IOException;
+ method public String readLine() throws java.io.IOException;
+ }
+
+ public class BufferedWriter extends java.io.Writer {
+ ctor public BufferedWriter(java.io.Writer);
+ ctor public BufferedWriter(java.io.Writer, int);
+ method public void close() throws java.io.IOException;
+ method public void flush() throws java.io.IOException;
+ method public void newLine() throws java.io.IOException;
+ method public void write(char[], int, int) throws java.io.IOException;
+ }
+
+ public class ByteArrayInputStream extends java.io.InputStream {
+ ctor public ByteArrayInputStream(byte[]);
+ ctor public ByteArrayInputStream(byte[], int, int);
+ method public int available();
+ method public int read();
+ method public int read(byte[], int, int);
+ method public byte[] readAllBytes();
+ method public int readNBytes(byte[], int, int);
+ method public void reset();
+ method public long skip(long);
+ field protected byte[] buf;
+ field protected int count;
+ field protected int mark;
+ field protected int pos;
+ }
+
+ public class ByteArrayOutputStream extends java.io.OutputStream {
+ ctor public ByteArrayOutputStream();
+ ctor public ByteArrayOutputStream(int);
+ method public void reset();
+ method public int size();
+ method @NonNull public byte[] toByteArray();
+ method @NonNull public String toString(@NonNull String) throws java.io.UnsupportedEncodingException;
+ method @NonNull public String toString(@NonNull java.nio.charset.Charset);
+ method @Deprecated @NonNull public String toString(int);
+ method public void write(int);
+ method public void write(@NonNull byte[], int, int);
+ method public void writeBytes(byte[]);
+ method public void writeTo(@NonNull java.io.OutputStream) throws java.io.IOException;
+ field @NonNull protected byte[] buf;
+ field protected int count;
+ }
+
+ public class CharArrayReader extends java.io.Reader {
+ ctor public CharArrayReader(char[]);
+ ctor public CharArrayReader(char[], int, int);
+ method public void close();
+ method public int read(char[], int, int) throws java.io.IOException;
+ field protected char[] buf;
+ field protected int count;
+ field protected int markedPos;
+ field protected int pos;
+ }
+
+ public class CharArrayWriter extends java.io.Writer {
+ ctor public CharArrayWriter();
+ ctor public CharArrayWriter(int);
+ method public java.io.CharArrayWriter append(CharSequence);
+ method public java.io.CharArrayWriter append(CharSequence, int, int);
+ method public java.io.CharArrayWriter append(char);
+ method public void close();
+ method public void flush();
+ method public void reset();
+ method public int size();
+ method public char[] toCharArray();
+ method public void write(int);
+ method public void write(char[], int, int);
+ method public void write(String, int, int);
+ method public void writeTo(java.io.Writer) throws java.io.IOException;
+ field protected char[] buf;
+ field protected int count;
+ }
+
+ public class CharConversionException extends java.io.IOException {
+ ctor public CharConversionException();
+ ctor public CharConversionException(String);
+ }
+
+ public interface Closeable extends java.lang.AutoCloseable {
+ method public void close() throws java.io.IOException;
+ }
+
+ public final class Console implements java.io.Flushable {
+ method public void flush();
+ method public java.io.Console format(String, java.lang.Object...);
+ method public java.io.Console printf(String, java.lang.Object...);
+ method public String readLine(String, java.lang.Object...);
+ method public String readLine();
+ method public char[] readPassword(String, java.lang.Object...);
+ method public char[] readPassword();
+ method public java.io.Reader reader();
+ method public java.io.PrintWriter writer();
+ }
+
+ public interface DataInput {
+ method public boolean readBoolean() throws java.io.IOException;
+ method public byte readByte() throws java.io.IOException;
+ method public char readChar() throws java.io.IOException;
+ method public double readDouble() throws java.io.IOException;
+ method public float readFloat() throws java.io.IOException;
+ method public void readFully(byte[]) throws java.io.IOException;
+ method public void readFully(byte[], int, int) throws java.io.IOException;
+ method public int readInt() throws java.io.IOException;
+ method public String readLine() throws java.io.IOException;
+ method public long readLong() throws java.io.IOException;
+ method public short readShort() throws java.io.IOException;
+ method public String readUTF() throws java.io.IOException;
+ method public int readUnsignedByte() throws java.io.IOException;
+ method public int readUnsignedShort() throws java.io.IOException;
+ method public int skipBytes(int) throws java.io.IOException;
+ }
+
+ public class DataInputStream extends java.io.FilterInputStream implements java.io.DataInput {
+ ctor public DataInputStream(java.io.InputStream);
+ method public final int read(byte[]) throws java.io.IOException;
+ method public final int read(byte[], int, int) throws java.io.IOException;
+ method public final boolean readBoolean() throws java.io.IOException;
+ method public final byte readByte() throws java.io.IOException;
+ method public final char readChar() throws java.io.IOException;
+ method public final double readDouble() throws java.io.IOException;
+ method public final float readFloat() throws java.io.IOException;
+ method public final void readFully(byte[]) throws java.io.IOException;
+ method public final void readFully(byte[], int, int) throws java.io.IOException;
+ method public final int readInt() throws java.io.IOException;
+ method @Deprecated public final String readLine() throws java.io.IOException;
+ method public final long readLong() throws java.io.IOException;
+ method public final short readShort() throws java.io.IOException;
+ method public final String readUTF() throws java.io.IOException;
+ method public static final String readUTF(java.io.DataInput) throws java.io.IOException;
+ method public final int readUnsignedByte() throws java.io.IOException;
+ method public final int readUnsignedShort() throws java.io.IOException;
+ method public final int skipBytes(int) throws java.io.IOException;
+ }
+
+ public interface DataOutput {
+ method public void write(int) throws java.io.IOException;
+ method public void write(byte[]) throws java.io.IOException;
+ method public void write(byte[], int, int) throws java.io.IOException;
+ method public void writeBoolean(boolean) throws java.io.IOException;
+ method public void writeByte(int) throws java.io.IOException;
+ method public void writeBytes(String) throws java.io.IOException;
+ method public void writeChar(int) throws java.io.IOException;
+ method public void writeChars(String) throws java.io.IOException;
+ method public void writeDouble(double) throws java.io.IOException;
+ method public void writeFloat(float) throws java.io.IOException;
+ method public void writeInt(int) throws java.io.IOException;
+ method public void writeLong(long) throws java.io.IOException;
+ method public void writeShort(int) throws java.io.IOException;
+ method public void writeUTF(String) throws java.io.IOException;
+ }
+
+ public class DataOutputStream extends java.io.FilterOutputStream implements java.io.DataOutput {
+ ctor public DataOutputStream(java.io.OutputStream);
+ method public final int size();
+ method public final void writeBoolean(boolean) throws java.io.IOException;
+ method public final void writeByte(int) throws java.io.IOException;
+ method public final void writeBytes(String) throws java.io.IOException;
+ method public final void writeChar(int) throws java.io.IOException;
+ method public final void writeChars(String) throws java.io.IOException;
+ method public final void writeDouble(double) throws java.io.IOException;
+ method public final void writeFloat(float) throws java.io.IOException;
+ method public final void writeInt(int) throws java.io.IOException;
+ method public final void writeLong(long) throws java.io.IOException;
+ method public final void writeShort(int) throws java.io.IOException;
+ method public final void writeUTF(String) throws java.io.IOException;
+ field protected int written;
+ }
+
+ public class EOFException extends java.io.IOException {
+ ctor public EOFException();
+ ctor public EOFException(String);
+ }
+
+ public interface Externalizable extends java.io.Serializable {
+ method public void readExternal(java.io.ObjectInput) throws java.lang.ClassNotFoundException, java.io.IOException;
+ method public void writeExternal(java.io.ObjectOutput) throws java.io.IOException;
+ }
+
+ public class File implements java.lang.Comparable<java.io.File> java.io.Serializable {
+ ctor public File(@NonNull String);
+ ctor public File(@Nullable String, @NonNull String);
+ ctor public File(@Nullable java.io.File, @NonNull String);
+ ctor public File(@NonNull java.net.URI);
+ method public boolean canExecute();
+ method public boolean canRead();
+ method public boolean canWrite();
+ method public int compareTo(@NonNull java.io.File);
+ method public boolean createNewFile() throws java.io.IOException;
+ method @NonNull public static java.io.File createTempFile(@NonNull String, @Nullable String, @Nullable java.io.File) throws java.io.IOException;
+ method @NonNull public static java.io.File createTempFile(@NonNull String, @Nullable String) throws java.io.IOException;
+ method public boolean delete();
+ method public void deleteOnExit();
+ method public boolean exists();
+ method @NonNull public java.io.File getAbsoluteFile();
+ method @NonNull public String getAbsolutePath();
+ method @NonNull public java.io.File getCanonicalFile() throws java.io.IOException;
+ method @NonNull public String getCanonicalPath() throws java.io.IOException;
+ method public long getFreeSpace();
+ method @NonNull public String getName();
+ method @Nullable public String getParent();
+ method @Nullable public java.io.File getParentFile();
+ method @NonNull public String getPath();
+ method public long getTotalSpace();
+ method public long getUsableSpace();
+ method public boolean isAbsolute();
+ method public boolean isDirectory();
+ method public boolean isFile();
+ method public boolean isHidden();
+ method public long lastModified();
+ method public long length();
+ method @Nullable public String[] list();
+ method @Nullable public String[] list(@Nullable java.io.FilenameFilter);
+ method @Nullable public java.io.File[] listFiles();
+ method @Nullable public java.io.File[] listFiles(@Nullable java.io.FilenameFilter);
+ method @Nullable public java.io.File[] listFiles(@Nullable java.io.FileFilter);
+ method @NonNull public static java.io.File[] listRoots();
+ method public boolean mkdir();
+ method public boolean mkdirs();
+ method public boolean renameTo(@NonNull java.io.File);
+ method public boolean setExecutable(boolean, boolean);
+ method public boolean setExecutable(boolean);
+ method public boolean setLastModified(long);
+ method public boolean setReadOnly();
+ method public boolean setReadable(boolean, boolean);
+ method public boolean setReadable(boolean);
+ method public boolean setWritable(boolean, boolean);
+ method public boolean setWritable(boolean);
+ method @NonNull public java.nio.file.Path toPath();
+ method @NonNull public java.net.URI toURI();
+ method @Deprecated @NonNull public java.net.URL toURL() throws java.net.MalformedURLException;
+ field @NonNull public static final String pathSeparator;
+ field public static final char pathSeparatorChar;
+ field @NonNull public static final String separator;
+ field public static final char separatorChar;
+ }
+
+ public final class FileDescriptor {
+ ctor public FileDescriptor();
+ method public void sync() throws java.io.SyncFailedException;
+ method public boolean valid();
+ field public static final java.io.FileDescriptor err;
+ field public static final java.io.FileDescriptor in;
+ field public static final java.io.FileDescriptor out;
+ }
+
+ @java.lang.FunctionalInterface public interface FileFilter {
+ method public boolean accept(java.io.File);
+ }
+
+ public class FileInputStream extends java.io.InputStream {
+ ctor public FileInputStream(String) throws java.io.FileNotFoundException;
+ ctor public FileInputStream(java.io.File) throws java.io.FileNotFoundException;
+ ctor public FileInputStream(java.io.FileDescriptor);
+ method protected void finalize() throws java.io.IOException;
+ method public java.nio.channels.FileChannel getChannel();
+ method public final java.io.FileDescriptor getFD() throws java.io.IOException;
+ method public int read() throws java.io.IOException;
+ }
+
+ public class FileNotFoundException extends java.io.IOException {
+ ctor public FileNotFoundException();
+ ctor public FileNotFoundException(String);
+ }
+
+ public class FileOutputStream extends java.io.OutputStream {
+ ctor public FileOutputStream(String) throws java.io.FileNotFoundException;
+ ctor public FileOutputStream(String, boolean) throws java.io.FileNotFoundException;
+ ctor public FileOutputStream(java.io.File) throws java.io.FileNotFoundException;
+ ctor public FileOutputStream(java.io.File, boolean) throws java.io.FileNotFoundException;
+ ctor public FileOutputStream(java.io.FileDescriptor);
+ method protected void finalize() throws java.io.IOException;
+ method public java.nio.channels.FileChannel getChannel();
+ method public final java.io.FileDescriptor getFD() throws java.io.IOException;
+ method public void write(int) throws java.io.IOException;
+ }
+
+ public final class FilePermission extends java.security.Permission implements java.io.Serializable {
+ ctor public FilePermission(String, String);
+ method public String getActions();
+ method public boolean implies(java.security.Permission);
+ }
+
+ public class FileReader extends java.io.InputStreamReader {
+ ctor public FileReader(String) throws java.io.FileNotFoundException;
+ ctor public FileReader(java.io.File) throws java.io.FileNotFoundException;
+ ctor public FileReader(java.io.FileDescriptor);
+ ctor public FileReader(String, java.nio.charset.Charset) throws java.io.IOException;
+ ctor public FileReader(java.io.File, java.nio.charset.Charset) throws java.io.IOException;
+ }
+
+ public class FileWriter extends java.io.OutputStreamWriter {
+ ctor public FileWriter(String) throws java.io.IOException;
+ ctor public FileWriter(String, boolean) throws java.io.IOException;
+ ctor public FileWriter(java.io.File) throws java.io.IOException;
+ ctor public FileWriter(java.io.File, boolean) throws java.io.IOException;
+ ctor public FileWriter(java.io.FileDescriptor);
+ ctor public FileWriter(String, java.nio.charset.Charset) throws java.io.IOException;
+ ctor public FileWriter(String, java.nio.charset.Charset, boolean) throws java.io.IOException;
+ ctor public FileWriter(java.io.File, java.nio.charset.Charset) throws java.io.IOException;
+ ctor public FileWriter(java.io.File, java.nio.charset.Charset, boolean) throws java.io.IOException;
+ }
+
+ @java.lang.FunctionalInterface public interface FilenameFilter {
+ method public boolean accept(java.io.File, String);
+ }
+
+ public class FilterInputStream extends java.io.InputStream {
+ ctor protected FilterInputStream(java.io.InputStream);
+ method public int read() throws java.io.IOException;
+ field protected volatile java.io.InputStream in;
+ }
+
+ public class FilterOutputStream extends java.io.OutputStream {
+ ctor public FilterOutputStream(java.io.OutputStream);
+ method public void write(int) throws java.io.IOException;
+ field protected java.io.OutputStream out;
+ }
+
+ public abstract class FilterReader extends java.io.Reader {
+ ctor protected FilterReader(java.io.Reader);
+ method public void close() throws java.io.IOException;
+ method public int read(char[], int, int) throws java.io.IOException;
+ field protected java.io.Reader in;
+ }
+
+ public abstract class FilterWriter extends java.io.Writer {
+ ctor protected FilterWriter(java.io.Writer);
+ method public void close() throws java.io.IOException;
+ method public void flush() throws java.io.IOException;
+ method public void write(char[], int, int) throws java.io.IOException;
+ field protected java.io.Writer out;
+ }
+
+ public interface Flushable {
+ method public void flush() throws java.io.IOException;
+ }
+
+ public class IOError extends java.lang.Error {
+ ctor public IOError(Throwable);
+ }
+
+ public class IOException extends java.lang.Exception {
+ ctor public IOException();
+ ctor public IOException(String);
+ ctor public IOException(String, Throwable);
+ ctor public IOException(Throwable);
+ }
+
+ public abstract class InputStream implements java.io.Closeable {
+ ctor public InputStream();
+ method public int available() throws java.io.IOException;
+ method public void close() throws java.io.IOException;
+ method public void mark(int);
+ method public boolean markSupported();
+ method public static java.io.InputStream nullInputStream();
+ method public abstract int read() throws java.io.IOException;
+ method public int read(byte[]) throws java.io.IOException;
+ method public int read(byte[], int, int) throws java.io.IOException;
+ method public byte[] readAllBytes() throws java.io.IOException;
+ method public byte[] readNBytes(int) throws java.io.IOException;
+ method public int readNBytes(byte[], int, int) throws java.io.IOException;
+ method public void reset() throws java.io.IOException;
+ method public long skip(long) throws java.io.IOException;
+ method public long transferTo(java.io.OutputStream) throws java.io.IOException;
+ }
+
+ public class InputStreamReader extends java.io.Reader {
+ ctor public InputStreamReader(java.io.InputStream);
+ ctor public InputStreamReader(java.io.InputStream, String) throws java.io.UnsupportedEncodingException;
+ ctor public InputStreamReader(java.io.InputStream, java.nio.charset.Charset);
+ ctor public InputStreamReader(java.io.InputStream, java.nio.charset.CharsetDecoder);
+ method public void close() throws java.io.IOException;
+ method public String getEncoding();
+ method public int read(char[], int, int) throws java.io.IOException;
+ }
+
+ public class InterruptedIOException extends java.io.IOException {
+ ctor public InterruptedIOException();
+ ctor public InterruptedIOException(String);
+ field public int bytesTransferred;
+ }
+
+ public class InvalidClassException extends java.io.ObjectStreamException {
+ ctor public InvalidClassException(String);
+ ctor public InvalidClassException(String, String);
+ field public String classname;
+ }
+
+ public class InvalidObjectException extends java.io.ObjectStreamException {
+ ctor public InvalidObjectException(String);
+ }
+
+ @Deprecated public class LineNumberInputStream extends java.io.FilterInputStream {
+ ctor @Deprecated public LineNumberInputStream(java.io.InputStream);
+ method @Deprecated public int getLineNumber();
+ method @Deprecated public void setLineNumber(int);
+ }
+
+ public class LineNumberReader extends java.io.BufferedReader {
+ ctor public LineNumberReader(java.io.Reader);
+ ctor public LineNumberReader(java.io.Reader, int);
+ method public int getLineNumber();
+ method public void setLineNumber(int);
+ }
+
+ public class NotActiveException extends java.io.ObjectStreamException {
+ ctor public NotActiveException(String);
+ ctor public NotActiveException();
+ }
+
+ public class NotSerializableException extends java.io.ObjectStreamException {
+ ctor public NotSerializableException(String);
+ ctor public NotSerializableException();
+ }
+
+ public interface ObjectInput extends java.io.DataInput java.lang.AutoCloseable {
+ method public int available() throws java.io.IOException;
+ method public void close() throws java.io.IOException;
+ method public int read() throws java.io.IOException;
+ method public int read(byte[]) throws java.io.IOException;
+ method public int read(byte[], int, int) throws java.io.IOException;
+ method public Object readObject() throws java.lang.ClassNotFoundException, java.io.IOException;
+ method public long skip(long) throws java.io.IOException;
+ }
+
+ public class ObjectInputStream extends java.io.InputStream implements java.io.ObjectInput java.io.ObjectStreamConstants {
+ ctor public ObjectInputStream(java.io.InputStream) throws java.io.IOException;
+ ctor protected ObjectInputStream() throws java.io.IOException, java.lang.SecurityException;
+ method public void defaultReadObject() throws java.lang.ClassNotFoundException, java.io.IOException;
+ method protected boolean enableResolveObject(boolean) throws java.lang.SecurityException;
+ method public int read() throws java.io.IOException;
+ method public boolean readBoolean() throws java.io.IOException;
+ method public byte readByte() throws java.io.IOException;
+ method public char readChar() throws java.io.IOException;
+ method protected java.io.ObjectStreamClass readClassDescriptor() throws java.lang.ClassNotFoundException, java.io.IOException;
+ method public double readDouble() throws java.io.IOException;
+ method public java.io.ObjectInputStream.GetField readFields() throws java.lang.ClassNotFoundException, java.io.IOException;
+ method public float readFloat() throws java.io.IOException;
+ method public void readFully(byte[]) throws java.io.IOException;
+ method public void readFully(byte[], int, int) throws java.io.IOException;
+ method public int readInt() throws java.io.IOException;
+ method @Deprecated public String readLine() throws java.io.IOException;
+ method public long readLong() throws java.io.IOException;
+ method public final Object readObject() throws java.lang.ClassNotFoundException, java.io.IOException;
+ method protected Object readObjectOverride() throws java.lang.ClassNotFoundException, java.io.IOException;
+ method public short readShort() throws java.io.IOException;
+ method protected void readStreamHeader() throws java.io.IOException, java.io.StreamCorruptedException;
+ method public String readUTF() throws java.io.IOException;
+ method public Object readUnshared() throws java.lang.ClassNotFoundException, java.io.IOException;
+ method public int readUnsignedByte() throws java.io.IOException;
+ method public int readUnsignedShort() throws java.io.IOException;
+ method public void registerValidation(java.io.ObjectInputValidation, int) throws java.io.InvalidObjectException, java.io.NotActiveException;
+ method protected Class<?> resolveClass(java.io.ObjectStreamClass) throws java.lang.ClassNotFoundException, java.io.IOException;
+ method protected Object resolveObject(Object) throws java.io.IOException;
+ method protected Class<?> resolveProxyClass(String[]) throws java.lang.ClassNotFoundException, java.io.IOException;
+ method public int skipBytes(int) throws java.io.IOException;
+ }
+
+ public abstract static class ObjectInputStream.GetField {
+ ctor public ObjectInputStream.GetField();
+ method public abstract boolean defaulted(String) throws java.io.IOException;
+ method public abstract boolean get(String, boolean) throws java.io.IOException;
+ method public abstract byte get(String, byte) throws java.io.IOException;
+ method public abstract char get(String, char) throws java.io.IOException;
+ method public abstract short get(String, short) throws java.io.IOException;
+ method public abstract int get(String, int) throws java.io.IOException;
+ method public abstract long get(String, long) throws java.io.IOException;
+ method public abstract float get(String, float) throws java.io.IOException;
+ method public abstract double get(String, double) throws java.io.IOException;
+ method public abstract Object get(String, Object) throws java.io.IOException;
+ method public abstract java.io.ObjectStreamClass getObjectStreamClass();
+ }
+
+ public interface ObjectInputValidation {
+ method public void validateObject() throws java.io.InvalidObjectException;
+ }
+
+ public interface ObjectOutput extends java.io.DataOutput java.lang.AutoCloseable {
+ method public void close() throws java.io.IOException;
+ method public void flush() throws java.io.IOException;
+ method public void writeObject(Object) throws java.io.IOException;
+ }
+
+ public class ObjectOutputStream extends java.io.OutputStream implements java.io.ObjectOutput java.io.ObjectStreamConstants {
+ ctor public ObjectOutputStream(java.io.OutputStream) throws java.io.IOException;
+ ctor protected ObjectOutputStream() throws java.io.IOException, java.lang.SecurityException;
+ method protected void annotateClass(Class<?>) throws java.io.IOException;
+ method protected void annotateProxyClass(Class<?>) throws java.io.IOException;
+ method public void defaultWriteObject() throws java.io.IOException;
+ method protected void drain() throws java.io.IOException;
+ method protected boolean enableReplaceObject(boolean) throws java.lang.SecurityException;
+ method public java.io.ObjectOutputStream.PutField putFields() throws java.io.IOException;
+ method protected Object replaceObject(Object) throws java.io.IOException;
+ method public void reset() throws java.io.IOException;
+ method public void useProtocolVersion(int) throws java.io.IOException;
+ method public void write(int) throws java.io.IOException;
+ method public void writeBoolean(boolean) throws java.io.IOException;
+ method public void writeByte(int) throws java.io.IOException;
+ method public void writeBytes(String) throws java.io.IOException;
+ method public void writeChar(int) throws java.io.IOException;
+ method public void writeChars(String) throws java.io.IOException;
+ method protected void writeClassDescriptor(java.io.ObjectStreamClass) throws java.io.IOException;
+ method public void writeDouble(double) throws java.io.IOException;
+ method public void writeFields() throws java.io.IOException;
+ method public void writeFloat(float) throws java.io.IOException;
+ method public void writeInt(int) throws java.io.IOException;
+ method public void writeLong(long) throws java.io.IOException;
+ method public final void writeObject(Object) throws java.io.IOException;
+ method protected void writeObjectOverride(Object) throws java.io.IOException;
+ method public void writeShort(int) throws java.io.IOException;
+ method protected void writeStreamHeader() throws java.io.IOException;
+ method public void writeUTF(String) throws java.io.IOException;
+ method public void writeUnshared(Object) throws java.io.IOException;
+ }
+
+ public abstract static class ObjectOutputStream.PutField {
+ ctor public ObjectOutputStream.PutField();
+ method public abstract void put(String, boolean);
+ method public abstract void put(String, byte);
+ method public abstract void put(String, char);
+ method public abstract void put(String, short);
+ method public abstract void put(String, int);
+ method public abstract void put(String, long);
+ method public abstract void put(String, float);
+ method public abstract void put(String, double);
+ method public abstract void put(String, Object);
+ method @Deprecated public abstract void write(java.io.ObjectOutput) throws java.io.IOException;
+ }
+
+ public class ObjectStreamClass implements java.io.Serializable {
+ method public Class<?> forClass();
+ method public java.io.ObjectStreamField getField(String);
+ method public java.io.ObjectStreamField[] getFields();
+ method public String getName();
+ method public long getSerialVersionUID();
+ method public static java.io.ObjectStreamClass lookup(Class<?>);
+ method public static java.io.ObjectStreamClass lookupAny(Class<?>);
+ field public static final java.io.ObjectStreamField[] NO_FIELDS;
+ }
+
+ public interface ObjectStreamConstants {
+ field public static final int PROTOCOL_VERSION_1 = 1; // 0x1
+ field public static final int PROTOCOL_VERSION_2 = 2; // 0x2
+ field public static final byte SC_BLOCK_DATA = 8; // 0x8
+ field public static final byte SC_ENUM = 16; // 0x10
+ field public static final byte SC_EXTERNALIZABLE = 4; // 0x4
+ field public static final byte SC_SERIALIZABLE = 2; // 0x2
+ field public static final byte SC_WRITE_METHOD = 1; // 0x1
+ field public static final short STREAM_MAGIC = -21267; // 0xffffaced
+ field public static final short STREAM_VERSION = 5; // 0x5
+ field public static final java.io.SerializablePermission SUBCLASS_IMPLEMENTATION_PERMISSION;
+ field public static final java.io.SerializablePermission SUBSTITUTION_PERMISSION;
+ field public static final byte TC_ARRAY = 117; // 0x75
+ field public static final byte TC_BASE = 112; // 0x70
+ field public static final byte TC_BLOCKDATA = 119; // 0x77
+ field public static final byte TC_BLOCKDATALONG = 122; // 0x7a
+ field public static final byte TC_CLASS = 118; // 0x76
+ field public static final byte TC_CLASSDESC = 114; // 0x72
+ field public static final byte TC_ENDBLOCKDATA = 120; // 0x78
+ field public static final byte TC_ENUM = 126; // 0x7e
+ field public static final byte TC_EXCEPTION = 123; // 0x7b
+ field public static final byte TC_LONGSTRING = 124; // 0x7c
+ field public static final byte TC_MAX = 126; // 0x7e
+ field public static final byte TC_NULL = 112; // 0x70
+ field public static final byte TC_OBJECT = 115; // 0x73
+ field public static final byte TC_PROXYCLASSDESC = 125; // 0x7d
+ field public static final byte TC_REFERENCE = 113; // 0x71
+ field public static final byte TC_RESET = 121; // 0x79
+ field public static final byte TC_STRING = 116; // 0x74
+ field public static final int baseWireHandle = 8257536; // 0x7e0000
+ }
+
+ public abstract class ObjectStreamException extends java.io.IOException {
+ ctor protected ObjectStreamException(String);
+ ctor protected ObjectStreamException();
+ }
+
+ public class ObjectStreamField implements java.lang.Comparable<java.lang.Object> {
+ ctor public ObjectStreamField(String, Class<?>);
+ ctor public ObjectStreamField(String, Class<?>, boolean);
+ method public int compareTo(Object);
+ method public String getName();
+ method public int getOffset();
+ method public Class<?> getType();
+ method public char getTypeCode();
+ method public String getTypeString();
+ method public boolean isPrimitive();
+ method public boolean isUnshared();
+ method protected void setOffset(int);
+ }
+
+ public class OptionalDataException extends java.io.ObjectStreamException {
+ field public boolean eof;
+ field public int length;
+ }
+
+ public abstract class OutputStream implements java.io.Closeable java.io.Flushable {
+ ctor public OutputStream();
+ method public void close() throws java.io.IOException;
+ method public void flush() throws java.io.IOException;
+ method public static java.io.OutputStream nullOutputStream();
+ method public abstract void write(int) throws java.io.IOException;
+ method public void write(byte[]) throws java.io.IOException;
+ method public void write(byte[], int, int) throws java.io.IOException;
+ }
+
+ public class OutputStreamWriter extends java.io.Writer {
+ ctor public OutputStreamWriter(java.io.OutputStream, String) throws java.io.UnsupportedEncodingException;
+ ctor public OutputStreamWriter(java.io.OutputStream);
+ ctor public OutputStreamWriter(java.io.OutputStream, java.nio.charset.Charset);
+ ctor public OutputStreamWriter(java.io.OutputStream, java.nio.charset.CharsetEncoder);
+ method public void close() throws java.io.IOException;
+ method public void flush() throws java.io.IOException;
+ method public String getEncoding();
+ method public void write(char[], int, int) throws java.io.IOException;
+ }
+
+ public class PipedInputStream extends java.io.InputStream {
+ ctor public PipedInputStream(java.io.PipedOutputStream) throws java.io.IOException;
+ ctor public PipedInputStream(java.io.PipedOutputStream, int) throws java.io.IOException;
+ ctor public PipedInputStream();
+ ctor public PipedInputStream(int);
+ method public void connect(java.io.PipedOutputStream) throws java.io.IOException;
+ method public int read() throws java.io.IOException;
+ method protected void receive(int) throws java.io.IOException;
+ field protected static final int PIPE_SIZE = 1024; // 0x400
+ field protected byte[] buffer;
+ field protected int in;
+ field protected int out;
+ }
+
+ public class PipedOutputStream extends java.io.OutputStream {
+ ctor public PipedOutputStream(java.io.PipedInputStream) throws java.io.IOException;
+ ctor public PipedOutputStream();
+ method public void connect(java.io.PipedInputStream) throws java.io.IOException;
+ method public void write(int) throws java.io.IOException;
+ }
+
+ public class PipedReader extends java.io.Reader {
+ ctor public PipedReader(java.io.PipedWriter) throws java.io.IOException;
+ ctor public PipedReader(java.io.PipedWriter, int) throws java.io.IOException;
+ ctor public PipedReader();
+ ctor public PipedReader(int);
+ method public void close() throws java.io.IOException;
+ method public void connect(java.io.PipedWriter) throws java.io.IOException;
+ method public int read(char[], int, int) throws java.io.IOException;
+ }
+
+ public class PipedWriter extends java.io.Writer {
+ ctor public PipedWriter(java.io.PipedReader) throws java.io.IOException;
+ ctor public PipedWriter();
+ method public void close() throws java.io.IOException;
+ method public void connect(java.io.PipedReader) throws java.io.IOException;
+ method public void flush() throws java.io.IOException;
+ method public void write(char[], int, int) throws java.io.IOException;
+ }
+
+ public class PrintStream extends java.io.FilterOutputStream implements java.lang.Appendable java.io.Closeable {
+ ctor public PrintStream(java.io.OutputStream);
+ ctor public PrintStream(java.io.OutputStream, boolean);
+ ctor public PrintStream(java.io.OutputStream, boolean, String) throws java.io.UnsupportedEncodingException;
+ ctor public PrintStream(java.io.OutputStream, boolean, java.nio.charset.Charset);
+ ctor public PrintStream(String) throws java.io.FileNotFoundException;
+ ctor public PrintStream(String, String) throws java.io.FileNotFoundException, java.io.UnsupportedEncodingException;
+ ctor public PrintStream(String, java.nio.charset.Charset) throws java.io.IOException;
+ ctor public PrintStream(java.io.File) throws java.io.FileNotFoundException;
+ ctor public PrintStream(java.io.File, String) throws java.io.FileNotFoundException, java.io.UnsupportedEncodingException;
+ ctor public PrintStream(java.io.File, java.nio.charset.Charset) throws java.io.IOException;
+ method public java.io.PrintStream append(CharSequence);
+ method public java.io.PrintStream append(CharSequence, int, int);
+ method public java.io.PrintStream append(char);
+ method public boolean checkError();
+ method protected void clearError();
+ method public void close();
+ method public void flush();
+ method public java.io.PrintStream format(String, java.lang.Object...);
+ method public java.io.PrintStream format(java.util.Locale, String, java.lang.Object...);
+ method public void print(boolean);
+ method public void print(char);
+ method public void print(int);
+ method public void print(long);
+ method public void print(float);
+ method public void print(double);
+ method public void print(char[]);
+ method public void print(String);
+ method public void print(Object);
+ method public java.io.PrintStream printf(String, java.lang.Object...);
+ method public java.io.PrintStream printf(java.util.Locale, String, java.lang.Object...);
+ method public void println();
+ method public void println(boolean);
+ method public void println(char);
+ method public void println(int);
+ method public void println(long);
+ method public void println(float);
+ method public void println(double);
+ method public void println(char[]);
+ method public void println(String);
+ method public void println(Object);
+ method protected void setError();
+ method public void write(int);
+ method public void write(byte[], int, int);
+ }
+
+ public class PrintWriter extends java.io.Writer {
+ ctor public PrintWriter(@NonNull java.io.Writer);
+ ctor public PrintWriter(@NonNull java.io.Writer, boolean);
+ ctor public PrintWriter(@NonNull java.io.OutputStream);
+ ctor public PrintWriter(@NonNull java.io.OutputStream, boolean);
+ ctor public PrintWriter(@NonNull java.io.OutputStream, boolean, @NonNull java.nio.charset.Charset);
+ ctor public PrintWriter(@NonNull String) throws java.io.FileNotFoundException;
+ ctor public PrintWriter(@NonNull String, @NonNull String) throws java.io.FileNotFoundException, java.io.UnsupportedEncodingException;
+ ctor public PrintWriter(@NonNull String, @NonNull java.nio.charset.Charset) throws java.io.IOException;
+ ctor public PrintWriter(@NonNull java.io.File) throws java.io.FileNotFoundException;
+ ctor public PrintWriter(@NonNull java.io.File, @NonNull String) throws java.io.FileNotFoundException, java.io.UnsupportedEncodingException;
+ ctor public PrintWriter(@NonNull java.io.File, @NonNull java.nio.charset.Charset) throws java.io.IOException;
+ method @NonNull public java.io.PrintWriter append(@Nullable CharSequence);
+ method @NonNull public java.io.PrintWriter append(@Nullable CharSequence, int, int);
+ method @NonNull public java.io.PrintWriter append(char);
+ method public boolean checkError();
+ method protected void clearError();
+ method public void close();
+ method public void flush();
+ method @NonNull public java.io.PrintWriter format(@NonNull String, @NonNull java.lang.Object...);
+ method @NonNull public java.io.PrintWriter format(@Nullable java.util.Locale, @NonNull String, @NonNull java.lang.Object...);
+ method public void print(boolean);
+ method public void print(char);
+ method public void print(int);
+ method public void print(long);
+ method public void print(float);
+ method public void print(double);
+ method public void print(char[]);
+ method public void print(@Nullable String);
+ method public void print(@Nullable Object);
+ method @NonNull public java.io.PrintWriter printf(@NonNull String, @NonNull java.lang.Object...);
+ method @NonNull public java.io.PrintWriter printf(@Nullable java.util.Locale, @NonNull String, @NonNull java.lang.Object...);
+ method public void println();
+ method public void println(boolean);
+ method public void println(char);
+ method public void println(int);
+ method public void println(long);
+ method public void println(float);
+ method public void println(double);
+ method public void println(char[]);
+ method public void println(@Nullable String);
+ method public void println(@Nullable Object);
+ method protected void setError();
+ method public void write(int);
+ method public void write(char[], int, int);
+ method public void write(char[]);
+ method public void write(@NonNull String, int, int);
+ method public void write(@NonNull String);
+ field protected java.io.Writer out;
+ }
+
+ public class PushbackInputStream extends java.io.FilterInputStream {
+ ctor public PushbackInputStream(java.io.InputStream, int);
+ ctor public PushbackInputStream(java.io.InputStream);
+ method public void unread(int) throws java.io.IOException;
+ method public void unread(byte[], int, int) throws java.io.IOException;
+ method public void unread(byte[]) throws java.io.IOException;
+ field protected byte[] buf;
+ field protected int pos;
+ }
+
+ public class PushbackReader extends java.io.FilterReader {
+ ctor public PushbackReader(java.io.Reader, int);
+ ctor public PushbackReader(java.io.Reader);
+ method public void unread(int) throws java.io.IOException;
+ method public void unread(char[], int, int) throws java.io.IOException;
+ method public void unread(char[]) throws java.io.IOException;
+ }
+
+ public class RandomAccessFile implements java.io.Closeable java.io.DataInput java.io.DataOutput {
+ ctor public RandomAccessFile(String, String) throws java.io.FileNotFoundException;
+ ctor public RandomAccessFile(java.io.File, String) throws java.io.FileNotFoundException;
+ method public void close() throws java.io.IOException;
+ method public final java.nio.channels.FileChannel getChannel();
+ method public final java.io.FileDescriptor getFD() throws java.io.IOException;
+ method public long getFilePointer() throws java.io.IOException;
+ method public long length() throws java.io.IOException;
+ method public int read() throws java.io.IOException;
+ method public int read(byte[], int, int) throws java.io.IOException;
+ method public int read(byte[]) throws java.io.IOException;
+ method public final boolean readBoolean() throws java.io.IOException;
+ method public final byte readByte() throws java.io.IOException;
+ method public final char readChar() throws java.io.IOException;
+ method public final double readDouble() throws java.io.IOException;
+ method public final float readFloat() throws java.io.IOException;
+ method public final void readFully(byte[]) throws java.io.IOException;
+ method public final void readFully(byte[], int, int) throws java.io.IOException;
+ method public final int readInt() throws java.io.IOException;
+ method public final String readLine() throws java.io.IOException;
+ method public final long readLong() throws java.io.IOException;
+ method public final short readShort() throws java.io.IOException;
+ method public final String readUTF() throws java.io.IOException;
+ method public final int readUnsignedByte() throws java.io.IOException;
+ method public final int readUnsignedShort() throws java.io.IOException;
+ method public void seek(long) throws java.io.IOException;
+ method public void setLength(long) throws java.io.IOException;
+ method public int skipBytes(int) throws java.io.IOException;
+ method public void write(int) throws java.io.IOException;
+ method public void write(byte[]) throws java.io.IOException;
+ method public void write(byte[], int, int) throws java.io.IOException;
+ method public final void writeBoolean(boolean) throws java.io.IOException;
+ method public final void writeByte(int) throws java.io.IOException;
+ method public final void writeBytes(String) throws java.io.IOException;
+ method public final void writeChar(int) throws java.io.IOException;
+ method public final void writeChars(String) throws java.io.IOException;
+ method public final void writeDouble(double) throws java.io.IOException;
+ method public final void writeFloat(float) throws java.io.IOException;
+ method public final void writeInt(int) throws java.io.IOException;
+ method public final void writeLong(long) throws java.io.IOException;
+ method public final void writeShort(int) throws java.io.IOException;
+ method public final void writeUTF(String) throws java.io.IOException;
+ }
+
+ public abstract class Reader implements java.io.Closeable java.lang.Readable {
+ ctor protected Reader();
+ ctor protected Reader(Object);
+ method public void mark(int) throws java.io.IOException;
+ method public boolean markSupported();
+ method public static java.io.Reader nullReader();
+ method public int read(java.nio.CharBuffer) throws java.io.IOException;
+ method public int read() throws java.io.IOException;
+ method public int read(char[]) throws java.io.IOException;
+ method public abstract int read(char[], int, int) throws java.io.IOException;
+ method public boolean ready() throws java.io.IOException;
+ method public void reset() throws java.io.IOException;
+ method public long skip(long) throws java.io.IOException;
+ method public long transferTo(java.io.Writer) throws java.io.IOException;
+ field protected Object lock;
+ }
+
+ public class SequenceInputStream extends java.io.InputStream {
+ ctor public SequenceInputStream(java.util.Enumeration<? extends java.io.InputStream>);
+ ctor public SequenceInputStream(java.io.InputStream, java.io.InputStream);
+ method public int read() throws java.io.IOException;
+ }
+
+ public interface Serializable {
+ }
+
+ public final class SerializablePermission extends java.security.BasicPermission {
+ ctor public SerializablePermission(String);
+ ctor public SerializablePermission(String, String);
+ }
+
+ public class StreamCorruptedException extends java.io.ObjectStreamException {
+ ctor public StreamCorruptedException(String);
+ ctor public StreamCorruptedException();
+ }
+
+ public class StreamTokenizer {
+ ctor @Deprecated public StreamTokenizer(java.io.InputStream);
+ ctor public StreamTokenizer(java.io.Reader);
+ method public void commentChar(int);
+ method public void eolIsSignificant(boolean);
+ method public int lineno();
+ method public void lowerCaseMode(boolean);
+ method public int nextToken() throws java.io.IOException;
+ method public void ordinaryChar(int);
+ method public void ordinaryChars(int, int);
+ method public void parseNumbers();
+ method public void pushBack();
+ method public void quoteChar(int);
+ method public void resetSyntax();
+ method public void slashSlashComments(boolean);
+ method public void slashStarComments(boolean);
+ method public void whitespaceChars(int, int);
+ method public void wordChars(int, int);
+ field public static final int TT_EOF = -1; // 0xffffffff
+ field public static final int TT_EOL = 10; // 0xa
+ field public static final int TT_NUMBER = -2; // 0xfffffffe
+ field public static final int TT_WORD = -3; // 0xfffffffd
+ field public double nval;
+ field public String sval;
+ field public int ttype;
+ }
+
+ @Deprecated public class StringBufferInputStream extends java.io.InputStream {
+ ctor @Deprecated public StringBufferInputStream(String);
+ method @Deprecated public int available();
+ method @Deprecated public int read();
+ method @Deprecated public int read(byte[], int, int);
+ method @Deprecated public void reset();
+ method @Deprecated public long skip(long);
+ field @Deprecated protected String buffer;
+ field @Deprecated protected int count;
+ field @Deprecated protected int pos;
+ }
+
+ public class StringReader extends java.io.Reader {
+ ctor public StringReader(String);
+ method public void close();
+ method public int read(char[], int, int) throws java.io.IOException;
+ }
+
+ public class StringWriter extends java.io.Writer {
+ ctor public StringWriter();
+ ctor public StringWriter(int);
+ method public java.io.StringWriter append(CharSequence);
+ method public java.io.StringWriter append(CharSequence, int, int);
+ method public java.io.StringWriter append(char);
+ method public void close() throws java.io.IOException;
+ method public void flush();
+ method public StringBuffer getBuffer();
+ method public void write(int);
+ method public void write(char[], int, int);
+ method public void write(String);
+ method public void write(String, int, int);
+ }
+
+ public class SyncFailedException extends java.io.IOException {
+ ctor public SyncFailedException(String);
+ }
+
+ public class UTFDataFormatException extends java.io.IOException {
+ ctor public UTFDataFormatException();
+ ctor public UTFDataFormatException(String);
+ }
+
+ public class UncheckedIOException extends java.lang.RuntimeException {
+ ctor public UncheckedIOException(String, java.io.IOException);
+ ctor public UncheckedIOException(java.io.IOException);
+ method public java.io.IOException getCause();
+ }
+
+ public class UnsupportedEncodingException extends java.io.IOException {
+ ctor public UnsupportedEncodingException();
+ ctor public UnsupportedEncodingException(String);
+ }
+
+ public class WriteAbortedException extends java.io.ObjectStreamException {
+ ctor public WriteAbortedException(String, Exception);
+ field public Exception detail;
+ }
+
+ public abstract class Writer implements java.lang.Appendable java.io.Closeable java.io.Flushable {
+ ctor protected Writer();
+ ctor protected Writer(Object);
+ method public java.io.Writer append(CharSequence) throws java.io.IOException;
+ method public java.io.Writer append(CharSequence, int, int) throws java.io.IOException;
+ method public java.io.Writer append(char) throws java.io.IOException;
+ method public static java.io.Writer nullWriter();
+ method public void write(int) throws java.io.IOException;
+ method public void write(char[]) throws java.io.IOException;
+ method public abstract void write(char[], int, int) throws java.io.IOException;
+ method public void write(String) throws java.io.IOException;
+ method public void write(String, int, int) throws java.io.IOException;
+ field protected Object lock;
+ }
+
+}
+
+package java.lang {
+
+ public class AbstractMethodError extends java.lang.IncompatibleClassChangeError {
+ ctor public AbstractMethodError();
+ ctor public AbstractMethodError(String);
+ }
+
+ public interface Appendable {
+ method @NonNull public Appendable append(@Nullable CharSequence) throws java.io.IOException;
+ method @NonNull public Appendable append(@Nullable CharSequence, int, int) throws java.io.IOException;
+ method @NonNull public Appendable append(char) throws java.io.IOException;
+ }
+
+ public class ArithmeticException extends java.lang.RuntimeException {
+ ctor public ArithmeticException();
+ ctor public ArithmeticException(String);
+ }
+
+ public class ArrayIndexOutOfBoundsException extends java.lang.IndexOutOfBoundsException {
+ ctor public ArrayIndexOutOfBoundsException();
+ ctor public ArrayIndexOutOfBoundsException(String);
+ ctor public ArrayIndexOutOfBoundsException(int);
+ }
+
+ public class ArrayStoreException extends java.lang.RuntimeException {
+ ctor public ArrayStoreException();
+ ctor public ArrayStoreException(String);
+ }
+
+ public class AssertionError extends java.lang.Error {
+ ctor public AssertionError();
+ ctor public AssertionError(Object);
+ ctor public AssertionError(boolean);
+ ctor public AssertionError(char);
+ ctor public AssertionError(int);
+ ctor public AssertionError(long);
+ ctor public AssertionError(float);
+ ctor public AssertionError(double);
+ ctor public AssertionError(String, Throwable);
+ }
+
+ public interface AutoCloseable {
+ method public void close() throws java.lang.Exception;
+ }
+
+ public final class Boolean implements java.lang.Comparable<java.lang.Boolean> java.io.Serializable {
+ ctor @Deprecated public Boolean(boolean);
+ ctor @Deprecated public Boolean(@Nullable String);
+ method public boolean booleanValue();
+ method public static int compare(boolean, boolean);
+ method public int compareTo(@NonNull Boolean);
+ method public static boolean getBoolean(@NonNull String);
+ method public static int hashCode(boolean);
+ method public static boolean logicalAnd(boolean, boolean);
+ method public static boolean logicalOr(boolean, boolean);
+ method public static boolean logicalXor(boolean, boolean);
+ method public static boolean parseBoolean(@Nullable String);
+ method @NonNull public static String toString(boolean);
+ method @NonNull public static Boolean valueOf(boolean);
+ method @NonNull public static Boolean valueOf(@Nullable String);
+ field public static final Boolean FALSE;
+ field public static final Boolean TRUE;
+ field public static final Class<java.lang.Boolean> TYPE;
+ }
+
+ public class BootstrapMethodError extends java.lang.LinkageError {
+ ctor public BootstrapMethodError();
+ ctor public BootstrapMethodError(String);
+ ctor public BootstrapMethodError(String, Throwable);
+ ctor public BootstrapMethodError(Throwable);
+ }
+
+ public final class Byte extends java.lang.Number implements java.lang.Comparable<java.lang.Byte> {
+ ctor @Deprecated public Byte(byte);
+ ctor @Deprecated public Byte(@NonNull String) throws java.lang.NumberFormatException;
+ method public static int compare(byte, byte);
+ method public int compareTo(@NonNull Byte);
+ method public static int compareUnsigned(byte, byte);
+ method @NonNull public static Byte decode(@NonNull String) throws java.lang.NumberFormatException;
+ method public double doubleValue();
+ method public float floatValue();
+ method public static int hashCode(byte);
+ method public int intValue();
+ method public long longValue();
+ method public static byte parseByte(@NonNull String, int) throws java.lang.NumberFormatException;
+ method public static byte parseByte(@NonNull String) throws java.lang.NumberFormatException;
+ method @NonNull public static String toString(byte);
+ method public static int toUnsignedInt(byte);
+ method public static long toUnsignedLong(byte);
+ method @NonNull public static Byte valueOf(byte);
+ method @NonNull public static Byte valueOf(@NonNull String, int) throws java.lang.NumberFormatException;
+ method @NonNull public static Byte valueOf(@NonNull String) throws java.lang.NumberFormatException;
+ field public static final int BYTES = 1; // 0x1
+ field public static final byte MAX_VALUE = 127; // 0x7f
+ field public static final byte MIN_VALUE = -128; // 0xffffff80
+ field public static final int SIZE = 8; // 0x8
+ field public static final Class<java.lang.Byte> TYPE;
+ }
+
+ public interface CharSequence {
+ method public char charAt(int);
+ method @NonNull public default java.util.stream.IntStream chars();
+ method @NonNull public default java.util.stream.IntStream codePoints();
+ method public int length();
+ method @NonNull public CharSequence subSequence(int, int);
+ method @NonNull public String toString();
+ }
+
+ public final class Character implements java.lang.Comparable<java.lang.Character> java.io.Serializable {
+ ctor public Character(char);
+ method public static int charCount(int);
+ method public char charValue();
+ method public static int codePointAt(@NonNull CharSequence, int);
+ method public static int codePointAt(char[], int);
+ method public static int codePointAt(char[], int, int);
+ method public static int codePointBefore(@NonNull CharSequence, int);
+ method public static int codePointBefore(char[], int);
+ method public static int codePointBefore(char[], int, int);
+ method public static int codePointCount(@NonNull CharSequence, int, int);
+ method public static int codePointCount(char[], int, int);
+ method public static int compare(char, char);
+ method public int compareTo(@NonNull Character);
+ method public static int digit(char, int);
+ method public static int digit(int, int);
+ method public static char forDigit(int, int);
+ method public static byte getDirectionality(char);
+ method public static byte getDirectionality(int);
+ method @Nullable public static String getName(int);
+ method public static int getNumericValue(char);
+ method public static int getNumericValue(int);
+ method public static int getType(char);
+ method public static int getType(int);
+ method public static int hashCode(char);
+ method public static char highSurrogate(int);
+ method public static boolean isAlphabetic(int);
+ method public static boolean isBmpCodePoint(int);
+ method public static boolean isDefined(char);
+ method public static boolean isDefined(int);
+ method public static boolean isDigit(char);
+ method public static boolean isDigit(int);
+ method public static boolean isHighSurrogate(char);
+ method public static boolean isISOControl(char);
+ method public static boolean isISOControl(int);
+ method public static boolean isIdentifierIgnorable(char);
+ method public static boolean isIdentifierIgnorable(int);
+ method public static boolean isIdeographic(int);
+ method public static boolean isJavaIdentifierPart(char);
+ method public static boolean isJavaIdentifierPart(int);
+ method public static boolean isJavaIdentifierStart(char);
+ method public static boolean isJavaIdentifierStart(int);
+ method @Deprecated public static boolean isJavaLetter(char);
+ method @Deprecated public static boolean isJavaLetterOrDigit(char);
+ method public static boolean isLetter(char);
+ method public static boolean isLetter(int);
+ method public static boolean isLetterOrDigit(char);
+ method public static boolean isLetterOrDigit(int);
+ method public static boolean isLowSurrogate(char);
+ method public static boolean isLowerCase(char);
+ method public static boolean isLowerCase(int);
+ method public static boolean isMirrored(char);
+ method public static boolean isMirrored(int);
+ method @Deprecated public static boolean isSpace(char);
+ method public static boolean isSpaceChar(char);
+ method public static boolean isSpaceChar(int);
+ method public static boolean isSupplementaryCodePoint(int);
+ method public static boolean isSurrogate(char);
+ method public static boolean isSurrogatePair(char, char);
+ method public static boolean isTitleCase(char);
+ method public static boolean isTitleCase(int);
+ method public static boolean isUnicodeIdentifierPart(char);
+ method public static boolean isUnicodeIdentifierPart(int);
+ method public static boolean isUnicodeIdentifierStart(char);
+ method public static boolean isUnicodeIdentifierStart(int);
+ method public static boolean isUpperCase(char);
+ method public static boolean isUpperCase(int);
+ method public static boolean isValidCodePoint(int);
+ method public static boolean isWhitespace(char);
+ method public static boolean isWhitespace(int);
+ method public static char lowSurrogate(int);
+ method public static int offsetByCodePoints(@NonNull CharSequence, int, int);
+ method public static int offsetByCodePoints(char[], int, int, int, int);
+ method public static char reverseBytes(char);
+ method public static int toChars(int, char[], int);
+ method public static char[] toChars(int);
+ method public static int toCodePoint(char, char);
+ method public static char toLowerCase(char);
+ method public static int toLowerCase(int);
+ method @NonNull public static String toString(char);
+ method public static char toTitleCase(char);
+ method public static int toTitleCase(int);
+ method public static char toUpperCase(char);
+ method public static int toUpperCase(int);
+ method @NonNull public static Character valueOf(char);
+ field public static final int BYTES = 2; // 0x2
+ field public static final byte COMBINING_SPACING_MARK = 8; // 0x8
+ field public static final byte CONNECTOR_PUNCTUATION = 23; // 0x17
+ field public static final byte CONTROL = 15; // 0xf
+ field public static final byte CURRENCY_SYMBOL = 26; // 0x1a
+ field public static final byte DASH_PUNCTUATION = 20; // 0x14
+ field public static final byte DECIMAL_DIGIT_NUMBER = 9; // 0x9
+ field public static final byte DIRECTIONALITY_ARABIC_NUMBER = 6; // 0x6
+ field public static final byte DIRECTIONALITY_BOUNDARY_NEUTRAL = 9; // 0x9
+ field public static final byte DIRECTIONALITY_COMMON_NUMBER_SEPARATOR = 7; // 0x7
+ field public static final byte DIRECTIONALITY_EUROPEAN_NUMBER = 3; // 0x3
+ field public static final byte DIRECTIONALITY_EUROPEAN_NUMBER_SEPARATOR = 4; // 0x4
+ field public static final byte DIRECTIONALITY_EUROPEAN_NUMBER_TERMINATOR = 5; // 0x5
+ field public static final byte DIRECTIONALITY_LEFT_TO_RIGHT = 0; // 0x0
+ field public static final byte DIRECTIONALITY_LEFT_TO_RIGHT_EMBEDDING = 14; // 0xe
+ field public static final byte DIRECTIONALITY_LEFT_TO_RIGHT_OVERRIDE = 15; // 0xf
+ field public static final byte DIRECTIONALITY_NONSPACING_MARK = 8; // 0x8
+ field public static final byte DIRECTIONALITY_OTHER_NEUTRALS = 13; // 0xd
+ field public static final byte DIRECTIONALITY_PARAGRAPH_SEPARATOR = 10; // 0xa
+ field public static final byte DIRECTIONALITY_POP_DIRECTIONAL_FORMAT = 18; // 0x12
+ field public static final byte DIRECTIONALITY_RIGHT_TO_LEFT = 1; // 0x1
+ field public static final byte DIRECTIONALITY_RIGHT_TO_LEFT_ARABIC = 2; // 0x2
+ field public static final byte DIRECTIONALITY_RIGHT_TO_LEFT_EMBEDDING = 16; // 0x10
+ field public static final byte DIRECTIONALITY_RIGHT_TO_LEFT_OVERRIDE = 17; // 0x11
+ field public static final byte DIRECTIONALITY_SEGMENT_SEPARATOR = 11; // 0xb
+ field public static final byte DIRECTIONALITY_UNDEFINED = -1; // 0xffffffff
+ field public static final byte DIRECTIONALITY_WHITESPACE = 12; // 0xc
+ field public static final byte ENCLOSING_MARK = 7; // 0x7
+ field public static final byte END_PUNCTUATION = 22; // 0x16
+ field public static final byte FINAL_QUOTE_PUNCTUATION = 30; // 0x1e
+ field public static final byte FORMAT = 16; // 0x10
+ field public static final byte INITIAL_QUOTE_PUNCTUATION = 29; // 0x1d
+ field public static final byte LETTER_NUMBER = 10; // 0xa
+ field public static final byte LINE_SEPARATOR = 13; // 0xd
+ field public static final byte LOWERCASE_LETTER = 2; // 0x2
+ field public static final byte MATH_SYMBOL = 25; // 0x19
+ field public static final int MAX_CODE_POINT = 1114111; // 0x10ffff
+ field public static final char MAX_HIGH_SURROGATE = 56319; // 0xdbff '\udbff'
+ field public static final char MAX_LOW_SURROGATE = 57343; // 0xdfff '\udfff'
+ field public static final int MAX_RADIX = 36; // 0x24
+ field public static final char MAX_SURROGATE = 57343; // 0xdfff '\udfff'
+ field public static final char MAX_VALUE = 65535; // 0xffff '\uffff'
+ field public static final int MIN_CODE_POINT = 0; // 0x0
+ field public static final char MIN_HIGH_SURROGATE = 55296; // 0xd800 '\ud800'
+ field public static final char MIN_LOW_SURROGATE = 56320; // 0xdc00 '\udc00'
+ field public static final int MIN_RADIX = 2; // 0x2
+ field public static final int MIN_SUPPLEMENTARY_CODE_POINT = 65536; // 0x10000
+ field public static final char MIN_SURROGATE = 55296; // 0xd800 '\ud800'
+ field public static final char MIN_VALUE = 0; // 0x0000 '\u0000'
+ field public static final byte MODIFIER_LETTER = 4; // 0x4
+ field public static final byte MODIFIER_SYMBOL = 27; // 0x1b
+ field public static final byte NON_SPACING_MARK = 6; // 0x6
+ field public static final byte OTHER_LETTER = 5; // 0x5
+ field public static final byte OTHER_NUMBER = 11; // 0xb
+ field public static final byte OTHER_PUNCTUATION = 24; // 0x18
+ field public static final byte OTHER_SYMBOL = 28; // 0x1c
+ field public static final byte PARAGRAPH_SEPARATOR = 14; // 0xe
+ field public static final byte PRIVATE_USE = 18; // 0x12
+ field public static final int SIZE = 16; // 0x10
+ field public static final byte SPACE_SEPARATOR = 12; // 0xc
+ field public static final byte START_PUNCTUATION = 21; // 0x15
+ field public static final byte SURROGATE = 19; // 0x13
+ field public static final byte TITLECASE_LETTER = 3; // 0x3
+ field public static final Class<java.lang.Character> TYPE;
+ field public static final byte UNASSIGNED = 0; // 0x0
+ field public static final byte UPPERCASE_LETTER = 1; // 0x1
+ }
+
+ public static class Character.Subset {
+ ctor protected Character.Subset(@NonNull String);
+ method public final boolean equals(@Nullable Object);
+ method public final int hashCode();
+ method @NonNull public final String toString();
+ }
+
+ public static final class Character.UnicodeBlock extends java.lang.Character.Subset {
+ method @NonNull public static java.lang.Character.UnicodeBlock forName(@NonNull String);
+ method @Nullable public static java.lang.Character.UnicodeBlock of(char);
+ method @Nullable public static java.lang.Character.UnicodeBlock of(int);
+ field public static final java.lang.Character.UnicodeBlock AEGEAN_NUMBERS;
+ field public static final java.lang.Character.UnicodeBlock ALCHEMICAL_SYMBOLS;
+ field public static final java.lang.Character.UnicodeBlock ALPHABETIC_PRESENTATION_FORMS;
+ field public static final java.lang.Character.UnicodeBlock ANCIENT_GREEK_MUSICAL_NOTATION;
+ field public static final java.lang.Character.UnicodeBlock ANCIENT_GREEK_NUMBERS;
+ field public static final java.lang.Character.UnicodeBlock ANCIENT_SYMBOLS;
+ field public static final java.lang.Character.UnicodeBlock ARABIC;
+ field public static final java.lang.Character.UnicodeBlock ARABIC_EXTENDED_A;
+ field public static final java.lang.Character.UnicodeBlock ARABIC_MATHEMATICAL_ALPHABETIC_SYMBOLS;
+ field public static final java.lang.Character.UnicodeBlock ARABIC_PRESENTATION_FORMS_A;
+ field public static final java.lang.Character.UnicodeBlock ARABIC_PRESENTATION_FORMS_B;
+ field public static final java.lang.Character.UnicodeBlock ARABIC_SUPPLEMENT;
+ field public static final java.lang.Character.UnicodeBlock ARMENIAN;
+ field public static final java.lang.Character.UnicodeBlock ARROWS;
+ field public static final java.lang.Character.UnicodeBlock AVESTAN;
+ field public static final java.lang.Character.UnicodeBlock BALINESE;
+ field public static final java.lang.Character.UnicodeBlock BAMUM;
+ field public static final java.lang.Character.UnicodeBlock BAMUM_SUPPLEMENT;
+ field public static final java.lang.Character.UnicodeBlock BASIC_LATIN;
+ field public static final java.lang.Character.UnicodeBlock BATAK;
+ field public static final java.lang.Character.UnicodeBlock BENGALI;
+ field public static final java.lang.Character.UnicodeBlock BLOCK_ELEMENTS;
+ field public static final java.lang.Character.UnicodeBlock BOPOMOFO;
+ field public static final java.lang.Character.UnicodeBlock BOPOMOFO_EXTENDED;
+ field public static final java.lang.Character.UnicodeBlock BOX_DRAWING;
+ field public static final java.lang.Character.UnicodeBlock BRAHMI;
+ field public static final java.lang.Character.UnicodeBlock BRAILLE_PATTERNS;
+ field public static final java.lang.Character.UnicodeBlock BUGINESE;
+ field public static final java.lang.Character.UnicodeBlock BUHID;
+ field public static final java.lang.Character.UnicodeBlock BYZANTINE_MUSICAL_SYMBOLS;
+ field public static final java.lang.Character.UnicodeBlock CARIAN;
+ field public static final java.lang.Character.UnicodeBlock CHAKMA;
+ field public static final java.lang.Character.UnicodeBlock CHAM;
+ field public static final java.lang.Character.UnicodeBlock CHEROKEE;
+ field public static final java.lang.Character.UnicodeBlock CJK_COMPATIBILITY;
+ field public static final java.lang.Character.UnicodeBlock CJK_COMPATIBILITY_FORMS;
+ field public static final java.lang.Character.UnicodeBlock CJK_COMPATIBILITY_IDEOGRAPHS;
+ field public static final java.lang.Character.UnicodeBlock CJK_COMPATIBILITY_IDEOGRAPHS_SUPPLEMENT;
+ field public static final java.lang.Character.UnicodeBlock CJK_RADICALS_SUPPLEMENT;
+ field public static final java.lang.Character.UnicodeBlock CJK_STROKES;
+ field public static final java.lang.Character.UnicodeBlock CJK_SYMBOLS_AND_PUNCTUATION;
+ field public static final java.lang.Character.UnicodeBlock CJK_UNIFIED_IDEOGRAPHS;
+ field public static final java.lang.Character.UnicodeBlock CJK_UNIFIED_IDEOGRAPHS_EXTENSION_A;
+ field public static final java.lang.Character.UnicodeBlock CJK_UNIFIED_IDEOGRAPHS_EXTENSION_B;
+ field public static final java.lang.Character.UnicodeBlock CJK_UNIFIED_IDEOGRAPHS_EXTENSION_C;
+ field public static final java.lang.Character.UnicodeBlock CJK_UNIFIED_IDEOGRAPHS_EXTENSION_D;
+ field public static final java.lang.Character.UnicodeBlock COMBINING_DIACRITICAL_MARKS;
+ field public static final java.lang.Character.UnicodeBlock COMBINING_DIACRITICAL_MARKS_SUPPLEMENT;
+ field public static final java.lang.Character.UnicodeBlock COMBINING_HALF_MARKS;
+ field public static final java.lang.Character.UnicodeBlock COMBINING_MARKS_FOR_SYMBOLS;
+ field public static final java.lang.Character.UnicodeBlock COMMON_INDIC_NUMBER_FORMS;
+ field public static final java.lang.Character.UnicodeBlock CONTROL_PICTURES;
+ field public static final java.lang.Character.UnicodeBlock COPTIC;
+ field public static final java.lang.Character.UnicodeBlock COUNTING_ROD_NUMERALS;
+ field public static final java.lang.Character.UnicodeBlock CUNEIFORM;
+ field public static final java.lang.Character.UnicodeBlock CUNEIFORM_NUMBERS_AND_PUNCTUATION;
+ field public static final java.lang.Character.UnicodeBlock CURRENCY_SYMBOLS;
+ field public static final java.lang.Character.UnicodeBlock CYPRIOT_SYLLABARY;
+ field public static final java.lang.Character.UnicodeBlock CYRILLIC;
+ field public static final java.lang.Character.UnicodeBlock CYRILLIC_EXTENDED_A;
+ field public static final java.lang.Character.UnicodeBlock CYRILLIC_EXTENDED_B;
+ field public static final java.lang.Character.UnicodeBlock CYRILLIC_SUPPLEMENTARY;
+ field public static final java.lang.Character.UnicodeBlock DESERET;
+ field public static final java.lang.Character.UnicodeBlock DEVANAGARI;
+ field public static final java.lang.Character.UnicodeBlock DEVANAGARI_EXTENDED;
+ field public static final java.lang.Character.UnicodeBlock DINGBATS;
+ field public static final java.lang.Character.UnicodeBlock DOMINO_TILES;
+ field public static final java.lang.Character.UnicodeBlock EGYPTIAN_HIEROGLYPHS;
+ field public static final java.lang.Character.UnicodeBlock EMOTICONS;
+ field public static final java.lang.Character.UnicodeBlock ENCLOSED_ALPHANUMERICS;
+ field public static final java.lang.Character.UnicodeBlock ENCLOSED_ALPHANUMERIC_SUPPLEMENT;
+ field public static final java.lang.Character.UnicodeBlock ENCLOSED_CJK_LETTERS_AND_MONTHS;
+ field public static final java.lang.Character.UnicodeBlock ENCLOSED_IDEOGRAPHIC_SUPPLEMENT;
+ field public static final java.lang.Character.UnicodeBlock ETHIOPIC;
+ field public static final java.lang.Character.UnicodeBlock ETHIOPIC_EXTENDED;
+ field public static final java.lang.Character.UnicodeBlock ETHIOPIC_EXTENDED_A;
+ field public static final java.lang.Character.UnicodeBlock ETHIOPIC_SUPPLEMENT;
+ field public static final java.lang.Character.UnicodeBlock GENERAL_PUNCTUATION;
+ field public static final java.lang.Character.UnicodeBlock GEOMETRIC_SHAPES;
+ field public static final java.lang.Character.UnicodeBlock GEORGIAN;
+ field public static final java.lang.Character.UnicodeBlock GEORGIAN_SUPPLEMENT;
+ field public static final java.lang.Character.UnicodeBlock GLAGOLITIC;
+ field public static final java.lang.Character.UnicodeBlock GOTHIC;
+ field public static final java.lang.Character.UnicodeBlock GREEK;
+ field public static final java.lang.Character.UnicodeBlock GREEK_EXTENDED;
+ field public static final java.lang.Character.UnicodeBlock GUJARATI;
+ field public static final java.lang.Character.UnicodeBlock GURMUKHI;
+ field public static final java.lang.Character.UnicodeBlock HALFWIDTH_AND_FULLWIDTH_FORMS;
+ field public static final java.lang.Character.UnicodeBlock HANGUL_COMPATIBILITY_JAMO;
+ field public static final java.lang.Character.UnicodeBlock HANGUL_JAMO;
+ field public static final java.lang.Character.UnicodeBlock HANGUL_JAMO_EXTENDED_A;
+ field public static final java.lang.Character.UnicodeBlock HANGUL_JAMO_EXTENDED_B;
+ field public static final java.lang.Character.UnicodeBlock HANGUL_SYLLABLES;
+ field public static final java.lang.Character.UnicodeBlock HANUNOO;
+ field public static final java.lang.Character.UnicodeBlock HEBREW;
+ field public static final java.lang.Character.UnicodeBlock HIGH_PRIVATE_USE_SURROGATES;
+ field public static final java.lang.Character.UnicodeBlock HIGH_SURROGATES;
+ field public static final java.lang.Character.UnicodeBlock HIRAGANA;
+ field public static final java.lang.Character.UnicodeBlock IDEOGRAPHIC_DESCRIPTION_CHARACTERS;
+ field public static final java.lang.Character.UnicodeBlock IMPERIAL_ARAMAIC;
+ field public static final java.lang.Character.UnicodeBlock INSCRIPTIONAL_PAHLAVI;
+ field public static final java.lang.Character.UnicodeBlock INSCRIPTIONAL_PARTHIAN;
+ field public static final java.lang.Character.UnicodeBlock IPA_EXTENSIONS;
+ field public static final java.lang.Character.UnicodeBlock JAVANESE;
+ field public static final java.lang.Character.UnicodeBlock KAITHI;
+ field public static final java.lang.Character.UnicodeBlock KANA_SUPPLEMENT;
+ field public static final java.lang.Character.UnicodeBlock KANBUN;
+ field public static final java.lang.Character.UnicodeBlock KANGXI_RADICALS;
+ field public static final java.lang.Character.UnicodeBlock KANNADA;
+ field public static final java.lang.Character.UnicodeBlock KATAKANA;
+ field public static final java.lang.Character.UnicodeBlock KATAKANA_PHONETIC_EXTENSIONS;
+ field public static final java.lang.Character.UnicodeBlock KAYAH_LI;
+ field public static final java.lang.Character.UnicodeBlock KHAROSHTHI;
+ field public static final java.lang.Character.UnicodeBlock KHMER;
+ field public static final java.lang.Character.UnicodeBlock KHMER_SYMBOLS;
+ field public static final java.lang.Character.UnicodeBlock LAO;
+ field public static final java.lang.Character.UnicodeBlock LATIN_1_SUPPLEMENT;
+ field public static final java.lang.Character.UnicodeBlock LATIN_EXTENDED_A;
+ field public static final java.lang.Character.UnicodeBlock LATIN_EXTENDED_ADDITIONAL;
+ field public static final java.lang.Character.UnicodeBlock LATIN_EXTENDED_B;
+ field public static final java.lang.Character.UnicodeBlock LATIN_EXTENDED_C;
+ field public static final java.lang.Character.UnicodeBlock LATIN_EXTENDED_D;
+ field public static final java.lang.Character.UnicodeBlock LEPCHA;
+ field public static final java.lang.Character.UnicodeBlock LETTERLIKE_SYMBOLS;
+ field public static final java.lang.Character.UnicodeBlock LIMBU;
+ field public static final java.lang.Character.UnicodeBlock LINEAR_B_IDEOGRAMS;
+ field public static final java.lang.Character.UnicodeBlock LINEAR_B_SYLLABARY;
+ field public static final java.lang.Character.UnicodeBlock LISU;
+ field public static final java.lang.Character.UnicodeBlock LOW_SURROGATES;
+ field public static final java.lang.Character.UnicodeBlock LYCIAN;
+ field public static final java.lang.Character.UnicodeBlock LYDIAN;
+ field public static final java.lang.Character.UnicodeBlock MAHJONG_TILES;
+ field public static final java.lang.Character.UnicodeBlock MALAYALAM;
+ field public static final java.lang.Character.UnicodeBlock MANDAIC;
+ field public static final java.lang.Character.UnicodeBlock MATHEMATICAL_ALPHANUMERIC_SYMBOLS;
+ field public static final java.lang.Character.UnicodeBlock MATHEMATICAL_OPERATORS;
+ field public static final java.lang.Character.UnicodeBlock MEETEI_MAYEK;
+ field public static final java.lang.Character.UnicodeBlock MEETEI_MAYEK_EXTENSIONS;
+ field public static final java.lang.Character.UnicodeBlock MEROITIC_CURSIVE;
+ field public static final java.lang.Character.UnicodeBlock MEROITIC_HIEROGLYPHS;
+ field public static final java.lang.Character.UnicodeBlock MIAO;
+ field public static final java.lang.Character.UnicodeBlock MISCELLANEOUS_MATHEMATICAL_SYMBOLS_A;
+ field public static final java.lang.Character.UnicodeBlock MISCELLANEOUS_MATHEMATICAL_SYMBOLS_B;
+ field public static final java.lang.Character.UnicodeBlock MISCELLANEOUS_SYMBOLS;
+ field public static final java.lang.Character.UnicodeBlock MISCELLANEOUS_SYMBOLS_AND_ARROWS;
+ field public static final java.lang.Character.UnicodeBlock MISCELLANEOUS_SYMBOLS_AND_PICTOGRAPHS;
+ field public static final java.lang.Character.UnicodeBlock MISCELLANEOUS_TECHNICAL;
+ field public static final java.lang.Character.UnicodeBlock MODIFIER_TONE_LETTERS;
+ field public static final java.lang.Character.UnicodeBlock MONGOLIAN;
+ field public static final java.lang.Character.UnicodeBlock MUSICAL_SYMBOLS;
+ field public static final java.lang.Character.UnicodeBlock MYANMAR;
+ field public static final java.lang.Character.UnicodeBlock MYANMAR_EXTENDED_A;
+ field public static final java.lang.Character.UnicodeBlock NEW_TAI_LUE;
+ field public static final java.lang.Character.UnicodeBlock NKO;
+ field public static final java.lang.Character.UnicodeBlock NUMBER_FORMS;
+ field public static final java.lang.Character.UnicodeBlock OGHAM;
+ field public static final java.lang.Character.UnicodeBlock OLD_ITALIC;
+ field public static final java.lang.Character.UnicodeBlock OLD_PERSIAN;
+ field public static final java.lang.Character.UnicodeBlock OLD_SOUTH_ARABIAN;
+ field public static final java.lang.Character.UnicodeBlock OLD_TURKIC;
+ field public static final java.lang.Character.UnicodeBlock OL_CHIKI;
+ field public static final java.lang.Character.UnicodeBlock OPTICAL_CHARACTER_RECOGNITION;
+ field public static final java.lang.Character.UnicodeBlock ORIYA;
+ field public static final java.lang.Character.UnicodeBlock OSMANYA;
+ field public static final java.lang.Character.UnicodeBlock PHAGS_PA;
+ field public static final java.lang.Character.UnicodeBlock PHAISTOS_DISC;
+ field public static final java.lang.Character.UnicodeBlock PHOENICIAN;
+ field public static final java.lang.Character.UnicodeBlock PHONETIC_EXTENSIONS;
+ field public static final java.lang.Character.UnicodeBlock PHONETIC_EXTENSIONS_SUPPLEMENT;
+ field public static final java.lang.Character.UnicodeBlock PLAYING_CARDS;
+ field public static final java.lang.Character.UnicodeBlock PRIVATE_USE_AREA;
+ field public static final java.lang.Character.UnicodeBlock REJANG;
+ field public static final java.lang.Character.UnicodeBlock RUMI_NUMERAL_SYMBOLS;
+ field public static final java.lang.Character.UnicodeBlock RUNIC;
+ field public static final java.lang.Character.UnicodeBlock SAMARITAN;
+ field public static final java.lang.Character.UnicodeBlock SAURASHTRA;
+ field public static final java.lang.Character.UnicodeBlock SHARADA;
+ field public static final java.lang.Character.UnicodeBlock SHAVIAN;
+ field public static final java.lang.Character.UnicodeBlock SINHALA;
+ field public static final java.lang.Character.UnicodeBlock SMALL_FORM_VARIANTS;
+ field public static final java.lang.Character.UnicodeBlock SORA_SOMPENG;
+ field public static final java.lang.Character.UnicodeBlock SPACING_MODIFIER_LETTERS;
+ field public static final java.lang.Character.UnicodeBlock SPECIALS;
+ field public static final java.lang.Character.UnicodeBlock SUNDANESE;
+ field public static final java.lang.Character.UnicodeBlock SUNDANESE_SUPPLEMENT;
+ field public static final java.lang.Character.UnicodeBlock SUPERSCRIPTS_AND_SUBSCRIPTS;
+ field public static final java.lang.Character.UnicodeBlock SUPPLEMENTAL_ARROWS_A;
+ field public static final java.lang.Character.UnicodeBlock SUPPLEMENTAL_ARROWS_B;
+ field public static final java.lang.Character.UnicodeBlock SUPPLEMENTAL_MATHEMATICAL_OPERATORS;
+ field public static final java.lang.Character.UnicodeBlock SUPPLEMENTAL_PUNCTUATION;
+ field public static final java.lang.Character.UnicodeBlock SUPPLEMENTARY_PRIVATE_USE_AREA_A;
+ field public static final java.lang.Character.UnicodeBlock SUPPLEMENTARY_PRIVATE_USE_AREA_B;
+ field @Deprecated public static final java.lang.Character.UnicodeBlock SURROGATES_AREA;
+ field public static final java.lang.Character.UnicodeBlock SYLOTI_NAGRI;
+ field public static final java.lang.Character.UnicodeBlock SYRIAC;
+ field public static final java.lang.Character.UnicodeBlock TAGALOG;
+ field public static final java.lang.Character.UnicodeBlock TAGBANWA;
+ field public static final java.lang.Character.UnicodeBlock TAGS;
+ field public static final java.lang.Character.UnicodeBlock TAI_LE;
+ field public static final java.lang.Character.UnicodeBlock TAI_THAM;
+ field public static final java.lang.Character.UnicodeBlock TAI_VIET;
+ field public static final java.lang.Character.UnicodeBlock TAI_XUAN_JING_SYMBOLS;
+ field public static final java.lang.Character.UnicodeBlock TAKRI;
+ field public static final java.lang.Character.UnicodeBlock TAMIL;
+ field public static final java.lang.Character.UnicodeBlock TELUGU;
+ field public static final java.lang.Character.UnicodeBlock THAANA;
+ field public static final java.lang.Character.UnicodeBlock THAI;
+ field public static final java.lang.Character.UnicodeBlock TIBETAN;
+ field public static final java.lang.Character.UnicodeBlock TIFINAGH;
+ field public static final java.lang.Character.UnicodeBlock TRANSPORT_AND_MAP_SYMBOLS;
+ field public static final java.lang.Character.UnicodeBlock UGARITIC;
+ field public static final java.lang.Character.UnicodeBlock UNIFIED_CANADIAN_ABORIGINAL_SYLLABICS;
+ field public static final java.lang.Character.UnicodeBlock UNIFIED_CANADIAN_ABORIGINAL_SYLLABICS_EXTENDED;
+ field public static final java.lang.Character.UnicodeBlock VAI;
+ field public static final java.lang.Character.UnicodeBlock VARIATION_SELECTORS;
+ field public static final java.lang.Character.UnicodeBlock VARIATION_SELECTORS_SUPPLEMENT;
+ field public static final java.lang.Character.UnicodeBlock VEDIC_EXTENSIONS;
+ field public static final java.lang.Character.UnicodeBlock VERTICAL_FORMS;
+ field public static final java.lang.Character.UnicodeBlock YIJING_HEXAGRAM_SYMBOLS;
+ field public static final java.lang.Character.UnicodeBlock YI_RADICALS;
+ field public static final java.lang.Character.UnicodeBlock YI_SYLLABLES;
+ }
+
+ public enum Character.UnicodeScript {
+ method @NonNull public static java.lang.Character.UnicodeScript forName(@NonNull String);
+ method @NonNull public static java.lang.Character.UnicodeScript of(int);
+ enum_constant public static final java.lang.Character.UnicodeScript ARABIC;
+ enum_constant public static final java.lang.Character.UnicodeScript ARMENIAN;
+ enum_constant public static final java.lang.Character.UnicodeScript AVESTAN;
+ enum_constant public static final java.lang.Character.UnicodeScript BALINESE;
+ enum_constant public static final java.lang.Character.UnicodeScript BAMUM;
+ enum_constant public static final java.lang.Character.UnicodeScript BATAK;
+ enum_constant public static final java.lang.Character.UnicodeScript BENGALI;
+ enum_constant public static final java.lang.Character.UnicodeScript BOPOMOFO;
+ enum_constant public static final java.lang.Character.UnicodeScript BRAHMI;
+ enum_constant public static final java.lang.Character.UnicodeScript BRAILLE;
+ enum_constant public static final java.lang.Character.UnicodeScript BUGINESE;
+ enum_constant public static final java.lang.Character.UnicodeScript BUHID;
+ enum_constant public static final java.lang.Character.UnicodeScript CANADIAN_ABORIGINAL;
+ enum_constant public static final java.lang.Character.UnicodeScript CARIAN;
+ enum_constant public static final java.lang.Character.UnicodeScript CHAKMA;
+ enum_constant public static final java.lang.Character.UnicodeScript CHAM;
+ enum_constant public static final java.lang.Character.UnicodeScript CHEROKEE;
+ enum_constant public static final java.lang.Character.UnicodeScript COMMON;
+ enum_constant public static final java.lang.Character.UnicodeScript COPTIC;
+ enum_constant public static final java.lang.Character.UnicodeScript CUNEIFORM;
+ enum_constant public static final java.lang.Character.UnicodeScript CYPRIOT;
+ enum_constant public static final java.lang.Character.UnicodeScript CYRILLIC;
+ enum_constant public static final java.lang.Character.UnicodeScript DESERET;
+ enum_constant public static final java.lang.Character.UnicodeScript DEVANAGARI;
+ enum_constant public static final java.lang.Character.UnicodeScript EGYPTIAN_HIEROGLYPHS;
+ enum_constant public static final java.lang.Character.UnicodeScript ETHIOPIC;
+ enum_constant public static final java.lang.Character.UnicodeScript GEORGIAN;
+ enum_constant public static final java.lang.Character.UnicodeScript GLAGOLITIC;
+ enum_constant public static final java.lang.Character.UnicodeScript GOTHIC;
+ enum_constant public static final java.lang.Character.UnicodeScript GREEK;
+ enum_constant public static final java.lang.Character.UnicodeScript GUJARATI;
+ enum_constant public static final java.lang.Character.UnicodeScript GURMUKHI;
+ enum_constant public static final java.lang.Character.UnicodeScript HAN;
+ enum_constant public static final java.lang.Character.UnicodeScript HANGUL;
+ enum_constant public static final java.lang.Character.UnicodeScript HANUNOO;
+ enum_constant public static final java.lang.Character.UnicodeScript HEBREW;
+ enum_constant public static final java.lang.Character.UnicodeScript HIRAGANA;
+ enum_constant public static final java.lang.Character.UnicodeScript IMPERIAL_ARAMAIC;
+ enum_constant public static final java.lang.Character.UnicodeScript INHERITED;
+ enum_constant public static final java.lang.Character.UnicodeScript INSCRIPTIONAL_PAHLAVI;
+ enum_constant public static final java.lang.Character.UnicodeScript INSCRIPTIONAL_PARTHIAN;
+ enum_constant public static final java.lang.Character.UnicodeScript JAVANESE;
+ enum_constant public static final java.lang.Character.UnicodeScript KAITHI;
+ enum_constant public static final java.lang.Character.UnicodeScript KANNADA;
+ enum_constant public static final java.lang.Character.UnicodeScript KATAKANA;
+ enum_constant public static final java.lang.Character.UnicodeScript KAYAH_LI;
+ enum_constant public static final java.lang.Character.UnicodeScript KHAROSHTHI;
+ enum_constant public static final java.lang.Character.UnicodeScript KHMER;
+ enum_constant public static final java.lang.Character.UnicodeScript LAO;
+ enum_constant public static final java.lang.Character.UnicodeScript LATIN;
+ enum_constant public static final java.lang.Character.UnicodeScript LEPCHA;
+ enum_constant public static final java.lang.Character.UnicodeScript LIMBU;
+ enum_constant public static final java.lang.Character.UnicodeScript LINEAR_B;
+ enum_constant public static final java.lang.Character.UnicodeScript LISU;
+ enum_constant public static final java.lang.Character.UnicodeScript LYCIAN;
+ enum_constant public static final java.lang.Character.UnicodeScript LYDIAN;
+ enum_constant public static final java.lang.Character.UnicodeScript MALAYALAM;
+ enum_constant public static final java.lang.Character.UnicodeScript MANDAIC;
+ enum_constant public static final java.lang.Character.UnicodeScript MEETEI_MAYEK;
+ enum_constant public static final java.lang.Character.UnicodeScript MEROITIC_CURSIVE;
+ enum_constant public static final java.lang.Character.UnicodeScript MEROITIC_HIEROGLYPHS;
+ enum_constant public static final java.lang.Character.UnicodeScript MIAO;
+ enum_constant public static final java.lang.Character.UnicodeScript MONGOLIAN;
+ enum_constant public static final java.lang.Character.UnicodeScript MYANMAR;
+ enum_constant public static final java.lang.Character.UnicodeScript NEW_TAI_LUE;
+ enum_constant public static final java.lang.Character.UnicodeScript NKO;
+ enum_constant public static final java.lang.Character.UnicodeScript OGHAM;
+ enum_constant public static final java.lang.Character.UnicodeScript OLD_ITALIC;
+ enum_constant public static final java.lang.Character.UnicodeScript OLD_PERSIAN;
+ enum_constant public static final java.lang.Character.UnicodeScript OLD_SOUTH_ARABIAN;
+ enum_constant public static final java.lang.Character.UnicodeScript OLD_TURKIC;
+ enum_constant public static final java.lang.Character.UnicodeScript OL_CHIKI;
+ enum_constant public static final java.lang.Character.UnicodeScript ORIYA;
+ enum_constant public static final java.lang.Character.UnicodeScript OSMANYA;
+ enum_constant public static final java.lang.Character.UnicodeScript PHAGS_PA;
+ enum_constant public static final java.lang.Character.UnicodeScript PHOENICIAN;
+ enum_constant public static final java.lang.Character.UnicodeScript REJANG;
+ enum_constant public static final java.lang.Character.UnicodeScript RUNIC;
+ enum_constant public static final java.lang.Character.UnicodeScript SAMARITAN;
+ enum_constant public static final java.lang.Character.UnicodeScript SAURASHTRA;
+ enum_constant public static final java.lang.Character.UnicodeScript SHARADA;
+ enum_constant public static final java.lang.Character.UnicodeScript SHAVIAN;
+ enum_constant public static final java.lang.Character.UnicodeScript SINHALA;
+ enum_constant public static final java.lang.Character.UnicodeScript SORA_SOMPENG;
+ enum_constant public static final java.lang.Character.UnicodeScript SUNDANESE;
+ enum_constant public static final java.lang.Character.UnicodeScript SYLOTI_NAGRI;
+ enum_constant public static final java.lang.Character.UnicodeScript SYRIAC;
+ enum_constant public static final java.lang.Character.UnicodeScript TAGALOG;
+ enum_constant public static final java.lang.Character.UnicodeScript TAGBANWA;
+ enum_constant public static final java.lang.Character.UnicodeScript TAI_LE;
+ enum_constant public static final java.lang.Character.UnicodeScript TAI_THAM;
+ enum_constant public static final java.lang.Character.UnicodeScript TAI_VIET;
+ enum_constant public static final java.lang.Character.UnicodeScript TAKRI;
+ enum_constant public static final java.lang.Character.UnicodeScript TAMIL;
+ enum_constant public static final java.lang.Character.UnicodeScript TELUGU;
+ enum_constant public static final java.lang.Character.UnicodeScript THAANA;
+ enum_constant public static final java.lang.Character.UnicodeScript THAI;
+ enum_constant public static final java.lang.Character.UnicodeScript TIBETAN;
+ enum_constant public static final java.lang.Character.UnicodeScript TIFINAGH;
+ enum_constant public static final java.lang.Character.UnicodeScript UGARITIC;
+ enum_constant public static final java.lang.Character.UnicodeScript UNKNOWN;
+ enum_constant public static final java.lang.Character.UnicodeScript VAI;
+ enum_constant public static final java.lang.Character.UnicodeScript YI;
+ }
+
+ public final class Class<T> implements java.lang.reflect.AnnotatedElement java.lang.reflect.GenericDeclaration java.io.Serializable java.lang.reflect.Type {
+ method @NonNull public <U> Class<? extends U> asSubclass(@NonNull Class<U>);
+ method @Nullable public T cast(@Nullable Object);
+ method public boolean desiredAssertionStatus();
+ method @NonNull public static Class<?> forName(@NonNull String) throws java.lang.ClassNotFoundException;
+ method @NonNull public static Class<?> forName(@NonNull String, boolean, @Nullable ClassLoader) throws java.lang.ClassNotFoundException;
+ method @Nullable public <A extends java.lang.annotation.Annotation> A getAnnotation(@NonNull Class<A>);
+ method @NonNull public java.lang.annotation.Annotation[] getAnnotations();
+ method @NonNull public <A extends java.lang.annotation.Annotation> A[] getAnnotationsByType(@NonNull Class<A>);
+ method @Nullable public String getCanonicalName();
+ method @Nullable public ClassLoader getClassLoader();
+ method @NonNull public Class<?>[] getClasses();
+ method @Nullable public Class<?> getComponentType();
+ method @NonNull public java.lang.reflect.Constructor<T> getConstructor(@Nullable Class<?>...) throws java.lang.NoSuchMethodException, java.lang.SecurityException;
+ method @NonNull public java.lang.reflect.Constructor<?>[] getConstructors() throws java.lang.SecurityException;
+ method @Nullable public <A extends java.lang.annotation.Annotation> A getDeclaredAnnotation(@NonNull Class<A>);
+ method @NonNull public java.lang.annotation.Annotation[] getDeclaredAnnotations();
+ method @NonNull public Class<?>[] getDeclaredClasses();
+ method @NonNull public java.lang.reflect.Constructor<T> getDeclaredConstructor(@Nullable Class<?>...) throws java.lang.NoSuchMethodException, java.lang.SecurityException;
+ method @NonNull public java.lang.reflect.Constructor<?>[] getDeclaredConstructors() throws java.lang.SecurityException;
+ method @NonNull public java.lang.reflect.Field getDeclaredField(@NonNull String) throws java.lang.NoSuchFieldException;
+ method @NonNull public java.lang.reflect.Field[] getDeclaredFields();
+ method @NonNull public java.lang.reflect.Method getDeclaredMethod(@NonNull String, @Nullable Class<?>...) throws java.lang.NoSuchMethodException, java.lang.SecurityException;
+ method @NonNull public java.lang.reflect.Method[] getDeclaredMethods() throws java.lang.SecurityException;
+ method @Nullable public Class<?> getDeclaringClass();
+ method @Nullable public Class<?> getEnclosingClass();
+ method @Nullable public java.lang.reflect.Constructor<?> getEnclosingConstructor();
+ method @Nullable public java.lang.reflect.Method getEnclosingMethod();
+ method @Nullable public T[] getEnumConstants();
+ method @NonNull public java.lang.reflect.Field getField(@NonNull String) throws java.lang.NoSuchFieldException;
+ method @NonNull public java.lang.reflect.Field[] getFields() throws java.lang.SecurityException;
+ method @NonNull public java.lang.reflect.Type[] getGenericInterfaces();
+ method @Nullable public java.lang.reflect.Type getGenericSuperclass();
+ method @NonNull public Class<?>[] getInterfaces();
+ method @NonNull public java.lang.reflect.Method getMethod(@NonNull String, @Nullable Class<?>...) throws java.lang.NoSuchMethodException, java.lang.SecurityException;
+ method @NonNull public java.lang.reflect.Method[] getMethods() throws java.lang.SecurityException;
+ method public int getModifiers();
+ method @NonNull public String getName();
+ method @Nullable public Package getPackage();
+ method @NonNull public String getPackageName();
+ method @Nullable public java.security.ProtectionDomain getProtectionDomain();
+ method @Nullable public java.net.URL getResource(@NonNull String);
+ method @Nullable public java.io.InputStream getResourceAsStream(@NonNull String);
+ method @Nullable public Object[] getSigners();
+ method @NonNull public String getSimpleName();
+ method @Nullable public Class<? super T> getSuperclass();
+ method @NonNull public java.lang.reflect.TypeVariable<java.lang.Class<T>>[] getTypeParameters();
+ method public boolean isAnnotation();
+ method public boolean isAnonymousClass();
+ method public boolean isArray();
+ method public boolean isAssignableFrom(@NonNull Class<?>);
+ method public boolean isEnum();
+ method public boolean isInstance(@Nullable Object);
+ method public boolean isInterface();
+ method public boolean isLocalClass();
+ method public boolean isMemberClass();
+ method public boolean isPrimitive();
+ method public boolean isSynthetic();
+ method @NonNull public T newInstance() throws java.lang.IllegalAccessException, java.lang.InstantiationException;
+ method @NonNull public String toGenericString();
+ }
+
+ public class ClassCastException extends java.lang.RuntimeException {
+ ctor public ClassCastException();
+ ctor public ClassCastException(String);
+ }
+
+ public class ClassCircularityError extends java.lang.LinkageError {
+ ctor public ClassCircularityError();
+ ctor public ClassCircularityError(String);
+ }
+
+ public class ClassFormatError extends java.lang.LinkageError {
+ ctor public ClassFormatError();
+ ctor public ClassFormatError(String);
+ }
+
+ public abstract class ClassLoader {
+ ctor protected ClassLoader(ClassLoader);
+ ctor protected ClassLoader();
+ method public void clearAssertionStatus();
+ method @Deprecated protected final Class<?> defineClass(byte[], int, int) throws java.lang.ClassFormatError;
+ method protected final Class<?> defineClass(String, byte[], int, int) throws java.lang.ClassFormatError;
+ method protected final Class<?> defineClass(String, byte[], int, int, java.security.ProtectionDomain) throws java.lang.ClassFormatError;
+ method protected final Class<?> defineClass(String, java.nio.ByteBuffer, java.security.ProtectionDomain) throws java.lang.ClassFormatError;
+ method protected Package definePackage(String, String, String, String, String, String, String, java.net.URL) throws java.lang.IllegalArgumentException;
+ method protected Class<?> findClass(String) throws java.lang.ClassNotFoundException;
+ method protected String findLibrary(String);
+ method protected final Class<?> findLoadedClass(String);
+ method protected java.net.URL findResource(String);
+ method protected java.util.Enumeration<java.net.URL> findResources(String) throws java.io.IOException;
+ method protected final Class<?> findSystemClass(String) throws java.lang.ClassNotFoundException;
+ method protected Package getPackage(String);
+ method protected Package[] getPackages();
+ method public final ClassLoader getParent();
+ method public java.net.URL getResource(String);
+ method public java.io.InputStream getResourceAsStream(String);
+ method public java.util.Enumeration<java.net.URL> getResources(String) throws java.io.IOException;
+ method public static ClassLoader getSystemClassLoader();
+ method public static java.net.URL getSystemResource(String);
+ method public static java.io.InputStream getSystemResourceAsStream(String);
+ method public static java.util.Enumeration<java.net.URL> getSystemResources(String) throws java.io.IOException;
+ method public Class<?> loadClass(String) throws java.lang.ClassNotFoundException;
+ method protected Class<?> loadClass(String, boolean) throws java.lang.ClassNotFoundException;
+ method protected static boolean registerAsParallelCapable();
+ method protected final void resolveClass(Class<?>);
+ method public void setClassAssertionStatus(String, boolean);
+ method public void setDefaultAssertionStatus(boolean);
+ method public void setPackageAssertionStatus(String, boolean);
+ method protected final void setSigners(Class<?>, Object[]);
+ }
+
+ public class ClassNotFoundException extends java.lang.ReflectiveOperationException {
+ ctor public ClassNotFoundException();
+ ctor public ClassNotFoundException(String);
+ ctor public ClassNotFoundException(String, Throwable);
+ method public Throwable getException();
+ }
+
+ public class CloneNotSupportedException extends java.lang.Exception {
+ ctor public CloneNotSupportedException();
+ ctor public CloneNotSupportedException(String);
+ }
+
+ public interface Cloneable {
+ }
+
+ public interface Comparable<T> {
+ method public int compareTo(T);
+ }
+
+ public final class Compiler {
+ method public static Object command(Object);
+ method public static boolean compileClass(Class<?>);
+ method public static boolean compileClasses(String);
+ method public static void disable();
+ method public static void enable();
+ }
+
+ @java.lang.annotation.Documented @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.RUNTIME) @java.lang.annotation.Target({java.lang.annotation.ElementType.CONSTRUCTOR, java.lang.annotation.ElementType.FIELD, java.lang.annotation.ElementType.LOCAL_VARIABLE, java.lang.annotation.ElementType.METHOD, java.lang.annotation.ElementType.PACKAGE, java.lang.annotation.ElementType.MODULE, java.lang.annotation.ElementType.PARAMETER, java.lang.annotation.ElementType.TYPE}) public @interface Deprecated {
+ method public abstract boolean forRemoval() default false;
+ method public abstract String since() default "";
+ }
+
+ public final class Double extends java.lang.Number implements java.lang.Comparable<java.lang.Double> {
+ ctor @Deprecated public Double(double);
+ ctor @Deprecated public Double(@NonNull String) throws java.lang.NumberFormatException;
+ method public static int compare(double, double);
+ method public int compareTo(@NonNull Double);
+ method public static long doubleToLongBits(double);
+ method public static long doubleToRawLongBits(double);
+ method public double doubleValue();
+ method public float floatValue();
+ method public static int hashCode(double);
+ method public int intValue();
+ method public static boolean isFinite(double);
+ method public static boolean isInfinite(double);
+ method public boolean isInfinite();
+ method public static boolean isNaN(double);
+ method public boolean isNaN();
+ method public static double longBitsToDouble(long);
+ method public long longValue();
+ method public static double max(double, double);
+ method public static double min(double, double);
+ method public static double parseDouble(@NonNull String) throws java.lang.NumberFormatException;
+ method public static double sum(double, double);
+ method @NonNull public static String toHexString(double);
+ method @NonNull public static String toString(double);
+ method @NonNull public static Double valueOf(@NonNull String) throws java.lang.NumberFormatException;
+ method @NonNull public static Double valueOf(double);
+ field public static final int BYTES = 8; // 0x8
+ field public static final int MAX_EXPONENT = 1023; // 0x3ff
+ field public static final double MAX_VALUE = 1.7976931348623157E308;
+ field public static final int MIN_EXPONENT = -1022; // 0xfffffc02
+ field public static final double MIN_NORMAL = 2.2250738585072014E-308;
+ field public static final double MIN_VALUE = 4.9E-324;
+ field public static final double NEGATIVE_INFINITY = (-1.0/0.0);
+ field public static final double NaN = (0.0/0.0);
+ field public static final double POSITIVE_INFINITY = (1.0/0.0);
+ field public static final int SIZE = 64; // 0x40
+ field public static final Class<java.lang.Double> TYPE;
+ }
+
+ public abstract class Enum<E extends java.lang.Enum<E>> implements java.lang.Comparable<E> java.io.Serializable {
+ ctor protected Enum(@NonNull String, int);
+ method @NonNull protected final Object clone() throws java.lang.CloneNotSupportedException;
+ method public final int compareTo(E);
+ method public final boolean equals(@Nullable Object);
+ method protected final void finalize();
+ method @NonNull public final Class<E> getDeclaringClass();
+ method public final int hashCode();
+ method @NonNull public final String name();
+ method public final int ordinal();
+ method @NonNull public static <T extends java.lang.Enum<T>> T valueOf(@NonNull Class<T>, @NonNull String);
+ }
+
+ public class EnumConstantNotPresentException extends java.lang.RuntimeException {
+ ctor public EnumConstantNotPresentException(Class<? extends java.lang.Enum>, String);
+ method public String constantName();
+ method public Class<? extends java.lang.Enum> enumType();
+ }
+
+ public class Error extends java.lang.Throwable {
+ ctor public Error();
+ ctor public Error(String);
+ ctor public Error(String, Throwable);
+ ctor public Error(Throwable);
+ ctor protected Error(String, Throwable, boolean, boolean);
+ }
+
+ public class Exception extends java.lang.Throwable {
+ ctor public Exception();
+ ctor public Exception(String);
+ ctor public Exception(String, Throwable);
+ ctor public Exception(Throwable);
+ ctor protected Exception(String, Throwable, boolean, boolean);
+ }
+
+ public class ExceptionInInitializerError extends java.lang.LinkageError {
+ ctor public ExceptionInInitializerError();
+ ctor public ExceptionInInitializerError(Throwable);
+ ctor public ExceptionInInitializerError(String);
+ method public Throwable getException();
+ }
+
+ public final class Float extends java.lang.Number implements java.lang.Comparable<java.lang.Float> {
+ ctor @Deprecated public Float(float);
+ ctor @Deprecated public Float(double);
+ ctor @Deprecated public Float(@NonNull String) throws java.lang.NumberFormatException;
+ method public static int compare(float, float);
+ method public int compareTo(@NonNull Float);
+ method public double doubleValue();
+ method public static int floatToIntBits(float);
+ method public static int floatToRawIntBits(float);
+ method public float floatValue();
+ method public static int hashCode(float);
+ method public static float intBitsToFloat(int);
+ method public int intValue();
+ method public static boolean isFinite(float);
+ method public static boolean isInfinite(float);
+ method public boolean isInfinite();
+ method public static boolean isNaN(float);
+ method public boolean isNaN();
+ method public long longValue();
+ method public static float max(float, float);
+ method public static float min(float, float);
+ method public static float parseFloat(@NonNull String) throws java.lang.NumberFormatException;
+ method public static float sum(float, float);
+ method @NonNull public static String toHexString(float);
+ method @NonNull public static String toString(float);
+ method @NonNull public static Float valueOf(@NonNull String) throws java.lang.NumberFormatException;
+ method @NonNull public static Float valueOf(float);
+ field public static final int BYTES = 4; // 0x4
+ field public static final int MAX_EXPONENT = 127; // 0x7f
+ field public static final float MAX_VALUE = 3.4028235E38f;
+ field public static final int MIN_EXPONENT = -126; // 0xffffff82
+ field public static final float MIN_NORMAL = 1.17549435E-38f;
+ field public static final float MIN_VALUE = 1.4E-45f;
+ field public static final float NEGATIVE_INFINITY = (-1.0f/0.0f);
+ field public static final float NaN = (0.0f/0.0f);
+ field public static final float POSITIVE_INFINITY = (1.0f/0.0f);
+ field public static final int SIZE = 32; // 0x20
+ field public static final Class<java.lang.Float> TYPE;
+ }
+
+ @java.lang.annotation.Documented @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.RUNTIME) @java.lang.annotation.Target(java.lang.annotation.ElementType.TYPE) public @interface FunctionalInterface {
+ }
+
+ public class IllegalAccessError extends java.lang.IncompatibleClassChangeError {
+ ctor public IllegalAccessError();
+ ctor public IllegalAccessError(String);
+ }
+
+ public class IllegalAccessException extends java.lang.ReflectiveOperationException {
+ ctor public IllegalAccessException();
+ ctor public IllegalAccessException(String);
+ }
+
+ public class IllegalArgumentException extends java.lang.RuntimeException {
+ ctor public IllegalArgumentException();
+ ctor public IllegalArgumentException(String);
+ ctor public IllegalArgumentException(String, Throwable);
+ ctor public IllegalArgumentException(Throwable);
+ }
+
+ public class IllegalMonitorStateException extends java.lang.RuntimeException {
+ ctor public IllegalMonitorStateException();
+ ctor public IllegalMonitorStateException(String);
+ }
+
+ public class IllegalStateException extends java.lang.RuntimeException {
+ ctor public IllegalStateException();
+ ctor public IllegalStateException(String);
+ ctor public IllegalStateException(String, Throwable);
+ ctor public IllegalStateException(Throwable);
+ }
+
+ public class IllegalThreadStateException extends java.lang.IllegalArgumentException {
+ ctor public IllegalThreadStateException();
+ ctor public IllegalThreadStateException(String);
+ }
+
+ public class IncompatibleClassChangeError extends java.lang.LinkageError {
+ ctor public IncompatibleClassChangeError();
+ ctor public IncompatibleClassChangeError(String);
+ }
+
+ public class IndexOutOfBoundsException extends java.lang.RuntimeException {
+ ctor public IndexOutOfBoundsException();
+ ctor public IndexOutOfBoundsException(String);
+ ctor public IndexOutOfBoundsException(int);
+ }
+
+ public class InheritableThreadLocal<T> extends java.lang.ThreadLocal<T> {
+ ctor public InheritableThreadLocal();
+ method protected T childValue(T);
+ }
+
+ public class InstantiationError extends java.lang.IncompatibleClassChangeError {
+ ctor public InstantiationError();
+ ctor public InstantiationError(String);
+ }
+
+ public class InstantiationException extends java.lang.ReflectiveOperationException {
+ ctor public InstantiationException();
+ ctor public InstantiationException(String);
+ }
+
+ public final class Integer extends java.lang.Number implements java.lang.Comparable<java.lang.Integer> {
+ ctor @Deprecated public Integer(int);
+ ctor @Deprecated public Integer(@NonNull String) throws java.lang.NumberFormatException;
+ method public static int bitCount(int);
+ method public static int compare(int, int);
+ method public int compareTo(@NonNull Integer);
+ method public static int compareUnsigned(int, int);
+ method @NonNull public static Integer decode(@NonNull String) throws java.lang.NumberFormatException;
+ method public static int divideUnsigned(int, int);
+ method public double doubleValue();
+ method public float floatValue();
+ method @Nullable public static Integer getInteger(@NonNull String);
+ method @Nullable public static Integer getInteger(@NonNull String, int);
+ method @Nullable public static Integer getInteger(@NonNull String, @Nullable Integer);
+ method public static int hashCode(int);
+ method public static int highestOneBit(int);
+ method public int intValue();
+ method public long longValue();
+ method public static int lowestOneBit(int);
+ method public static int max(int, int);
+ method public static int min(int, int);
+ method public static int numberOfLeadingZeros(int);
+ method public static int numberOfTrailingZeros(int);
+ method public static int parseInt(@NonNull String, int) throws java.lang.NumberFormatException;
+ method public static int parseInt(@NonNull CharSequence, int, int, int) throws java.lang.NumberFormatException;
+ method public static int parseInt(@NonNull String) throws java.lang.NumberFormatException;
+ method public static int parseUnsignedInt(@NonNull String, int) throws java.lang.NumberFormatException;
+ method public static int parseUnsignedInt(@NonNull CharSequence, int, int, int) throws java.lang.NumberFormatException;
+ method public static int parseUnsignedInt(@NonNull String) throws java.lang.NumberFormatException;
+ method public static int remainderUnsigned(int, int);
+ method public static int reverse(int);
+ method public static int reverseBytes(int);
+ method public static int rotateLeft(int, int);
+ method public static int rotateRight(int, int);
+ method public static int signum(int);
+ method public static int sum(int, int);
+ method @NonNull public static String toBinaryString(int);
+ method @NonNull public static String toHexString(int);
+ method @NonNull public static String toOctalString(int);
+ method @NonNull public static String toString(int, int);
+ method @NonNull public static String toString(int);
+ method public static long toUnsignedLong(int);
+ method @NonNull public static String toUnsignedString(int, int);
+ method @NonNull public static String toUnsignedString(int);
+ method @NonNull public static Integer valueOf(@NonNull String, int) throws java.lang.NumberFormatException;
+ method @NonNull public static Integer valueOf(@NonNull String) throws java.lang.NumberFormatException;
+ method @NonNull public static Integer valueOf(int);
+ field public static final int BYTES = 4; // 0x4
+ field public static final int MAX_VALUE = 2147483647; // 0x7fffffff
+ field public static final int MIN_VALUE = -2147483648; // 0x80000000
+ field public static final int SIZE = 32; // 0x20
+ field public static final Class<java.lang.Integer> TYPE;
+ }
+
+ public class InternalError extends java.lang.VirtualMachineError {
+ ctor public InternalError();
+ ctor public InternalError(String);
+ ctor public InternalError(String, Throwable);
+ ctor public InternalError(Throwable);
+ }
+
+ public class InterruptedException extends java.lang.Exception {
+ ctor public InterruptedException();
+ ctor public InterruptedException(String);
+ }
+
+ public interface Iterable<T> {
+ method public default void forEach(@NonNull java.util.function.Consumer<? super T>);
+ method @NonNull public java.util.Iterator<T> iterator();
+ method @NonNull public default java.util.Spliterator<T> spliterator();
+ }
+
+ public class LinkageError extends java.lang.Error {
+ ctor public LinkageError();
+ ctor public LinkageError(String);
+ ctor public LinkageError(String, Throwable);
+ }
+
+ public final class Long extends java.lang.Number implements java.lang.Comparable<java.lang.Long> {
+ ctor @Deprecated public Long(long);
+ ctor @Deprecated public Long(@NonNull String) throws java.lang.NumberFormatException;
+ method public static int bitCount(long);
+ method public static int compare(long, long);
+ method public int compareTo(@NonNull Long);
+ method public static int compareUnsigned(long, long);
+ method @NonNull public static Long decode(@NonNull String) throws java.lang.NumberFormatException;
+ method public static long divideUnsigned(long, long);
+ method public double doubleValue();
+ method public float floatValue();
+ method @Nullable public static Long getLong(@NonNull String);
+ method @Nullable public static Long getLong(@NonNull String, long);
+ method @Nullable public static Long getLong(@NonNull String, @Nullable Long);
+ method public static int hashCode(long);
+ method public static long highestOneBit(long);
+ method public int intValue();
+ method public long longValue();
+ method public static long lowestOneBit(long);
+ method public static long max(long, long);
+ method public static long min(long, long);
+ method public static int numberOfLeadingZeros(long);
+ method public static int numberOfTrailingZeros(long);
+ method public static long parseLong(@NonNull String, int) throws java.lang.NumberFormatException;
+ method public static long parseLong(@NonNull CharSequence, int, int, int) throws java.lang.NumberFormatException;
+ method public static long parseLong(@NonNull String) throws java.lang.NumberFormatException;
+ method public static long parseUnsignedLong(@NonNull String, int) throws java.lang.NumberFormatException;
+ method public static long parseUnsignedLong(@NonNull CharSequence, int, int, int) throws java.lang.NumberFormatException;
+ method public static long parseUnsignedLong(@NonNull String) throws java.lang.NumberFormatException;
+ method public static long remainderUnsigned(long, long);
+ method public static long reverse(long);
+ method public static long reverseBytes(long);
+ method public static long rotateLeft(long, int);
+ method public static long rotateRight(long, int);
+ method public static int signum(long);
+ method public static long sum(long, long);
+ method @NonNull public static String toBinaryString(long);
+ method @NonNull public static String toHexString(long);
+ method @NonNull public static String toOctalString(long);
+ method @NonNull public static String toString(long, int);
+ method @NonNull public static String toString(long);
+ method @NonNull public static String toUnsignedString(long, int);
+ method @NonNull public static String toUnsignedString(long);
+ method @NonNull public static Long valueOf(@NonNull String, int) throws java.lang.NumberFormatException;
+ method @NonNull public static Long valueOf(@NonNull String) throws java.lang.NumberFormatException;
+ method @NonNull public static Long valueOf(long);
+ field public static final int BYTES = 8; // 0x8
+ field public static final long MAX_VALUE = 9223372036854775807L; // 0x7fffffffffffffffL
+ field public static final long MIN_VALUE = -9223372036854775808L; // 0x8000000000000000L
+ field public static final int SIZE = 64; // 0x40
+ field public static final Class<java.lang.Long> TYPE;
+ }
+
+ public final class Math {
+ method public static double IEEEremainder(double, double);
+ method public static int abs(int);
+ method public static long abs(long);
+ method public static float abs(float);
+ method public static double abs(double);
+ method public static double acos(double);
+ method public static int addExact(int, int);
+ method public static long addExact(long, long);
+ method public static double asin(double);
+ method public static double atan(double);
+ method public static double atan2(double, double);
+ method public static double cbrt(double);
+ method public static double ceil(double);
+ method public static double copySign(double, double);
+ method public static float copySign(float, float);
+ method public static double cos(double);
+ method public static double cosh(double);
+ method public static int decrementExact(int);
+ method public static long decrementExact(long);
+ method public static double exp(double);
+ method public static double expm1(double);
+ method public static double floor(double);
+ method public static int floorDiv(int, int);
+ method public static long floorDiv(long, int);
+ method public static long floorDiv(long, long);
+ method public static int floorMod(int, int);
+ method public static int floorMod(long, int);
+ method public static long floorMod(long, long);
+ method public static double fma(double, double, double);
+ method public static float fma(float, float, float);
+ method public static int getExponent(float);
+ method public static int getExponent(double);
+ method public static double hypot(double, double);
+ method public static int incrementExact(int);
+ method public static long incrementExact(long);
+ method public static double log(double);
+ method public static double log10(double);
+ method public static double log1p(double);
+ method public static int max(int, int);
+ method public static long max(long, long);
+ method public static float max(float, float);
+ method public static double max(double, double);
+ method public static int min(int, int);
+ method public static long min(long, long);
+ method public static float min(float, float);
+ method public static double min(double, double);
+ method public static int multiplyExact(int, int);
+ method public static long multiplyExact(long, int);
+ method public static long multiplyExact(long, long);
+ method public static long multiplyFull(int, int);
+ method public static long multiplyHigh(long, long);
+ method public static int negateExact(int);
+ method public static long negateExact(long);
+ method public static double nextAfter(double, double);
+ method public static float nextAfter(float, double);
+ method public static double nextDown(double);
+ method public static float nextDown(float);
+ method public static double nextUp(double);
+ method public static float nextUp(float);
+ method public static double pow(double, double);
+ method public static double random();
+ method public static double rint(double);
+ method public static int round(float);
+ method public static long round(double);
+ method public static double scalb(double, int);
+ method public static float scalb(float, int);
+ method public static double signum(double);
+ method public static float signum(float);
+ method public static double sin(double);
+ method public static double sinh(double);
+ method public static double sqrt(double);
+ method public static int subtractExact(int, int);
+ method public static long subtractExact(long, long);
+ method public static double tan(double);
+ method public static double tanh(double);
+ method public static double toDegrees(double);
+ method public static int toIntExact(long);
+ method public static double toRadians(double);
+ method public static double ulp(double);
+ method public static float ulp(float);
+ field public static final double E = 2.718281828459045;
+ field public static final double PI = 3.141592653589793;
+ }
+
+ public class NegativeArraySizeException extends java.lang.RuntimeException {
+ ctor public NegativeArraySizeException();
+ ctor public NegativeArraySizeException(String);
+ }
+
+ public class NoClassDefFoundError extends java.lang.LinkageError {
+ ctor public NoClassDefFoundError();
+ ctor public NoClassDefFoundError(String);
+ }
+
+ public class NoSuchFieldError extends java.lang.IncompatibleClassChangeError {
+ ctor public NoSuchFieldError();
+ ctor public NoSuchFieldError(String);
+ }
+
+ public class NoSuchFieldException extends java.lang.ReflectiveOperationException {
+ ctor public NoSuchFieldException();
+ ctor public NoSuchFieldException(String);
+ }
+
+ public class NoSuchMethodError extends java.lang.IncompatibleClassChangeError {
+ ctor public NoSuchMethodError();
+ ctor public NoSuchMethodError(String);
+ }
+
+ public class NoSuchMethodException extends java.lang.ReflectiveOperationException {
+ ctor public NoSuchMethodException();
+ ctor public NoSuchMethodException(String);
+ }
+
+ public class NullPointerException extends java.lang.RuntimeException {
+ ctor public NullPointerException();
+ ctor public NullPointerException(String);
+ }
+
+ public abstract class Number implements java.io.Serializable {
+ ctor public Number();
+ method public byte byteValue();
+ method public abstract double doubleValue();
+ method public abstract float floatValue();
+ method public abstract int intValue();
+ method public abstract long longValue();
+ method public short shortValue();
+ }
+
+ public class NumberFormatException extends java.lang.IllegalArgumentException {
+ ctor public NumberFormatException();
+ ctor public NumberFormatException(String);
+ }
+
+ public class Object {
+ ctor public Object();
+ method @NonNull protected Object clone() throws java.lang.CloneNotSupportedException;
+ method public boolean equals(@Nullable Object);
+ method protected void finalize() throws java.lang.Throwable;
+ method @NonNull public final Class<?> getClass();
+ method public int hashCode();
+ method public final void notify();
+ method public final void notifyAll();
+ method @NonNull public String toString();
+ method public final void wait(long) throws java.lang.InterruptedException;
+ method public final void wait(long, int) throws java.lang.InterruptedException;
+ method public final void wait() throws java.lang.InterruptedException;
+ }
+
+ public class OutOfMemoryError extends java.lang.VirtualMachineError {
+ ctor public OutOfMemoryError();
+ ctor public OutOfMemoryError(String);
+ }
+
+ @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) @java.lang.annotation.Target(java.lang.annotation.ElementType.METHOD) public @interface Override {
+ }
+
+ public class Package implements java.lang.reflect.AnnotatedElement {
+ method public <A extends java.lang.annotation.Annotation> A getAnnotation(Class<A>);
+ method public java.lang.annotation.Annotation[] getAnnotations();
+ method public <A extends java.lang.annotation.Annotation> A[] getAnnotationsByType(Class<A>);
+ method public <A extends java.lang.annotation.Annotation> A getDeclaredAnnotation(Class<A>);
+ method public java.lang.annotation.Annotation[] getDeclaredAnnotations();
+ method public <A extends java.lang.annotation.Annotation> A[] getDeclaredAnnotationsByType(Class<A>);
+ method public String getImplementationTitle();
+ method public String getImplementationVendor();
+ method public String getImplementationVersion();
+ method public String getName();
+ method public static Package getPackage(String);
+ method public static Package[] getPackages();
+ method public String getSpecificationTitle();
+ method public String getSpecificationVendor();
+ method public String getSpecificationVersion();
+ method public boolean isCompatibleWith(String) throws java.lang.NumberFormatException;
+ method public boolean isSealed();
+ method public boolean isSealed(java.net.URL);
+ }
+
+ public abstract class Process {
+ ctor public Process();
+ method public abstract void destroy();
+ method public Process destroyForcibly();
+ method public abstract int exitValue();
+ method public abstract java.io.InputStream getErrorStream();
+ method public abstract java.io.InputStream getInputStream();
+ method public abstract java.io.OutputStream getOutputStream();
+ method public boolean isAlive();
+ method public abstract int waitFor() throws java.lang.InterruptedException;
+ method public boolean waitFor(long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException;
+ }
+
+ public final class ProcessBuilder {
+ ctor public ProcessBuilder(java.util.List<java.lang.String>);
+ ctor public ProcessBuilder(java.lang.String...);
+ method public ProcessBuilder command(java.util.List<java.lang.String>);
+ method public ProcessBuilder command(java.lang.String...);
+ method public java.util.List<java.lang.String> command();
+ method public java.io.File directory();
+ method public ProcessBuilder directory(java.io.File);
+ method public java.util.Map<java.lang.String,java.lang.String> environment();
+ method public ProcessBuilder inheritIO();
+ method public ProcessBuilder redirectError(java.lang.ProcessBuilder.Redirect);
+ method public ProcessBuilder redirectError(java.io.File);
+ method public java.lang.ProcessBuilder.Redirect redirectError();
+ method public boolean redirectErrorStream();
+ method public ProcessBuilder redirectErrorStream(boolean);
+ method public ProcessBuilder redirectInput(java.lang.ProcessBuilder.Redirect);
+ method public ProcessBuilder redirectInput(java.io.File);
+ method public java.lang.ProcessBuilder.Redirect redirectInput();
+ method public ProcessBuilder redirectOutput(java.lang.ProcessBuilder.Redirect);
+ method public ProcessBuilder redirectOutput(java.io.File);
+ method public java.lang.ProcessBuilder.Redirect redirectOutput();
+ method public Process start() throws java.io.IOException;
+ }
+
+ public abstract static class ProcessBuilder.Redirect {
+ method public static java.lang.ProcessBuilder.Redirect appendTo(java.io.File);
+ method public java.io.File file();
+ method public static java.lang.ProcessBuilder.Redirect from(java.io.File);
+ method public static java.lang.ProcessBuilder.Redirect to(java.io.File);
+ method public abstract java.lang.ProcessBuilder.Redirect.Type type();
+ field public static final java.lang.ProcessBuilder.Redirect INHERIT;
+ field public static final java.lang.ProcessBuilder.Redirect PIPE;
+ }
+
+ public enum ProcessBuilder.Redirect.Type {
+ enum_constant public static final java.lang.ProcessBuilder.Redirect.Type APPEND;
+ enum_constant public static final java.lang.ProcessBuilder.Redirect.Type INHERIT;
+ enum_constant public static final java.lang.ProcessBuilder.Redirect.Type PIPE;
+ enum_constant public static final java.lang.ProcessBuilder.Redirect.Type READ;
+ enum_constant public static final java.lang.ProcessBuilder.Redirect.Type WRITE;
+ }
+
+ public interface Readable {
+ method public int read(java.nio.CharBuffer) throws java.io.IOException;
+ }
+
+ public class ReflectiveOperationException extends java.lang.Exception {
+ ctor public ReflectiveOperationException();
+ ctor public ReflectiveOperationException(String);
+ ctor public ReflectiveOperationException(String, Throwable);
+ ctor public ReflectiveOperationException(Throwable);
+ }
+
+ @java.lang.FunctionalInterface public interface Runnable {
+ method public void run();
+ }
+
+ public class Runtime {
+ method public void addShutdownHook(Thread);
+ method public int availableProcessors();
+ method public Process exec(String) throws java.io.IOException;
+ method public Process exec(String, String[]) throws java.io.IOException;
+ method public Process exec(String, String[], java.io.File) throws java.io.IOException;
+ method public Process exec(String[]) throws java.io.IOException;
+ method public Process exec(String[], String[]) throws java.io.IOException;
+ method public Process exec(String[], String[], java.io.File) throws java.io.IOException;
+ method public void exit(int);
+ method public long freeMemory();
+ method public void gc();
+ method @Deprecated public java.io.InputStream getLocalizedInputStream(java.io.InputStream);
+ method @Deprecated public java.io.OutputStream getLocalizedOutputStream(java.io.OutputStream);
+ method public static Runtime getRuntime();
+ method public void halt(int);
+ method public void load(String);
+ method public void loadLibrary(String);
+ method public long maxMemory();
+ method public boolean removeShutdownHook(Thread);
+ method public void runFinalization();
+ method @Deprecated public static void runFinalizersOnExit(boolean);
+ method public long totalMemory();
+ method public void traceInstructions(boolean);
+ method public void traceMethodCalls(boolean);
+ }
+
+ public class RuntimeException extends java.lang.Exception {
+ ctor public RuntimeException();
+ ctor public RuntimeException(String);
+ ctor public RuntimeException(String, Throwable);
+ ctor public RuntimeException(Throwable);
+ ctor protected RuntimeException(String, Throwable, boolean, boolean);
+ }
+
+ public final class RuntimePermission extends java.security.BasicPermission {
+ ctor public RuntimePermission(String);
+ ctor public RuntimePermission(String, String);
+ }
+
+ @java.lang.annotation.Documented @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.RUNTIME) @java.lang.annotation.Target({java.lang.annotation.ElementType.CONSTRUCTOR, java.lang.annotation.ElementType.METHOD}) public @interface SafeVarargs {
+ }
+
+ public class SecurityException extends java.lang.RuntimeException {
+ ctor public SecurityException();
+ ctor public SecurityException(String);
+ ctor public SecurityException(String, Throwable);
+ ctor public SecurityException(Throwable);
+ }
+
+ public class SecurityManager {
+ ctor public SecurityManager();
+ method public void checkAccept(String, int);
+ method public void checkAccess(Thread);
+ method public void checkAccess(ThreadGroup);
+ method public void checkAwtEventQueueAccess();
+ method public void checkConnect(String, int);
+ method public void checkConnect(String, int, Object);
+ method public void checkCreateClassLoader();
+ method public void checkDelete(String);
+ method public void checkExec(String);
+ method public void checkExit(int);
+ method public void checkLink(String);
+ method public void checkListen(int);
+ method @Deprecated public void checkMemberAccess(Class<?>, int);
+ method public void checkMulticast(java.net.InetAddress);
+ method @Deprecated public void checkMulticast(java.net.InetAddress, byte);
+ method public void checkPackageAccess(String);
+ method public void checkPackageDefinition(String);
+ method public void checkPermission(java.security.Permission);
+ method public void checkPermission(java.security.Permission, Object);
+ method public void checkPrintJobAccess();
+ method public void checkPropertiesAccess();
+ method public void checkPropertyAccess(String);
+ method public void checkRead(java.io.FileDescriptor);
+ method public void checkRead(String);
+ method public void checkRead(String, Object);
+ method public void checkSecurityAccess(String);
+ method public void checkSetFactory();
+ method public void checkSystemClipboardAccess();
+ method @Deprecated public boolean checkTopLevelWindow(Object);
+ method public void checkWrite(java.io.FileDescriptor);
+ method public void checkWrite(String);
+ method @Deprecated protected int classDepth(String);
+ method @Deprecated protected int classLoaderDepth();
+ method @Deprecated protected ClassLoader currentClassLoader();
+ method @Deprecated protected Class<?> currentLoadedClass();
+ method protected Class[] getClassContext();
+ method @Deprecated public boolean getInCheck();
+ method public Object getSecurityContext();
+ method public ThreadGroup getThreadGroup();
+ method @Deprecated protected boolean inClass(String);
+ method @Deprecated protected boolean inClassLoader();
+ field @Deprecated protected boolean inCheck;
+ }
+
+ public final class Short extends java.lang.Number implements java.lang.Comparable<java.lang.Short> {
+ ctor @Deprecated public Short(short);
+ ctor @Deprecated public Short(String) throws java.lang.NumberFormatException;
+ method public static int compare(short, short);
+ method public int compareTo(Short);
+ method public static int compareUnsigned(short, short);
+ method public static Short decode(String) throws java.lang.NumberFormatException;
+ method public double doubleValue();
+ method public float floatValue();
+ method public static int hashCode(short);
+ method public int intValue();
+ method public long longValue();
+ method public static short parseShort(String, int) throws java.lang.NumberFormatException;
+ method public static short parseShort(String) throws java.lang.NumberFormatException;
+ method public static short reverseBytes(short);
+ method public static String toString(short);
+ method public static int toUnsignedInt(short);
+ method public static long toUnsignedLong(short);
+ method public static Short valueOf(String, int) throws java.lang.NumberFormatException;
+ method public static Short valueOf(String) throws java.lang.NumberFormatException;
+ method public static Short valueOf(short);
+ field public static final int BYTES = 2; // 0x2
+ field public static final short MAX_VALUE = 32767; // 0x7fff
+ field public static final short MIN_VALUE = -32768; // 0xffff8000
+ field public static final int SIZE = 16; // 0x10
+ field public static final Class<java.lang.Short> TYPE;
+ }
+
+ public class StackOverflowError extends java.lang.VirtualMachineError {
+ ctor public StackOverflowError();
+ ctor public StackOverflowError(String);
+ }
+
+ public final class StackTraceElement implements java.io.Serializable {
+ ctor public StackTraceElement(String, String, String, int);
+ method public String getClassName();
+ method public String getFileName();
+ method public int getLineNumber();
+ method public String getMethodName();
+ method public boolean isNativeMethod();
+ }
+
+ public final class StrictMath {
+ method public static double IEEEremainder(double, double);
+ method public static int abs(int);
+ method public static long abs(long);
+ method public static float abs(float);
+ method public static double abs(double);
+ method public static double acos(double);
+ method public static int addExact(int, int);
+ method public static long addExact(long, long);
+ method public static double asin(double);
+ method public static double atan(double);
+ method public static double atan2(double, double);
+ method public static double cbrt(double);
+ method public static double ceil(double);
+ method public static double copySign(double, double);
+ method public static float copySign(float, float);
+ method public static double cos(double);
+ method public static double cosh(double);
+ method public static double exp(double);
+ method public static double expm1(double);
+ method public static double floor(double);
+ method public static int floorDiv(int, int);
+ method public static long floorDiv(long, int);
+ method public static long floorDiv(long, long);
+ method public static int floorMod(int, int);
+ method public static int floorMod(long, int);
+ method public static long floorMod(long, long);
+ method public static double fma(double, double, double);
+ method public static float fma(float, float, float);
+ method public static int getExponent(float);
+ method public static int getExponent(double);
+ method public static double hypot(double, double);
+ method public static double log(double);
+ method public static double log10(double);
+ method public static double log1p(double);
+ method public static int max(int, int);
+ method public static long max(long, long);
+ method public static float max(float, float);
+ method public static double max(double, double);
+ method public static int min(int, int);
+ method public static long min(long, long);
+ method public static float min(float, float);
+ method public static double min(double, double);
+ method public static int multiplyExact(int, int);
+ method public static long multiplyExact(long, int);
+ method public static long multiplyExact(long, long);
+ method public static long multiplyFull(int, int);
+ method public static long multiplyHigh(long, long);
+ method public static double nextAfter(double, double);
+ method public static float nextAfter(float, double);
+ method public static double nextDown(double);
+ method public static float nextDown(float);
+ method public static double nextUp(double);
+ method public static float nextUp(float);
+ method public static double pow(double, double);
+ method public static double random();
+ method public static double rint(double);
+ method public static int round(float);
+ method public static long round(double);
+ method public static double scalb(double, int);
+ method public static float scalb(float, int);
+ method public static double signum(double);
+ method public static float signum(float);
+ method public static double sin(double);
+ method public static double sinh(double);
+ method public static double sqrt(double);
+ method public static int subtractExact(int, int);
+ method public static long subtractExact(long, long);
+ method public static double tan(double);
+ method public static double tanh(double);
+ method public static double toDegrees(double);
+ method public static int toIntExact(long);
+ method public static double toRadians(double);
+ method public static double ulp(double);
+ method public static float ulp(float);
+ field public static final double E = 2.718281828459045;
+ field public static final double PI = 3.141592653589793;
+ }
+
+ public final class String implements java.lang.CharSequence java.lang.Comparable<java.lang.String> java.io.Serializable {
+ ctor public String();
+ ctor public String(@NonNull String);
+ ctor public String(char[]);
+ ctor public String(char[], int, int);
+ ctor public String(int[], int, int);
+ ctor @Deprecated public String(byte[], int, int, int);
+ ctor @Deprecated public String(byte[], int);
+ ctor public String(byte[], int, int, @NonNull String) throws java.io.UnsupportedEncodingException;
+ ctor public String(byte[], int, int, @NonNull java.nio.charset.Charset);
+ ctor public String(byte[], @NonNull String) throws java.io.UnsupportedEncodingException;
+ ctor public String(byte[], @NonNull java.nio.charset.Charset);
+ ctor public String(byte[], int, int);
+ ctor public String(byte[]);
+ ctor public String(@NonNull StringBuffer);
+ ctor public String(@NonNull StringBuilder);
+ method public char charAt(int);
+ method public int codePointAt(int);
+ method public int codePointBefore(int);
+ method public int codePointCount(int, int);
+ method public int compareTo(@NonNull String);
+ method public int compareToIgnoreCase(@NonNull String);
+ method @NonNull public String concat(@NonNull String);
+ method public boolean contains(@NonNull CharSequence);
+ method public boolean contentEquals(@NonNull StringBuffer);
+ method public boolean contentEquals(@NonNull CharSequence);
+ method @NonNull public static String copyValueOf(char[], int, int);
+ method @NonNull public static String copyValueOf(char[]);
+ method public boolean endsWith(@NonNull String);
+ method public boolean equalsIgnoreCase(@Nullable String);
+ method @NonNull public static String format(@NonNull String, @NonNull java.lang.Object...);
+ method @NonNull public static String format(@NonNull java.util.Locale, @NonNull String, @NonNull java.lang.Object...);
+ method @Deprecated public void getBytes(int, int, byte[], int);
+ method public byte[] getBytes(@NonNull String) throws java.io.UnsupportedEncodingException;
+ method public byte[] getBytes(@NonNull java.nio.charset.Charset);
+ method public byte[] getBytes();
+ method public void getChars(int, int, char[], int);
+ method public int indexOf(int);
+ method public int indexOf(int, int);
+ method public int indexOf(@NonNull String);
+ method public int indexOf(@NonNull String, int);
+ method @NonNull public String intern();
+ method public boolean isBlank();
+ method public boolean isEmpty();
+ method @NonNull public static String join(@NonNull CharSequence, @Nullable java.lang.CharSequence...);
+ method @NonNull public static String join(@NonNull CharSequence, @NonNull Iterable<? extends java.lang.CharSequence>);
+ method public int lastIndexOf(int);
+ method public int lastIndexOf(int, int);
+ method public int lastIndexOf(@NonNull String);
+ method public int lastIndexOf(@NonNull String, int);
+ method public int length();
+ method @NonNull public java.util.stream.Stream<java.lang.String> lines();
+ method public boolean matches(@NonNull String);
+ method public int offsetByCodePoints(int, int);
+ method public boolean regionMatches(int, @NonNull String, int, int);
+ method public boolean regionMatches(boolean, int, @NonNull String, int, int);
+ method @NonNull public String repeat(int);
+ method @NonNull public String replace(char, char);
+ method @NonNull public String replace(@NonNull CharSequence, @NonNull CharSequence);
+ method @NonNull public String replaceAll(@NonNull String, @NonNull String);
+ method @NonNull public String replaceFirst(@NonNull String, @NonNull String);
+ method @NonNull public String[] split(@NonNull String, int);
+ method @NonNull public String[] split(@NonNull String);
+ method public boolean startsWith(@NonNull String, int);
+ method public boolean startsWith(@NonNull String);
+ method @NonNull public String strip();
+ method @NonNull public String stripLeading();
+ method @NonNull public String stripTrailing();
+ method @NonNull public CharSequence subSequence(int, int);
+ method @NonNull public String substring(int);
+ method @NonNull public String substring(int, int);
+ method public char[] toCharArray();
+ method @NonNull public String toLowerCase(@NonNull java.util.Locale);
+ method @NonNull public String toLowerCase();
+ method @NonNull public String toUpperCase(@NonNull java.util.Locale);
+ method @NonNull public String toUpperCase();
+ method @NonNull public String trim();
+ method @NonNull public static String valueOf(@Nullable Object);
+ method @NonNull public static String valueOf(char[]);
+ method @NonNull public static String valueOf(char[], int, int);
+ method @NonNull public static String valueOf(boolean);
+ method @NonNull public static String valueOf(char);
+ method @NonNull public static String valueOf(int);
+ method @NonNull public static String valueOf(long);
+ method @NonNull public static String valueOf(float);
+ method @NonNull public static String valueOf(double);
+ field public static final java.util.Comparator<java.lang.String> CASE_INSENSITIVE_ORDER;
+ }
+
+ public final class StringBuffer implements java.lang.Appendable java.lang.CharSequence java.io.Serializable {
+ ctor public StringBuffer();
+ ctor public StringBuffer(int);
+ ctor public StringBuffer(@NonNull String);
+ ctor public StringBuffer(@NonNull CharSequence);
+ method @NonNull public StringBuffer append(@Nullable Object);
+ method @NonNull public StringBuffer append(@Nullable String);
+ method @NonNull public StringBuffer append(@Nullable StringBuffer);
+ method @NonNull public StringBuffer append(@Nullable CharSequence);
+ method @NonNull public StringBuffer append(@Nullable CharSequence, int, int);
+ method @NonNull public StringBuffer append(char[]);
+ method @NonNull public StringBuffer append(char[], int, int);
+ method @NonNull public StringBuffer append(boolean);
+ method @NonNull public StringBuffer append(char);
+ method @NonNull public StringBuffer append(int);
+ method @NonNull public StringBuffer append(long);
+ method @NonNull public StringBuffer append(float);
+ method @NonNull public StringBuffer append(double);
+ method @NonNull public StringBuffer appendCodePoint(int);
+ method public int capacity();
+ method public char charAt(int);
+ method public int codePointAt(int);
+ method public int codePointBefore(int);
+ method public int codePointCount(int, int);
+ method @NonNull public StringBuffer delete(int, int);
+ method @NonNull public StringBuffer deleteCharAt(int);
+ method public void ensureCapacity(int);
+ method public void getChars(int, int, char[], int);
+ method public int indexOf(@NonNull String);
+ method public int indexOf(@NonNull String, int);
+ method @NonNull public StringBuffer insert(int, char[], int, int);
+ method @NonNull public StringBuffer insert(int, @Nullable Object);
+ method @NonNull public StringBuffer insert(int, @Nullable String);
+ method @NonNull public StringBuffer insert(int, char[]);
+ method @NonNull public StringBuffer insert(int, @Nullable CharSequence);
+ method @NonNull public StringBuffer insert(int, @Nullable CharSequence, int, int);
+ method @NonNull public StringBuffer insert(int, boolean);
+ method @NonNull public StringBuffer insert(int, char);
+ method @NonNull public StringBuffer insert(int, int);
+ method @NonNull public StringBuffer insert(int, long);
+ method @NonNull public StringBuffer insert(int, float);
+ method @NonNull public StringBuffer insert(int, double);
+ method public int lastIndexOf(@NonNull String);
+ method public int lastIndexOf(@NonNull String, int);
+ method public int length();
+ method public int offsetByCodePoints(int, int);
+ method @NonNull public StringBuffer replace(int, int, @NonNull String);
+ method @NonNull public StringBuffer reverse();
+ method public void setCharAt(int, char);
+ method public void setLength(int);
+ method @NonNull public CharSequence subSequence(int, int);
+ method @NonNull public String substring(int);
+ method @NonNull public String substring(int, int);
+ method public void trimToSize();
+ }
+
+ public final class StringBuilder implements java.lang.Appendable java.lang.CharSequence java.io.Serializable {
+ ctor public StringBuilder();
+ ctor public StringBuilder(int);
+ ctor public StringBuilder(@NonNull String);
+ ctor public StringBuilder(@NonNull CharSequence);
+ method @NonNull public StringBuilder append(@Nullable Object);
+ method @NonNull public StringBuilder append(@Nullable String);
+ method @NonNull public StringBuilder append(@Nullable StringBuffer);
+ method @NonNull public StringBuilder append(@Nullable CharSequence);
+ method @NonNull public StringBuilder append(@Nullable CharSequence, int, int);
+ method @NonNull public StringBuilder append(char[]);
+ method @NonNull public StringBuilder append(char[], int, int);
+ method @NonNull public StringBuilder append(boolean);
+ method @NonNull public StringBuilder append(char);
+ method @NonNull public StringBuilder append(int);
+ method @NonNull public StringBuilder append(long);
+ method @NonNull public StringBuilder append(float);
+ method @NonNull public StringBuilder append(double);
+ method @NonNull public StringBuilder appendCodePoint(int);
+ method public int capacity();
+ method public char charAt(int);
+ method public int codePointAt(int);
+ method public int codePointBefore(int);
+ method public int codePointCount(int, int);
+ method @NonNull public StringBuilder delete(int, int);
+ method @NonNull public StringBuilder deleteCharAt(int);
+ method public void ensureCapacity(int);
+ method public void getChars(int, int, char[], int);
+ method public int indexOf(@NonNull String);
+ method public int indexOf(@NonNull String, int);
+ method @NonNull public StringBuilder insert(int, char[], int, int);
+ method @NonNull public StringBuilder insert(int, @Nullable Object);
+ method @NonNull public StringBuilder insert(int, @Nullable String);
+ method @NonNull public StringBuilder insert(int, char[]);
+ method @NonNull public StringBuilder insert(int, @Nullable CharSequence);
+ method @NonNull public StringBuilder insert(int, @Nullable CharSequence, int, int);
+ method @NonNull public StringBuilder insert(int, boolean);
+ method @NonNull public StringBuilder insert(int, char);
+ method @NonNull public StringBuilder insert(int, int);
+ method @NonNull public StringBuilder insert(int, long);
+ method @NonNull public StringBuilder insert(int, float);
+ method @NonNull public StringBuilder insert(int, double);
+ method public int lastIndexOf(@NonNull String);
+ method public int lastIndexOf(@NonNull String, int);
+ method public int length();
+ method public int offsetByCodePoints(int, int);
+ method @NonNull public StringBuilder replace(int, int, @NonNull String);
+ method @NonNull public StringBuilder reverse();
+ method public void setCharAt(int, char);
+ method public void setLength(int);
+ method @NonNull public CharSequence subSequence(int, int);
+ method @NonNull public String substring(int);
+ method @NonNull public String substring(int, int);
+ method public void trimToSize();
+ }
+
+ public class StringIndexOutOfBoundsException extends java.lang.IndexOutOfBoundsException {
+ ctor public StringIndexOutOfBoundsException();
+ ctor public StringIndexOutOfBoundsException(String);
+ ctor public StringIndexOutOfBoundsException(int);
+ }
+
+ @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) @java.lang.annotation.Target({java.lang.annotation.ElementType.TYPE, java.lang.annotation.ElementType.FIELD, java.lang.annotation.ElementType.METHOD, java.lang.annotation.ElementType.PARAMETER, java.lang.annotation.ElementType.CONSTRUCTOR, java.lang.annotation.ElementType.LOCAL_VARIABLE}) public @interface SuppressWarnings {
+ method public abstract String[] value();
+ }
+
+ public final class System {
+ method public static void arraycopy(@NonNull Object, int, @NonNull Object, int, int);
+ method @Nullable public static String clearProperty(@NonNull String);
+ method @Nullable public static java.io.Console console();
+ method public static long currentTimeMillis();
+ method public static void exit(int);
+ method public static void gc();
+ method @NonNull public static java.util.Properties getProperties();
+ method @Nullable public static String getProperty(@NonNull String);
+ method @Nullable public static String getProperty(@NonNull String, @Nullable String);
+ method @Nullable public static SecurityManager getSecurityManager();
+ method @Nullable public static String getenv(@NonNull String);
+ method @NonNull public static java.util.Map<java.lang.String,java.lang.String> getenv();
+ method public static int identityHashCode(@Nullable Object);
+ method @Nullable public static java.nio.channels.Channel inheritedChannel() throws java.io.IOException;
+ method @NonNull public static String lineSeparator();
+ method public static void load(@NonNull String);
+ method public static void loadLibrary(@NonNull String);
+ method @NonNull public static String mapLibraryName(@NonNull String);
+ method public static long nanoTime();
+ method public static void runFinalization();
+ method @Deprecated public static void runFinalizersOnExit(boolean);
+ method public static void setErr(@Nullable java.io.PrintStream);
+ method public static void setIn(@Nullable java.io.InputStream);
+ method public static void setOut(@Nullable java.io.PrintStream);
+ method public static void setProperties(@Nullable java.util.Properties);
+ method @Nullable public static String setProperty(@NonNull String, @Nullable String);
+ method public static void setSecurityManager(@Nullable SecurityManager);
+ field public static final java.io.PrintStream err;
+ field public static final java.io.InputStream in;
+ field public static final java.io.PrintStream out;
+ }
+
+ public class Thread implements java.lang.Runnable {
+ ctor public Thread();
+ ctor public Thread(@Nullable Runnable);
+ ctor public Thread(@Nullable ThreadGroup, @Nullable Runnable);
+ ctor public Thread(@NonNull String);
+ ctor public Thread(@Nullable ThreadGroup, @NonNull String);
+ ctor public Thread(@Nullable Runnable, @NonNull String);
+ ctor public Thread(@Nullable ThreadGroup, @Nullable Runnable, @NonNull String);
+ ctor public Thread(@Nullable ThreadGroup, @Nullable Runnable, @NonNull String, long);
+ ctor public Thread(@Nullable ThreadGroup, @Nullable Runnable, @NonNull String, long, boolean);
+ method public static int activeCount();
+ method public final void checkAccess();
+ method @Deprecated public int countStackFrames();
+ method @NonNull public static Thread currentThread();
+ method @Deprecated public void destroy();
+ method public static void dumpStack();
+ method public static int enumerate(Thread[]);
+ method @NonNull public static java.util.Map<java.lang.Thread,java.lang.StackTraceElement[]> getAllStackTraces();
+ method @Nullable public ClassLoader getContextClassLoader();
+ method @Nullable public static java.lang.Thread.UncaughtExceptionHandler getDefaultUncaughtExceptionHandler();
+ method public long getId();
+ method @NonNull public final String getName();
+ method public final int getPriority();
+ method @NonNull public StackTraceElement[] getStackTrace();
+ method @NonNull public java.lang.Thread.State getState();
+ method @Nullable public final ThreadGroup getThreadGroup();
+ method @Nullable public java.lang.Thread.UncaughtExceptionHandler getUncaughtExceptionHandler();
+ method public static boolean holdsLock(@NonNull Object);
+ method public void interrupt();
+ method public static boolean interrupted();
+ method public final boolean isAlive();
+ method public final boolean isDaemon();
+ method public boolean isInterrupted();
+ method public final void join(long) throws java.lang.InterruptedException;
+ method public final void join(long, int) throws java.lang.InterruptedException;
+ method public final void join() throws java.lang.InterruptedException;
+ method public static void onSpinWait();
+ method @Deprecated public final void resume();
+ method public void run();
+ method public void setContextClassLoader(@Nullable ClassLoader);
+ method public final void setDaemon(boolean);
+ method public static void setDefaultUncaughtExceptionHandler(@Nullable java.lang.Thread.UncaughtExceptionHandler);
+ method public final void setName(@NonNull String);
+ method public final void setPriority(int);
+ method public void setUncaughtExceptionHandler(@Nullable java.lang.Thread.UncaughtExceptionHandler);
+ method public static void sleep(long) throws java.lang.InterruptedException;
+ method public static void sleep(long, int) throws java.lang.InterruptedException;
+ method public void start();
+ method @Deprecated public final void stop();
+ method @Deprecated public final void stop(@Nullable Throwable);
+ method @Deprecated public final void suspend();
+ method public static void yield();
+ field public static final int MAX_PRIORITY = 10; // 0xa
+ field public static final int MIN_PRIORITY = 1; // 0x1
+ field public static final int NORM_PRIORITY = 5; // 0x5
+ }
+
+ public enum Thread.State {
+ enum_constant public static final java.lang.Thread.State BLOCKED;
+ enum_constant public static final java.lang.Thread.State NEW;
+ enum_constant public static final java.lang.Thread.State RUNNABLE;
+ enum_constant public static final java.lang.Thread.State TERMINATED;
+ enum_constant public static final java.lang.Thread.State TIMED_WAITING;
+ enum_constant public static final java.lang.Thread.State WAITING;
+ }
+
+ @java.lang.FunctionalInterface public static interface Thread.UncaughtExceptionHandler {
+ method public void uncaughtException(@NonNull Thread, @NonNull Throwable);
+ }
+
+ public class ThreadDeath extends java.lang.Error {
+ ctor public ThreadDeath();
+ }
+
+ public class ThreadGroup implements java.lang.Thread.UncaughtExceptionHandler {
+ ctor public ThreadGroup(String);
+ ctor public ThreadGroup(ThreadGroup, String);
+ method public int activeCount();
+ method public int activeGroupCount();
+ method @Deprecated public boolean allowThreadSuspension(boolean);
+ method public final void checkAccess();
+ method public final void destroy();
+ method public int enumerate(Thread[]);
+ method public int enumerate(Thread[], boolean);
+ method public int enumerate(ThreadGroup[]);
+ method public int enumerate(ThreadGroup[], boolean);
+ method public final int getMaxPriority();
+ method public final String getName();
+ method public final ThreadGroup getParent();
+ method public final void interrupt();
+ method public final boolean isDaemon();
+ method public boolean isDestroyed();
+ method public void list();
+ method public final boolean parentOf(ThreadGroup);
+ method @Deprecated public final void resume();
+ method public final void setDaemon(boolean);
+ method public final void setMaxPriority(int);
+ method @Deprecated public final void stop();
+ method @Deprecated public final void suspend();
+ method public void uncaughtException(Thread, Throwable);
+ }
+
+ public class ThreadLocal<T> {
+ ctor public ThreadLocal();
+ method @Nullable public T get();
+ method @Nullable protected T initialValue();
+ method public void remove();
+ method public void set(T);
+ method @NonNull public static <S> ThreadLocal<S> withInitial(@NonNull java.util.function.Supplier<? extends S>);
+ }
+
+ public class Throwable implements java.io.Serializable {
+ ctor public Throwable();
+ ctor public Throwable(@Nullable String);
+ ctor public Throwable(@Nullable String, @Nullable Throwable);
+ ctor public Throwable(@Nullable Throwable);
+ ctor protected Throwable(@Nullable String, @Nullable Throwable, boolean, boolean);
+ method public final void addSuppressed(@NonNull Throwable);
+ method @NonNull public Throwable fillInStackTrace();
+ method @Nullable public Throwable getCause();
+ method @Nullable public String getLocalizedMessage();
+ method @Nullable public String getMessage();
+ method @NonNull public StackTraceElement[] getStackTrace();
+ method @NonNull public final Throwable[] getSuppressed();
+ method @NonNull public Throwable initCause(@Nullable Throwable);
+ method public void printStackTrace();
+ method public void printStackTrace(@NonNull java.io.PrintStream);
+ method public void printStackTrace(@NonNull java.io.PrintWriter);
+ method public void setStackTrace(@NonNull StackTraceElement[]);
+ }
+
+ public class TypeNotPresentException extends java.lang.RuntimeException {
+ ctor public TypeNotPresentException(String, Throwable);
+ method public String typeName();
+ }
+
+ public class UnknownError extends java.lang.VirtualMachineError {
+ ctor public UnknownError();
+ ctor public UnknownError(String);
+ }
+
+ public class UnsatisfiedLinkError extends java.lang.LinkageError {
+ ctor public UnsatisfiedLinkError();
+ ctor public UnsatisfiedLinkError(String);
+ }
+
+ public class UnsupportedClassVersionError extends java.lang.ClassFormatError {
+ ctor public UnsupportedClassVersionError();
+ ctor public UnsupportedClassVersionError(String);
+ }
+
+ public class UnsupportedOperationException extends java.lang.RuntimeException {
+ ctor public UnsupportedOperationException();
+ ctor public UnsupportedOperationException(String);
+ ctor public UnsupportedOperationException(String, Throwable);
+ ctor public UnsupportedOperationException(Throwable);
+ }
+
+ public class VerifyError extends java.lang.LinkageError {
+ ctor public VerifyError();
+ ctor public VerifyError(String);
+ }
+
+ public abstract class VirtualMachineError extends java.lang.Error {
+ ctor public VirtualMachineError();
+ ctor public VirtualMachineError(String);
+ ctor public VirtualMachineError(String, Throwable);
+ ctor public VirtualMachineError(Throwable);
+ }
+
+ public final class Void {
+ field public static final Class<java.lang.Void> TYPE;
+ }
+
+}
+
+package java.lang.annotation {
+
+ public interface Annotation {
+ method public Class<? extends java.lang.annotation.Annotation> annotationType();
+ method public boolean equals(Object);
+ method public int hashCode();
+ method public String toString();
+ }
+
+ public class AnnotationFormatError extends java.lang.Error {
+ ctor public AnnotationFormatError(String);
+ ctor public AnnotationFormatError(String, Throwable);
+ ctor public AnnotationFormatError(Throwable);
+ }
+
+ public class AnnotationTypeMismatchException extends java.lang.RuntimeException {
+ ctor public AnnotationTypeMismatchException(java.lang.reflect.Method, String);
+ method public java.lang.reflect.Method element();
+ method public String foundType();
+ }
+
+ @java.lang.annotation.Documented @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.RUNTIME) @java.lang.annotation.Target(java.lang.annotation.ElementType.ANNOTATION_TYPE) public @interface Documented {
+ }
+
+ public enum ElementType {
+ enum_constant public static final java.lang.annotation.ElementType ANNOTATION_TYPE;
+ enum_constant public static final java.lang.annotation.ElementType CONSTRUCTOR;
+ enum_constant public static final java.lang.annotation.ElementType FIELD;
+ enum_constant public static final java.lang.annotation.ElementType LOCAL_VARIABLE;
+ enum_constant public static final java.lang.annotation.ElementType METHOD;
+ enum_constant public static final java.lang.annotation.ElementType MODULE;
+ enum_constant public static final java.lang.annotation.ElementType PACKAGE;
+ enum_constant public static final java.lang.annotation.ElementType PARAMETER;
+ enum_constant public static final java.lang.annotation.ElementType TYPE;
+ enum_constant public static final java.lang.annotation.ElementType TYPE_PARAMETER;
+ enum_constant public static final java.lang.annotation.ElementType TYPE_USE;
+ }
+
+ public class IncompleteAnnotationException extends java.lang.RuntimeException {
+ ctor public IncompleteAnnotationException(Class<? extends java.lang.annotation.Annotation>, String);
+ method public Class<? extends java.lang.annotation.Annotation> annotationType();
+ method public String elementName();
+ }
+
+ @java.lang.annotation.Documented @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.RUNTIME) @java.lang.annotation.Target(java.lang.annotation.ElementType.ANNOTATION_TYPE) public @interface Inherited {
+ }
+
+ @java.lang.annotation.Documented @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) @java.lang.annotation.Target(java.lang.annotation.ElementType.FIELD) public @interface Native {
+ }
+
+ @java.lang.annotation.Documented @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.RUNTIME) @java.lang.annotation.Target(java.lang.annotation.ElementType.ANNOTATION_TYPE) public @interface Repeatable {
+ method public abstract Class<? extends java.lang.annotation.Annotation> value();
+ }
+
+ @java.lang.annotation.Documented @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.RUNTIME) @java.lang.annotation.Target(java.lang.annotation.ElementType.ANNOTATION_TYPE) public @interface Retention {
+ method public abstract java.lang.annotation.RetentionPolicy value();
+ }
+
+ public enum RetentionPolicy {
+ enum_constant public static final java.lang.annotation.RetentionPolicy CLASS;
+ enum_constant public static final java.lang.annotation.RetentionPolicy RUNTIME;
+ enum_constant public static final java.lang.annotation.RetentionPolicy SOURCE;
+ }
+
+ @java.lang.annotation.Documented @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.RUNTIME) @java.lang.annotation.Target(java.lang.annotation.ElementType.ANNOTATION_TYPE) public @interface Target {
+ method public abstract java.lang.annotation.ElementType[] value();
+ }
+
+}
+
+package java.lang.invoke {
+
+ public abstract class CallSite {
+ method public abstract java.lang.invoke.MethodHandle dynamicInvoker();
+ method public abstract java.lang.invoke.MethodHandle getTarget();
+ method public abstract void setTarget(java.lang.invoke.MethodHandle);
+ method public java.lang.invoke.MethodType type();
+ }
+
+ public class ConstantCallSite extends java.lang.invoke.CallSite {
+ ctor public ConstantCallSite(java.lang.invoke.MethodHandle);
+ ctor protected ConstantCallSite(java.lang.invoke.MethodType, java.lang.invoke.MethodHandle) throws java.lang.Throwable;
+ method public final java.lang.invoke.MethodHandle dynamicInvoker();
+ method public final java.lang.invoke.MethodHandle getTarget();
+ method public final void setTarget(java.lang.invoke.MethodHandle);
+ }
+
+ public class LambdaConversionException extends java.lang.Exception {
+ ctor public LambdaConversionException();
+ ctor public LambdaConversionException(String);
+ ctor public LambdaConversionException(String, Throwable);
+ ctor public LambdaConversionException(Throwable);
+ ctor public LambdaConversionException(String, Throwable, boolean, boolean);
+ }
+
+ public abstract class MethodHandle {
+ method public java.lang.invoke.MethodHandle asCollector(Class<?>, int);
+ method public java.lang.invoke.MethodHandle asCollector(int, Class<?>, int);
+ method public java.lang.invoke.MethodHandle asFixedArity();
+ method public java.lang.invoke.MethodHandle asSpreader(Class<?>, int);
+ method public java.lang.invoke.MethodHandle asSpreader(int, Class<?>, int);
+ method public java.lang.invoke.MethodHandle asType(java.lang.invoke.MethodType);
+ method public java.lang.invoke.MethodHandle asVarargsCollector(Class<?>);
+ method public java.lang.invoke.MethodHandle bindTo(Object);
+ method public final Object invoke(java.lang.Object...) throws java.lang.Throwable;
+ method public final Object invokeExact(java.lang.Object...) throws java.lang.Throwable;
+ method public Object invokeWithArguments(java.lang.Object...) throws java.lang.Throwable;
+ method public Object invokeWithArguments(java.util.List<?>) throws java.lang.Throwable;
+ method public boolean isVarargsCollector();
+ method public java.lang.invoke.MethodType type();
+ method public java.lang.invoke.MethodHandle withVarargs(boolean);
+ }
+
+ public interface MethodHandleInfo {
+ method public Class<?> getDeclaringClass();
+ method public java.lang.invoke.MethodType getMethodType();
+ method public int getModifiers();
+ method public String getName();
+ method public int getReferenceKind();
+ method public default boolean isVarArgs();
+ method @Deprecated public static boolean refKindIsField(int);
+ method @Deprecated public static boolean refKindIsValid(int);
+ method @Deprecated public static String refKindName(int);
+ method public static String referenceKindToString(int);
+ method public <T extends java.lang.reflect.Member> T reflectAs(Class<T>, java.lang.invoke.MethodHandles.Lookup);
+ method public static String toString(int, Class<?>, String, java.lang.invoke.MethodType);
+ field public static final int REF_getField = 1; // 0x1
+ field public static final int REF_getStatic = 2; // 0x2
+ field public static final int REF_invokeInterface = 9; // 0x9
+ field public static final int REF_invokeSpecial = 7; // 0x7
+ field public static final int REF_invokeStatic = 6; // 0x6
+ field public static final int REF_invokeVirtual = 5; // 0x5
+ field public static final int REF_newInvokeSpecial = 8; // 0x8
+ field public static final int REF_putField = 3; // 0x3
+ field public static final int REF_putStatic = 4; // 0x4
+ }
+
+ public class MethodHandles {
+ method public static java.lang.invoke.MethodHandle arrayConstructor(Class<?>) throws java.lang.IllegalArgumentException;
+ method public static java.lang.invoke.MethodHandle arrayElementGetter(Class<?>) throws java.lang.IllegalArgumentException;
+ method public static java.lang.invoke.MethodHandle arrayElementSetter(Class<?>) throws java.lang.IllegalArgumentException;
+ method public static java.lang.invoke.VarHandle arrayElementVarHandle(Class<?>) throws java.lang.IllegalArgumentException;
+ method public static java.lang.invoke.MethodHandle arrayLength(Class<?>) throws java.lang.IllegalArgumentException;
+ method public static java.lang.invoke.VarHandle byteArrayViewVarHandle(Class<?>, java.nio.ByteOrder) throws java.lang.IllegalArgumentException;
+ method public static java.lang.invoke.VarHandle byteBufferViewVarHandle(Class<?>, java.nio.ByteOrder) throws java.lang.IllegalArgumentException;
+ method public static java.lang.invoke.MethodHandle catchException(java.lang.invoke.MethodHandle, Class<? extends java.lang.Throwable>, java.lang.invoke.MethodHandle);
+ method public static java.lang.invoke.MethodHandle collectArguments(java.lang.invoke.MethodHandle, int, java.lang.invoke.MethodHandle);
+ method public static java.lang.invoke.MethodHandle constant(Class<?>, Object);
+ method public static java.lang.invoke.MethodHandle countedLoop(java.lang.invoke.MethodHandle, java.lang.invoke.MethodHandle, java.lang.invoke.MethodHandle);
+ method public static java.lang.invoke.MethodHandle countedLoop(java.lang.invoke.MethodHandle, java.lang.invoke.MethodHandle, java.lang.invoke.MethodHandle, java.lang.invoke.MethodHandle);
+ method public static java.lang.invoke.MethodHandle doWhileLoop(java.lang.invoke.MethodHandle, java.lang.invoke.MethodHandle, java.lang.invoke.MethodHandle);
+ method public static java.lang.invoke.MethodHandle dropArguments(java.lang.invoke.MethodHandle, int, java.util.List<java.lang.Class<?>>);
+ method public static java.lang.invoke.MethodHandle dropArguments(java.lang.invoke.MethodHandle, int, Class<?>...);
+ method public static java.lang.invoke.MethodHandle dropArgumentsToMatch(java.lang.invoke.MethodHandle, int, java.util.List<java.lang.Class<?>>, int);
+ method public static java.lang.invoke.MethodHandle empty(java.lang.invoke.MethodType);
+ method public static java.lang.invoke.MethodHandle exactInvoker(java.lang.invoke.MethodType);
+ method public static java.lang.invoke.MethodHandle explicitCastArguments(java.lang.invoke.MethodHandle, java.lang.invoke.MethodType);
+ method public static java.lang.invoke.MethodHandle filterArguments(java.lang.invoke.MethodHandle, int, java.lang.invoke.MethodHandle...);
+ method public static java.lang.invoke.MethodHandle filterReturnValue(java.lang.invoke.MethodHandle, java.lang.invoke.MethodHandle);
+ method public static java.lang.invoke.MethodHandle foldArguments(java.lang.invoke.MethodHandle, java.lang.invoke.MethodHandle);
+ method public static java.lang.invoke.MethodHandle foldArguments(java.lang.invoke.MethodHandle, int, java.lang.invoke.MethodHandle);
+ method public static java.lang.invoke.MethodHandle guardWithTest(java.lang.invoke.MethodHandle, java.lang.invoke.MethodHandle, java.lang.invoke.MethodHandle);
+ method public static java.lang.invoke.MethodHandle identity(Class<?>);
+ method public static java.lang.invoke.MethodHandle insertArguments(java.lang.invoke.MethodHandle, int, java.lang.Object...);
+ method public static java.lang.invoke.MethodHandle invoker(java.lang.invoke.MethodType);
+ method public static java.lang.invoke.MethodHandle iteratedLoop(java.lang.invoke.MethodHandle, java.lang.invoke.MethodHandle, java.lang.invoke.MethodHandle);
+ method public static java.lang.invoke.MethodHandles.Lookup lookup();
+ method public static java.lang.invoke.MethodHandle loop(java.lang.invoke.MethodHandle[]...);
+ method public static java.lang.invoke.MethodHandle permuteArguments(java.lang.invoke.MethodHandle, java.lang.invoke.MethodType, int...);
+ method public static java.lang.invoke.MethodHandles.Lookup privateLookupIn(Class<?>, java.lang.invoke.MethodHandles.Lookup) throws java.lang.IllegalAccessException;
+ method public static java.lang.invoke.MethodHandles.Lookup publicLookup();
+ method public static <T extends java.lang.reflect.Member> T reflectAs(Class<T>, java.lang.invoke.MethodHandle);
+ method public static java.lang.invoke.MethodHandle spreadInvoker(java.lang.invoke.MethodType, int);
+ method public static java.lang.invoke.MethodHandle throwException(Class<?>, Class<? extends java.lang.Throwable>);
+ method public static java.lang.invoke.MethodHandle tryFinally(java.lang.invoke.MethodHandle, java.lang.invoke.MethodHandle);
+ method public static java.lang.invoke.MethodHandle varHandleExactInvoker(java.lang.invoke.VarHandle.AccessMode, java.lang.invoke.MethodType);
+ method public static java.lang.invoke.MethodHandle varHandleInvoker(java.lang.invoke.VarHandle.AccessMode, java.lang.invoke.MethodType);
+ method public static java.lang.invoke.MethodHandle whileLoop(java.lang.invoke.MethodHandle, java.lang.invoke.MethodHandle, java.lang.invoke.MethodHandle);
+ method public static java.lang.invoke.MethodHandle zero(Class<?>);
+ }
+
+ public static final class MethodHandles.Lookup {
+ method public java.lang.invoke.MethodHandle bind(Object, String, java.lang.invoke.MethodType) throws java.lang.IllegalAccessException, java.lang.NoSuchMethodException;
+ method public java.lang.invoke.MethodHandle findConstructor(Class<?>, java.lang.invoke.MethodType) throws java.lang.IllegalAccessException, java.lang.NoSuchMethodException;
+ method public java.lang.invoke.MethodHandle findGetter(Class<?>, String, Class<?>) throws java.lang.IllegalAccessException, java.lang.NoSuchFieldException;
+ method public java.lang.invoke.MethodHandle findSetter(Class<?>, String, Class<?>) throws java.lang.IllegalAccessException, java.lang.NoSuchFieldException;
+ method public java.lang.invoke.MethodHandle findSpecial(Class<?>, String, java.lang.invoke.MethodType, Class<?>) throws java.lang.IllegalAccessException, java.lang.NoSuchMethodException;
+ method public java.lang.invoke.MethodHandle findStatic(Class<?>, String, java.lang.invoke.MethodType) throws java.lang.IllegalAccessException, java.lang.NoSuchMethodException;
+ method public java.lang.invoke.MethodHandle findStaticGetter(Class<?>, String, Class<?>) throws java.lang.IllegalAccessException, java.lang.NoSuchFieldException;
+ method public java.lang.invoke.MethodHandle findStaticSetter(Class<?>, String, Class<?>) throws java.lang.IllegalAccessException, java.lang.NoSuchFieldException;
+ method public java.lang.invoke.VarHandle findStaticVarHandle(Class<?>, String, Class<?>) throws java.lang.IllegalAccessException, java.lang.NoSuchFieldException;
+ method public java.lang.invoke.VarHandle findVarHandle(Class<?>, String, Class<?>) throws java.lang.IllegalAccessException, java.lang.NoSuchFieldException;
+ method public java.lang.invoke.MethodHandle findVirtual(Class<?>, String, java.lang.invoke.MethodType) throws java.lang.IllegalAccessException, java.lang.NoSuchMethodException;
+ method public java.lang.invoke.MethodHandles.Lookup in(Class<?>);
+ method public Class<?> lookupClass();
+ method public int lookupModes();
+ method public java.lang.invoke.MethodHandleInfo revealDirect(java.lang.invoke.MethodHandle);
+ method public java.lang.invoke.MethodHandle unreflect(java.lang.reflect.Method) throws java.lang.IllegalAccessException;
+ method public java.lang.invoke.MethodHandle unreflectConstructor(java.lang.reflect.Constructor<?>) throws java.lang.IllegalAccessException;
+ method public java.lang.invoke.MethodHandle unreflectGetter(java.lang.reflect.Field) throws java.lang.IllegalAccessException;
+ method public java.lang.invoke.MethodHandle unreflectSetter(java.lang.reflect.Field) throws java.lang.IllegalAccessException;
+ method public java.lang.invoke.MethodHandle unreflectSpecial(java.lang.reflect.Method, Class<?>) throws java.lang.IllegalAccessException;
+ method public java.lang.invoke.VarHandle unreflectVarHandle(java.lang.reflect.Field) throws java.lang.IllegalAccessException;
+ field public static final int PACKAGE = 8; // 0x8
+ field public static final int PRIVATE = 2; // 0x2
+ field public static final int PROTECTED = 4; // 0x4
+ field public static final int PUBLIC = 1; // 0x1
+ }
+
+ public final class MethodType implements java.io.Serializable {
+ method public java.lang.invoke.MethodType appendParameterTypes(Class<?>...);
+ method public java.lang.invoke.MethodType appendParameterTypes(java.util.List<java.lang.Class<?>>);
+ method public java.lang.invoke.MethodType changeParameterType(int, Class<?>);
+ method public java.lang.invoke.MethodType changeReturnType(Class<?>);
+ method public java.lang.invoke.MethodType dropParameterTypes(int, int);
+ method public java.lang.invoke.MethodType erase();
+ method public static java.lang.invoke.MethodType fromMethodDescriptorString(String, ClassLoader) throws java.lang.IllegalArgumentException, java.lang.TypeNotPresentException;
+ method public java.lang.invoke.MethodType generic();
+ method public static java.lang.invoke.MethodType genericMethodType(int, boolean);
+ method public static java.lang.invoke.MethodType genericMethodType(int);
+ method public boolean hasPrimitives();
+ method public boolean hasWrappers();
+ method public java.lang.invoke.MethodType insertParameterTypes(int, Class<?>...);
+ method public java.lang.invoke.MethodType insertParameterTypes(int, java.util.List<java.lang.Class<?>>);
+ method public Class<?> lastParameterType();
+ method public static java.lang.invoke.MethodType methodType(Class<?>, Class<?>[]);
+ method public static java.lang.invoke.MethodType methodType(Class<?>, java.util.List<java.lang.Class<?>>);
+ method public static java.lang.invoke.MethodType methodType(Class<?>, Class<?>, Class<?>...);
+ method public static java.lang.invoke.MethodType methodType(Class<?>);
+ method public static java.lang.invoke.MethodType methodType(Class<?>, Class<?>);
+ method public static java.lang.invoke.MethodType methodType(Class<?>, java.lang.invoke.MethodType);
+ method public Class<?>[] parameterArray();
+ method public int parameterCount();
+ method public java.util.List<java.lang.Class<?>> parameterList();
+ method public Class<?> parameterType(int);
+ method public Class<?> returnType();
+ method public String toMethodDescriptorString();
+ method public java.lang.invoke.MethodType unwrap();
+ method public java.lang.invoke.MethodType wrap();
+ }
+
+ public class MutableCallSite extends java.lang.invoke.CallSite {
+ ctor public MutableCallSite(java.lang.invoke.MethodType);
+ ctor public MutableCallSite(java.lang.invoke.MethodHandle);
+ method public final java.lang.invoke.MethodHandle dynamicInvoker();
+ method public final java.lang.invoke.MethodHandle getTarget();
+ method public void setTarget(java.lang.invoke.MethodHandle);
+ }
+
+ public abstract class VarHandle {
+ method public final java.lang.invoke.MethodType accessModeType(java.lang.invoke.VarHandle.AccessMode);
+ method public static void acquireFence();
+ method public final Object compareAndExchange(java.lang.Object...);
+ method public final Object compareAndExchangeAcquire(java.lang.Object...);
+ method public final Object compareAndExchangeRelease(java.lang.Object...);
+ method public final boolean compareAndSet(java.lang.Object...);
+ method public final java.util.List<java.lang.Class<?>> coordinateTypes();
+ method public static void fullFence();
+ method public final Object get(java.lang.Object...);
+ method public final Object getAcquire(java.lang.Object...);
+ method public final Object getAndAdd(java.lang.Object...);
+ method public final Object getAndAddAcquire(java.lang.Object...);
+ method public final Object getAndAddRelease(java.lang.Object...);
+ method public final Object getAndBitwiseAnd(java.lang.Object...);
+ method public final Object getAndBitwiseAndAcquire(java.lang.Object...);
+ method public final Object getAndBitwiseAndRelease(java.lang.Object...);
+ method public final Object getAndBitwiseOr(java.lang.Object...);
+ method public final Object getAndBitwiseOrAcquire(java.lang.Object...);
+ method public final Object getAndBitwiseOrRelease(java.lang.Object...);
+ method public final Object getAndBitwiseXor(java.lang.Object...);
+ method public final Object getAndBitwiseXorAcquire(java.lang.Object...);
+ method public final Object getAndBitwiseXorRelease(java.lang.Object...);
+ method public final Object getAndSet(java.lang.Object...);
+ method public final Object getAndSetAcquire(java.lang.Object...);
+ method public final Object getAndSetRelease(java.lang.Object...);
+ method public final Object getOpaque(java.lang.Object...);
+ method public final Object getVolatile(java.lang.Object...);
+ method public final boolean isAccessModeSupported(java.lang.invoke.VarHandle.AccessMode);
+ method public static void loadLoadFence();
+ method public static void releaseFence();
+ method public final void set(java.lang.Object...);
+ method public final void setOpaque(java.lang.Object...);
+ method public final void setRelease(java.lang.Object...);
+ method public final void setVolatile(java.lang.Object...);
+ method public static void storeStoreFence();
+ method public final java.lang.invoke.MethodHandle toMethodHandle(java.lang.invoke.VarHandle.AccessMode);
+ method public final Class<?> varType();
+ method public final boolean weakCompareAndSet(java.lang.Object...);
+ method public final boolean weakCompareAndSetAcquire(java.lang.Object...);
+ method public final boolean weakCompareAndSetPlain(java.lang.Object...);
+ method public final boolean weakCompareAndSetRelease(java.lang.Object...);
+ }
+
+ public enum VarHandle.AccessMode {
+ method public String methodName();
+ method public static java.lang.invoke.VarHandle.AccessMode valueFromMethodName(String);
+ enum_constant public static final java.lang.invoke.VarHandle.AccessMode COMPARE_AND_EXCHANGE;
+ enum_constant public static final java.lang.invoke.VarHandle.AccessMode COMPARE_AND_EXCHANGE_ACQUIRE;
+ enum_constant public static final java.lang.invoke.VarHandle.AccessMode COMPARE_AND_EXCHANGE_RELEASE;
+ enum_constant public static final java.lang.invoke.VarHandle.AccessMode COMPARE_AND_SET;
+ enum_constant public static final java.lang.invoke.VarHandle.AccessMode GET;
+ enum_constant public static final java.lang.invoke.VarHandle.AccessMode GET_ACQUIRE;
+ enum_constant public static final java.lang.invoke.VarHandle.AccessMode GET_AND_ADD;
+ enum_constant public static final java.lang.invoke.VarHandle.AccessMode GET_AND_ADD_ACQUIRE;
+ enum_constant public static final java.lang.invoke.VarHandle.AccessMode GET_AND_ADD_RELEASE;
+ enum_constant public static final java.lang.invoke.VarHandle.AccessMode GET_AND_BITWISE_AND;
+ enum_constant public static final java.lang.invoke.VarHandle.AccessMode GET_AND_BITWISE_AND_ACQUIRE;
+ enum_constant public static final java.lang.invoke.VarHandle.AccessMode GET_AND_BITWISE_AND_RELEASE;
+ enum_constant public static final java.lang.invoke.VarHandle.AccessMode GET_AND_BITWISE_OR;
+ enum_constant public static final java.lang.invoke.VarHandle.AccessMode GET_AND_BITWISE_OR_ACQUIRE;
+ enum_constant public static final java.lang.invoke.VarHandle.AccessMode GET_AND_BITWISE_OR_RELEASE;
+ enum_constant public static final java.lang.invoke.VarHandle.AccessMode GET_AND_BITWISE_XOR;
+ enum_constant public static final java.lang.invoke.VarHandle.AccessMode GET_AND_BITWISE_XOR_ACQUIRE;
+ enum_constant public static final java.lang.invoke.VarHandle.AccessMode GET_AND_BITWISE_XOR_RELEASE;
+ enum_constant public static final java.lang.invoke.VarHandle.AccessMode GET_AND_SET;
+ enum_constant public static final java.lang.invoke.VarHandle.AccessMode GET_AND_SET_ACQUIRE;
+ enum_constant public static final java.lang.invoke.VarHandle.AccessMode GET_AND_SET_RELEASE;
+ enum_constant public static final java.lang.invoke.VarHandle.AccessMode GET_OPAQUE;
+ enum_constant public static final java.lang.invoke.VarHandle.AccessMode GET_VOLATILE;
+ enum_constant public static final java.lang.invoke.VarHandle.AccessMode SET;
+ enum_constant public static final java.lang.invoke.VarHandle.AccessMode SET_OPAQUE;
+ enum_constant public static final java.lang.invoke.VarHandle.AccessMode SET_RELEASE;
+ enum_constant public static final java.lang.invoke.VarHandle.AccessMode SET_VOLATILE;
+ enum_constant public static final java.lang.invoke.VarHandle.AccessMode WEAK_COMPARE_AND_SET;
+ enum_constant public static final java.lang.invoke.VarHandle.AccessMode WEAK_COMPARE_AND_SET_ACQUIRE;
+ enum_constant public static final java.lang.invoke.VarHandle.AccessMode WEAK_COMPARE_AND_SET_PLAIN;
+ enum_constant public static final java.lang.invoke.VarHandle.AccessMode WEAK_COMPARE_AND_SET_RELEASE;
+ }
+
+ public class VolatileCallSite extends java.lang.invoke.CallSite {
+ ctor public VolatileCallSite(java.lang.invoke.MethodType);
+ ctor public VolatileCallSite(java.lang.invoke.MethodHandle);
+ method public final java.lang.invoke.MethodHandle dynamicInvoker();
+ method public final java.lang.invoke.MethodHandle getTarget();
+ method public void setTarget(java.lang.invoke.MethodHandle);
+ }
+
+ public class WrongMethodTypeException extends java.lang.RuntimeException {
+ ctor public WrongMethodTypeException();
+ ctor public WrongMethodTypeException(String);
+ }
+
+}
+
+package java.lang.ref {
+
+ public final class Cleaner {
+ method public static java.lang.ref.Cleaner create();
+ method public static java.lang.ref.Cleaner create(java.util.concurrent.ThreadFactory);
+ method public java.lang.ref.Cleaner.Cleanable register(Object, Runnable);
+ }
+
+ public static interface Cleaner.Cleanable {
+ method public void clean();
+ }
+
+ public class PhantomReference<T> extends java.lang.ref.Reference<T> {
+ ctor public PhantomReference(T, java.lang.ref.ReferenceQueue<? super T>);
+ }
+
+ public abstract class Reference<T> {
+ method public void clear();
+ method public boolean enqueue();
+ method public T get();
+ method @Deprecated public boolean isEnqueued();
+ method public static void reachabilityFence(Object);
+ method public final boolean refersTo(T);
+ }
+
+ public class ReferenceQueue<T> {
+ ctor public ReferenceQueue();
+ method public java.lang.ref.Reference<? extends T> poll();
+ method public java.lang.ref.Reference<? extends T> remove(long) throws java.lang.IllegalArgumentException, java.lang.InterruptedException;
+ method public java.lang.ref.Reference<? extends T> remove() throws java.lang.InterruptedException;
+ }
+
+ public class SoftReference<T> extends java.lang.ref.Reference<T> {
+ ctor public SoftReference(T);
+ ctor public SoftReference(T, java.lang.ref.ReferenceQueue<? super T>);
+ }
+
+ public class WeakReference<T> extends java.lang.ref.Reference<T> {
+ ctor public WeakReference(T);
+ ctor public WeakReference(T, java.lang.ref.ReferenceQueue<? super T>);
+ }
+
+}
+
+package java.lang.reflect {
+
+ public class AccessibleObject implements java.lang.reflect.AnnotatedElement {
+ ctor protected AccessibleObject();
+ method @Nullable public <T extends java.lang.annotation.Annotation> T getAnnotation(@NonNull Class<T>);
+ method @NonNull public java.lang.annotation.Annotation[] getAnnotations();
+ method @NonNull public java.lang.annotation.Annotation[] getDeclaredAnnotations();
+ method public boolean isAccessible();
+ method public static void setAccessible(java.lang.reflect.AccessibleObject[], boolean) throws java.lang.SecurityException;
+ method public void setAccessible(boolean) throws java.lang.SecurityException;
+ }
+
+ public interface AnnotatedElement {
+ method @Nullable public <T extends java.lang.annotation.Annotation> T getAnnotation(@NonNull Class<T>);
+ method @NonNull public java.lang.annotation.Annotation[] getAnnotations();
+ method public default <T extends java.lang.annotation.Annotation> T[] getAnnotationsByType(@NonNull Class<T>);
+ method @Nullable public default <T extends java.lang.annotation.Annotation> T getDeclaredAnnotation(@NonNull Class<T>);
+ method @NonNull public java.lang.annotation.Annotation[] getDeclaredAnnotations();
+ method public default <T extends java.lang.annotation.Annotation> T[] getDeclaredAnnotationsByType(@NonNull Class<T>);
+ method public default boolean isAnnotationPresent(@NonNull Class<? extends java.lang.annotation.Annotation>);
+ }
+
+ public final class Array {
+ method @Nullable public static Object get(@NonNull Object, int) throws java.lang.ArrayIndexOutOfBoundsException, java.lang.IllegalArgumentException;
+ method public static boolean getBoolean(@NonNull Object, int) throws java.lang.ArrayIndexOutOfBoundsException, java.lang.IllegalArgumentException;
+ method public static byte getByte(@NonNull Object, int) throws java.lang.ArrayIndexOutOfBoundsException, java.lang.IllegalArgumentException;
+ method public static char getChar(@NonNull Object, int) throws java.lang.ArrayIndexOutOfBoundsException, java.lang.IllegalArgumentException;
+ method public static double getDouble(@NonNull Object, int) throws java.lang.ArrayIndexOutOfBoundsException, java.lang.IllegalArgumentException;
+ method public static float getFloat(@NonNull Object, int) throws java.lang.ArrayIndexOutOfBoundsException, java.lang.IllegalArgumentException;
+ method public static int getInt(@NonNull Object, int) throws java.lang.ArrayIndexOutOfBoundsException, java.lang.IllegalArgumentException;
+ method public static int getLength(@NonNull Object);
+ method public static long getLong(@NonNull Object, int) throws java.lang.ArrayIndexOutOfBoundsException, java.lang.IllegalArgumentException;
+ method public static short getShort(@NonNull Object, int) throws java.lang.ArrayIndexOutOfBoundsException, java.lang.IllegalArgumentException;
+ method @NonNull public static Object newInstance(@NonNull Class<?>, int) throws java.lang.NegativeArraySizeException;
+ method @NonNull public static Object newInstance(@NonNull Class<?>, int...) throws java.lang.IllegalArgumentException, java.lang.NegativeArraySizeException;
+ method public static void set(@NonNull Object, int, @Nullable Object) throws java.lang.ArrayIndexOutOfBoundsException, java.lang.IllegalArgumentException;
+ method public static void setBoolean(@NonNull Object, int, boolean);
+ method public static void setByte(@NonNull Object, int, byte) throws java.lang.ArrayIndexOutOfBoundsException, java.lang.IllegalArgumentException;
+ method public static void setChar(@NonNull Object, int, char) throws java.lang.ArrayIndexOutOfBoundsException, java.lang.IllegalArgumentException;
+ method public static void setDouble(@NonNull Object, int, double) throws java.lang.ArrayIndexOutOfBoundsException, java.lang.IllegalArgumentException;
+ method public static void setFloat(@NonNull Object, int, float) throws java.lang.ArrayIndexOutOfBoundsException, java.lang.IllegalArgumentException;
+ method public static void setInt(@NonNull Object, int, int) throws java.lang.ArrayIndexOutOfBoundsException, java.lang.IllegalArgumentException;
+ method public static void setLong(@NonNull Object, int, long) throws java.lang.ArrayIndexOutOfBoundsException, java.lang.IllegalArgumentException;
+ method public static void setShort(@NonNull Object, int, short) throws java.lang.ArrayIndexOutOfBoundsException, java.lang.IllegalArgumentException;
+ }
+
+ public final class Constructor<T> extends java.lang.reflect.Executable {
+ method @NonNull public Class<T> getDeclaringClass();
+ method public Class<?>[] getExceptionTypes();
+ method public int getModifiers();
+ method @NonNull public String getName();
+ method public java.lang.annotation.Annotation[][] getParameterAnnotations();
+ method @NonNull public Class<?>[] getParameterTypes();
+ method public java.lang.reflect.TypeVariable<java.lang.reflect.Constructor<T>>[] getTypeParameters();
+ method @NonNull public T newInstance(java.lang.Object...) throws java.lang.IllegalAccessException, java.lang.IllegalArgumentException, java.lang.InstantiationException, java.lang.reflect.InvocationTargetException;
+ method @NonNull public String toGenericString();
+ }
+
+ public abstract class Executable extends java.lang.reflect.AccessibleObject implements java.lang.reflect.GenericDeclaration java.lang.reflect.Member {
+ method @NonNull public abstract Class<?>[] getExceptionTypes();
+ method @NonNull public java.lang.reflect.Type[] getGenericExceptionTypes();
+ method @NonNull public java.lang.reflect.Type[] getGenericParameterTypes();
+ method @NonNull public abstract java.lang.annotation.Annotation[][] getParameterAnnotations();
+ method public int getParameterCount();
+ method @NonNull public abstract Class<?>[] getParameterTypes();
+ method @NonNull public java.lang.reflect.Parameter[] getParameters();
+ method public final boolean isAnnotationPresent(@NonNull Class<? extends java.lang.annotation.Annotation>);
+ method public boolean isSynthetic();
+ method public boolean isVarArgs();
+ method @NonNull public abstract String toGenericString();
+ }
+
+ public final class Field extends java.lang.reflect.AccessibleObject implements java.lang.reflect.Member {
+ method @Nullable public Object get(@Nullable Object) throws java.lang.IllegalAccessException, java.lang.IllegalArgumentException;
+ method public boolean getBoolean(@Nullable Object) throws java.lang.IllegalAccessException, java.lang.IllegalArgumentException;
+ method public byte getByte(@Nullable Object) throws java.lang.IllegalAccessException, java.lang.IllegalArgumentException;
+ method public char getChar(@Nullable Object) throws java.lang.IllegalAccessException, java.lang.IllegalArgumentException;
+ method @NonNull public Class<?> getDeclaringClass();
+ method public double getDouble(@Nullable Object) throws java.lang.IllegalAccessException, java.lang.IllegalArgumentException;
+ method public float getFloat(@Nullable Object) throws java.lang.IllegalAccessException, java.lang.IllegalArgumentException;
+ method @NonNull public java.lang.reflect.Type getGenericType();
+ method public int getInt(@Nullable Object) throws java.lang.IllegalAccessException, java.lang.IllegalArgumentException;
+ method public long getLong(@Nullable Object) throws java.lang.IllegalAccessException, java.lang.IllegalArgumentException;
+ method public int getModifiers();
+ method @NonNull public String getName();
+ method public short getShort(@Nullable Object) throws java.lang.IllegalAccessException, java.lang.IllegalArgumentException;
+ method @NonNull public Class<?> getType();
+ method public boolean isEnumConstant();
+ method public boolean isSynthetic();
+ method public void set(@Nullable Object, @Nullable Object) throws java.lang.IllegalAccessException, java.lang.IllegalArgumentException;
+ method public void setBoolean(@Nullable Object, boolean) throws java.lang.IllegalAccessException, java.lang.IllegalArgumentException;
+ method public void setByte(@Nullable Object, byte) throws java.lang.IllegalAccessException, java.lang.IllegalArgumentException;
+ method public void setChar(@Nullable Object, char) throws java.lang.IllegalAccessException, java.lang.IllegalArgumentException;
+ method public void setDouble(@Nullable Object, double) throws java.lang.IllegalAccessException, java.lang.IllegalArgumentException;
+ method public void setFloat(@Nullable Object, float) throws java.lang.IllegalAccessException, java.lang.IllegalArgumentException;
+ method public void setInt(@Nullable Object, int) throws java.lang.IllegalAccessException, java.lang.IllegalArgumentException;
+ method public void setLong(@Nullable Object, long) throws java.lang.IllegalAccessException, java.lang.IllegalArgumentException;
+ method public void setShort(@Nullable Object, short) throws java.lang.IllegalAccessException, java.lang.IllegalArgumentException;
+ method @NonNull public String toGenericString();
+ }
+
+ public interface GenericArrayType extends java.lang.reflect.Type {
+ method @NonNull public java.lang.reflect.Type getGenericComponentType();
+ }
+
+ public interface GenericDeclaration extends java.lang.reflect.AnnotatedElement {
+ method @NonNull public java.lang.reflect.TypeVariable<?>[] getTypeParameters();
+ }
+
+ public class GenericSignatureFormatError extends java.lang.ClassFormatError {
+ ctor public GenericSignatureFormatError();
+ ctor public GenericSignatureFormatError(String);
+ }
+
+ public interface InvocationHandler {
+ method public Object invoke(Object, java.lang.reflect.Method, Object[]) throws java.lang.Throwable;
+ }
+
+ public class InvocationTargetException extends java.lang.ReflectiveOperationException {
+ ctor protected InvocationTargetException();
+ ctor public InvocationTargetException(Throwable);
+ ctor public InvocationTargetException(Throwable, String);
+ method public Throwable getTargetException();
+ }
+
+ public class MalformedParameterizedTypeException extends java.lang.RuntimeException {
+ ctor public MalformedParameterizedTypeException();
+ ctor public MalformedParameterizedTypeException(String);
+ }
+
+ public class MalformedParametersException extends java.lang.RuntimeException {
+ ctor public MalformedParametersException();
+ ctor public MalformedParametersException(String);
+ }
+
+ public interface Member {
+ method @NonNull public Class<?> getDeclaringClass();
+ method public int getModifiers();
+ method @NonNull public String getName();
+ method public boolean isSynthetic();
+ field public static final int DECLARED = 1; // 0x1
+ field public static final int PUBLIC = 0; // 0x0
+ }
+
+ public final class Method extends java.lang.reflect.Executable {
+ method @NonNull public Class<?> getDeclaringClass();
+ method @Nullable public Object getDefaultValue();
+ method @NonNull public Class<?>[] getExceptionTypes();
+ method @NonNull public java.lang.reflect.Type getGenericReturnType();
+ method public int getModifiers();
+ method @NonNull public String getName();
+ method @NonNull public java.lang.annotation.Annotation[][] getParameterAnnotations();
+ method @NonNull public Class<?>[] getParameterTypes();
+ method @NonNull public Class<?> getReturnType();
+ method @NonNull public java.lang.reflect.TypeVariable<java.lang.reflect.Method>[] getTypeParameters();
+ method @Nullable public Object invoke(@Nullable Object, @Nullable java.lang.Object...) throws java.lang.IllegalAccessException, java.lang.IllegalArgumentException, java.lang.reflect.InvocationTargetException;
+ method public boolean isBridge();
+ method public boolean isDefault();
+ method @NonNull public String toGenericString();
+ }
+
+ public class Modifier {
+ ctor public Modifier();
+ method public static int classModifiers();
+ method public static int constructorModifiers();
+ method public static int fieldModifiers();
+ method public static int interfaceModifiers();
+ method public static boolean isAbstract(int);
+ method public static boolean isFinal(int);
+ method public static boolean isInterface(int);
+ method public static boolean isNative(int);
+ method public static boolean isPrivate(int);
+ method public static boolean isProtected(int);
+ method public static boolean isPublic(int);
+ method public static boolean isStatic(int);
+ method public static boolean isStrict(int);
+ method public static boolean isSynchronized(int);
+ method public static boolean isTransient(int);
+ method public static boolean isVolatile(int);
+ method public static int methodModifiers();
+ method public static int parameterModifiers();
+ method public static String toString(int);
+ field public static final int ABSTRACT = 1024; // 0x400
+ field public static final int FINAL = 16; // 0x10
+ field public static final int INTERFACE = 512; // 0x200
+ field public static final int NATIVE = 256; // 0x100
+ field public static final int PRIVATE = 2; // 0x2
+ field public static final int PROTECTED = 4; // 0x4
+ field public static final int PUBLIC = 1; // 0x1
+ field public static final int STATIC = 8; // 0x8
+ field public static final int STRICT = 2048; // 0x800
+ field public static final int SYNCHRONIZED = 32; // 0x20
+ field public static final int TRANSIENT = 128; // 0x80
+ field public static final int VOLATILE = 64; // 0x40
+ }
+
+ public final class Parameter implements java.lang.reflect.AnnotatedElement {
+ method @Nullable public <T extends java.lang.annotation.Annotation> T getAnnotation(@NonNull Class<T>);
+ method @NonNull public java.lang.annotation.Annotation[] getAnnotations();
+ method @NonNull public java.lang.annotation.Annotation[] getDeclaredAnnotations();
+ method @NonNull public java.lang.reflect.Executable getDeclaringExecutable();
+ method public int getModifiers();
+ method @NonNull public String getName();
+ method @NonNull public java.lang.reflect.Type getParameterizedType();
+ method @NonNull public Class<?> getType();
+ method public boolean isImplicit();
+ method public boolean isNamePresent();
+ method public boolean isSynthetic();
+ method public boolean isVarArgs();
+ }
+
+ public interface ParameterizedType extends java.lang.reflect.Type {
+ method @NonNull public java.lang.reflect.Type[] getActualTypeArguments();
+ method @Nullable public java.lang.reflect.Type getOwnerType();
+ method @NonNull public java.lang.reflect.Type getRawType();
+ }
+
+ public class Proxy implements java.io.Serializable {
+ ctor protected Proxy(@NonNull java.lang.reflect.InvocationHandler);
+ method @NonNull public static java.lang.reflect.InvocationHandler getInvocationHandler(@NonNull Object) throws java.lang.IllegalArgumentException;
+ method @NonNull public static Class<?> getProxyClass(@Nullable ClassLoader, @NonNull Class<?>...) throws java.lang.IllegalArgumentException;
+ method public static boolean isProxyClass(@NonNull Class<?>);
+ method @NonNull public static Object newProxyInstance(@Nullable ClassLoader, @NonNull Class<?>[], @NonNull java.lang.reflect.InvocationHandler) throws java.lang.IllegalArgumentException;
+ field protected java.lang.reflect.InvocationHandler h;
+ }
+
+ public final class ReflectPermission extends java.security.BasicPermission {
+ ctor public ReflectPermission(String);
+ ctor public ReflectPermission(String, String);
+ }
+
+ public interface Type {
+ method @NonNull public default String getTypeName();
+ }
+
+ public interface TypeVariable<D extends java.lang.reflect.GenericDeclaration> extends java.lang.reflect.Type {
+ method @NonNull public java.lang.reflect.Type[] getBounds();
+ method @NonNull public D getGenericDeclaration();
+ method @NonNull public String getName();
+ }
+
+ public class UndeclaredThrowableException extends java.lang.RuntimeException {
+ ctor public UndeclaredThrowableException(Throwable);
+ ctor public UndeclaredThrowableException(Throwable, String);
+ method public Throwable getUndeclaredThrowable();
+ }
+
+ public interface WildcardType extends java.lang.reflect.Type {
+ method @NonNull public java.lang.reflect.Type[] getLowerBounds();
+ method @NonNull public java.lang.reflect.Type[] getUpperBounds();
+ }
+
+}
+
+package java.math {
+
+ public class BigDecimal extends java.lang.Number implements java.lang.Comparable<java.math.BigDecimal> {
+ ctor public BigDecimal(char[], int, int);
+ ctor public BigDecimal(char[], int, int, java.math.MathContext);
+ ctor public BigDecimal(char[]);
+ ctor public BigDecimal(char[], java.math.MathContext);
+ ctor public BigDecimal(String);
+ ctor public BigDecimal(String, java.math.MathContext);
+ ctor public BigDecimal(double);
+ ctor public BigDecimal(double, java.math.MathContext);
+ ctor public BigDecimal(java.math.BigInteger);
+ ctor public BigDecimal(java.math.BigInteger, java.math.MathContext);
+ ctor public BigDecimal(java.math.BigInteger, int);
+ ctor public BigDecimal(java.math.BigInteger, int, java.math.MathContext);
+ ctor public BigDecimal(int);
+ ctor public BigDecimal(int, java.math.MathContext);
+ ctor public BigDecimal(long);
+ ctor public BigDecimal(long, java.math.MathContext);
+ method public java.math.BigDecimal abs();
+ method public java.math.BigDecimal abs(java.math.MathContext);
+ method public java.math.BigDecimal add(java.math.BigDecimal);
+ method public java.math.BigDecimal add(java.math.BigDecimal, java.math.MathContext);
+ method public byte byteValueExact();
+ method public int compareTo(java.math.BigDecimal);
+ method @Deprecated public java.math.BigDecimal divide(java.math.BigDecimal, int, int);
+ method public java.math.BigDecimal divide(java.math.BigDecimal, int, java.math.RoundingMode);
+ method @Deprecated public java.math.BigDecimal divide(java.math.BigDecimal, int);
+ method public java.math.BigDecimal divide(java.math.BigDecimal, java.math.RoundingMode);
+ method public java.math.BigDecimal divide(java.math.BigDecimal);
+ method public java.math.BigDecimal divide(java.math.BigDecimal, java.math.MathContext);
+ method public java.math.BigDecimal[] divideAndRemainder(java.math.BigDecimal);
+ method public java.math.BigDecimal[] divideAndRemainder(java.math.BigDecimal, java.math.MathContext);
+ method public java.math.BigDecimal divideToIntegralValue(java.math.BigDecimal);
+ method public java.math.BigDecimal divideToIntegralValue(java.math.BigDecimal, java.math.MathContext);
+ method public double doubleValue();
+ method public float floatValue();
+ method public int intValue();
+ method public int intValueExact();
+ method public long longValue();
+ method public long longValueExact();
+ method public java.math.BigDecimal max(java.math.BigDecimal);
+ method public java.math.BigDecimal min(java.math.BigDecimal);
+ method public java.math.BigDecimal movePointLeft(int);
+ method public java.math.BigDecimal movePointRight(int);
+ method public java.math.BigDecimal multiply(java.math.BigDecimal);
+ method public java.math.BigDecimal multiply(java.math.BigDecimal, java.math.MathContext);
+ method public java.math.BigDecimal negate();
+ method public java.math.BigDecimal negate(java.math.MathContext);
+ method public java.math.BigDecimal plus();
+ method public java.math.BigDecimal plus(java.math.MathContext);
+ method public java.math.BigDecimal pow(int);
+ method public java.math.BigDecimal pow(int, java.math.MathContext);
+ method public int precision();
+ method public java.math.BigDecimal remainder(java.math.BigDecimal);
+ method public java.math.BigDecimal remainder(java.math.BigDecimal, java.math.MathContext);
+ method public java.math.BigDecimal round(java.math.MathContext);
+ method public int scale();
+ method public java.math.BigDecimal scaleByPowerOfTen(int);
+ method public java.math.BigDecimal setScale(int, java.math.RoundingMode);
+ method @Deprecated public java.math.BigDecimal setScale(int, int);
+ method public java.math.BigDecimal setScale(int);
+ method public short shortValueExact();
+ method public int signum();
+ method public java.math.BigDecimal sqrt(java.math.MathContext);
+ method public java.math.BigDecimal stripTrailingZeros();
+ method public java.math.BigDecimal subtract(java.math.BigDecimal);
+ method public java.math.BigDecimal subtract(java.math.BigDecimal, java.math.MathContext);
+ method public java.math.BigInteger toBigInteger();
+ method public java.math.BigInteger toBigIntegerExact();
+ method public String toEngineeringString();
+ method public String toPlainString();
+ method public java.math.BigDecimal ulp();
+ method public java.math.BigInteger unscaledValue();
+ method public static java.math.BigDecimal valueOf(long, int);
+ method public static java.math.BigDecimal valueOf(long);
+ method public static java.math.BigDecimal valueOf(double);
+ field public static final java.math.BigDecimal ONE;
+ field @Deprecated public static final int ROUND_CEILING = 2; // 0x2
+ field @Deprecated public static final int ROUND_DOWN = 1; // 0x1
+ field @Deprecated public static final int ROUND_FLOOR = 3; // 0x3
+ field @Deprecated public static final int ROUND_HALF_DOWN = 5; // 0x5
+ field @Deprecated public static final int ROUND_HALF_EVEN = 6; // 0x6
+ field @Deprecated public static final int ROUND_HALF_UP = 4; // 0x4
+ field @Deprecated public static final int ROUND_UNNECESSARY = 7; // 0x7
+ field @Deprecated public static final int ROUND_UP = 0; // 0x0
+ field public static final java.math.BigDecimal TEN;
+ field public static final java.math.BigDecimal ZERO;
+ }
+
+ public class BigInteger extends java.lang.Number implements java.lang.Comparable<java.math.BigInteger> {
+ ctor public BigInteger(byte[], int, int);
+ ctor public BigInteger(byte[]);
+ ctor public BigInteger(int, byte[], int, int);
+ ctor public BigInteger(int, byte[]);
+ ctor public BigInteger(@NonNull String, int);
+ ctor public BigInteger(@NonNull String);
+ ctor public BigInteger(int, @NonNull java.util.Random);
+ ctor public BigInteger(int, int, @NonNull java.util.Random);
+ method @NonNull public java.math.BigInteger abs();
+ method @NonNull public java.math.BigInteger add(@NonNull java.math.BigInteger);
+ method @NonNull public java.math.BigInteger and(@NonNull java.math.BigInteger);
+ method @NonNull public java.math.BigInteger andNot(@NonNull java.math.BigInteger);
+ method public int bitCount();
+ method public int bitLength();
+ method public byte byteValueExact();
+ method @NonNull public java.math.BigInteger clearBit(int);
+ method public int compareTo(@NonNull java.math.BigInteger);
+ method @NonNull public java.math.BigInteger divide(@NonNull java.math.BigInteger);
+ method @NonNull public java.math.BigInteger[] divideAndRemainder(@NonNull java.math.BigInteger);
+ method public double doubleValue();
+ method @NonNull public java.math.BigInteger flipBit(int);
+ method public float floatValue();
+ method @NonNull public java.math.BigInteger gcd(@NonNull java.math.BigInteger);
+ method public int getLowestSetBit();
+ method public int intValue();
+ method public int intValueExact();
+ method public boolean isProbablePrime(int);
+ method public long longValue();
+ method public long longValueExact();
+ method @NonNull public java.math.BigInteger max(@NonNull java.math.BigInteger);
+ method @NonNull public java.math.BigInteger min(@NonNull java.math.BigInteger);
+ method @NonNull public java.math.BigInteger mod(@NonNull java.math.BigInteger);
+ method @NonNull public java.math.BigInteger modInverse(@NonNull java.math.BigInteger);
+ method @NonNull public java.math.BigInteger modPow(@NonNull java.math.BigInteger, @NonNull java.math.BigInteger);
+ method @NonNull public java.math.BigInteger multiply(@NonNull java.math.BigInteger);
+ method @NonNull public java.math.BigInteger negate();
+ method @NonNull public java.math.BigInteger nextProbablePrime();
+ method @NonNull public java.math.BigInteger not();
+ method @NonNull public java.math.BigInteger or(@NonNull java.math.BigInteger);
+ method @NonNull public java.math.BigInteger pow(int);
+ method @NonNull public static java.math.BigInteger probablePrime(int, @NonNull java.util.Random);
+ method @NonNull public java.math.BigInteger remainder(@NonNull java.math.BigInteger);
+ method @NonNull public java.math.BigInteger setBit(int);
+ method @NonNull public java.math.BigInteger shiftLeft(int);
+ method @NonNull public java.math.BigInteger shiftRight(int);
+ method public short shortValueExact();
+ method public int signum();
+ method @NonNull public java.math.BigInteger sqrt();
+ method @NonNull public java.math.BigInteger[] sqrtAndRemainder();
+ method @NonNull public java.math.BigInteger subtract(@NonNull java.math.BigInteger);
+ method public boolean testBit(int);
+ method public byte[] toByteArray();
+ method @NonNull public String toString(int);
+ method @NonNull public static java.math.BigInteger valueOf(long);
+ method @NonNull public java.math.BigInteger xor(@NonNull java.math.BigInteger);
+ field @NonNull public static final java.math.BigInteger ONE;
+ field @NonNull public static final java.math.BigInteger TEN;
+ field @NonNull public static final java.math.BigInteger TWO;
+ field @NonNull public static final java.math.BigInteger ZERO;
+ }
+
+ public final class MathContext implements java.io.Serializable {
+ ctor public MathContext(int);
+ ctor public MathContext(int, java.math.RoundingMode);
+ ctor public MathContext(String);
+ method public int getPrecision();
+ method public java.math.RoundingMode getRoundingMode();
+ field public static final java.math.MathContext DECIMAL128;
+ field public static final java.math.MathContext DECIMAL32;
+ field public static final java.math.MathContext DECIMAL64;
+ field public static final java.math.MathContext UNLIMITED;
+ }
+
+ public enum RoundingMode {
+ method public static java.math.RoundingMode valueOf(int);
+ enum_constant public static final java.math.RoundingMode CEILING;
+ enum_constant public static final java.math.RoundingMode DOWN;
+ enum_constant public static final java.math.RoundingMode FLOOR;
+ enum_constant public static final java.math.RoundingMode HALF_DOWN;
+ enum_constant public static final java.math.RoundingMode HALF_EVEN;
+ enum_constant public static final java.math.RoundingMode HALF_UP;
+ enum_constant public static final java.math.RoundingMode UNNECESSARY;
+ enum_constant public static final java.math.RoundingMode UP;
+ }
+
+}
+
+package java.net {
+
+ public abstract class Authenticator {
+ ctor public Authenticator();
+ method protected java.net.PasswordAuthentication getPasswordAuthentication();
+ method protected final String getRequestingHost();
+ method protected final int getRequestingPort();
+ method protected final String getRequestingPrompt();
+ method protected final String getRequestingProtocol();
+ method protected final String getRequestingScheme();
+ method protected final java.net.InetAddress getRequestingSite();
+ method protected java.net.URL getRequestingURL();
+ method protected java.net.Authenticator.RequestorType getRequestorType();
+ method public static java.net.PasswordAuthentication requestPasswordAuthentication(java.net.InetAddress, int, String, String, String);
+ method public static java.net.PasswordAuthentication requestPasswordAuthentication(String, java.net.InetAddress, int, String, String, String);
+ method public static java.net.PasswordAuthentication requestPasswordAuthentication(String, java.net.InetAddress, int, String, String, String, java.net.URL, java.net.Authenticator.RequestorType);
+ method public static void setDefault(java.net.Authenticator);
+ }
+
+ public enum Authenticator.RequestorType {
+ enum_constant public static final java.net.Authenticator.RequestorType PROXY;
+ enum_constant public static final java.net.Authenticator.RequestorType SERVER;
+ }
+
+ public class BindException extends java.net.SocketException {
+ ctor public BindException(String);
+ ctor public BindException();
+ }
+
+ public abstract class CacheRequest {
+ ctor public CacheRequest();
+ method public abstract void abort();
+ method public abstract java.io.OutputStream getBody() throws java.io.IOException;
+ }
+
+ public abstract class CacheResponse {
+ ctor public CacheResponse();
+ method public abstract java.io.InputStream getBody() throws java.io.IOException;
+ method public abstract java.util.Map<java.lang.String,java.util.List<java.lang.String>> getHeaders() throws java.io.IOException;
+ }
+
+ public class ConnectException extends java.net.SocketException {
+ ctor public ConnectException(String);
+ ctor public ConnectException();
+ }
+
+ public abstract class ContentHandler {
+ ctor public ContentHandler();
+ method public abstract Object getContent(java.net.URLConnection) throws java.io.IOException;
+ method public Object getContent(java.net.URLConnection, Class[]) throws java.io.IOException;
+ }
+
+ public interface ContentHandlerFactory {
+ method public java.net.ContentHandler createContentHandler(String);
+ }
+
+ public abstract class CookieHandler {
+ ctor public CookieHandler();
+ method public abstract java.util.Map<java.lang.String,java.util.List<java.lang.String>> get(java.net.URI, java.util.Map<java.lang.String,java.util.List<java.lang.String>>) throws java.io.IOException;
+ method public static java.net.CookieHandler getDefault();
+ method public abstract void put(java.net.URI, java.util.Map<java.lang.String,java.util.List<java.lang.String>>) throws java.io.IOException;
+ method public static void setDefault(java.net.CookieHandler);
+ }
+
+ public class CookieManager extends java.net.CookieHandler {
+ ctor public CookieManager();
+ ctor public CookieManager(java.net.CookieStore, java.net.CookiePolicy);
+ method public java.util.Map<java.lang.String,java.util.List<java.lang.String>> get(java.net.URI, java.util.Map<java.lang.String,java.util.List<java.lang.String>>) throws java.io.IOException;
+ method public java.net.CookieStore getCookieStore();
+ method public void put(java.net.URI, java.util.Map<java.lang.String,java.util.List<java.lang.String>>) throws java.io.IOException;
+ method public void setCookiePolicy(java.net.CookiePolicy);
+ }
+
+ public interface CookiePolicy {
+ method public boolean shouldAccept(java.net.URI, java.net.HttpCookie);
+ field public static final java.net.CookiePolicy ACCEPT_ALL;
+ field public static final java.net.CookiePolicy ACCEPT_NONE;
+ field public static final java.net.CookiePolicy ACCEPT_ORIGINAL_SERVER;
+ }
+
+ public interface CookieStore {
+ method public void add(java.net.URI, java.net.HttpCookie);
+ method public java.util.List<java.net.HttpCookie> get(java.net.URI);
+ method public java.util.List<java.net.HttpCookie> getCookies();
+ method public java.util.List<java.net.URI> getURIs();
+ method public boolean remove(java.net.URI, java.net.HttpCookie);
+ method public boolean removeAll();
+ }
+
+ public final class DatagramPacket {
+ ctor public DatagramPacket(byte[], int, int);
+ ctor public DatagramPacket(byte[], int);
+ ctor public DatagramPacket(byte[], int, int, java.net.InetAddress, int);
+ ctor public DatagramPacket(byte[], int, int, java.net.SocketAddress);
+ ctor public DatagramPacket(byte[], int, java.net.InetAddress, int);
+ ctor public DatagramPacket(byte[], int, java.net.SocketAddress);
+ method public java.net.InetAddress getAddress();
+ method public byte[] getData();
+ method public int getLength();
+ method public int getOffset();
+ method public int getPort();
+ method public java.net.SocketAddress getSocketAddress();
+ method public void setAddress(java.net.InetAddress);
+ method public void setData(byte[], int, int);
+ method public void setData(byte[]);
+ method public void setLength(int);
+ method public void setPort(int);
+ method public void setSocketAddress(java.net.SocketAddress);
+ }
+
+ public class DatagramSocket implements java.io.Closeable {
+ ctor public DatagramSocket() throws java.net.SocketException;
+ ctor protected DatagramSocket(java.net.DatagramSocketImpl);
+ ctor public DatagramSocket(java.net.SocketAddress) throws java.net.SocketException;
+ ctor public DatagramSocket(int) throws java.net.SocketException;
+ ctor public DatagramSocket(int, java.net.InetAddress) throws java.net.SocketException;
+ method public void bind(java.net.SocketAddress) throws java.net.SocketException;
+ method public void close();
+ method public void connect(java.net.InetAddress, int);
+ method public void connect(java.net.SocketAddress) throws java.net.SocketException;
+ method public void disconnect();
+ method public boolean getBroadcast() throws java.net.SocketException;
+ method public java.nio.channels.DatagramChannel getChannel();
+ method public java.net.InetAddress getInetAddress();
+ method public java.net.InetAddress getLocalAddress();
+ method public int getLocalPort();
+ method public java.net.SocketAddress getLocalSocketAddress();
+ method public <T> T getOption(java.net.SocketOption<T>) throws java.io.IOException;
+ method public int getPort();
+ method public int getReceiveBufferSize() throws java.net.SocketException;
+ method public java.net.SocketAddress getRemoteSocketAddress();
+ method public boolean getReuseAddress() throws java.net.SocketException;
+ method public int getSendBufferSize() throws java.net.SocketException;
+ method public int getSoTimeout() throws java.net.SocketException;
+ method public int getTrafficClass() throws java.net.SocketException;
+ method public boolean isBound();
+ method public boolean isClosed();
+ method public boolean isConnected();
+ method public void receive(java.net.DatagramPacket) throws java.io.IOException;
+ method public void send(java.net.DatagramPacket) throws java.io.IOException;
+ method public void setBroadcast(boolean) throws java.net.SocketException;
+ method public static void setDatagramSocketImplFactory(java.net.DatagramSocketImplFactory) throws java.io.IOException;
+ method public <T> java.net.DatagramSocket setOption(java.net.SocketOption<T>, T) throws java.io.IOException;
+ method public void setReceiveBufferSize(int) throws java.net.SocketException;
+ method public void setReuseAddress(boolean) throws java.net.SocketException;
+ method public void setSendBufferSize(int) throws java.net.SocketException;
+ method public void setSoTimeout(int) throws java.net.SocketException;
+ method public void setTrafficClass(int) throws java.net.SocketException;
+ method public java.util.Set<java.net.SocketOption<?>> supportedOptions();
+ }
+
+ public abstract class DatagramSocketImpl implements java.net.SocketOptions {
+ ctor public DatagramSocketImpl();
+ method protected abstract void bind(int, java.net.InetAddress) throws java.net.SocketException;
+ method protected abstract void close();
+ method protected void connect(java.net.InetAddress, int) throws java.net.SocketException;
+ method protected abstract void create() throws java.net.SocketException;
+ method protected void disconnect();
+ method protected java.io.FileDescriptor getFileDescriptor();
+ method protected int getLocalPort();
+ method protected <T> T getOption(java.net.SocketOption<T>) throws java.io.IOException;
+ method @Deprecated protected abstract byte getTTL() throws java.io.IOException;
+ method protected abstract int getTimeToLive() throws java.io.IOException;
+ method protected abstract void join(java.net.InetAddress) throws java.io.IOException;
+ method protected abstract void joinGroup(java.net.SocketAddress, java.net.NetworkInterface) throws java.io.IOException;
+ method protected abstract void leave(java.net.InetAddress) throws java.io.IOException;
+ method protected abstract void leaveGroup(java.net.SocketAddress, java.net.NetworkInterface) throws java.io.IOException;
+ method protected abstract int peek(java.net.InetAddress) throws java.io.IOException;
+ method protected abstract int peekData(java.net.DatagramPacket) throws java.io.IOException;
+ method protected abstract void receive(java.net.DatagramPacket) throws java.io.IOException;
+ method protected abstract void send(java.net.DatagramPacket) throws java.io.IOException;
+ method protected <T> void setOption(java.net.SocketOption<T>, T) throws java.io.IOException;
+ method @Deprecated protected abstract void setTTL(byte) throws java.io.IOException;
+ method protected abstract void setTimeToLive(int) throws java.io.IOException;
+ method protected java.util.Set<java.net.SocketOption<?>> supportedOptions();
+ field protected java.io.FileDescriptor fd;
+ field protected int localPort;
+ }
+
+ public interface DatagramSocketImplFactory {
+ method public java.net.DatagramSocketImpl createDatagramSocketImpl();
+ }
+
+ public interface FileNameMap {
+ method public String getContentTypeFor(String);
+ }
+
+ public final class HttpCookie implements java.lang.Cloneable {
+ ctor public HttpCookie(String, String);
+ method public Object clone();
+ method public static boolean domainMatches(String, String);
+ method public String getComment();
+ method public String getCommentURL();
+ method public boolean getDiscard();
+ method public String getDomain();
+ method public long getMaxAge();
+ method public String getName();
+ method public String getPath();
+ method public String getPortlist();
+ method public boolean getSecure();
+ method public String getValue();
+ method public int getVersion();
+ method public boolean hasExpired();
+ method public boolean isHttpOnly();
+ method public static java.util.List<java.net.HttpCookie> parse(String);
+ method public void setComment(String);
+ method public void setCommentURL(String);
+ method public void setDiscard(boolean);
+ method public void setDomain(String);
+ method public void setHttpOnly(boolean);
+ method public void setMaxAge(long);
+ method public void setPath(String);
+ method public void setPortlist(String);
+ method public void setSecure(boolean);
+ method public void setValue(String);
+ method public void setVersion(int);
+ }
+
+ public class HttpRetryException extends java.io.IOException {
+ ctor public HttpRetryException(String, int);
+ ctor public HttpRetryException(String, int, String);
+ method public String getLocation();
+ method public String getReason();
+ method public int responseCode();
+ }
+
+ public abstract class HttpURLConnection extends java.net.URLConnection {
+ ctor protected HttpURLConnection(java.net.URL);
+ method public abstract void disconnect();
+ method public java.io.InputStream getErrorStream();
+ method public static boolean getFollowRedirects();
+ method public boolean getInstanceFollowRedirects();
+ method public String getRequestMethod();
+ method public int getResponseCode() throws java.io.IOException;
+ method public String getResponseMessage() throws java.io.IOException;
+ method public void setChunkedStreamingMode(int);
+ method public void setFixedLengthStreamingMode(int);
+ method public void setFixedLengthStreamingMode(long);
+ method public static void setFollowRedirects(boolean);
+ method public void setInstanceFollowRedirects(boolean);
+ method public void setRequestMethod(String) throws java.net.ProtocolException;
+ method public abstract boolean usingProxy();
+ field public static final int HTTP_ACCEPTED = 202; // 0xca
+ field public static final int HTTP_BAD_GATEWAY = 502; // 0x1f6
+ field public static final int HTTP_BAD_METHOD = 405; // 0x195
+ field public static final int HTTP_BAD_REQUEST = 400; // 0x190
+ field public static final int HTTP_CLIENT_TIMEOUT = 408; // 0x198
+ field public static final int HTTP_CONFLICT = 409; // 0x199
+ field public static final int HTTP_CREATED = 201; // 0xc9
+ field public static final int HTTP_ENTITY_TOO_LARGE = 413; // 0x19d
+ field public static final int HTTP_FORBIDDEN = 403; // 0x193
+ field public static final int HTTP_GATEWAY_TIMEOUT = 504; // 0x1f8
+ field public static final int HTTP_GONE = 410; // 0x19a
+ field public static final int HTTP_INTERNAL_ERROR = 500; // 0x1f4
+ field public static final int HTTP_LENGTH_REQUIRED = 411; // 0x19b
+ field public static final int HTTP_MOVED_PERM = 301; // 0x12d
+ field public static final int HTTP_MOVED_TEMP = 302; // 0x12e
+ field public static final int HTTP_MULT_CHOICE = 300; // 0x12c
+ field public static final int HTTP_NOT_ACCEPTABLE = 406; // 0x196
+ field public static final int HTTP_NOT_AUTHORITATIVE = 203; // 0xcb
+ field public static final int HTTP_NOT_FOUND = 404; // 0x194
+ field public static final int HTTP_NOT_IMPLEMENTED = 501; // 0x1f5
+ field public static final int HTTP_NOT_MODIFIED = 304; // 0x130
+ field public static final int HTTP_NO_CONTENT = 204; // 0xcc
+ field public static final int HTTP_OK = 200; // 0xc8
+ field public static final int HTTP_PARTIAL = 206; // 0xce
+ field public static final int HTTP_PAYMENT_REQUIRED = 402; // 0x192
+ field public static final int HTTP_PRECON_FAILED = 412; // 0x19c
+ field public static final int HTTP_PROXY_AUTH = 407; // 0x197
+ field public static final int HTTP_REQ_TOO_LONG = 414; // 0x19e
+ field public static final int HTTP_RESET = 205; // 0xcd
+ field public static final int HTTP_SEE_OTHER = 303; // 0x12f
+ field @Deprecated public static final int HTTP_SERVER_ERROR = 500; // 0x1f4
+ field public static final int HTTP_UNAUTHORIZED = 401; // 0x191
+ field public static final int HTTP_UNAVAILABLE = 503; // 0x1f7
+ field public static final int HTTP_UNSUPPORTED_TYPE = 415; // 0x19f
+ field public static final int HTTP_USE_PROXY = 305; // 0x131
+ field public static final int HTTP_VERSION = 505; // 0x1f9
+ field protected int chunkLength;
+ field protected int fixedContentLength;
+ field protected long fixedContentLengthLong;
+ field protected boolean instanceFollowRedirects;
+ field protected String method;
+ field protected int responseCode;
+ field protected String responseMessage;
+ }
+
+ public final class IDN {
+ method public static String toASCII(String, int);
+ method public static String toASCII(String);
+ method public static String toUnicode(String, int);
+ method public static String toUnicode(String);
+ field public static final int ALLOW_UNASSIGNED = 1; // 0x1
+ field public static final int USE_STD3_ASCII_RULES = 2; // 0x2
+ }
+
+ public final class Inet4Address extends java.net.InetAddress {
+ }
+
+ public final class Inet6Address extends java.net.InetAddress {
+ method public static java.net.Inet6Address getByAddress(String, byte[], java.net.NetworkInterface) throws java.net.UnknownHostException;
+ method public static java.net.Inet6Address getByAddress(String, byte[], int) throws java.net.UnknownHostException;
+ method public int getScopeId();
+ method public java.net.NetworkInterface getScopedInterface();
+ method public boolean isIPv4CompatibleAddress();
+ }
+
+ public class InetAddress implements java.io.Serializable {
+ method public byte[] getAddress();
+ method public static java.net.InetAddress[] getAllByName(@Nullable String) throws java.net.UnknownHostException;
+ method @NonNull public static java.net.InetAddress getByAddress(@Nullable String, byte[]) throws java.net.UnknownHostException;
+ method @NonNull public static java.net.InetAddress getByAddress(byte[]) throws java.net.UnknownHostException;
+ method @NonNull public static java.net.InetAddress getByName(@Nullable String) throws java.net.UnknownHostException;
+ method @NonNull public String getCanonicalHostName();
+ method @Nullable public String getHostAddress();
+ method @NonNull public String getHostName();
+ method @NonNull public static java.net.InetAddress getLocalHost() throws java.net.UnknownHostException;
+ method @NonNull public static java.net.InetAddress getLoopbackAddress();
+ method public boolean isAnyLocalAddress();
+ method public boolean isLinkLocalAddress();
+ method public boolean isLoopbackAddress();
+ method public boolean isMCGlobal();
+ method public boolean isMCLinkLocal();
+ method public boolean isMCNodeLocal();
+ method public boolean isMCOrgLocal();
+ method public boolean isMCSiteLocal();
+ method public boolean isMulticastAddress();
+ method public boolean isReachable(int) throws java.io.IOException;
+ method public boolean isReachable(@Nullable java.net.NetworkInterface, int, int) throws java.io.IOException;
+ method public boolean isSiteLocalAddress();
+ }
+
+ public class InetSocketAddress extends java.net.SocketAddress {
+ ctor public InetSocketAddress(int);
+ ctor public InetSocketAddress(java.net.InetAddress, int);
+ ctor public InetSocketAddress(String, int);
+ method public static java.net.InetSocketAddress createUnresolved(String, int);
+ method public final boolean equals(Object);
+ method public final java.net.InetAddress getAddress();
+ method public final String getHostName();
+ method public final String getHostString();
+ method public final int getPort();
+ method public final int hashCode();
+ method public final boolean isUnresolved();
+ }
+
+ public class InterfaceAddress {
+ method public java.net.InetAddress getAddress();
+ method public java.net.InetAddress getBroadcast();
+ method public short getNetworkPrefixLength();
+ }
+
+ public abstract class JarURLConnection extends java.net.URLConnection {
+ ctor protected JarURLConnection(java.net.URL) throws java.net.MalformedURLException;
+ method public java.util.jar.Attributes getAttributes() throws java.io.IOException;
+ method public java.security.cert.Certificate[] getCertificates() throws java.io.IOException;
+ method public String getEntryName();
+ method public java.util.jar.JarEntry getJarEntry() throws java.io.IOException;
+ method public abstract java.util.jar.JarFile getJarFile() throws java.io.IOException;
+ method public java.net.URL getJarFileURL();
+ method public java.util.jar.Attributes getMainAttributes() throws java.io.IOException;
+ method public java.util.jar.Manifest getManifest() throws java.io.IOException;
+ field protected java.net.URLConnection jarFileURLConnection;
+ }
+
+ public class MalformedURLException extends java.io.IOException {
+ ctor public MalformedURLException();
+ ctor public MalformedURLException(String);
+ }
+
+ public class MulticastSocket extends java.net.DatagramSocket {
+ ctor public MulticastSocket() throws java.io.IOException;
+ ctor public MulticastSocket(int) throws java.io.IOException;
+ ctor public MulticastSocket(java.net.SocketAddress) throws java.io.IOException;
+ method public java.net.InetAddress getInterface() throws java.net.SocketException;
+ method public boolean getLoopbackMode() throws java.net.SocketException;
+ method public java.net.NetworkInterface getNetworkInterface() throws java.net.SocketException;
+ method @Deprecated public byte getTTL() throws java.io.IOException;
+ method public int getTimeToLive() throws java.io.IOException;
+ method public void joinGroup(java.net.InetAddress) throws java.io.IOException;
+ method public void joinGroup(java.net.SocketAddress, java.net.NetworkInterface) throws java.io.IOException;
+ method public void leaveGroup(java.net.InetAddress) throws java.io.IOException;
+ method public void leaveGroup(java.net.SocketAddress, java.net.NetworkInterface) throws java.io.IOException;
+ method @Deprecated public void send(java.net.DatagramPacket, byte) throws java.io.IOException;
+ method public void setInterface(java.net.InetAddress) throws java.net.SocketException;
+ method public void setLoopbackMode(boolean) throws java.net.SocketException;
+ method public void setNetworkInterface(java.net.NetworkInterface) throws java.net.SocketException;
+ method @Deprecated public void setTTL(byte) throws java.io.IOException;
+ method public void setTimeToLive(int) throws java.io.IOException;
+ }
+
+ public final class NetPermission extends java.security.BasicPermission {
+ ctor public NetPermission(String);
+ ctor public NetPermission(String, String);
+ }
+
+ public final class NetworkInterface {
+ method public static java.net.NetworkInterface getByIndex(int) throws java.net.SocketException;
+ method public static java.net.NetworkInterface getByInetAddress(java.net.InetAddress) throws java.net.SocketException;
+ method public static java.net.NetworkInterface getByName(String) throws java.net.SocketException;
+ method public String getDisplayName();
+ method public byte[] getHardwareAddress() throws java.net.SocketException;
+ method public int getIndex();
+ method public java.util.Enumeration<java.net.InetAddress> getInetAddresses();
+ method public java.util.List<java.net.InterfaceAddress> getInterfaceAddresses();
+ method public int getMTU() throws java.net.SocketException;
+ method public String getName();
+ method public static java.util.Enumeration<java.net.NetworkInterface> getNetworkInterfaces() throws java.net.SocketException;
+ method public java.net.NetworkInterface getParent();
+ method public java.util.Enumeration<java.net.NetworkInterface> getSubInterfaces();
+ method public boolean isLoopback() throws java.net.SocketException;
+ method public boolean isPointToPoint() throws java.net.SocketException;
+ method public boolean isUp() throws java.net.SocketException;
+ method public boolean isVirtual();
+ method public boolean supportsMulticast() throws java.net.SocketException;
+ }
+
+ public class NoRouteToHostException extends java.net.SocketException {
+ ctor public NoRouteToHostException(String);
+ ctor public NoRouteToHostException();
+ }
+
+ public final class PasswordAuthentication {
+ ctor public PasswordAuthentication(String, char[]);
+ method public char[] getPassword();
+ method public String getUserName();
+ }
+
+ public class PortUnreachableException extends java.net.SocketException {
+ ctor public PortUnreachableException(String);
+ ctor public PortUnreachableException();
+ }
+
+ public class ProtocolException extends java.io.IOException {
+ ctor public ProtocolException(String);
+ ctor public ProtocolException();
+ }
+
+ public interface ProtocolFamily {
+ method public String name();
+ }
+
+ public class Proxy {
+ ctor public Proxy(java.net.Proxy.Type, java.net.SocketAddress);
+ method public java.net.SocketAddress address();
+ method public final boolean equals(Object);
+ method public final int hashCode();
+ method public java.net.Proxy.Type type();
+ field public static final java.net.Proxy NO_PROXY;
+ }
+
+ public enum Proxy.Type {
+ enum_constant public static final java.net.Proxy.Type DIRECT;
+ enum_constant public static final java.net.Proxy.Type HTTP;
+ enum_constant public static final java.net.Proxy.Type SOCKS;
+ }
+
+ public abstract class ProxySelector {
+ ctor public ProxySelector();
+ method public abstract void connectFailed(java.net.URI, java.net.SocketAddress, java.io.IOException);
+ method public static java.net.ProxySelector getDefault();
+ method public abstract java.util.List<java.net.Proxy> select(java.net.URI);
+ method public static void setDefault(java.net.ProxySelector);
+ }
+
+ public abstract class ResponseCache {
+ ctor public ResponseCache();
+ method public abstract java.net.CacheResponse get(java.net.URI, String, java.util.Map<java.lang.String,java.util.List<java.lang.String>>) throws java.io.IOException;
+ method public static java.net.ResponseCache getDefault();
+ method public abstract java.net.CacheRequest put(java.net.URI, java.net.URLConnection) throws java.io.IOException;
+ method public static void setDefault(java.net.ResponseCache);
+ }
+
+ public abstract class SecureCacheResponse extends java.net.CacheResponse {
+ ctor public SecureCacheResponse();
+ method public abstract String getCipherSuite();
+ method public abstract java.util.List<java.security.cert.Certificate> getLocalCertificateChain();
+ method public abstract java.security.Principal getLocalPrincipal();
+ method public abstract java.security.Principal getPeerPrincipal() throws javax.net.ssl.SSLPeerUnverifiedException;
+ method public abstract java.util.List<java.security.cert.Certificate> getServerCertificateChain() throws javax.net.ssl.SSLPeerUnverifiedException;
+ }
+
+ public class ServerSocket implements java.io.Closeable {
+ ctor public ServerSocket() throws java.io.IOException;
+ ctor public ServerSocket(int) throws java.io.IOException;
+ ctor public ServerSocket(int, int) throws java.io.IOException;
+ ctor public ServerSocket(int, int, java.net.InetAddress) throws java.io.IOException;
+ method public java.net.Socket accept() throws java.io.IOException;
+ method public void bind(java.net.SocketAddress) throws java.io.IOException;
+ method public void bind(java.net.SocketAddress, int) throws java.io.IOException;
+ method public void close() throws java.io.IOException;
+ method public java.nio.channels.ServerSocketChannel getChannel();
+ method public java.net.InetAddress getInetAddress();
+ method public int getLocalPort();
+ method public java.net.SocketAddress getLocalSocketAddress();
+ method public <T> T getOption(java.net.SocketOption<T>) throws java.io.IOException;
+ method public int getReceiveBufferSize() throws java.net.SocketException;
+ method public boolean getReuseAddress() throws java.net.SocketException;
+ method public int getSoTimeout() throws java.io.IOException;
+ method protected final void implAccept(java.net.Socket) throws java.io.IOException;
+ method public boolean isBound();
+ method public boolean isClosed();
+ method public <T> java.net.ServerSocket setOption(java.net.SocketOption<T>, T) throws java.io.IOException;
+ method public void setPerformancePreferences(int, int, int);
+ method public void setReceiveBufferSize(int) throws java.net.SocketException;
+ method public void setReuseAddress(boolean) throws java.net.SocketException;
+ method public void setSoTimeout(int) throws java.net.SocketException;
+ method public static void setSocketFactory(java.net.SocketImplFactory) throws java.io.IOException;
+ method public java.util.Set<java.net.SocketOption<?>> supportedOptions();
+ }
+
+ public class Socket implements java.io.Closeable {
+ ctor public Socket();
+ ctor public Socket(java.net.Proxy);
+ ctor protected Socket(java.net.SocketImpl) throws java.net.SocketException;
+ ctor public Socket(String, int) throws java.io.IOException, java.net.UnknownHostException;
+ ctor public Socket(java.net.InetAddress, int) throws java.io.IOException;
+ ctor public Socket(String, int, java.net.InetAddress, int) throws java.io.IOException;
+ ctor public Socket(java.net.InetAddress, int, java.net.InetAddress, int) throws java.io.IOException;
+ ctor @Deprecated public Socket(String, int, boolean) throws java.io.IOException;
+ ctor @Deprecated public Socket(java.net.InetAddress, int, boolean) throws java.io.IOException;
+ method public void bind(java.net.SocketAddress) throws java.io.IOException;
+ method public void close() throws java.io.IOException;
+ method public void connect(java.net.SocketAddress) throws java.io.IOException;
+ method public void connect(java.net.SocketAddress, int) throws java.io.IOException;
+ method public java.nio.channels.SocketChannel getChannel();
+ method public java.net.InetAddress getInetAddress();
+ method public java.io.InputStream getInputStream() throws java.io.IOException;
+ method public boolean getKeepAlive() throws java.net.SocketException;
+ method public java.net.InetAddress getLocalAddress();
+ method public int getLocalPort();
+ method public java.net.SocketAddress getLocalSocketAddress();
+ method public boolean getOOBInline() throws java.net.SocketException;
+ method public <T> T getOption(java.net.SocketOption<T>) throws java.io.IOException;
+ method public java.io.OutputStream getOutputStream() throws java.io.IOException;
+ method public int getPort();
+ method public int getReceiveBufferSize() throws java.net.SocketException;
+ method public java.net.SocketAddress getRemoteSocketAddress();
+ method public boolean getReuseAddress() throws java.net.SocketException;
+ method public int getSendBufferSize() throws java.net.SocketException;
+ method public int getSoLinger() throws java.net.SocketException;
+ method public int getSoTimeout() throws java.net.SocketException;
+ method public boolean getTcpNoDelay() throws java.net.SocketException;
+ method public int getTrafficClass() throws java.net.SocketException;
+ method public boolean isBound();
+ method public boolean isClosed();
+ method public boolean isConnected();
+ method public boolean isInputShutdown();
+ method public boolean isOutputShutdown();
+ method public void sendUrgentData(int) throws java.io.IOException;
+ method public void setKeepAlive(boolean) throws java.net.SocketException;
+ method public void setOOBInline(boolean) throws java.net.SocketException;
+ method public <T> java.net.Socket setOption(java.net.SocketOption<T>, T) throws java.io.IOException;
+ method public void setPerformancePreferences(int, int, int);
+ method public void setReceiveBufferSize(int) throws java.net.SocketException;
+ method public void setReuseAddress(boolean) throws java.net.SocketException;
+ method public void setSendBufferSize(int) throws java.net.SocketException;
+ method public void setSoLinger(boolean, int) throws java.net.SocketException;
+ method public void setSoTimeout(int) throws java.net.SocketException;
+ method public static void setSocketImplFactory(java.net.SocketImplFactory) throws java.io.IOException;
+ method public void setTcpNoDelay(boolean) throws java.net.SocketException;
+ method public void setTrafficClass(int) throws java.net.SocketException;
+ method public void shutdownInput() throws java.io.IOException;
+ method public void shutdownOutput() throws java.io.IOException;
+ method public java.util.Set<java.net.SocketOption<?>> supportedOptions();
+ }
+
+ public abstract class SocketAddress implements java.io.Serializable {
+ ctor public SocketAddress();
+ }
+
+ public class SocketException extends java.io.IOException {
+ ctor public SocketException(String);
+ ctor public SocketException();
+ }
+
+ public abstract class SocketImpl implements java.net.SocketOptions {
+ ctor public SocketImpl();
+ method protected abstract void accept(java.net.SocketImpl) throws java.io.IOException;
+ method protected abstract int available() throws java.io.IOException;
+ method protected abstract void bind(java.net.InetAddress, int) throws java.io.IOException;
+ method protected abstract void close() throws java.io.IOException;
+ method protected abstract void connect(String, int) throws java.io.IOException;
+ method protected abstract void connect(java.net.InetAddress, int) throws java.io.IOException;
+ method protected abstract void connect(java.net.SocketAddress, int) throws java.io.IOException;
+ method protected abstract void create(boolean) throws java.io.IOException;
+ method protected java.io.FileDescriptor getFileDescriptor();
+ method protected java.net.InetAddress getInetAddress();
+ method protected abstract java.io.InputStream getInputStream() throws java.io.IOException;
+ method protected int getLocalPort();
+ method protected <T> T getOption(java.net.SocketOption<T>) throws java.io.IOException;
+ method protected abstract java.io.OutputStream getOutputStream() throws java.io.IOException;
+ method protected int getPort();
+ method protected abstract void listen(int) throws java.io.IOException;
+ method protected abstract void sendUrgentData(int) throws java.io.IOException;
+ method protected <T> void setOption(java.net.SocketOption<T>, T) throws java.io.IOException;
+ method protected void setPerformancePreferences(int, int, int);
+ method protected void shutdownInput() throws java.io.IOException;
+ method protected void shutdownOutput() throws java.io.IOException;
+ method protected java.util.Set<java.net.SocketOption<?>> supportedOptions();
+ method protected boolean supportsUrgentData();
+ field protected java.net.InetAddress address;
+ field protected java.io.FileDescriptor fd;
+ field protected int localport;
+ field protected int port;
+ }
+
+ public interface SocketImplFactory {
+ method public java.net.SocketImpl createSocketImpl();
+ }
+
+ public interface SocketOption<T> {
+ method public String name();
+ method public Class<T> type();
+ }
+
+ public interface SocketOptions {
+ method public Object getOption(int) throws java.net.SocketException;
+ method public void setOption(int, Object) throws java.net.SocketException;
+ field public static final int IP_MULTICAST_IF = 16; // 0x10
+ field public static final int IP_MULTICAST_IF2 = 31; // 0x1f
+ field public static final int IP_MULTICAST_LOOP = 18; // 0x12
+ field public static final int IP_TOS = 3; // 0x3
+ field public static final int SO_BINDADDR = 15; // 0xf
+ field public static final int SO_BROADCAST = 32; // 0x20
+ field public static final int SO_KEEPALIVE = 8; // 0x8
+ field public static final int SO_LINGER = 128; // 0x80
+ field public static final int SO_OOBINLINE = 4099; // 0x1003
+ field public static final int SO_RCVBUF = 4098; // 0x1002
+ field public static final int SO_REUSEADDR = 4; // 0x4
+ field public static final int SO_REUSEPORT = 14; // 0xe
+ field public static final int SO_SNDBUF = 4097; // 0x1001
+ field public static final int SO_TIMEOUT = 4102; // 0x1006
+ field public static final int TCP_NODELAY = 1; // 0x1
+ }
+
+ public final class SocketPermission extends java.security.Permission implements java.io.Serializable {
+ ctor public SocketPermission(String, String);
+ method public String getActions();
+ method public boolean implies(java.security.Permission);
+ }
+
+ public class SocketTimeoutException extends java.io.InterruptedIOException {
+ ctor public SocketTimeoutException(String);
+ ctor public SocketTimeoutException();
+ }
+
+ public enum StandardProtocolFamily implements java.net.ProtocolFamily {
+ enum_constant public static final java.net.StandardProtocolFamily INET;
+ enum_constant public static final java.net.StandardProtocolFamily INET6;
+ }
+
+ public final class StandardSocketOptions {
+ field public static final java.net.SocketOption<java.net.NetworkInterface> IP_MULTICAST_IF;
+ field public static final java.net.SocketOption<java.lang.Boolean> IP_MULTICAST_LOOP;
+ field public static final java.net.SocketOption<java.lang.Integer> IP_MULTICAST_TTL;
+ field public static final java.net.SocketOption<java.lang.Integer> IP_TOS;
+ field public static final java.net.SocketOption<java.lang.Boolean> SO_BROADCAST;
+ field public static final java.net.SocketOption<java.lang.Boolean> SO_KEEPALIVE;
+ field public static final java.net.SocketOption<java.lang.Integer> SO_LINGER;
+ field public static final java.net.SocketOption<java.lang.Integer> SO_RCVBUF;
+ field public static final java.net.SocketOption<java.lang.Boolean> SO_REUSEADDR;
+ field public static final java.net.SocketOption<java.lang.Boolean> SO_REUSEPORT;
+ field public static final java.net.SocketOption<java.lang.Integer> SO_SNDBUF;
+ field public static final java.net.SocketOption<java.lang.Boolean> TCP_NODELAY;
+ }
+
+ public final class URI implements java.lang.Comparable<java.net.URI> java.io.Serializable {
+ ctor public URI(String) throws java.net.URISyntaxException;
+ ctor public URI(String, String, String, int, String, String, String) throws java.net.URISyntaxException;
+ ctor public URI(String, String, String, String, String) throws java.net.URISyntaxException;
+ ctor public URI(String, String, String, String) throws java.net.URISyntaxException;
+ ctor public URI(String, String, String) throws java.net.URISyntaxException;
+ method public int compareTo(java.net.URI);
+ method public static java.net.URI create(String);
+ method public String getAuthority();
+ method public String getFragment();
+ method public String getHost();
+ method public String getPath();
+ method public int getPort();
+ method public String getQuery();
+ method public String getRawAuthority();
+ method public String getRawFragment();
+ method public String getRawPath();
+ method public String getRawQuery();
+ method public String getRawSchemeSpecificPart();
+ method public String getRawUserInfo();
+ method public String getScheme();
+ method public String getSchemeSpecificPart();
+ method public String getUserInfo();
+ method public boolean isAbsolute();
+ method public boolean isOpaque();
+ method public java.net.URI normalize();
+ method public java.net.URI parseServerAuthority() throws java.net.URISyntaxException;
+ method public java.net.URI relativize(java.net.URI);
+ method public java.net.URI resolve(java.net.URI);
+ method public java.net.URI resolve(String);
+ method public String toASCIIString();
+ method public java.net.URL toURL() throws java.net.MalformedURLException;
+ }
+
+ public class URISyntaxException extends java.lang.Exception {
+ ctor public URISyntaxException(String, String, int);
+ ctor public URISyntaxException(String, String);
+ method public int getIndex();
+ method public String getInput();
+ method public String getReason();
+ }
+
+ public final class URL implements java.io.Serializable {
+ ctor public URL(String, String, int, String) throws java.net.MalformedURLException;
+ ctor public URL(String, String, String) throws java.net.MalformedURLException;
+ ctor public URL(String, String, int, String, java.net.URLStreamHandler) throws java.net.MalformedURLException;
+ ctor public URL(String) throws java.net.MalformedURLException;
+ ctor public URL(java.net.URL, String) throws java.net.MalformedURLException;
+ ctor public URL(java.net.URL, String, java.net.URLStreamHandler) throws java.net.MalformedURLException;
+ method public String getAuthority();
+ method public Object getContent() throws java.io.IOException;
+ method public Object getContent(Class[]) throws java.io.IOException;
+ method public int getDefaultPort();
+ method public String getFile();
+ method public String getHost();
+ method public String getPath();
+ method public int getPort();
+ method public String getProtocol();
+ method public String getQuery();
+ method public String getRef();
+ method public String getUserInfo();
+ method public java.net.URLConnection openConnection() throws java.io.IOException;
+ method public java.net.URLConnection openConnection(java.net.Proxy) throws java.io.IOException;
+ method public java.io.InputStream openStream() throws java.io.IOException;
+ method public boolean sameFile(java.net.URL);
+ method public static void setURLStreamHandlerFactory(java.net.URLStreamHandlerFactory);
+ method public String toExternalForm();
+ method public java.net.URI toURI() throws java.net.URISyntaxException;
+ }
+
+ public class URLClassLoader extends java.security.SecureClassLoader implements java.io.Closeable {
+ ctor public URLClassLoader(java.net.URL[], ClassLoader);
+ ctor public URLClassLoader(java.net.URL[]);
+ ctor public URLClassLoader(java.net.URL[], ClassLoader, java.net.URLStreamHandlerFactory);
+ method protected void addURL(java.net.URL);
+ method public void close() throws java.io.IOException;
+ method protected Package definePackage(String, java.util.jar.Manifest, java.net.URL) throws java.lang.IllegalArgumentException;
+ method public java.net.URL findResource(String);
+ method public java.util.Enumeration<java.net.URL> findResources(String) throws java.io.IOException;
+ method public java.net.URL[] getURLs();
+ method public static java.net.URLClassLoader newInstance(java.net.URL[], ClassLoader);
+ method public static java.net.URLClassLoader newInstance(java.net.URL[]);
+ }
+
+ public abstract class URLConnection {
+ ctor protected URLConnection(java.net.URL);
+ method public void addRequestProperty(String, String);
+ method public abstract void connect() throws java.io.IOException;
+ method public boolean getAllowUserInteraction();
+ method public int getConnectTimeout();
+ method public Object getContent() throws java.io.IOException;
+ method public Object getContent(Class[]) throws java.io.IOException;
+ method public String getContentEncoding();
+ method public int getContentLength();
+ method public long getContentLengthLong();
+ method public String getContentType();
+ method public long getDate();
+ method public static boolean getDefaultAllowUserInteraction();
+ method @Deprecated public static String getDefaultRequestProperty(String);
+ method public boolean getDefaultUseCaches();
+ method public boolean getDoInput();
+ method public boolean getDoOutput();
+ method public long getExpiration();
+ method public static java.net.FileNameMap getFileNameMap();
+ method public String getHeaderField(String);
+ method public String getHeaderField(int);
+ method public long getHeaderFieldDate(String, long);
+ method public int getHeaderFieldInt(String, int);
+ method public String getHeaderFieldKey(int);
+ method public long getHeaderFieldLong(String, long);
+ method public java.util.Map<java.lang.String,java.util.List<java.lang.String>> getHeaderFields();
+ method public long getIfModifiedSince();
+ method public java.io.InputStream getInputStream() throws java.io.IOException;
+ method public long getLastModified();
+ method public java.io.OutputStream getOutputStream() throws java.io.IOException;
+ method public java.security.Permission getPermission() throws java.io.IOException;
+ method public int getReadTimeout();
+ method public java.util.Map<java.lang.String,java.util.List<java.lang.String>> getRequestProperties();
+ method public String getRequestProperty(String);
+ method public java.net.URL getURL();
+ method public boolean getUseCaches();
+ method public static String guessContentTypeFromName(String);
+ method public static String guessContentTypeFromStream(java.io.InputStream) throws java.io.IOException;
+ method public void setAllowUserInteraction(boolean);
+ method public void setConnectTimeout(int);
+ method public static void setContentHandlerFactory(java.net.ContentHandlerFactory);
+ method public static void setDefaultAllowUserInteraction(boolean);
+ method @Deprecated public static void setDefaultRequestProperty(String, String);
+ method public void setDefaultUseCaches(boolean);
+ method public void setDoInput(boolean);
+ method public void setDoOutput(boolean);
+ method public static void setFileNameMap(java.net.FileNameMap);
+ method public void setIfModifiedSince(long);
+ method public void setReadTimeout(int);
+ method public void setRequestProperty(String, String);
+ method public void setUseCaches(boolean);
+ field protected boolean allowUserInteraction;
+ field protected boolean connected;
+ field protected boolean doInput;
+ field protected boolean doOutput;
+ field protected long ifModifiedSince;
+ field protected java.net.URL url;
+ field protected boolean useCaches;
+ }
+
+ public class URLDecoder {
+ ctor public URLDecoder();
+ method @Deprecated public static String decode(String);
+ method public static String decode(String, String) throws java.io.UnsupportedEncodingException;
+ method public static String decode(String, java.nio.charset.Charset);
+ }
+
+ public class URLEncoder {
+ method @Deprecated public static String encode(String);
+ method public static String encode(String, String) throws java.io.UnsupportedEncodingException;
+ method public static String encode(String, java.nio.charset.Charset);
+ }
+
+ public abstract class URLStreamHandler {
+ ctor public URLStreamHandler();
+ method protected boolean equals(java.net.URL, java.net.URL);
+ method protected int getDefaultPort();
+ method protected java.net.InetAddress getHostAddress(java.net.URL);
+ method protected int hashCode(java.net.URL);
+ method protected boolean hostsEqual(java.net.URL, java.net.URL);
+ method protected abstract java.net.URLConnection openConnection(java.net.URL) throws java.io.IOException;
+ method protected java.net.URLConnection openConnection(java.net.URL, java.net.Proxy) throws java.io.IOException;
+ method protected void parseURL(java.net.URL, String, int, int);
+ method protected boolean sameFile(java.net.URL, java.net.URL);
+ method protected void setURL(java.net.URL, String, String, int, String, String, String, String, String);
+ method @Deprecated protected void setURL(java.net.URL, String, String, int, String, String);
+ method protected String toExternalForm(java.net.URL);
+ }
+
+ public interface URLStreamHandlerFactory {
+ method public java.net.URLStreamHandler createURLStreamHandler(String);
+ }
+
+ public class UnknownHostException extends java.io.IOException {
+ ctor public UnknownHostException(String);
+ ctor public UnknownHostException();
+ }
+
+ public class UnknownServiceException extends java.io.IOException {
+ ctor public UnknownServiceException();
+ ctor public UnknownServiceException(String);
+ }
+
+}
+
+package java.nio {
+
+ public abstract class Buffer {
+ method public abstract Object array();
+ method public abstract int arrayOffset();
+ method public final int capacity();
+ method public java.nio.Buffer clear();
+ method public java.nio.Buffer flip();
+ method public abstract boolean hasArray();
+ method public final boolean hasRemaining();
+ method public abstract boolean isDirect();
+ method public abstract boolean isReadOnly();
+ method public final int limit();
+ method public java.nio.Buffer limit(int);
+ method public java.nio.Buffer mark();
+ method public final int position();
+ method public java.nio.Buffer position(int);
+ method public final int remaining();
+ method public java.nio.Buffer reset();
+ method public java.nio.Buffer rewind();
+ }
+
+ public class BufferOverflowException extends java.lang.RuntimeException {
+ ctor public BufferOverflowException();
+ }
+
+ public class BufferUnderflowException extends java.lang.RuntimeException {
+ ctor public BufferUnderflowException();
+ }
+
+ public abstract class ByteBuffer extends java.nio.Buffer implements java.lang.Comparable<java.nio.ByteBuffer> {
+ method @NonNull public final java.nio.ByteBuffer alignedSlice(int);
+ method public final int alignmentOffset(int, int);
+ method @NonNull public static java.nio.ByteBuffer allocate(int);
+ method @NonNull public static java.nio.ByteBuffer allocateDirect(int);
+ method @NonNull public final byte[] array();
+ method public final int arrayOffset();
+ method @NonNull public abstract java.nio.CharBuffer asCharBuffer();
+ method @NonNull public abstract java.nio.DoubleBuffer asDoubleBuffer();
+ method @NonNull public abstract java.nio.FloatBuffer asFloatBuffer();
+ method @NonNull public abstract java.nio.IntBuffer asIntBuffer();
+ method @NonNull public abstract java.nio.LongBuffer asLongBuffer();
+ method @NonNull public abstract java.nio.ByteBuffer asReadOnlyBuffer();
+ method @NonNull public abstract java.nio.ShortBuffer asShortBuffer();
+ method @NonNull public abstract java.nio.ByteBuffer compact();
+ method public int compareTo(@NonNull java.nio.ByteBuffer);
+ method @NonNull public abstract java.nio.ByteBuffer duplicate();
+ method public abstract byte get();
+ method public abstract byte get(int);
+ method @NonNull public java.nio.ByteBuffer get(@NonNull byte[], int, int);
+ method @NonNull public java.nio.ByteBuffer get(@NonNull byte[]);
+ method public abstract char getChar();
+ method public abstract char getChar(int);
+ method public abstract double getDouble();
+ method public abstract double getDouble(int);
+ method public abstract float getFloat();
+ method public abstract float getFloat(int);
+ method public abstract int getInt();
+ method public abstract int getInt(int);
+ method public abstract long getLong();
+ method public abstract long getLong(int);
+ method public abstract short getShort();
+ method public abstract short getShort(int);
+ method public final boolean hasArray();
+ method @NonNull public final java.nio.ByteOrder order();
+ method @NonNull public final java.nio.ByteBuffer order(@NonNull java.nio.ByteOrder);
+ method @NonNull public abstract java.nio.ByteBuffer put(byte);
+ method @NonNull public abstract java.nio.ByteBuffer put(int, byte);
+ method @NonNull public java.nio.ByteBuffer put(@NonNull java.nio.ByteBuffer);
+ method @NonNull public java.nio.ByteBuffer put(@NonNull byte[], int, int);
+ method @NonNull public final java.nio.ByteBuffer put(@NonNull byte[]);
+ method @NonNull public abstract java.nio.ByteBuffer putChar(char);
+ method @NonNull public abstract java.nio.ByteBuffer putChar(int, char);
+ method @NonNull public abstract java.nio.ByteBuffer putDouble(double);
+ method @NonNull public abstract java.nio.ByteBuffer putDouble(int, double);
+ method @NonNull public abstract java.nio.ByteBuffer putFloat(float);
+ method @NonNull public abstract java.nio.ByteBuffer putFloat(int, float);
+ method @NonNull public abstract java.nio.ByteBuffer putInt(int);
+ method @NonNull public abstract java.nio.ByteBuffer putInt(int, int);
+ method @NonNull public abstract java.nio.ByteBuffer putLong(long);
+ method @NonNull public abstract java.nio.ByteBuffer putLong(int, long);
+ method @NonNull public abstract java.nio.ByteBuffer putShort(short);
+ method @NonNull public abstract java.nio.ByteBuffer putShort(int, short);
+ method @NonNull public abstract java.nio.ByteBuffer slice();
+ method @NonNull public static java.nio.ByteBuffer wrap(@NonNull byte[], int, int);
+ method @NonNull public static java.nio.ByteBuffer wrap(@NonNull byte[]);
+ }
+
+ public final class ByteOrder {
+ method public static java.nio.ByteOrder nativeOrder();
+ field public static final java.nio.ByteOrder BIG_ENDIAN;
+ field public static final java.nio.ByteOrder LITTLE_ENDIAN;
+ }
+
+ public abstract class CharBuffer extends java.nio.Buffer implements java.lang.Appendable java.lang.CharSequence java.lang.Comparable<java.nio.CharBuffer> java.lang.Readable {
+ method public static java.nio.CharBuffer allocate(int);
+ method public java.nio.CharBuffer append(CharSequence);
+ method public java.nio.CharBuffer append(CharSequence, int, int);
+ method public java.nio.CharBuffer append(char);
+ method public final char[] array();
+ method public final int arrayOffset();
+ method public abstract java.nio.CharBuffer asReadOnlyBuffer();
+ method public final char charAt(int);
+ method public abstract java.nio.CharBuffer compact();
+ method public int compareTo(java.nio.CharBuffer);
+ method public abstract java.nio.CharBuffer duplicate();
+ method public abstract char get();
+ method public abstract char get(int);
+ method public java.nio.CharBuffer get(char[], int, int);
+ method public java.nio.CharBuffer get(char[]);
+ method public final boolean hasArray();
+ method public final int length();
+ method public abstract java.nio.ByteOrder order();
+ method public abstract java.nio.CharBuffer put(char);
+ method public abstract java.nio.CharBuffer put(int, char);
+ method public java.nio.CharBuffer put(java.nio.CharBuffer);
+ method public java.nio.CharBuffer put(char[], int, int);
+ method public final java.nio.CharBuffer put(char[]);
+ method public java.nio.CharBuffer put(String, int, int);
+ method public final java.nio.CharBuffer put(String);
+ method public int read(java.nio.CharBuffer) throws java.io.IOException;
+ method public abstract java.nio.CharBuffer slice();
+ method public abstract java.nio.CharBuffer subSequence(int, int);
+ method public static java.nio.CharBuffer wrap(char[], int, int);
+ method public static java.nio.CharBuffer wrap(char[]);
+ method public static java.nio.CharBuffer wrap(CharSequence, int, int);
+ method public static java.nio.CharBuffer wrap(CharSequence);
+ }
+
+ public abstract class DoubleBuffer extends java.nio.Buffer implements java.lang.Comparable<java.nio.DoubleBuffer> {
+ method public static java.nio.DoubleBuffer allocate(int);
+ method public final double[] array();
+ method public final int arrayOffset();
+ method public abstract java.nio.DoubleBuffer asReadOnlyBuffer();
+ method public abstract java.nio.DoubleBuffer compact();
+ method public int compareTo(java.nio.DoubleBuffer);
+ method public abstract java.nio.DoubleBuffer duplicate();
+ method public abstract double get();
+ method public abstract double get(int);
+ method public java.nio.DoubleBuffer get(double[], int, int);
+ method public java.nio.DoubleBuffer get(double[]);
+ method public final boolean hasArray();
+ method public abstract java.nio.ByteOrder order();
+ method public abstract java.nio.DoubleBuffer put(double);
+ method public abstract java.nio.DoubleBuffer put(int, double);
+ method public java.nio.DoubleBuffer put(java.nio.DoubleBuffer);
+ method public java.nio.DoubleBuffer put(double[], int, int);
+ method public final java.nio.DoubleBuffer put(double[]);
+ method public abstract java.nio.DoubleBuffer slice();
+ method public static java.nio.DoubleBuffer wrap(double[], int, int);
+ method public static java.nio.DoubleBuffer wrap(double[]);
+ }
+
+ public abstract class FloatBuffer extends java.nio.Buffer implements java.lang.Comparable<java.nio.FloatBuffer> {
+ method public static java.nio.FloatBuffer allocate(int);
+ method public final float[] array();
+ method public final int arrayOffset();
+ method public abstract java.nio.FloatBuffer asReadOnlyBuffer();
+ method public abstract java.nio.FloatBuffer compact();
+ method public int compareTo(java.nio.FloatBuffer);
+ method public abstract java.nio.FloatBuffer duplicate();
+ method public abstract float get();
+ method public abstract float get(int);
+ method public java.nio.FloatBuffer get(float[], int, int);
+ method public java.nio.FloatBuffer get(float[]);
+ method public final boolean hasArray();
+ method public abstract java.nio.ByteOrder order();
+ method public abstract java.nio.FloatBuffer put(float);
+ method public abstract java.nio.FloatBuffer put(int, float);
+ method public java.nio.FloatBuffer put(java.nio.FloatBuffer);
+ method public java.nio.FloatBuffer put(float[], int, int);
+ method public final java.nio.FloatBuffer put(float[]);
+ method public abstract java.nio.FloatBuffer slice();
+ method public static java.nio.FloatBuffer wrap(float[], int, int);
+ method public static java.nio.FloatBuffer wrap(float[]);
+ }
+
+ public abstract class IntBuffer extends java.nio.Buffer implements java.lang.Comparable<java.nio.IntBuffer> {
+ method public static java.nio.IntBuffer allocate(int);
+ method public final int[] array();
+ method public final int arrayOffset();
+ method public abstract java.nio.IntBuffer asReadOnlyBuffer();
+ method public abstract java.nio.IntBuffer compact();
+ method public int compareTo(java.nio.IntBuffer);
+ method public abstract java.nio.IntBuffer duplicate();
+ method public abstract int get();
+ method public abstract int get(int);
+ method public java.nio.IntBuffer get(int[], int, int);
+ method public java.nio.IntBuffer get(int[]);
+ method public final boolean hasArray();
+ method public abstract java.nio.ByteOrder order();
+ method public abstract java.nio.IntBuffer put(int);
+ method public abstract java.nio.IntBuffer put(int, int);
+ method public java.nio.IntBuffer put(java.nio.IntBuffer);
+ method public java.nio.IntBuffer put(int[], int, int);
+ method public final java.nio.IntBuffer put(int[]);
+ method public abstract java.nio.IntBuffer slice();
+ method public static java.nio.IntBuffer wrap(int[], int, int);
+ method public static java.nio.IntBuffer wrap(int[]);
+ }
+
+ public class InvalidMarkException extends java.lang.IllegalStateException {
+ ctor public InvalidMarkException();
+ }
+
+ public abstract class LongBuffer extends java.nio.Buffer implements java.lang.Comparable<java.nio.LongBuffer> {
+ method public static java.nio.LongBuffer allocate(int);
+ method public final long[] array();
+ method public final int arrayOffset();
+ method public abstract java.nio.LongBuffer asReadOnlyBuffer();
+ method public abstract java.nio.LongBuffer compact();
+ method public int compareTo(java.nio.LongBuffer);
+ method public abstract java.nio.LongBuffer duplicate();
+ method public abstract long get();
+ method public abstract long get(int);
+ method public java.nio.LongBuffer get(long[], int, int);
+ method public java.nio.LongBuffer get(long[]);
+ method public final boolean hasArray();
+ method public abstract java.nio.ByteOrder order();
+ method public abstract java.nio.LongBuffer put(long);
+ method public abstract java.nio.LongBuffer put(int, long);
+ method public java.nio.LongBuffer put(java.nio.LongBuffer);
+ method public java.nio.LongBuffer put(long[], int, int);
+ method public final java.nio.LongBuffer put(long[]);
+ method public abstract java.nio.LongBuffer slice();
+ method public static java.nio.LongBuffer wrap(long[], int, int);
+ method public static java.nio.LongBuffer wrap(long[]);
+ }
+
+ public abstract class MappedByteBuffer extends java.nio.ByteBuffer {
+ method public final java.nio.MappedByteBuffer force();
+ method public final boolean isLoaded();
+ method public final java.nio.MappedByteBuffer load();
+ }
+
+ public class ReadOnlyBufferException extends java.lang.UnsupportedOperationException {
+ ctor public ReadOnlyBufferException();
+ }
+
+ public abstract class ShortBuffer extends java.nio.Buffer implements java.lang.Comparable<java.nio.ShortBuffer> {
+ method public static java.nio.ShortBuffer allocate(int);
+ method public final short[] array();
+ method public final int arrayOffset();
+ method public abstract java.nio.ShortBuffer asReadOnlyBuffer();
+ method public abstract java.nio.ShortBuffer compact();
+ method public int compareTo(java.nio.ShortBuffer);
+ method public abstract java.nio.ShortBuffer duplicate();
+ method public abstract short get();
+ method public abstract short get(int);
+ method public java.nio.ShortBuffer get(short[], int, int);
+ method public java.nio.ShortBuffer get(short[]);
+ method public final boolean hasArray();
+ method public abstract java.nio.ByteOrder order();
+ method public abstract java.nio.ShortBuffer put(short);
+ method public abstract java.nio.ShortBuffer put(int, short);
+ method public java.nio.ShortBuffer put(java.nio.ShortBuffer);
+ method public java.nio.ShortBuffer put(short[], int, int);
+ method public final java.nio.ShortBuffer put(short[]);
+ method public abstract java.nio.ShortBuffer slice();
+ method public static java.nio.ShortBuffer wrap(short[], int, int);
+ method public static java.nio.ShortBuffer wrap(short[]);
+ }
+
+}
+
+package java.nio.channels {
+
+ public class AcceptPendingException extends java.lang.IllegalStateException {
+ ctor public AcceptPendingException();
+ }
+
+ public class AlreadyBoundException extends java.lang.IllegalStateException {
+ ctor public AlreadyBoundException();
+ }
+
+ public class AlreadyConnectedException extends java.lang.IllegalStateException {
+ ctor public AlreadyConnectedException();
+ }
+
+ public interface AsynchronousByteChannel extends java.nio.channels.AsynchronousChannel {
+ method public <A> void read(java.nio.ByteBuffer, A, java.nio.channels.CompletionHandler<java.lang.Integer,? super A>);
+ method public java.util.concurrent.Future<java.lang.Integer> read(java.nio.ByteBuffer);
+ method public <A> void write(java.nio.ByteBuffer, A, java.nio.channels.CompletionHandler<java.lang.Integer,? super A>);
+ method public java.util.concurrent.Future<java.lang.Integer> write(java.nio.ByteBuffer);
+ }
+
+ public interface AsynchronousChannel extends java.nio.channels.Channel {
+ }
+
+ public abstract class AsynchronousChannelGroup {
+ ctor protected AsynchronousChannelGroup(java.nio.channels.spi.AsynchronousChannelProvider);
+ method public abstract boolean awaitTermination(long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException;
+ method public abstract boolean isShutdown();
+ method public abstract boolean isTerminated();
+ method public final java.nio.channels.spi.AsynchronousChannelProvider provider();
+ method public abstract void shutdown();
+ method public abstract void shutdownNow() throws java.io.IOException;
+ method public static java.nio.channels.AsynchronousChannelGroup withCachedThreadPool(java.util.concurrent.ExecutorService, int) throws java.io.IOException;
+ method public static java.nio.channels.AsynchronousChannelGroup withFixedThreadPool(int, java.util.concurrent.ThreadFactory) throws java.io.IOException;
+ method public static java.nio.channels.AsynchronousChannelGroup withThreadPool(java.util.concurrent.ExecutorService) throws java.io.IOException;
+ }
+
+ public class AsynchronousCloseException extends java.nio.channels.ClosedChannelException {
+ ctor public AsynchronousCloseException();
+ }
+
+ public abstract class AsynchronousFileChannel implements java.nio.channels.AsynchronousChannel {
+ ctor protected AsynchronousFileChannel();
+ method public abstract void force(boolean) throws java.io.IOException;
+ method public abstract <A> void lock(long, long, boolean, A, java.nio.channels.CompletionHandler<java.nio.channels.FileLock,? super A>);
+ method public final <A> void lock(A, java.nio.channels.CompletionHandler<java.nio.channels.FileLock,? super A>);
+ method public abstract java.util.concurrent.Future<java.nio.channels.FileLock> lock(long, long, boolean);
+ method public final java.util.concurrent.Future<java.nio.channels.FileLock> lock();
+ method public static java.nio.channels.AsynchronousFileChannel open(java.nio.file.Path, java.util.Set<? extends java.nio.file.OpenOption>, java.util.concurrent.ExecutorService, java.nio.file.attribute.FileAttribute<?>...) throws java.io.IOException;
+ method public static java.nio.channels.AsynchronousFileChannel open(java.nio.file.Path, java.nio.file.OpenOption...) throws java.io.IOException;
+ method public abstract <A> void read(java.nio.ByteBuffer, long, A, java.nio.channels.CompletionHandler<java.lang.Integer,? super A>);
+ method public abstract java.util.concurrent.Future<java.lang.Integer> read(java.nio.ByteBuffer, long);
+ method public abstract long size() throws java.io.IOException;
+ method public abstract java.nio.channels.AsynchronousFileChannel truncate(long) throws java.io.IOException;
+ method public abstract java.nio.channels.FileLock tryLock(long, long, boolean) throws java.io.IOException;
+ method public final java.nio.channels.FileLock tryLock() throws java.io.IOException;
+ method public abstract <A> void write(java.nio.ByteBuffer, long, A, java.nio.channels.CompletionHandler<java.lang.Integer,? super A>);
+ method public abstract java.util.concurrent.Future<java.lang.Integer> write(java.nio.ByteBuffer, long);
+ }
+
+ public abstract class AsynchronousServerSocketChannel implements java.nio.channels.AsynchronousChannel java.nio.channels.NetworkChannel {
+ ctor protected AsynchronousServerSocketChannel(java.nio.channels.spi.AsynchronousChannelProvider);
+ method public abstract <A> void accept(A, java.nio.channels.CompletionHandler<java.nio.channels.AsynchronousSocketChannel,? super A>);
+ method public abstract java.util.concurrent.Future<java.nio.channels.AsynchronousSocketChannel> accept();
+ method public final java.nio.channels.AsynchronousServerSocketChannel bind(java.net.SocketAddress) throws java.io.IOException;
+ method public abstract java.nio.channels.AsynchronousServerSocketChannel bind(java.net.SocketAddress, int) throws java.io.IOException;
+ method public static java.nio.channels.AsynchronousServerSocketChannel open(java.nio.channels.AsynchronousChannelGroup) throws java.io.IOException;
+ method public static java.nio.channels.AsynchronousServerSocketChannel open() throws java.io.IOException;
+ method public final java.nio.channels.spi.AsynchronousChannelProvider provider();
+ method public abstract <T> java.nio.channels.AsynchronousServerSocketChannel setOption(java.net.SocketOption<T>, T) throws java.io.IOException;
+ }
+
+ public abstract class AsynchronousSocketChannel implements java.nio.channels.AsynchronousByteChannel java.nio.channels.NetworkChannel {
+ ctor protected AsynchronousSocketChannel(java.nio.channels.spi.AsynchronousChannelProvider);
+ method public abstract java.nio.channels.AsynchronousSocketChannel bind(java.net.SocketAddress) throws java.io.IOException;
+ method public abstract <A> void connect(java.net.SocketAddress, A, java.nio.channels.CompletionHandler<java.lang.Void,? super A>);
+ method public abstract java.util.concurrent.Future<java.lang.Void> connect(java.net.SocketAddress);
+ method public abstract java.net.SocketAddress getRemoteAddress() throws java.io.IOException;
+ method public static java.nio.channels.AsynchronousSocketChannel open(java.nio.channels.AsynchronousChannelGroup) throws java.io.IOException;
+ method public static java.nio.channels.AsynchronousSocketChannel open() throws java.io.IOException;
+ method public final java.nio.channels.spi.AsynchronousChannelProvider provider();
+ method public abstract <A> void read(java.nio.ByteBuffer, long, java.util.concurrent.TimeUnit, A, java.nio.channels.CompletionHandler<java.lang.Integer,? super A>);
+ method public final <A> void read(java.nio.ByteBuffer, A, java.nio.channels.CompletionHandler<java.lang.Integer,? super A>);
+ method public abstract <A> void read(java.nio.ByteBuffer[], int, int, long, java.util.concurrent.TimeUnit, A, java.nio.channels.CompletionHandler<java.lang.Long,? super A>);
+ method public abstract <T> java.nio.channels.AsynchronousSocketChannel setOption(java.net.SocketOption<T>, T) throws java.io.IOException;
+ method public abstract java.nio.channels.AsynchronousSocketChannel shutdownInput() throws java.io.IOException;
+ method public abstract java.nio.channels.AsynchronousSocketChannel shutdownOutput() throws java.io.IOException;
+ method public abstract <A> void write(java.nio.ByteBuffer, long, java.util.concurrent.TimeUnit, A, java.nio.channels.CompletionHandler<java.lang.Integer,? super A>);
+ method public final <A> void write(java.nio.ByteBuffer, A, java.nio.channels.CompletionHandler<java.lang.Integer,? super A>);
+ method public abstract <A> void write(java.nio.ByteBuffer[], int, int, long, java.util.concurrent.TimeUnit, A, java.nio.channels.CompletionHandler<java.lang.Long,? super A>);
+ }
+
+ public interface ByteChannel extends java.nio.channels.ReadableByteChannel java.nio.channels.WritableByteChannel {
+ }
+
+ public class CancelledKeyException extends java.lang.IllegalStateException {
+ ctor public CancelledKeyException();
+ }
+
+ public interface Channel extends java.io.Closeable {
+ method public boolean isOpen();
+ }
+
+ public final class Channels {
+ method public static java.nio.channels.ReadableByteChannel newChannel(java.io.InputStream);
+ method public static java.nio.channels.WritableByteChannel newChannel(java.io.OutputStream);
+ method public static java.io.InputStream newInputStream(java.nio.channels.ReadableByteChannel);
+ method public static java.io.InputStream newInputStream(java.nio.channels.AsynchronousByteChannel);
+ method public static java.io.OutputStream newOutputStream(java.nio.channels.WritableByteChannel);
+ method public static java.io.OutputStream newOutputStream(java.nio.channels.AsynchronousByteChannel);
+ method public static java.io.Reader newReader(java.nio.channels.ReadableByteChannel, java.nio.charset.CharsetDecoder, int);
+ method public static java.io.Reader newReader(java.nio.channels.ReadableByteChannel, String);
+ method public static java.io.Reader newReader(java.nio.channels.ReadableByteChannel, java.nio.charset.Charset);
+ method public static java.io.Writer newWriter(java.nio.channels.WritableByteChannel, java.nio.charset.CharsetEncoder, int);
+ method public static java.io.Writer newWriter(java.nio.channels.WritableByteChannel, String);
+ method public static java.io.Writer newWriter(java.nio.channels.WritableByteChannel, java.nio.charset.Charset);
+ }
+
+ public class ClosedByInterruptException extends java.nio.channels.AsynchronousCloseException {
+ ctor public ClosedByInterruptException();
+ }
+
+ public class ClosedChannelException extends java.io.IOException {
+ ctor public ClosedChannelException();
+ }
+
+ public class ClosedSelectorException extends java.lang.IllegalStateException {
+ ctor public ClosedSelectorException();
+ }
+
+ public interface CompletionHandler<V, A> {
+ method public void completed(V, A);
+ method public void failed(Throwable, A);
+ }
+
+ public class ConnectionPendingException extends java.lang.IllegalStateException {
+ ctor public ConnectionPendingException();
+ }
+
+ public abstract class DatagramChannel extends java.nio.channels.spi.AbstractSelectableChannel implements java.nio.channels.ByteChannel java.nio.channels.GatheringByteChannel java.nio.channels.MulticastChannel java.nio.channels.ScatteringByteChannel {
+ ctor protected DatagramChannel(java.nio.channels.spi.SelectorProvider);
+ method public abstract java.nio.channels.DatagramChannel bind(java.net.SocketAddress) throws java.io.IOException;
+ method public abstract java.nio.channels.DatagramChannel connect(java.net.SocketAddress) throws java.io.IOException;
+ method public abstract java.nio.channels.DatagramChannel disconnect() throws java.io.IOException;
+ method public abstract java.net.SocketAddress getRemoteAddress() throws java.io.IOException;
+ method public abstract boolean isConnected();
+ method public static java.nio.channels.DatagramChannel open() throws java.io.IOException;
+ method public static java.nio.channels.DatagramChannel open(java.net.ProtocolFamily) throws java.io.IOException;
+ method public final long read(java.nio.ByteBuffer[]) throws java.io.IOException;
+ method public abstract java.net.SocketAddress receive(java.nio.ByteBuffer) throws java.io.IOException;
+ method public abstract int send(java.nio.ByteBuffer, java.net.SocketAddress) throws java.io.IOException;
+ method public abstract <T> java.nio.channels.DatagramChannel setOption(java.net.SocketOption<T>, T) throws java.io.IOException;
+ method public abstract java.net.DatagramSocket socket();
+ method public final int validOps();
+ method public final long write(java.nio.ByteBuffer[]) throws java.io.IOException;
+ }
+
+ public abstract class FileChannel extends java.nio.channels.spi.AbstractInterruptibleChannel implements java.nio.channels.GatheringByteChannel java.nio.channels.ScatteringByteChannel java.nio.channels.SeekableByteChannel {
+ ctor protected FileChannel();
+ method public abstract void force(boolean) throws java.io.IOException;
+ method public abstract java.nio.channels.FileLock lock(long, long, boolean) throws java.io.IOException;
+ method public final java.nio.channels.FileLock lock() throws java.io.IOException;
+ method public abstract java.nio.MappedByteBuffer map(java.nio.channels.FileChannel.MapMode, long, long) throws java.io.IOException;
+ method public static java.nio.channels.FileChannel open(java.nio.file.Path, java.util.Set<? extends java.nio.file.OpenOption>, java.nio.file.attribute.FileAttribute<?>...) throws java.io.IOException;
+ method public static java.nio.channels.FileChannel open(java.nio.file.Path, java.nio.file.OpenOption...) throws java.io.IOException;
+ method public abstract java.nio.channels.FileChannel position(long) throws java.io.IOException;
+ method public final long read(java.nio.ByteBuffer[]) throws java.io.IOException;
+ method public abstract int read(java.nio.ByteBuffer, long) throws java.io.IOException;
+ method public abstract long transferFrom(java.nio.channels.ReadableByteChannel, long, long) throws java.io.IOException;
+ method public abstract long transferTo(long, long, java.nio.channels.WritableByteChannel) throws java.io.IOException;
+ method public abstract java.nio.channels.FileChannel truncate(long) throws java.io.IOException;
+ method public abstract java.nio.channels.FileLock tryLock(long, long, boolean) throws java.io.IOException;
+ method public final java.nio.channels.FileLock tryLock() throws java.io.IOException;
+ method public final long write(java.nio.ByteBuffer[]) throws java.io.IOException;
+ method public abstract int write(java.nio.ByteBuffer, long) throws java.io.IOException;
+ }
+
+ public static class FileChannel.MapMode {
+ field public static final java.nio.channels.FileChannel.MapMode PRIVATE;
+ field public static final java.nio.channels.FileChannel.MapMode READ_ONLY;
+ field public static final java.nio.channels.FileChannel.MapMode READ_WRITE;
+ }
+
+ public abstract class FileLock implements java.lang.AutoCloseable {
+ ctor protected FileLock(java.nio.channels.FileChannel, long, long, boolean);
+ ctor protected FileLock(java.nio.channels.AsynchronousFileChannel, long, long, boolean);
+ method public java.nio.channels.Channel acquiredBy();
+ method public final java.nio.channels.FileChannel channel();
+ method public final void close() throws java.io.IOException;
+ method public final boolean isShared();
+ method public abstract boolean isValid();
+ method public final boolean overlaps(long, long);
+ method public final long position();
+ method public abstract void release() throws java.io.IOException;
+ method public final long size();
+ method public final String toString();
+ }
+
+ public class FileLockInterruptionException extends java.io.IOException {
+ ctor public FileLockInterruptionException();
+ }
+
+ public interface GatheringByteChannel extends java.nio.channels.WritableByteChannel {
+ method public long write(java.nio.ByteBuffer[], int, int) throws java.io.IOException;
+ method public long write(java.nio.ByteBuffer[]) throws java.io.IOException;
+ }
+
+ public class IllegalBlockingModeException extends java.lang.IllegalStateException {
+ ctor public IllegalBlockingModeException();
+ }
+
+ public class IllegalChannelGroupException extends java.lang.IllegalArgumentException {
+ ctor public IllegalChannelGroupException();
+ }
+
+ public class IllegalSelectorException extends java.lang.IllegalArgumentException {
+ ctor public IllegalSelectorException();
+ }
+
+ public class InterruptedByTimeoutException extends java.io.IOException {
+ ctor public InterruptedByTimeoutException();
+ }
+
+ public interface InterruptibleChannel extends java.nio.channels.Channel {
+ }
+
+ public abstract class MembershipKey {
+ ctor protected MembershipKey();
+ method public abstract java.nio.channels.MembershipKey block(java.net.InetAddress) throws java.io.IOException;
+ method public abstract java.nio.channels.MulticastChannel channel();
+ method public abstract void drop();
+ method public abstract java.net.InetAddress group();
+ method public abstract boolean isValid();
+ method public abstract java.net.NetworkInterface networkInterface();
+ method public abstract java.net.InetAddress sourceAddress();
+ method public abstract java.nio.channels.MembershipKey unblock(java.net.InetAddress);
+ }
+
+ public interface MulticastChannel extends java.nio.channels.NetworkChannel {
+ method public java.nio.channels.MembershipKey join(java.net.InetAddress, java.net.NetworkInterface) throws java.io.IOException;
+ method public java.nio.channels.MembershipKey join(java.net.InetAddress, java.net.NetworkInterface, java.net.InetAddress) throws java.io.IOException;
+ }
+
+ public interface NetworkChannel extends java.nio.channels.Channel {
+ method public java.nio.channels.NetworkChannel bind(java.net.SocketAddress) throws java.io.IOException;
+ method public java.net.SocketAddress getLocalAddress() throws java.io.IOException;
+ method public <T> T getOption(java.net.SocketOption<T>) throws java.io.IOException;
+ method public <T> java.nio.channels.NetworkChannel setOption(java.net.SocketOption<T>, T) throws java.io.IOException;
+ method public java.util.Set<java.net.SocketOption<?>> supportedOptions();
+ }
+
+ public class NoConnectionPendingException extends java.lang.IllegalStateException {
+ ctor public NoConnectionPendingException();
+ }
+
+ public class NonReadableChannelException extends java.lang.IllegalStateException {
+ ctor public NonReadableChannelException();
+ }
+
+ public class NonWritableChannelException extends java.lang.IllegalStateException {
+ ctor public NonWritableChannelException();
+ }
+
+ public class NotYetBoundException extends java.lang.IllegalStateException {
+ ctor public NotYetBoundException();
+ }
+
+ public class NotYetConnectedException extends java.lang.IllegalStateException {
+ ctor public NotYetConnectedException();
+ }
+
+ public class OverlappingFileLockException extends java.lang.IllegalStateException {
+ ctor public OverlappingFileLockException();
+ }
+
+ public abstract class Pipe {
+ ctor protected Pipe();
+ method public static java.nio.channels.Pipe open() throws java.io.IOException;
+ method public abstract java.nio.channels.Pipe.SinkChannel sink();
+ method public abstract java.nio.channels.Pipe.SourceChannel source();
+ }
+
+ public abstract static class Pipe.SinkChannel extends java.nio.channels.spi.AbstractSelectableChannel implements java.nio.channels.GatheringByteChannel java.nio.channels.WritableByteChannel {
+ ctor protected Pipe.SinkChannel(java.nio.channels.spi.SelectorProvider);
+ method public final int validOps();
+ }
+
+ public abstract static class Pipe.SourceChannel extends java.nio.channels.spi.AbstractSelectableChannel implements java.nio.channels.ReadableByteChannel java.nio.channels.ScatteringByteChannel {
+ ctor protected Pipe.SourceChannel(java.nio.channels.spi.SelectorProvider);
+ method public final int validOps();
+ }
+
+ public class ReadPendingException extends java.lang.IllegalStateException {
+ ctor public ReadPendingException();
+ }
+
+ public interface ReadableByteChannel extends java.nio.channels.Channel {
+ method public int read(java.nio.ByteBuffer) throws java.io.IOException;
+ }
+
+ public interface ScatteringByteChannel extends java.nio.channels.ReadableByteChannel {
+ method public long read(java.nio.ByteBuffer[], int, int) throws java.io.IOException;
+ method public long read(java.nio.ByteBuffer[]) throws java.io.IOException;
+ }
+
+ public interface SeekableByteChannel extends java.nio.channels.ByteChannel {
+ method public long position() throws java.io.IOException;
+ method public java.nio.channels.SeekableByteChannel position(long) throws java.io.IOException;
+ method public long size() throws java.io.IOException;
+ method public java.nio.channels.SeekableByteChannel truncate(long) throws java.io.IOException;
+ }
+
+ public abstract class SelectableChannel extends java.nio.channels.spi.AbstractInterruptibleChannel implements java.nio.channels.Channel {
+ ctor protected SelectableChannel();
+ method public abstract Object blockingLock();
+ method public abstract java.nio.channels.SelectableChannel configureBlocking(boolean) throws java.io.IOException;
+ method public abstract boolean isBlocking();
+ method public abstract boolean isRegistered();
+ method public abstract java.nio.channels.SelectionKey keyFor(java.nio.channels.Selector);
+ method public abstract java.nio.channels.spi.SelectorProvider provider();
+ method public abstract java.nio.channels.SelectionKey register(java.nio.channels.Selector, int, Object) throws java.nio.channels.ClosedChannelException;
+ method public final java.nio.channels.SelectionKey register(java.nio.channels.Selector, int) throws java.nio.channels.ClosedChannelException;
+ method public abstract int validOps();
+ }
+
+ public abstract class SelectionKey {
+ ctor protected SelectionKey();
+ method public final Object attach(Object);
+ method public final Object attachment();
+ method public abstract void cancel();
+ method public abstract java.nio.channels.SelectableChannel channel();
+ method public abstract int interestOps();
+ method public abstract java.nio.channels.SelectionKey interestOps(int);
+ method public int interestOpsAnd(int);
+ method public int interestOpsOr(int);
+ method public final boolean isAcceptable();
+ method public final boolean isConnectable();
+ method public final boolean isReadable();
+ method public abstract boolean isValid();
+ method public final boolean isWritable();
+ method public abstract int readyOps();
+ method public abstract java.nio.channels.Selector selector();
+ field public static final int OP_ACCEPT = 16; // 0x10
+ field public static final int OP_CONNECT = 8; // 0x8
+ field public static final int OP_READ = 1; // 0x1
+ field public static final int OP_WRITE = 4; // 0x4
+ }
+
+ public abstract class Selector implements java.io.Closeable {
+ ctor protected Selector();
+ method public abstract boolean isOpen();
+ method public abstract java.util.Set<java.nio.channels.SelectionKey> keys();
+ method public static java.nio.channels.Selector open() throws java.io.IOException;
+ method public abstract java.nio.channels.spi.SelectorProvider provider();
+ method public abstract int select(long) throws java.io.IOException;
+ method public abstract int select() throws java.io.IOException;
+ method public int select(java.util.function.Consumer<java.nio.channels.SelectionKey>, long) throws java.io.IOException;
+ method public int select(java.util.function.Consumer<java.nio.channels.SelectionKey>) throws java.io.IOException;
+ method public abstract int selectNow() throws java.io.IOException;
+ method public int selectNow(java.util.function.Consumer<java.nio.channels.SelectionKey>) throws java.io.IOException;
+ method public abstract java.util.Set<java.nio.channels.SelectionKey> selectedKeys();
+ method public abstract java.nio.channels.Selector wakeup();
+ }
+
+ public abstract class ServerSocketChannel extends java.nio.channels.spi.AbstractSelectableChannel implements java.nio.channels.NetworkChannel {
+ ctor protected ServerSocketChannel(java.nio.channels.spi.SelectorProvider);
+ method public abstract java.nio.channels.SocketChannel accept() throws java.io.IOException;
+ method public final java.nio.channels.ServerSocketChannel bind(java.net.SocketAddress) throws java.io.IOException;
+ method public abstract java.nio.channels.ServerSocketChannel bind(java.net.SocketAddress, int) throws java.io.IOException;
+ method public static java.nio.channels.ServerSocketChannel open() throws java.io.IOException;
+ method public abstract <T> java.nio.channels.ServerSocketChannel setOption(java.net.SocketOption<T>, T) throws java.io.IOException;
+ method public abstract java.net.ServerSocket socket();
+ method public final int validOps();
+ }
+
+ public class ShutdownChannelGroupException extends java.lang.IllegalStateException {
+ ctor public ShutdownChannelGroupException();
+ }
+
+ public abstract class SocketChannel extends java.nio.channels.spi.AbstractSelectableChannel implements java.nio.channels.ByteChannel java.nio.channels.GatheringByteChannel java.nio.channels.NetworkChannel java.nio.channels.ScatteringByteChannel {
+ ctor protected SocketChannel(java.nio.channels.spi.SelectorProvider);
+ method public abstract java.nio.channels.SocketChannel bind(java.net.SocketAddress) throws java.io.IOException;
+ method public abstract boolean connect(java.net.SocketAddress) throws java.io.IOException;
+ method public abstract boolean finishConnect() throws java.io.IOException;
+ method public abstract java.net.SocketAddress getRemoteAddress() throws java.io.IOException;
+ method public abstract boolean isConnected();
+ method public abstract boolean isConnectionPending();
+ method public static java.nio.channels.SocketChannel open() throws java.io.IOException;
+ method public static java.nio.channels.SocketChannel open(java.net.SocketAddress) throws java.io.IOException;
+ method public final long read(java.nio.ByteBuffer[]) throws java.io.IOException;
+ method public abstract <T> java.nio.channels.SocketChannel setOption(java.net.SocketOption<T>, T) throws java.io.IOException;
+ method public abstract java.nio.channels.SocketChannel shutdownInput() throws java.io.IOException;
+ method public abstract java.nio.channels.SocketChannel shutdownOutput() throws java.io.IOException;
+ method public abstract java.net.Socket socket();
+ method public final int validOps();
+ method public final long write(java.nio.ByteBuffer[]) throws java.io.IOException;
+ }
+
+ public class UnresolvedAddressException extends java.lang.IllegalArgumentException {
+ ctor public UnresolvedAddressException();
+ }
+
+ public class UnsupportedAddressTypeException extends java.lang.IllegalArgumentException {
+ ctor public UnsupportedAddressTypeException();
+ }
+
+ public interface WritableByteChannel extends java.nio.channels.Channel {
+ method public int write(java.nio.ByteBuffer) throws java.io.IOException;
+ }
+
+ public class WritePendingException extends java.lang.IllegalStateException {
+ ctor public WritePendingException();
+ }
+
+}
+
+package java.nio.channels.spi {
+
+ public abstract class AbstractInterruptibleChannel implements java.nio.channels.Channel java.nio.channels.InterruptibleChannel {
+ ctor protected AbstractInterruptibleChannel();
+ method protected final void begin();
+ method public final void close() throws java.io.IOException;
+ method protected final void end(boolean) throws java.nio.channels.AsynchronousCloseException;
+ method protected abstract void implCloseChannel() throws java.io.IOException;
+ method public final boolean isOpen();
+ }
+
+ public abstract class AbstractSelectableChannel extends java.nio.channels.SelectableChannel {
+ ctor protected AbstractSelectableChannel(java.nio.channels.spi.SelectorProvider);
+ method public final Object blockingLock();
+ method public final java.nio.channels.SelectableChannel configureBlocking(boolean) throws java.io.IOException;
+ method protected final void implCloseChannel() throws java.io.IOException;
+ method protected abstract void implCloseSelectableChannel() throws java.io.IOException;
+ method protected abstract void implConfigureBlocking(boolean) throws java.io.IOException;
+ method public final boolean isBlocking();
+ method public final boolean isRegistered();
+ method public final java.nio.channels.SelectionKey keyFor(java.nio.channels.Selector);
+ method public final java.nio.channels.spi.SelectorProvider provider();
+ method public final java.nio.channels.SelectionKey register(java.nio.channels.Selector, int, Object) throws java.nio.channels.ClosedChannelException;
+ }
+
+ public abstract class AbstractSelectionKey extends java.nio.channels.SelectionKey {
+ ctor protected AbstractSelectionKey();
+ method public final void cancel();
+ method public final boolean isValid();
+ }
+
+ public abstract class AbstractSelector extends java.nio.channels.Selector {
+ ctor protected AbstractSelector(java.nio.channels.spi.SelectorProvider);
+ method protected final void begin();
+ method protected final java.util.Set<java.nio.channels.SelectionKey> cancelledKeys();
+ method public final void close() throws java.io.IOException;
+ method protected final void deregister(java.nio.channels.spi.AbstractSelectionKey);
+ method protected final void end();
+ method protected abstract void implCloseSelector() throws java.io.IOException;
+ method public final boolean isOpen();
+ method public final java.nio.channels.spi.SelectorProvider provider();
+ method protected abstract java.nio.channels.SelectionKey register(java.nio.channels.spi.AbstractSelectableChannel, int, Object);
+ }
+
+ public abstract class AsynchronousChannelProvider {
+ ctor protected AsynchronousChannelProvider();
+ method public abstract java.nio.channels.AsynchronousChannelGroup openAsynchronousChannelGroup(int, java.util.concurrent.ThreadFactory) throws java.io.IOException;
+ method public abstract java.nio.channels.AsynchronousChannelGroup openAsynchronousChannelGroup(java.util.concurrent.ExecutorService, int) throws java.io.IOException;
+ method public abstract java.nio.channels.AsynchronousServerSocketChannel openAsynchronousServerSocketChannel(java.nio.channels.AsynchronousChannelGroup) throws java.io.IOException;
+ method public abstract java.nio.channels.AsynchronousSocketChannel openAsynchronousSocketChannel(java.nio.channels.AsynchronousChannelGroup) throws java.io.IOException;
+ method public static java.nio.channels.spi.AsynchronousChannelProvider provider();
+ }
+
+ public abstract class SelectorProvider {
+ ctor protected SelectorProvider();
+ method public java.nio.channels.Channel inheritedChannel() throws java.io.IOException;
+ method public abstract java.nio.channels.DatagramChannel openDatagramChannel() throws java.io.IOException;
+ method public abstract java.nio.channels.DatagramChannel openDatagramChannel(java.net.ProtocolFamily) throws java.io.IOException;
+ method public abstract java.nio.channels.Pipe openPipe() throws java.io.IOException;
+ method public abstract java.nio.channels.spi.AbstractSelector openSelector() throws java.io.IOException;
+ method public abstract java.nio.channels.ServerSocketChannel openServerSocketChannel() throws java.io.IOException;
+ method public abstract java.nio.channels.SocketChannel openSocketChannel() throws java.io.IOException;
+ method public static java.nio.channels.spi.SelectorProvider provider();
+ }
+
+}
+
+package java.nio.charset {
+
+ public class CharacterCodingException extends java.io.IOException {
+ ctor public CharacterCodingException();
+ }
+
+ public abstract class Charset implements java.lang.Comparable<java.nio.charset.Charset> {
+ ctor protected Charset(String, String[]);
+ method public final java.util.Set<java.lang.String> aliases();
+ method public static java.util.SortedMap<java.lang.String,java.nio.charset.Charset> availableCharsets();
+ method public boolean canEncode();
+ method public final int compareTo(java.nio.charset.Charset);
+ method public abstract boolean contains(java.nio.charset.Charset);
+ method public final java.nio.CharBuffer decode(java.nio.ByteBuffer);
+ method public static java.nio.charset.Charset defaultCharset();
+ method public String displayName();
+ method public String displayName(java.util.Locale);
+ method public final java.nio.ByteBuffer encode(java.nio.CharBuffer);
+ method public final java.nio.ByteBuffer encode(String);
+ method public final boolean equals(Object);
+ method public static java.nio.charset.Charset forName(String);
+ method public final int hashCode();
+ method public final boolean isRegistered();
+ method public static boolean isSupported(String);
+ method public final String name();
+ method public abstract java.nio.charset.CharsetDecoder newDecoder();
+ method public abstract java.nio.charset.CharsetEncoder newEncoder();
+ method public final String toString();
+ }
+
+ public abstract class CharsetDecoder {
+ ctor protected CharsetDecoder(java.nio.charset.Charset, float, float);
+ method public final float averageCharsPerByte();
+ method public final java.nio.charset.Charset charset();
+ method public final java.nio.charset.CoderResult decode(java.nio.ByteBuffer, java.nio.CharBuffer, boolean);
+ method public final java.nio.CharBuffer decode(java.nio.ByteBuffer) throws java.nio.charset.CharacterCodingException;
+ method protected abstract java.nio.charset.CoderResult decodeLoop(java.nio.ByteBuffer, java.nio.CharBuffer);
+ method public java.nio.charset.Charset detectedCharset();
+ method public final java.nio.charset.CoderResult flush(java.nio.CharBuffer);
+ method protected java.nio.charset.CoderResult implFlush(java.nio.CharBuffer);
+ method protected void implOnMalformedInput(java.nio.charset.CodingErrorAction);
+ method protected void implOnUnmappableCharacter(java.nio.charset.CodingErrorAction);
+ method protected void implReplaceWith(String);
+ method protected void implReset();
+ method public boolean isAutoDetecting();
+ method public boolean isCharsetDetected();
+ method public java.nio.charset.CodingErrorAction malformedInputAction();
+ method public final float maxCharsPerByte();
+ method public final java.nio.charset.CharsetDecoder onMalformedInput(java.nio.charset.CodingErrorAction);
+ method public final java.nio.charset.CharsetDecoder onUnmappableCharacter(java.nio.charset.CodingErrorAction);
+ method public final java.nio.charset.CharsetDecoder replaceWith(String);
+ method public final String replacement();
+ method public final java.nio.charset.CharsetDecoder reset();
+ method public java.nio.charset.CodingErrorAction unmappableCharacterAction();
+ }
+
+ public abstract class CharsetEncoder {
+ ctor protected CharsetEncoder(java.nio.charset.Charset, float, float, byte[]);
+ ctor protected CharsetEncoder(java.nio.charset.Charset, float, float);
+ method public final float averageBytesPerChar();
+ method public boolean canEncode(char);
+ method public boolean canEncode(CharSequence);
+ method public final java.nio.charset.Charset charset();
+ method public final java.nio.charset.CoderResult encode(java.nio.CharBuffer, java.nio.ByteBuffer, boolean);
+ method public final java.nio.ByteBuffer encode(java.nio.CharBuffer) throws java.nio.charset.CharacterCodingException;
+ method protected abstract java.nio.charset.CoderResult encodeLoop(java.nio.CharBuffer, java.nio.ByteBuffer);
+ method public final java.nio.charset.CoderResult flush(java.nio.ByteBuffer);
+ method protected java.nio.charset.CoderResult implFlush(java.nio.ByteBuffer);
+ method protected void implOnMalformedInput(java.nio.charset.CodingErrorAction);
+ method protected void implOnUnmappableCharacter(java.nio.charset.CodingErrorAction);
+ method protected void implReplaceWith(byte[]);
+ method protected void implReset();
+ method public boolean isLegalReplacement(byte[]);
+ method public java.nio.charset.CodingErrorAction malformedInputAction();
+ method public final float maxBytesPerChar();
+ method public final java.nio.charset.CharsetEncoder onMalformedInput(java.nio.charset.CodingErrorAction);
+ method public final java.nio.charset.CharsetEncoder onUnmappableCharacter(java.nio.charset.CodingErrorAction);
+ method public final java.nio.charset.CharsetEncoder replaceWith(byte[]);
+ method public final byte[] replacement();
+ method public final java.nio.charset.CharsetEncoder reset();
+ method public java.nio.charset.CodingErrorAction unmappableCharacterAction();
+ }
+
+ public class CoderMalfunctionError extends java.lang.Error {
+ ctor public CoderMalfunctionError(Exception);
+ }
+
+ public class CoderResult {
+ method public boolean isError();
+ method public boolean isMalformed();
+ method public boolean isOverflow();
+ method public boolean isUnderflow();
+ method public boolean isUnmappable();
+ method public int length();
+ method public static java.nio.charset.CoderResult malformedForLength(int);
+ method public void throwException() throws java.nio.charset.CharacterCodingException;
+ method public static java.nio.charset.CoderResult unmappableForLength(int);
+ field public static final java.nio.charset.CoderResult OVERFLOW;
+ field public static final java.nio.charset.CoderResult UNDERFLOW;
+ }
+
+ public class CodingErrorAction {
+ field public static final java.nio.charset.CodingErrorAction IGNORE;
+ field public static final java.nio.charset.CodingErrorAction REPLACE;
+ field public static final java.nio.charset.CodingErrorAction REPORT;
+ }
+
+ public class IllegalCharsetNameException extends java.lang.IllegalArgumentException {
+ ctor public IllegalCharsetNameException(String);
+ method public String getCharsetName();
+ }
+
+ public class MalformedInputException extends java.nio.charset.CharacterCodingException {
+ ctor public MalformedInputException(int);
+ method public int getInputLength();
+ }
+
+ public final class StandardCharsets {
+ field public static final java.nio.charset.Charset ISO_8859_1;
+ field public static final java.nio.charset.Charset US_ASCII;
+ field public static final java.nio.charset.Charset UTF_16;
+ field public static final java.nio.charset.Charset UTF_16BE;
+ field public static final java.nio.charset.Charset UTF_16LE;
+ field public static final java.nio.charset.Charset UTF_8;
+ }
+
+ public class UnmappableCharacterException extends java.nio.charset.CharacterCodingException {
+ ctor public UnmappableCharacterException(int);
+ method public int getInputLength();
+ }
+
+ public class UnsupportedCharsetException extends java.lang.IllegalArgumentException {
+ ctor public UnsupportedCharsetException(String);
+ method public String getCharsetName();
+ }
+
+}
+
+package java.nio.charset.spi {
+
+ public abstract class CharsetProvider {
+ ctor protected CharsetProvider();
+ method public abstract java.nio.charset.Charset charsetForName(String);
+ method public abstract java.util.Iterator<java.nio.charset.Charset> charsets();
+ }
+
+}
+
+package java.nio.file {
+
+ public class AccessDeniedException extends java.nio.file.FileSystemException {
+ ctor public AccessDeniedException(String);
+ ctor public AccessDeniedException(String, String, String);
+ }
+
+ public enum AccessMode {
+ enum_constant public static final java.nio.file.AccessMode EXECUTE;
+ enum_constant public static final java.nio.file.AccessMode READ;
+ enum_constant public static final java.nio.file.AccessMode WRITE;
+ }
+
+ public class AtomicMoveNotSupportedException extends java.nio.file.FileSystemException {
+ ctor public AtomicMoveNotSupportedException(String, String, String);
+ }
+
+ public class ClosedDirectoryStreamException extends java.lang.IllegalStateException {
+ ctor public ClosedDirectoryStreamException();
+ }
+
+ public class ClosedFileSystemException extends java.lang.IllegalStateException {
+ ctor public ClosedFileSystemException();
+ }
+
+ public class ClosedWatchServiceException extends java.lang.IllegalStateException {
+ ctor public ClosedWatchServiceException();
+ }
+
+ public interface CopyOption {
+ }
+
+ public final class DirectoryIteratorException extends java.util.ConcurrentModificationException {
+ ctor public DirectoryIteratorException(java.io.IOException);
+ method public java.io.IOException getCause();
+ }
+
+ public class DirectoryNotEmptyException extends java.nio.file.FileSystemException {
+ ctor public DirectoryNotEmptyException(String);
+ }
+
+ public interface DirectoryStream<T> extends java.io.Closeable java.lang.Iterable<T> {
+ }
+
+ @java.lang.FunctionalInterface public static interface DirectoryStream.Filter<T> {
+ method public boolean accept(T) throws java.io.IOException;
+ }
+
+ public class FileAlreadyExistsException extends java.nio.file.FileSystemException {
+ ctor public FileAlreadyExistsException(String);
+ ctor public FileAlreadyExistsException(String, String, String);
+ }
+
+ public abstract class FileStore {
+ ctor protected FileStore();
+ method public abstract Object getAttribute(String) throws java.io.IOException;
+ method public long getBlockSize() throws java.io.IOException;
+ method public abstract <V extends java.nio.file.attribute.FileStoreAttributeView> V getFileStoreAttributeView(Class<V>);
+ method public abstract long getTotalSpace() throws java.io.IOException;
+ method public abstract long getUnallocatedSpace() throws java.io.IOException;
+ method public abstract long getUsableSpace() throws java.io.IOException;
+ method public abstract boolean isReadOnly();
+ method public abstract String name();
+ method public abstract boolean supportsFileAttributeView(Class<? extends java.nio.file.attribute.FileAttributeView>);
+ method public abstract boolean supportsFileAttributeView(String);
+ method public abstract String type();
+ }
+
+ public abstract class FileSystem implements java.io.Closeable {
+ ctor protected FileSystem();
+ method public abstract Iterable<java.nio.file.FileStore> getFileStores();
+ method public abstract java.nio.file.Path getPath(String, java.lang.String...);
+ method public abstract java.nio.file.PathMatcher getPathMatcher(String);
+ method public abstract Iterable<java.nio.file.Path> getRootDirectories();
+ method public abstract String getSeparator();
+ method public abstract java.nio.file.attribute.UserPrincipalLookupService getUserPrincipalLookupService();
+ method public abstract boolean isOpen();
+ method public abstract boolean isReadOnly();
+ method public abstract java.nio.file.WatchService newWatchService() throws java.io.IOException;
+ method public abstract java.nio.file.spi.FileSystemProvider provider();
+ method public abstract java.util.Set<java.lang.String> supportedFileAttributeViews();
+ }
+
+ public class FileSystemAlreadyExistsException extends java.lang.RuntimeException {
+ ctor public FileSystemAlreadyExistsException();
+ ctor public FileSystemAlreadyExistsException(String);
+ }
+
+ public class FileSystemException extends java.io.IOException {
+ ctor public FileSystemException(String);
+ ctor public FileSystemException(String, String, String);
+ method public String getFile();
+ method public String getOtherFile();
+ method public String getReason();
+ }
+
+ public class FileSystemLoopException extends java.nio.file.FileSystemException {
+ ctor public FileSystemLoopException(String);
+ }
+
+ public class FileSystemNotFoundException extends java.lang.RuntimeException {
+ ctor public FileSystemNotFoundException();
+ ctor public FileSystemNotFoundException(String);
+ }
+
+ public final class FileSystems {
+ method public static java.nio.file.FileSystem getDefault();
+ method public static java.nio.file.FileSystem getFileSystem(java.net.URI);
+ method public static java.nio.file.FileSystem newFileSystem(java.net.URI, java.util.Map<java.lang.String,?>) throws java.io.IOException;
+ method public static java.nio.file.FileSystem newFileSystem(java.net.URI, java.util.Map<java.lang.String,?>, ClassLoader) throws java.io.IOException;
+ method public static java.nio.file.FileSystem newFileSystem(java.nio.file.Path, ClassLoader) throws java.io.IOException;
+ }
+
+ public enum FileVisitOption {
+ enum_constant public static final java.nio.file.FileVisitOption FOLLOW_LINKS;
+ }
+
+ public enum FileVisitResult {
+ enum_constant public static final java.nio.file.FileVisitResult CONTINUE;
+ enum_constant public static final java.nio.file.FileVisitResult SKIP_SIBLINGS;
+ enum_constant public static final java.nio.file.FileVisitResult SKIP_SUBTREE;
+ enum_constant public static final java.nio.file.FileVisitResult TERMINATE;
+ }
+
+ public interface FileVisitor<T> {
+ method public java.nio.file.FileVisitResult postVisitDirectory(T, java.io.IOException) throws java.io.IOException;
+ method public java.nio.file.FileVisitResult preVisitDirectory(T, java.nio.file.attribute.BasicFileAttributes) throws java.io.IOException;
+ method public java.nio.file.FileVisitResult visitFile(T, java.nio.file.attribute.BasicFileAttributes) throws java.io.IOException;
+ method public java.nio.file.FileVisitResult visitFileFailed(T, java.io.IOException) throws java.io.IOException;
+ }
+
+ public final class Files {
+ method public static java.nio.file.Path copy(java.nio.file.Path, java.nio.file.Path, java.nio.file.CopyOption...) throws java.io.IOException;
+ method public static long copy(java.io.InputStream, java.nio.file.Path, java.nio.file.CopyOption...) throws java.io.IOException;
+ method public static long copy(java.nio.file.Path, java.io.OutputStream) throws java.io.IOException;
+ method public static java.nio.file.Path createDirectories(java.nio.file.Path, java.nio.file.attribute.FileAttribute<?>...) throws java.io.IOException;
+ method public static java.nio.file.Path createDirectory(java.nio.file.Path, java.nio.file.attribute.FileAttribute<?>...) throws java.io.IOException;
+ method public static java.nio.file.Path createFile(java.nio.file.Path, java.nio.file.attribute.FileAttribute<?>...) throws java.io.IOException;
+ method public static java.nio.file.Path createLink(java.nio.file.Path, java.nio.file.Path) throws java.io.IOException;
+ method public static java.nio.file.Path createSymbolicLink(java.nio.file.Path, java.nio.file.Path, java.nio.file.attribute.FileAttribute<?>...) throws java.io.IOException;
+ method public static java.nio.file.Path createTempDirectory(java.nio.file.Path, String, java.nio.file.attribute.FileAttribute<?>...) throws java.io.IOException;
+ method public static java.nio.file.Path createTempDirectory(String, java.nio.file.attribute.FileAttribute<?>...) throws java.io.IOException;
+ method public static java.nio.file.Path createTempFile(java.nio.file.Path, String, String, java.nio.file.attribute.FileAttribute<?>...) throws java.io.IOException;
+ method public static java.nio.file.Path createTempFile(String, String, java.nio.file.attribute.FileAttribute<?>...) throws java.io.IOException;
+ method public static void delete(java.nio.file.Path) throws java.io.IOException;
+ method public static boolean deleteIfExists(java.nio.file.Path) throws java.io.IOException;
+ method public static boolean exists(java.nio.file.Path, java.nio.file.LinkOption...);
+ method public static java.util.stream.Stream<java.nio.file.Path> find(java.nio.file.Path, int, java.util.function.BiPredicate<java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes>, java.nio.file.FileVisitOption...) throws java.io.IOException;
+ method public static Object getAttribute(java.nio.file.Path, String, java.nio.file.LinkOption...) throws java.io.IOException;
+ method public static <V extends java.nio.file.attribute.FileAttributeView> V getFileAttributeView(java.nio.file.Path, Class<V>, java.nio.file.LinkOption...);
+ method public static java.nio.file.FileStore getFileStore(java.nio.file.Path) throws java.io.IOException;
+ method public static java.nio.file.attribute.FileTime getLastModifiedTime(java.nio.file.Path, java.nio.file.LinkOption...) throws java.io.IOException;
+ method public static java.nio.file.attribute.UserPrincipal getOwner(java.nio.file.Path, java.nio.file.LinkOption...) throws java.io.IOException;
+ method public static java.util.Set<java.nio.file.attribute.PosixFilePermission> getPosixFilePermissions(java.nio.file.Path, java.nio.file.LinkOption...) throws java.io.IOException;
+ method public static boolean isDirectory(java.nio.file.Path, java.nio.file.LinkOption...);
+ method public static boolean isExecutable(java.nio.file.Path);
+ method public static boolean isHidden(java.nio.file.Path) throws java.io.IOException;
+ method public static boolean isReadable(java.nio.file.Path);
+ method public static boolean isRegularFile(java.nio.file.Path, java.nio.file.LinkOption...);
+ method public static boolean isSameFile(java.nio.file.Path, java.nio.file.Path) throws java.io.IOException;
+ method public static boolean isSymbolicLink(java.nio.file.Path);
+ method public static boolean isWritable(java.nio.file.Path);
+ method public static java.util.stream.Stream<java.lang.String> lines(java.nio.file.Path, java.nio.charset.Charset) throws java.io.IOException;
+ method public static java.util.stream.Stream<java.lang.String> lines(java.nio.file.Path) throws java.io.IOException;
+ method public static java.util.stream.Stream<java.nio.file.Path> list(java.nio.file.Path) throws java.io.IOException;
+ method public static java.nio.file.Path move(java.nio.file.Path, java.nio.file.Path, java.nio.file.CopyOption...) throws java.io.IOException;
+ method public static java.io.BufferedReader newBufferedReader(java.nio.file.Path, java.nio.charset.Charset) throws java.io.IOException;
+ method public static java.io.BufferedReader newBufferedReader(java.nio.file.Path) throws java.io.IOException;
+ method public static java.io.BufferedWriter newBufferedWriter(java.nio.file.Path, java.nio.charset.Charset, java.nio.file.OpenOption...) throws java.io.IOException;
+ method public static java.io.BufferedWriter newBufferedWriter(java.nio.file.Path, java.nio.file.OpenOption...) throws java.io.IOException;
+ method public static java.nio.channels.SeekableByteChannel newByteChannel(java.nio.file.Path, java.util.Set<? extends java.nio.file.OpenOption>, java.nio.file.attribute.FileAttribute<?>...) throws java.io.IOException;
+ method public static java.nio.channels.SeekableByteChannel newByteChannel(java.nio.file.Path, java.nio.file.OpenOption...) throws java.io.IOException;
+ method public static java.nio.file.DirectoryStream<java.nio.file.Path> newDirectoryStream(java.nio.file.Path) throws java.io.IOException;
+ method public static java.nio.file.DirectoryStream<java.nio.file.Path> newDirectoryStream(java.nio.file.Path, String) throws java.io.IOException;
+ method public static java.nio.file.DirectoryStream<java.nio.file.Path> newDirectoryStream(java.nio.file.Path, java.nio.file.DirectoryStream.Filter<? super java.nio.file.Path>) throws java.io.IOException;
+ method public static java.io.InputStream newInputStream(java.nio.file.Path, java.nio.file.OpenOption...) throws java.io.IOException;
+ method public static java.io.OutputStream newOutputStream(java.nio.file.Path, java.nio.file.OpenOption...) throws java.io.IOException;
+ method public static boolean notExists(java.nio.file.Path, java.nio.file.LinkOption...);
+ method public static String probeContentType(java.nio.file.Path) throws java.io.IOException;
+ method public static byte[] readAllBytes(java.nio.file.Path) throws java.io.IOException;
+ method public static java.util.List<java.lang.String> readAllLines(java.nio.file.Path, java.nio.charset.Charset) throws java.io.IOException;
+ method public static java.util.List<java.lang.String> readAllLines(java.nio.file.Path) throws java.io.IOException;
+ method public static <A extends java.nio.file.attribute.BasicFileAttributes> A readAttributes(java.nio.file.Path, Class<A>, java.nio.file.LinkOption...) throws java.io.IOException;
+ method public static java.util.Map<java.lang.String,java.lang.Object> readAttributes(java.nio.file.Path, String, java.nio.file.LinkOption...) throws java.io.IOException;
+ method public static java.nio.file.Path readSymbolicLink(java.nio.file.Path) throws java.io.IOException;
+ method public static java.nio.file.Path setAttribute(java.nio.file.Path, String, Object, java.nio.file.LinkOption...) throws java.io.IOException;
+ method public static java.nio.file.Path setLastModifiedTime(java.nio.file.Path, java.nio.file.attribute.FileTime) throws java.io.IOException;
+ method public static java.nio.file.Path setOwner(java.nio.file.Path, java.nio.file.attribute.UserPrincipal) throws java.io.IOException;
+ method public static java.nio.file.Path setPosixFilePermissions(java.nio.file.Path, java.util.Set<java.nio.file.attribute.PosixFilePermission>) throws java.io.IOException;
+ method public static long size(java.nio.file.Path) throws java.io.IOException;
+ method public static java.util.stream.Stream<java.nio.file.Path> walk(java.nio.file.Path, int, java.nio.file.FileVisitOption...) throws java.io.IOException;
+ method public static java.util.stream.Stream<java.nio.file.Path> walk(java.nio.file.Path, java.nio.file.FileVisitOption...) throws java.io.IOException;
+ method public static java.nio.file.Path walkFileTree(java.nio.file.Path, java.util.Set<java.nio.file.FileVisitOption>, int, java.nio.file.FileVisitor<? super java.nio.file.Path>) throws java.io.IOException;
+ method public static java.nio.file.Path walkFileTree(java.nio.file.Path, java.nio.file.FileVisitor<? super java.nio.file.Path>) throws java.io.IOException;
+ method public static java.nio.file.Path write(java.nio.file.Path, byte[], java.nio.file.OpenOption...) throws java.io.IOException;
+ method public static java.nio.file.Path write(java.nio.file.Path, Iterable<? extends java.lang.CharSequence>, java.nio.charset.Charset, java.nio.file.OpenOption...) throws java.io.IOException;
+ method public static java.nio.file.Path write(java.nio.file.Path, Iterable<? extends java.lang.CharSequence>, java.nio.file.OpenOption...) throws java.io.IOException;
+ }
+
+ public class InvalidPathException extends java.lang.IllegalArgumentException {
+ ctor public InvalidPathException(String, String, int);
+ ctor public InvalidPathException(String, String);
+ method public int getIndex();
+ method public String getInput();
+ method public String getReason();
+ }
+
+ public enum LinkOption implements java.nio.file.CopyOption java.nio.file.OpenOption {
+ enum_constant public static final java.nio.file.LinkOption NOFOLLOW_LINKS;
+ }
+
+ public final class LinkPermission extends java.security.BasicPermission {
+ ctor public LinkPermission(String);
+ ctor public LinkPermission(String, String);
+ }
+
+ public class NoSuchFileException extends java.nio.file.FileSystemException {
+ ctor public NoSuchFileException(String);
+ ctor public NoSuchFileException(String, String, String);
+ }
+
+ public class NotDirectoryException extends java.nio.file.FileSystemException {
+ ctor public NotDirectoryException(String);
+ }
+
+ public class NotLinkException extends java.nio.file.FileSystemException {
+ ctor public NotLinkException(String);
+ ctor public NotLinkException(String, String, String);
+ }
+
+ public interface OpenOption {
+ }
+
+ public interface Path extends java.lang.Comparable<java.nio.file.Path> java.lang.Iterable<java.nio.file.Path> java.nio.file.Watchable {
+ method public int compareTo(java.nio.file.Path);
+ method public boolean endsWith(java.nio.file.Path);
+ method public boolean endsWith(String);
+ method public boolean equals(Object);
+ method public java.nio.file.Path getFileName();
+ method public java.nio.file.FileSystem getFileSystem();
+ method public java.nio.file.Path getName(int);
+ method public int getNameCount();
+ method public java.nio.file.Path getParent();
+ method public java.nio.file.Path getRoot();
+ method public int hashCode();
+ method public boolean isAbsolute();
+ method public java.util.Iterator<java.nio.file.Path> iterator();
+ method public java.nio.file.Path normalize();
+ method public java.nio.file.Path relativize(java.nio.file.Path);
+ method public java.nio.file.Path resolve(java.nio.file.Path);
+ method public java.nio.file.Path resolve(String);
+ method public java.nio.file.Path resolveSibling(java.nio.file.Path);
+ method public java.nio.file.Path resolveSibling(String);
+ method public boolean startsWith(java.nio.file.Path);
+ method public boolean startsWith(String);
+ method public java.nio.file.Path subpath(int, int);
+ method public java.nio.file.Path toAbsolutePath();
+ method public java.io.File toFile();
+ method public java.nio.file.Path toRealPath(java.nio.file.LinkOption...) throws java.io.IOException;
+ method public String toString();
+ method public java.net.URI toUri();
+ }
+
+ @java.lang.FunctionalInterface public interface PathMatcher {
+ method public boolean matches(java.nio.file.Path);
+ }
+
+ public final class Paths {
+ method public static java.nio.file.Path get(String, java.lang.String...);
+ method public static java.nio.file.Path get(java.net.URI);
+ }
+
+ public class ProviderMismatchException extends java.lang.IllegalArgumentException {
+ ctor public ProviderMismatchException();
+ ctor public ProviderMismatchException(String);
+ }
+
+ public class ProviderNotFoundException extends java.lang.RuntimeException {
+ ctor public ProviderNotFoundException();
+ ctor public ProviderNotFoundException(String);
+ }
+
+ public class ReadOnlyFileSystemException extends java.lang.UnsupportedOperationException {
+ ctor public ReadOnlyFileSystemException();
+ }
+
+ public interface SecureDirectoryStream<T> extends java.nio.file.DirectoryStream<T> {
+ method public void deleteDirectory(T) throws java.io.IOException;
+ method public void deleteFile(T) throws java.io.IOException;
+ method public <V extends java.nio.file.attribute.FileAttributeView> V getFileAttributeView(Class<V>);
+ method public <V extends java.nio.file.attribute.FileAttributeView> V getFileAttributeView(T, Class<V>, java.nio.file.LinkOption...);
+ method public void move(T, java.nio.file.SecureDirectoryStream<T>, T) throws java.io.IOException;
+ method public java.nio.channels.SeekableByteChannel newByteChannel(T, java.util.Set<? extends java.nio.file.OpenOption>, java.nio.file.attribute.FileAttribute<?>...) throws java.io.IOException;
+ method public java.nio.file.SecureDirectoryStream<T> newDirectoryStream(T, java.nio.file.LinkOption...) throws java.io.IOException;
+ }
+
+ public class SimpleFileVisitor<T> implements java.nio.file.FileVisitor<T> {
+ ctor protected SimpleFileVisitor();
+ method public java.nio.file.FileVisitResult postVisitDirectory(T, java.io.IOException) throws java.io.IOException;
+ method public java.nio.file.FileVisitResult preVisitDirectory(T, java.nio.file.attribute.BasicFileAttributes) throws java.io.IOException;
+ method public java.nio.file.FileVisitResult visitFile(T, java.nio.file.attribute.BasicFileAttributes) throws java.io.IOException;
+ method public java.nio.file.FileVisitResult visitFileFailed(T, java.io.IOException) throws java.io.IOException;
+ }
+
+ public enum StandardCopyOption implements java.nio.file.CopyOption {
+ enum_constant public static final java.nio.file.StandardCopyOption ATOMIC_MOVE;
+ enum_constant public static final java.nio.file.StandardCopyOption COPY_ATTRIBUTES;
+ enum_constant public static final java.nio.file.StandardCopyOption REPLACE_EXISTING;
+ }
+
+ public enum StandardOpenOption implements java.nio.file.OpenOption {
+ enum_constant public static final java.nio.file.StandardOpenOption APPEND;
+ enum_constant public static final java.nio.file.StandardOpenOption CREATE;
+ enum_constant public static final java.nio.file.StandardOpenOption CREATE_NEW;
+ enum_constant public static final java.nio.file.StandardOpenOption DELETE_ON_CLOSE;
+ enum_constant public static final java.nio.file.StandardOpenOption DSYNC;
+ enum_constant public static final java.nio.file.StandardOpenOption READ;
+ enum_constant public static final java.nio.file.StandardOpenOption SPARSE;
+ enum_constant public static final java.nio.file.StandardOpenOption SYNC;
+ enum_constant public static final java.nio.file.StandardOpenOption TRUNCATE_EXISTING;
+ enum_constant public static final java.nio.file.StandardOpenOption WRITE;
+ }
+
+ public final class StandardWatchEventKinds {
+ field public static final java.nio.file.WatchEvent.Kind<java.nio.file.Path> ENTRY_CREATE;
+ field public static final java.nio.file.WatchEvent.Kind<java.nio.file.Path> ENTRY_DELETE;
+ field public static final java.nio.file.WatchEvent.Kind<java.nio.file.Path> ENTRY_MODIFY;
+ field public static final java.nio.file.WatchEvent.Kind<java.lang.Object> OVERFLOW;
+ }
+
+ public interface WatchEvent<T> {
+ method public T context();
+ method public int count();
+ method public java.nio.file.WatchEvent.Kind<T> kind();
+ }
+
+ public static interface WatchEvent.Kind<T> {
+ method public String name();
+ method public Class<T> type();
+ }
+
+ public static interface WatchEvent.Modifier {
+ method public String name();
+ }
+
+ public interface WatchKey {
+ method public void cancel();
+ method public boolean isValid();
+ method public java.util.List<java.nio.file.WatchEvent<?>> pollEvents();
+ method public boolean reset();
+ method public java.nio.file.Watchable watchable();
+ }
+
+ public interface WatchService extends java.io.Closeable {
+ method public java.nio.file.WatchKey poll();
+ method public java.nio.file.WatchKey poll(long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException;
+ method public java.nio.file.WatchKey take() throws java.lang.InterruptedException;
+ }
+
+ public interface Watchable {
+ method public java.nio.file.WatchKey register(java.nio.file.WatchService, java.nio.file.WatchEvent.Kind<?>[], java.nio.file.WatchEvent.Modifier...) throws java.io.IOException;
+ method public java.nio.file.WatchKey register(java.nio.file.WatchService, java.nio.file.WatchEvent.Kind<?>...) throws java.io.IOException;
+ }
+
+}
+
+package java.nio.file.attribute {
+
+ public final class AclEntry {
+ method public java.util.Set<java.nio.file.attribute.AclEntryFlag> flags();
+ method public static java.nio.file.attribute.AclEntry.Builder newBuilder();
+ method public static java.nio.file.attribute.AclEntry.Builder newBuilder(java.nio.file.attribute.AclEntry);
+ method public java.util.Set<java.nio.file.attribute.AclEntryPermission> permissions();
+ method public java.nio.file.attribute.UserPrincipal principal();
+ method public java.nio.file.attribute.AclEntryType type();
+ }
+
+ public static final class AclEntry.Builder {
+ method public java.nio.file.attribute.AclEntry build();
+ method public java.nio.file.attribute.AclEntry.Builder setFlags(java.util.Set<java.nio.file.attribute.AclEntryFlag>);
+ method public java.nio.file.attribute.AclEntry.Builder setFlags(java.nio.file.attribute.AclEntryFlag...);
+ method public java.nio.file.attribute.AclEntry.Builder setPermissions(java.util.Set<java.nio.file.attribute.AclEntryPermission>);
+ method public java.nio.file.attribute.AclEntry.Builder setPermissions(java.nio.file.attribute.AclEntryPermission...);
+ method public java.nio.file.attribute.AclEntry.Builder setPrincipal(java.nio.file.attribute.UserPrincipal);
+ method public java.nio.file.attribute.AclEntry.Builder setType(java.nio.file.attribute.AclEntryType);
+ }
+
+ public enum AclEntryFlag {
+ enum_constant public static final java.nio.file.attribute.AclEntryFlag DIRECTORY_INHERIT;
+ enum_constant public static final java.nio.file.attribute.AclEntryFlag FILE_INHERIT;
+ enum_constant public static final java.nio.file.attribute.AclEntryFlag INHERIT_ONLY;
+ enum_constant public static final java.nio.file.attribute.AclEntryFlag NO_PROPAGATE_INHERIT;
+ }
+
+ public enum AclEntryPermission {
+ enum_constant public static final java.nio.file.attribute.AclEntryPermission APPEND_DATA;
+ enum_constant public static final java.nio.file.attribute.AclEntryPermission DELETE;
+ enum_constant public static final java.nio.file.attribute.AclEntryPermission DELETE_CHILD;
+ enum_constant public static final java.nio.file.attribute.AclEntryPermission EXECUTE;
+ enum_constant public static final java.nio.file.attribute.AclEntryPermission READ_ACL;
+ enum_constant public static final java.nio.file.attribute.AclEntryPermission READ_ATTRIBUTES;
+ enum_constant public static final java.nio.file.attribute.AclEntryPermission READ_DATA;
+ enum_constant public static final java.nio.file.attribute.AclEntryPermission READ_NAMED_ATTRS;
+ enum_constant public static final java.nio.file.attribute.AclEntryPermission SYNCHRONIZE;
+ enum_constant public static final java.nio.file.attribute.AclEntryPermission WRITE_ACL;
+ enum_constant public static final java.nio.file.attribute.AclEntryPermission WRITE_ATTRIBUTES;
+ enum_constant public static final java.nio.file.attribute.AclEntryPermission WRITE_DATA;
+ enum_constant public static final java.nio.file.attribute.AclEntryPermission WRITE_NAMED_ATTRS;
+ enum_constant public static final java.nio.file.attribute.AclEntryPermission WRITE_OWNER;
+ field public static final java.nio.file.attribute.AclEntryPermission ADD_FILE;
+ field public static final java.nio.file.attribute.AclEntryPermission ADD_SUBDIRECTORY;
+ field public static final java.nio.file.attribute.AclEntryPermission LIST_DIRECTORY;
+ }
+
+ public enum AclEntryType {
+ enum_constant public static final java.nio.file.attribute.AclEntryType ALARM;
+ enum_constant public static final java.nio.file.attribute.AclEntryType ALLOW;
+ enum_constant public static final java.nio.file.attribute.AclEntryType AUDIT;
+ enum_constant public static final java.nio.file.attribute.AclEntryType DENY;
+ }
+
+ public interface AclFileAttributeView extends java.nio.file.attribute.FileOwnerAttributeView {
+ method public java.util.List<java.nio.file.attribute.AclEntry> getAcl() throws java.io.IOException;
+ method public void setAcl(java.util.List<java.nio.file.attribute.AclEntry>) throws java.io.IOException;
+ }
+
+ public interface AttributeView {
+ method public String name();
+ }
+
+ public interface BasicFileAttributeView extends java.nio.file.attribute.FileAttributeView {
+ method public java.nio.file.attribute.BasicFileAttributes readAttributes() throws java.io.IOException;
+ method public void setTimes(java.nio.file.attribute.FileTime, java.nio.file.attribute.FileTime, java.nio.file.attribute.FileTime) throws java.io.IOException;
+ }
+
+ public interface BasicFileAttributes {
+ method public java.nio.file.attribute.FileTime creationTime();
+ method public Object fileKey();
+ method public boolean isDirectory();
+ method public boolean isOther();
+ method public boolean isRegularFile();
+ method public boolean isSymbolicLink();
+ method public java.nio.file.attribute.FileTime lastAccessTime();
+ method public java.nio.file.attribute.FileTime lastModifiedTime();
+ method public long size();
+ }
+
+ public interface DosFileAttributeView extends java.nio.file.attribute.BasicFileAttributeView {
+ method public java.nio.file.attribute.DosFileAttributes readAttributes() throws java.io.IOException;
+ method public void setArchive(boolean) throws java.io.IOException;
+ method public void setHidden(boolean) throws java.io.IOException;
+ method public void setReadOnly(boolean) throws java.io.IOException;
+ method public void setSystem(boolean) throws java.io.IOException;
+ }
+
+ public interface DosFileAttributes extends java.nio.file.attribute.BasicFileAttributes {
+ method public boolean isArchive();
+ method public boolean isHidden();
+ method public boolean isReadOnly();
+ method public boolean isSystem();
+ }
+
+ public interface FileAttribute<T> {
+ method public String name();
+ method public T value();
+ }
+
+ public interface FileAttributeView extends java.nio.file.attribute.AttributeView {
+ }
+
+ public interface FileOwnerAttributeView extends java.nio.file.attribute.FileAttributeView {
+ method public java.nio.file.attribute.UserPrincipal getOwner() throws java.io.IOException;
+ method public void setOwner(java.nio.file.attribute.UserPrincipal) throws java.io.IOException;
+ }
+
+ public interface FileStoreAttributeView extends java.nio.file.attribute.AttributeView {
+ }
+
+ public final class FileTime implements java.lang.Comparable<java.nio.file.attribute.FileTime> {
+ method public int compareTo(java.nio.file.attribute.FileTime);
+ method public static java.nio.file.attribute.FileTime from(long, java.util.concurrent.TimeUnit);
+ method public static java.nio.file.attribute.FileTime from(java.time.Instant);
+ method public static java.nio.file.attribute.FileTime fromMillis(long);
+ method public long to(java.util.concurrent.TimeUnit);
+ method public java.time.Instant toInstant();
+ method public long toMillis();
+ }
+
+ public interface GroupPrincipal extends java.nio.file.attribute.UserPrincipal {
+ }
+
+ public interface PosixFileAttributeView extends java.nio.file.attribute.BasicFileAttributeView java.nio.file.attribute.FileOwnerAttributeView {
+ method public java.nio.file.attribute.PosixFileAttributes readAttributes() throws java.io.IOException;
+ method public void setGroup(java.nio.file.attribute.GroupPrincipal) throws java.io.IOException;
+ method public void setPermissions(java.util.Set<java.nio.file.attribute.PosixFilePermission>) throws java.io.IOException;
+ }
+
+ public interface PosixFileAttributes extends java.nio.file.attribute.BasicFileAttributes {
+ method public java.nio.file.attribute.GroupPrincipal group();
+ method public java.nio.file.attribute.UserPrincipal owner();
+ method public java.util.Set<java.nio.file.attribute.PosixFilePermission> permissions();
+ }
+
+ public enum PosixFilePermission {
+ enum_constant public static final java.nio.file.attribute.PosixFilePermission GROUP_EXECUTE;
+ enum_constant public static final java.nio.file.attribute.PosixFilePermission GROUP_READ;
+ enum_constant public static final java.nio.file.attribute.PosixFilePermission GROUP_WRITE;
+ enum_constant public static final java.nio.file.attribute.PosixFilePermission OTHERS_EXECUTE;
+ enum_constant public static final java.nio.file.attribute.PosixFilePermission OTHERS_READ;
+ enum_constant public static final java.nio.file.attribute.PosixFilePermission OTHERS_WRITE;
+ enum_constant public static final java.nio.file.attribute.PosixFilePermission OWNER_EXECUTE;
+ enum_constant public static final java.nio.file.attribute.PosixFilePermission OWNER_READ;
+ enum_constant public static final java.nio.file.attribute.PosixFilePermission OWNER_WRITE;
+ }
+
+ public final class PosixFilePermissions {
+ method public static java.nio.file.attribute.FileAttribute<java.util.Set<java.nio.file.attribute.PosixFilePermission>> asFileAttribute(java.util.Set<java.nio.file.attribute.PosixFilePermission>);
+ method public static java.util.Set<java.nio.file.attribute.PosixFilePermission> fromString(String);
+ method public static String toString(java.util.Set<java.nio.file.attribute.PosixFilePermission>);
+ }
+
+ public interface UserDefinedFileAttributeView extends java.nio.file.attribute.FileAttributeView {
+ method public void delete(String) throws java.io.IOException;
+ method public java.util.List<java.lang.String> list() throws java.io.IOException;
+ method public int read(String, java.nio.ByteBuffer) throws java.io.IOException;
+ method public int size(String) throws java.io.IOException;
+ method public int write(String, java.nio.ByteBuffer) throws java.io.IOException;
+ }
+
+ public interface UserPrincipal extends java.security.Principal {
+ }
+
+ public abstract class UserPrincipalLookupService {
+ ctor protected UserPrincipalLookupService();
+ method public abstract java.nio.file.attribute.GroupPrincipal lookupPrincipalByGroupName(String) throws java.io.IOException;
+ method public abstract java.nio.file.attribute.UserPrincipal lookupPrincipalByName(String) throws java.io.IOException;
+ }
+
+ public class UserPrincipalNotFoundException extends java.io.IOException {
+ ctor public UserPrincipalNotFoundException(String);
+ method public String getName();
+ }
+
+}
+
+package java.nio.file.spi {
+
+ public abstract class FileSystemProvider {
+ ctor protected FileSystemProvider();
+ method public abstract void checkAccess(java.nio.file.Path, java.nio.file.AccessMode...) throws java.io.IOException;
+ method public abstract void copy(java.nio.file.Path, java.nio.file.Path, java.nio.file.CopyOption...) throws java.io.IOException;
+ method public abstract void createDirectory(java.nio.file.Path, java.nio.file.attribute.FileAttribute<?>...) throws java.io.IOException;
+ method public void createLink(java.nio.file.Path, java.nio.file.Path) throws java.io.IOException;
+ method public void createSymbolicLink(java.nio.file.Path, java.nio.file.Path, java.nio.file.attribute.FileAttribute<?>...) throws java.io.IOException;
+ method public abstract void delete(java.nio.file.Path) throws java.io.IOException;
+ method public boolean deleteIfExists(java.nio.file.Path) throws java.io.IOException;
+ method public abstract <V extends java.nio.file.attribute.FileAttributeView> V getFileAttributeView(java.nio.file.Path, Class<V>, java.nio.file.LinkOption...);
+ method public abstract java.nio.file.FileStore getFileStore(java.nio.file.Path) throws java.io.IOException;
+ method public abstract java.nio.file.FileSystem getFileSystem(java.net.URI);
+ method public abstract java.nio.file.Path getPath(java.net.URI);
+ method public abstract String getScheme();
+ method public static java.util.List<java.nio.file.spi.FileSystemProvider> installedProviders();
+ method public abstract boolean isHidden(java.nio.file.Path) throws java.io.IOException;
+ method public abstract boolean isSameFile(java.nio.file.Path, java.nio.file.Path) throws java.io.IOException;
+ method public abstract void move(java.nio.file.Path, java.nio.file.Path, java.nio.file.CopyOption...) throws java.io.IOException;
+ method public java.nio.channels.AsynchronousFileChannel newAsynchronousFileChannel(java.nio.file.Path, java.util.Set<? extends java.nio.file.OpenOption>, java.util.concurrent.ExecutorService, java.nio.file.attribute.FileAttribute<?>...) throws java.io.IOException;
+ method public abstract java.nio.channels.SeekableByteChannel newByteChannel(java.nio.file.Path, java.util.Set<? extends java.nio.file.OpenOption>, java.nio.file.attribute.FileAttribute<?>...) throws java.io.IOException;
+ method public abstract java.nio.file.DirectoryStream<java.nio.file.Path> newDirectoryStream(java.nio.file.Path, java.nio.file.DirectoryStream.Filter<? super java.nio.file.Path>) throws java.io.IOException;
+ method public java.nio.channels.FileChannel newFileChannel(java.nio.file.Path, java.util.Set<? extends java.nio.file.OpenOption>, java.nio.file.attribute.FileAttribute<?>...) throws java.io.IOException;
+ method public abstract java.nio.file.FileSystem newFileSystem(java.net.URI, java.util.Map<java.lang.String,?>) throws java.io.IOException;
+ method public java.nio.file.FileSystem newFileSystem(java.nio.file.Path, java.util.Map<java.lang.String,?>) throws java.io.IOException;
+ method public java.io.InputStream newInputStream(java.nio.file.Path, java.nio.file.OpenOption...) throws java.io.IOException;
+ method public java.io.OutputStream newOutputStream(java.nio.file.Path, java.nio.file.OpenOption...) throws java.io.IOException;
+ method public abstract <A extends java.nio.file.attribute.BasicFileAttributes> A readAttributes(java.nio.file.Path, Class<A>, java.nio.file.LinkOption...) throws java.io.IOException;
+ method public abstract java.util.Map<java.lang.String,java.lang.Object> readAttributes(java.nio.file.Path, String, java.nio.file.LinkOption...) throws java.io.IOException;
+ method public java.nio.file.Path readSymbolicLink(java.nio.file.Path) throws java.io.IOException;
+ method public abstract void setAttribute(java.nio.file.Path, String, Object, java.nio.file.LinkOption...) throws java.io.IOException;
+ }
+
+ public abstract class FileTypeDetector {
+ ctor protected FileTypeDetector();
+ method public abstract String probeContentType(java.nio.file.Path) throws java.io.IOException;
+ }
+
+}
+
+package java.security {
+
+ public final class AccessControlContext {
+ ctor public AccessControlContext(java.security.ProtectionDomain[]);
+ ctor public AccessControlContext(java.security.AccessControlContext, java.security.DomainCombiner);
+ method public void checkPermission(java.security.Permission) throws java.security.AccessControlException;
+ method public java.security.DomainCombiner getDomainCombiner();
+ }
+
+ public class AccessControlException extends java.lang.SecurityException {
+ ctor public AccessControlException(String);
+ ctor public AccessControlException(String, java.security.Permission);
+ method public java.security.Permission getPermission();
+ }
+
+ public final class AccessController {
+ method public static void checkPermission(java.security.Permission) throws java.security.AccessControlException;
+ method public static <T> T doPrivileged(java.security.PrivilegedAction<T>);
+ method public static <T> T doPrivileged(java.security.PrivilegedAction<T>, java.security.AccessControlContext);
+ method public static <T> T doPrivileged(java.security.PrivilegedExceptionAction<T>) throws java.security.PrivilegedActionException;
+ method public static <T> T doPrivileged(java.security.PrivilegedExceptionAction<T>, java.security.AccessControlContext) throws java.security.PrivilegedActionException;
+ method public static <T> T doPrivilegedWithCombiner(java.security.PrivilegedAction<T>);
+ method public static <T> T doPrivilegedWithCombiner(java.security.PrivilegedExceptionAction<T>) throws java.security.PrivilegedActionException;
+ method public static java.security.AccessControlContext getContext();
+ }
+
+ public interface AlgorithmConstraints {
+ method public boolean permits(java.util.Set<java.security.CryptoPrimitive>, String, java.security.AlgorithmParameters);
+ method public boolean permits(java.util.Set<java.security.CryptoPrimitive>, java.security.Key);
+ method public boolean permits(java.util.Set<java.security.CryptoPrimitive>, String, java.security.Key, java.security.AlgorithmParameters);
+ }
+
+ public class AlgorithmParameterGenerator {
+ ctor protected AlgorithmParameterGenerator(java.security.AlgorithmParameterGeneratorSpi, java.security.Provider, String);
+ method public final java.security.AlgorithmParameters generateParameters();
+ method public final String getAlgorithm();
+ method public static java.security.AlgorithmParameterGenerator getInstance(String) throws java.security.NoSuchAlgorithmException;
+ method public static java.security.AlgorithmParameterGenerator getInstance(String, String) throws java.security.NoSuchAlgorithmException, java.security.NoSuchProviderException;
+ method public static java.security.AlgorithmParameterGenerator getInstance(String, java.security.Provider) throws java.security.NoSuchAlgorithmException;
+ method public final java.security.Provider getProvider();
+ method public final void init(int);
+ method public final void init(int, java.security.SecureRandom);
+ method public final void init(java.security.spec.AlgorithmParameterSpec) throws java.security.InvalidAlgorithmParameterException;
+ method public final void init(java.security.spec.AlgorithmParameterSpec, java.security.SecureRandom) throws java.security.InvalidAlgorithmParameterException;
+ }
+
+ public abstract class AlgorithmParameterGeneratorSpi {
+ ctor public AlgorithmParameterGeneratorSpi();
+ method protected abstract java.security.AlgorithmParameters engineGenerateParameters();
+ method protected abstract void engineInit(int, java.security.SecureRandom);
+ method protected abstract void engineInit(java.security.spec.AlgorithmParameterSpec, java.security.SecureRandom) throws java.security.InvalidAlgorithmParameterException;
+ }
+
+ public class AlgorithmParameters {
+ ctor protected AlgorithmParameters(java.security.AlgorithmParametersSpi, java.security.Provider, String);
+ method public final String getAlgorithm();
+ method public final byte[] getEncoded() throws java.io.IOException;
+ method public final byte[] getEncoded(String) throws java.io.IOException;
+ method public static java.security.AlgorithmParameters getInstance(String) throws java.security.NoSuchAlgorithmException;
+ method public static java.security.AlgorithmParameters getInstance(String, String) throws java.security.NoSuchAlgorithmException, java.security.NoSuchProviderException;
+ method public static java.security.AlgorithmParameters getInstance(String, java.security.Provider) throws java.security.NoSuchAlgorithmException;
+ method public final <T extends java.security.spec.AlgorithmParameterSpec> T getParameterSpec(Class<T>) throws java.security.spec.InvalidParameterSpecException;
+ method public final java.security.Provider getProvider();
+ method public final void init(java.security.spec.AlgorithmParameterSpec) throws java.security.spec.InvalidParameterSpecException;
+ method public final void init(byte[]) throws java.io.IOException;
+ method public final void init(byte[], String) throws java.io.IOException;
+ method public final String toString();
+ }
+
+ public abstract class AlgorithmParametersSpi {
+ ctor public AlgorithmParametersSpi();
+ method protected abstract byte[] engineGetEncoded() throws java.io.IOException;
+ method protected abstract byte[] engineGetEncoded(String) throws java.io.IOException;
+ method protected abstract <T extends java.security.spec.AlgorithmParameterSpec> T engineGetParameterSpec(Class<T>) throws java.security.spec.InvalidParameterSpecException;
+ method protected abstract void engineInit(java.security.spec.AlgorithmParameterSpec) throws java.security.spec.InvalidParameterSpecException;
+ method protected abstract void engineInit(byte[]) throws java.io.IOException;
+ method protected abstract void engineInit(byte[], String) throws java.io.IOException;
+ method protected abstract String engineToString();
+ }
+
+ public final class AllPermission extends java.security.Permission {
+ ctor public AllPermission();
+ ctor public AllPermission(String, String);
+ method public String getActions();
+ method public boolean implies(java.security.Permission);
+ }
+
+ public abstract class AuthProvider extends java.security.Provider {
+ ctor protected AuthProvider(String, double, String);
+ method public abstract void login(javax.security.auth.Subject, javax.security.auth.callback.CallbackHandler) throws javax.security.auth.login.LoginException;
+ method public abstract void logout() throws javax.security.auth.login.LoginException;
+ method public abstract void setCallbackHandler(javax.security.auth.callback.CallbackHandler);
+ }
+
+ public abstract class BasicPermission extends java.security.Permission implements java.io.Serializable {
+ ctor public BasicPermission(String);
+ ctor public BasicPermission(String, String);
+ method public String getActions();
+ method public boolean implies(java.security.Permission);
+ }
+
+ @Deprecated public interface Certificate {
+ method @Deprecated public void decode(java.io.InputStream) throws java.io.IOException, java.security.KeyException;
+ method @Deprecated public void encode(java.io.OutputStream) throws java.io.IOException, java.security.KeyException;
+ method @Deprecated public String getFormat();
+ method @Deprecated public java.security.Principal getGuarantor();
+ method @Deprecated public java.security.Principal getPrincipal();
+ method @Deprecated public java.security.PublicKey getPublicKey();
+ method @Deprecated public String toString(boolean);
+ }
+
+ public final class CodeSigner implements java.io.Serializable {
+ ctor public CodeSigner(java.security.cert.CertPath, java.security.Timestamp);
+ method public java.security.cert.CertPath getSignerCertPath();
+ method public java.security.Timestamp getTimestamp();
+ }
+
+ public class CodeSource implements java.io.Serializable {
+ ctor public CodeSource(java.net.URL, java.security.cert.Certificate[]);
+ ctor public CodeSource(java.net.URL, java.security.CodeSigner[]);
+ method public final java.security.cert.Certificate[] getCertificates();
+ method public final java.security.CodeSigner[] getCodeSigners();
+ method public final java.net.URL getLocation();
+ method public boolean implies(java.security.CodeSource);
+ }
+
+ public enum CryptoPrimitive {
+ enum_constant public static final java.security.CryptoPrimitive BLOCK_CIPHER;
+ enum_constant public static final java.security.CryptoPrimitive KEY_AGREEMENT;
+ enum_constant public static final java.security.CryptoPrimitive KEY_ENCAPSULATION;
+ enum_constant public static final java.security.CryptoPrimitive KEY_WRAP;
+ enum_constant public static final java.security.CryptoPrimitive MAC;
+ enum_constant public static final java.security.CryptoPrimitive MESSAGE_DIGEST;
+ enum_constant public static final java.security.CryptoPrimitive PUBLIC_KEY_ENCRYPTION;
+ enum_constant public static final java.security.CryptoPrimitive SECURE_RANDOM;
+ enum_constant public static final java.security.CryptoPrimitive SIGNATURE;
+ enum_constant public static final java.security.CryptoPrimitive STREAM_CIPHER;
+ }
+
+ public class DigestException extends java.security.GeneralSecurityException {
+ ctor public DigestException();
+ ctor public DigestException(String);
+ ctor public DigestException(String, Throwable);
+ ctor public DigestException(Throwable);
+ }
+
+ public class DigestInputStream extends java.io.FilterInputStream {
+ ctor public DigestInputStream(java.io.InputStream, java.security.MessageDigest);
+ method public java.security.MessageDigest getMessageDigest();
+ method public void on(boolean);
+ method public void setMessageDigest(java.security.MessageDigest);
+ field protected java.security.MessageDigest digest;
+ }
+
+ public class DigestOutputStream extends java.io.FilterOutputStream {
+ ctor public DigestOutputStream(java.io.OutputStream, java.security.MessageDigest);
+ method public java.security.MessageDigest getMessageDigest();
+ method public void on(boolean);
+ method public void setMessageDigest(java.security.MessageDigest);
+ field protected java.security.MessageDigest digest;
+ }
+
+ public interface DomainCombiner {
+ method public java.security.ProtectionDomain[] combine(java.security.ProtectionDomain[], java.security.ProtectionDomain[]);
+ }
+
+ public final class DomainLoadStoreParameter implements java.security.KeyStore.LoadStoreParameter {
+ ctor public DomainLoadStoreParameter(java.net.URI, java.util.Map<java.lang.String,java.security.KeyStore.ProtectionParameter>);
+ method public java.net.URI getConfiguration();
+ method public java.security.KeyStore.ProtectionParameter getProtectionParameter();
+ method public java.util.Map<java.lang.String,java.security.KeyStore.ProtectionParameter> getProtectionParams();
+ }
+
+ public class GeneralSecurityException extends java.lang.Exception {
+ ctor public GeneralSecurityException();
+ ctor public GeneralSecurityException(String);
+ ctor public GeneralSecurityException(String, Throwable);
+ ctor public GeneralSecurityException(Throwable);
+ }
+
+ public interface Guard {
+ method public void checkGuard(Object) throws java.lang.SecurityException;
+ }
+
+ public class GuardedObject implements java.io.Serializable {
+ ctor public GuardedObject(Object, java.security.Guard);
+ method public Object getObject() throws java.lang.SecurityException;
+ }
+
+ @Deprecated public abstract class Identity implements java.security.Principal java.io.Serializable {
+ ctor @Deprecated protected Identity();
+ ctor @Deprecated public Identity(String, java.security.IdentityScope) throws java.security.KeyManagementException;
+ ctor @Deprecated public Identity(String);
+ method @Deprecated public void addCertificate(java.security.Certificate) throws java.security.KeyManagementException;
+ method @Deprecated public java.security.Certificate[] certificates();
+ method @Deprecated public final boolean equals(Object);
+ method @Deprecated public String getInfo();
+ method @Deprecated public final String getName();
+ method @Deprecated public java.security.PublicKey getPublicKey();
+ method @Deprecated public final java.security.IdentityScope getScope();
+ method @Deprecated protected boolean identityEquals(java.security.Identity);
+ method @Deprecated public void removeCertificate(java.security.Certificate) throws java.security.KeyManagementException;
+ method @Deprecated public void setInfo(String);
+ method @Deprecated public void setPublicKey(java.security.PublicKey) throws java.security.KeyManagementException;
+ method @Deprecated public String toString(boolean);
+ }
+
+ @Deprecated public abstract class IdentityScope extends java.security.Identity {
+ ctor @Deprecated protected IdentityScope();
+ ctor @Deprecated public IdentityScope(String);
+ ctor @Deprecated public IdentityScope(String, java.security.IdentityScope) throws java.security.KeyManagementException;
+ method @Deprecated public abstract void addIdentity(java.security.Identity) throws java.security.KeyManagementException;
+ method @Deprecated public abstract java.security.Identity getIdentity(String);
+ method @Deprecated public java.security.Identity getIdentity(java.security.Principal);
+ method @Deprecated public abstract java.security.Identity getIdentity(java.security.PublicKey);
+ method @Deprecated public static java.security.IdentityScope getSystemScope();
+ method @Deprecated public abstract java.util.Enumeration<java.security.Identity> identities();
+ method @Deprecated public abstract void removeIdentity(java.security.Identity) throws java.security.KeyManagementException;
+ method @Deprecated protected static void setSystemScope(java.security.IdentityScope);
+ method @Deprecated public abstract int size();
+ }
+
+ public class InvalidAlgorithmParameterException extends java.security.GeneralSecurityException {
+ ctor public InvalidAlgorithmParameterException();
+ ctor public InvalidAlgorithmParameterException(String);
+ ctor public InvalidAlgorithmParameterException(String, Throwable);
+ ctor public InvalidAlgorithmParameterException(Throwable);
+ }
+
+ public class InvalidKeyException extends java.security.KeyException {
+ ctor public InvalidKeyException();
+ ctor public InvalidKeyException(String);
+ ctor public InvalidKeyException(String, Throwable);
+ ctor public InvalidKeyException(Throwable);
+ }
+
+ public class InvalidParameterException extends java.lang.IllegalArgumentException {
+ ctor public InvalidParameterException();
+ ctor public InvalidParameterException(String);
+ }
+
+ public interface Key extends java.io.Serializable {
+ method public String getAlgorithm();
+ method public byte[] getEncoded();
+ method public String getFormat();
+ field public static final long serialVersionUID = 6603384152749567654L; // 0x5ba3eee69414eea6L
+ }
+
+ public class KeyException extends java.security.GeneralSecurityException {
+ ctor public KeyException();
+ ctor public KeyException(String);
+ ctor public KeyException(String, Throwable);
+ ctor public KeyException(Throwable);
+ }
+
+ public class KeyFactory {
+ ctor protected KeyFactory(java.security.KeyFactorySpi, java.security.Provider, String);
+ method public final java.security.PrivateKey generatePrivate(java.security.spec.KeySpec) throws java.security.spec.InvalidKeySpecException;
+ method public final java.security.PublicKey generatePublic(java.security.spec.KeySpec) throws java.security.spec.InvalidKeySpecException;
+ method public final String getAlgorithm();
+ method public static java.security.KeyFactory getInstance(String) throws java.security.NoSuchAlgorithmException;
+ method public static java.security.KeyFactory getInstance(String, String) throws java.security.NoSuchAlgorithmException, java.security.NoSuchProviderException;
+ method public static java.security.KeyFactory getInstance(String, java.security.Provider) throws java.security.NoSuchAlgorithmException;
+ method public final <T extends java.security.spec.KeySpec> T getKeySpec(java.security.Key, Class<T>) throws java.security.spec.InvalidKeySpecException;
+ method public final java.security.Provider getProvider();
+ method public final java.security.Key translateKey(java.security.Key) throws java.security.InvalidKeyException;
+ }
+
+ public abstract class KeyFactorySpi {
+ ctor public KeyFactorySpi();
+ method protected abstract java.security.PrivateKey engineGeneratePrivate(java.security.spec.KeySpec) throws java.security.spec.InvalidKeySpecException;
+ method protected abstract java.security.PublicKey engineGeneratePublic(java.security.spec.KeySpec) throws java.security.spec.InvalidKeySpecException;
+ method protected abstract <T extends java.security.spec.KeySpec> T engineGetKeySpec(java.security.Key, Class<T>) throws java.security.spec.InvalidKeySpecException;
+ method protected abstract java.security.Key engineTranslateKey(java.security.Key) throws java.security.InvalidKeyException;
+ }
+
+ public class KeyManagementException extends java.security.KeyException {
+ ctor public KeyManagementException();
+ ctor public KeyManagementException(String);
+ ctor public KeyManagementException(String, Throwable);
+ ctor public KeyManagementException(Throwable);
+ }
+
+ public final class KeyPair implements java.io.Serializable {
+ ctor public KeyPair(java.security.PublicKey, java.security.PrivateKey);
+ method public java.security.PrivateKey getPrivate();
+ method public java.security.PublicKey getPublic();
+ }
+
+ public abstract class KeyPairGenerator extends java.security.KeyPairGeneratorSpi {
+ ctor protected KeyPairGenerator(String);
+ method public final java.security.KeyPair genKeyPair();
+ method public java.security.KeyPair generateKeyPair();
+ method public String getAlgorithm();
+ method public static java.security.KeyPairGenerator getInstance(String) throws java.security.NoSuchAlgorithmException;
+ method public static java.security.KeyPairGenerator getInstance(String, String) throws java.security.NoSuchAlgorithmException, java.security.NoSuchProviderException;
+ method public static java.security.KeyPairGenerator getInstance(String, java.security.Provider) throws java.security.NoSuchAlgorithmException;
+ method public final java.security.Provider getProvider();
+ method public void initialize(int);
+ method public void initialize(int, java.security.SecureRandom);
+ method public void initialize(java.security.spec.AlgorithmParameterSpec) throws java.security.InvalidAlgorithmParameterException;
+ }
+
+ public abstract class KeyPairGeneratorSpi {
+ ctor public KeyPairGeneratorSpi();
+ method public abstract java.security.KeyPair generateKeyPair();
+ method public abstract void initialize(int, java.security.SecureRandom);
+ method public void initialize(java.security.spec.AlgorithmParameterSpec, java.security.SecureRandom) throws java.security.InvalidAlgorithmParameterException;
+ }
+
+ public class KeyRep implements java.io.Serializable {
+ ctor public KeyRep(java.security.KeyRep.Type, String, String, byte[]);
+ method protected Object readResolve() throws java.io.ObjectStreamException;
+ }
+
+ public enum KeyRep.Type {
+ enum_constant public static final java.security.KeyRep.Type PRIVATE;
+ enum_constant public static final java.security.KeyRep.Type PUBLIC;
+ enum_constant public static final java.security.KeyRep.Type SECRET;
+ }
+
+ public class KeyStore {
+ ctor protected KeyStore(java.security.KeyStoreSpi, java.security.Provider, String);
+ method public final java.util.Enumeration<java.lang.String> aliases() throws java.security.KeyStoreException;
+ method public final boolean containsAlias(String) throws java.security.KeyStoreException;
+ method public final void deleteEntry(String) throws java.security.KeyStoreException;
+ method public final boolean entryInstanceOf(String, Class<? extends java.security.KeyStore.Entry>) throws java.security.KeyStoreException;
+ method public final java.security.cert.Certificate getCertificate(String) throws java.security.KeyStoreException;
+ method public final String getCertificateAlias(java.security.cert.Certificate) throws java.security.KeyStoreException;
+ method public final java.security.cert.Certificate[] getCertificateChain(String) throws java.security.KeyStoreException;
+ method public final java.util.Date getCreationDate(String) throws java.security.KeyStoreException;
+ method public static final String getDefaultType();
+ method public final java.security.KeyStore.Entry getEntry(String, java.security.KeyStore.ProtectionParameter) throws java.security.KeyStoreException, java.security.NoSuchAlgorithmException, java.security.UnrecoverableEntryException;
+ method public static java.security.KeyStore getInstance(String) throws java.security.KeyStoreException;
+ method public static java.security.KeyStore getInstance(String, String) throws java.security.KeyStoreException, java.security.NoSuchProviderException;
+ method public static java.security.KeyStore getInstance(String, java.security.Provider) throws java.security.KeyStoreException;
+ method public static final java.security.KeyStore getInstance(java.io.File, char[]) throws java.security.cert.CertificateException, java.io.IOException, java.security.KeyStoreException, java.security.NoSuchAlgorithmException;
+ method public static final java.security.KeyStore getInstance(java.io.File, java.security.KeyStore.LoadStoreParameter) throws java.security.cert.CertificateException, java.io.IOException, java.security.KeyStoreException, java.security.NoSuchAlgorithmException;
+ method public final java.security.Key getKey(String, char[]) throws java.security.KeyStoreException, java.security.NoSuchAlgorithmException, java.security.UnrecoverableKeyException;
+ method public final java.security.Provider getProvider();
+ method public final String getType();
+ method public final boolean isCertificateEntry(String) throws java.security.KeyStoreException;
+ method public final boolean isKeyEntry(String) throws java.security.KeyStoreException;
+ method public final void load(java.io.InputStream, char[]) throws java.security.cert.CertificateException, java.io.IOException, java.security.NoSuchAlgorithmException;
+ method public final void load(java.security.KeyStore.LoadStoreParameter) throws java.security.cert.CertificateException, java.io.IOException, java.security.NoSuchAlgorithmException;
+ method public final void setCertificateEntry(String, java.security.cert.Certificate) throws java.security.KeyStoreException;
+ method public final void setEntry(String, java.security.KeyStore.Entry, java.security.KeyStore.ProtectionParameter) throws java.security.KeyStoreException;
+ method public final void setKeyEntry(String, java.security.Key, char[], java.security.cert.Certificate[]) throws java.security.KeyStoreException;
+ method public final void setKeyEntry(String, byte[], java.security.cert.Certificate[]) throws java.security.KeyStoreException;
+ method public final int size() throws java.security.KeyStoreException;
+ method public final void store(java.io.OutputStream, char[]) throws java.security.cert.CertificateException, java.io.IOException, java.security.KeyStoreException, java.security.NoSuchAlgorithmException;
+ method public final void store(java.security.KeyStore.LoadStoreParameter) throws java.security.cert.CertificateException, java.io.IOException, java.security.KeyStoreException, java.security.NoSuchAlgorithmException;
+ }
+
+ public abstract static class KeyStore.Builder {
+ ctor protected KeyStore.Builder();
+ method public abstract java.security.KeyStore getKeyStore() throws java.security.KeyStoreException;
+ method public abstract java.security.KeyStore.ProtectionParameter getProtectionParameter(String) throws java.security.KeyStoreException;
+ method public static java.security.KeyStore.Builder newInstance(java.security.KeyStore, java.security.KeyStore.ProtectionParameter);
+ method public static java.security.KeyStore.Builder newInstance(String, java.security.Provider, java.io.File, java.security.KeyStore.ProtectionParameter);
+ method public static java.security.KeyStore.Builder newInstance(java.io.File, java.security.KeyStore.ProtectionParameter);
+ method public static java.security.KeyStore.Builder newInstance(String, java.security.Provider, java.security.KeyStore.ProtectionParameter);
+ }
+
+ public static class KeyStore.CallbackHandlerProtection implements java.security.KeyStore.ProtectionParameter {
+ ctor public KeyStore.CallbackHandlerProtection(javax.security.auth.callback.CallbackHandler);
+ method public javax.security.auth.callback.CallbackHandler getCallbackHandler();
+ }
+
+ public static interface KeyStore.Entry {
+ method public default java.util.Set<java.security.KeyStore.Entry.Attribute> getAttributes();
+ }
+
+ public static interface KeyStore.Entry.Attribute {
+ method public String getName();
+ method public String getValue();
+ }
+
+ public static interface KeyStore.LoadStoreParameter {
+ method public java.security.KeyStore.ProtectionParameter getProtectionParameter();
+ }
+
+ public static class KeyStore.PasswordProtection implements javax.security.auth.Destroyable java.security.KeyStore.ProtectionParameter {
+ ctor public KeyStore.PasswordProtection(char[]);
+ ctor public KeyStore.PasswordProtection(char[], String, java.security.spec.AlgorithmParameterSpec);
+ method public char[] getPassword();
+ method public String getProtectionAlgorithm();
+ method public java.security.spec.AlgorithmParameterSpec getProtectionParameters();
+ }
+
+ public static final class KeyStore.PrivateKeyEntry implements java.security.KeyStore.Entry {
+ ctor public KeyStore.PrivateKeyEntry(java.security.PrivateKey, java.security.cert.Certificate[]);
+ ctor public KeyStore.PrivateKeyEntry(java.security.PrivateKey, java.security.cert.Certificate[], java.util.Set<java.security.KeyStore.Entry.Attribute>);
+ method public java.security.cert.Certificate getCertificate();
+ method public java.security.cert.Certificate[] getCertificateChain();
+ method public java.security.PrivateKey getPrivateKey();
+ }
+
+ public static interface KeyStore.ProtectionParameter {
+ }
+
+ public static final class KeyStore.SecretKeyEntry implements java.security.KeyStore.Entry {
+ ctor public KeyStore.SecretKeyEntry(javax.crypto.SecretKey);
+ ctor public KeyStore.SecretKeyEntry(javax.crypto.SecretKey, java.util.Set<java.security.KeyStore.Entry.Attribute>);
+ method public javax.crypto.SecretKey getSecretKey();
+ }
+
+ public static final class KeyStore.TrustedCertificateEntry implements java.security.KeyStore.Entry {
+ ctor public KeyStore.TrustedCertificateEntry(java.security.cert.Certificate);
+ ctor public KeyStore.TrustedCertificateEntry(java.security.cert.Certificate, java.util.Set<java.security.KeyStore.Entry.Attribute>);
+ method public java.security.cert.Certificate getTrustedCertificate();
+ }
+
+ public class KeyStoreException extends java.security.GeneralSecurityException {
+ ctor public KeyStoreException();
+ ctor public KeyStoreException(String);
+ ctor public KeyStoreException(String, Throwable);
+ ctor public KeyStoreException(Throwable);
+ }
+
+ public abstract class KeyStoreSpi {
+ ctor public KeyStoreSpi();
+ method public abstract java.util.Enumeration<java.lang.String> engineAliases();
+ method public abstract boolean engineContainsAlias(String);
+ method public abstract void engineDeleteEntry(String) throws java.security.KeyStoreException;
+ method public boolean engineEntryInstanceOf(String, Class<? extends java.security.KeyStore.Entry>);
+ method public abstract java.security.cert.Certificate engineGetCertificate(String);
+ method public abstract String engineGetCertificateAlias(java.security.cert.Certificate);
+ method public abstract java.security.cert.Certificate[] engineGetCertificateChain(String);
+ method public abstract java.util.Date engineGetCreationDate(String);
+ method public java.security.KeyStore.Entry engineGetEntry(String, java.security.KeyStore.ProtectionParameter) throws java.security.KeyStoreException, java.security.NoSuchAlgorithmException, java.security.UnrecoverableEntryException;
+ method public abstract java.security.Key engineGetKey(String, char[]) throws java.security.NoSuchAlgorithmException, java.security.UnrecoverableKeyException;
+ method public abstract boolean engineIsCertificateEntry(String);
+ method public abstract boolean engineIsKeyEntry(String);
+ method public abstract void engineLoad(java.io.InputStream, char[]) throws java.security.cert.CertificateException, java.io.IOException, java.security.NoSuchAlgorithmException;
+ method public void engineLoad(java.security.KeyStore.LoadStoreParameter) throws java.security.cert.CertificateException, java.io.IOException, java.security.NoSuchAlgorithmException;
+ method public boolean engineProbe(java.io.InputStream) throws java.io.IOException;
+ method public abstract void engineSetCertificateEntry(String, java.security.cert.Certificate) throws java.security.KeyStoreException;
+ method public void engineSetEntry(String, java.security.KeyStore.Entry, java.security.KeyStore.ProtectionParameter) throws java.security.KeyStoreException;
+ method public abstract void engineSetKeyEntry(String, java.security.Key, char[], java.security.cert.Certificate[]) throws java.security.KeyStoreException;
+ method public abstract void engineSetKeyEntry(String, byte[], java.security.cert.Certificate[]) throws java.security.KeyStoreException;
+ method public abstract int engineSize();
+ method public abstract void engineStore(java.io.OutputStream, char[]) throws java.security.cert.CertificateException, java.io.IOException, java.security.NoSuchAlgorithmException;
+ method public void engineStore(java.security.KeyStore.LoadStoreParameter) throws java.security.cert.CertificateException, java.io.IOException, java.security.NoSuchAlgorithmException;
+ }
+
+ public abstract class MessageDigest extends java.security.MessageDigestSpi {
+ ctor protected MessageDigest(@NonNull String);
+ method @NonNull public byte[] digest();
+ method public int digest(@NonNull byte[], int, int) throws java.security.DigestException;
+ method @NonNull public byte[] digest(@NonNull byte[]);
+ method @NonNull public final String getAlgorithm();
+ method public final int getDigestLength();
+ method @NonNull public static java.security.MessageDigest getInstance(@NonNull String) throws java.security.NoSuchAlgorithmException;
+ method @NonNull public static java.security.MessageDigest getInstance(@NonNull String, @NonNull String) throws java.security.NoSuchAlgorithmException, java.security.NoSuchProviderException;
+ method @NonNull public static java.security.MessageDigest getInstance(@NonNull String, @NonNull java.security.Provider) throws java.security.NoSuchAlgorithmException;
+ method @NonNull public final java.security.Provider getProvider();
+ method public static boolean isEqual(@Nullable byte[], @Nullable byte[]);
+ method public void reset();
+ method public void update(byte);
+ method public void update(@NonNull byte[], int, int);
+ method public void update(@NonNull byte[]);
+ method public final void update(@NonNull java.nio.ByteBuffer);
+ }
+
+ public abstract class MessageDigestSpi {
+ ctor public MessageDigestSpi();
+ method public Object clone() throws java.lang.CloneNotSupportedException;
+ method protected abstract byte[] engineDigest();
+ method protected int engineDigest(byte[], int, int) throws java.security.DigestException;
+ method protected int engineGetDigestLength();
+ method protected abstract void engineReset();
+ method protected abstract void engineUpdate(byte);
+ method protected abstract void engineUpdate(byte[], int, int);
+ method protected void engineUpdate(java.nio.ByteBuffer);
+ }
+
+ public class NoSuchAlgorithmException extends java.security.GeneralSecurityException {
+ ctor public NoSuchAlgorithmException();
+ ctor public NoSuchAlgorithmException(String);
+ ctor public NoSuchAlgorithmException(String, Throwable);
+ ctor public NoSuchAlgorithmException(Throwable);
+ }
+
+ public class NoSuchProviderException extends java.security.GeneralSecurityException {
+ ctor public NoSuchProviderException();
+ ctor public NoSuchProviderException(String);
+ }
+
+ public final class PKCS12Attribute implements java.security.KeyStore.Entry.Attribute {
+ ctor public PKCS12Attribute(String, String);
+ ctor public PKCS12Attribute(byte[]);
+ method public byte[] getEncoded();
+ method public String getName();
+ method public String getValue();
+ }
+
+ public abstract class Permission implements java.security.Guard java.io.Serializable {
+ ctor public Permission(String);
+ method public void checkGuard(Object) throws java.lang.SecurityException;
+ method public abstract String getActions();
+ method public final String getName();
+ method public abstract boolean implies(java.security.Permission);
+ method public java.security.PermissionCollection newPermissionCollection();
+ }
+
+ public abstract class PermissionCollection implements java.io.Serializable {
+ ctor public PermissionCollection();
+ method public abstract void add(java.security.Permission);
+ method public abstract java.util.Enumeration<java.security.Permission> elements();
+ method public abstract boolean implies(java.security.Permission);
+ method public boolean isReadOnly();
+ method public void setReadOnly();
+ }
+
+ public final class Permissions extends java.security.PermissionCollection implements java.io.Serializable {
+ ctor public Permissions();
+ method public void add(java.security.Permission);
+ method public java.util.Enumeration<java.security.Permission> elements();
+ method public boolean implies(java.security.Permission);
+ }
+
+ public abstract class Policy {
+ ctor public Policy();
+ method public static java.security.Policy getInstance(String, java.security.Policy.Parameters) throws java.security.NoSuchAlgorithmException;
+ method public static java.security.Policy getInstance(String, java.security.Policy.Parameters, String) throws java.security.NoSuchAlgorithmException, java.security.NoSuchProviderException;
+ method public static java.security.Policy getInstance(String, java.security.Policy.Parameters, java.security.Provider) throws java.security.NoSuchAlgorithmException;
+ method public java.security.Policy.Parameters getParameters();
+ method public java.security.PermissionCollection getPermissions(java.security.CodeSource);
+ method public java.security.PermissionCollection getPermissions(java.security.ProtectionDomain);
+ method public static java.security.Policy getPolicy();
+ method public java.security.Provider getProvider();
+ method public String getType();
+ method public boolean implies(java.security.ProtectionDomain, java.security.Permission);
+ method public void refresh();
+ method public static void setPolicy(java.security.Policy);
+ field public static final java.security.PermissionCollection UNSUPPORTED_EMPTY_COLLECTION;
+ }
+
+ public static interface Policy.Parameters {
+ }
+
+ public abstract class PolicySpi {
+ ctor public PolicySpi();
+ method protected java.security.PermissionCollection engineGetPermissions(java.security.CodeSource);
+ method protected java.security.PermissionCollection engineGetPermissions(java.security.ProtectionDomain);
+ method protected abstract boolean engineImplies(java.security.ProtectionDomain, java.security.Permission);
+ method protected void engineRefresh();
+ }
+
+ public interface Principal {
+ method public boolean equals(Object);
+ method public String getName();
+ method public int hashCode();
+ method public default boolean implies(javax.security.auth.Subject);
+ method public String toString();
+ }
+
+ public interface PrivateKey extends java.security.Key javax.security.auth.Destroyable {
+ field public static final long serialVersionUID = 6034044314589513430L; // 0x53bd3b559a12c6d6L
+ }
+
+ public interface PrivilegedAction<T> {
+ method public T run();
+ }
+
+ public class PrivilegedActionException extends java.lang.Exception {
+ ctor public PrivilegedActionException(Exception);
+ method public Exception getException();
+ }
+
+ public interface PrivilegedExceptionAction<T> {
+ method public T run() throws java.lang.Exception;
+ }
+
+ public class ProtectionDomain {
+ ctor public ProtectionDomain(java.security.CodeSource, java.security.PermissionCollection);
+ ctor public ProtectionDomain(java.security.CodeSource, java.security.PermissionCollection, ClassLoader, java.security.Principal[]);
+ method public final ClassLoader getClassLoader();
+ method public final java.security.CodeSource getCodeSource();
+ method public final java.security.PermissionCollection getPermissions();
+ method public final java.security.Principal[] getPrincipals();
+ method public boolean implies(java.security.Permission);
+ }
+
+ public abstract class Provider extends java.util.Properties {
+ ctor protected Provider(String, double, String);
+ method public Object compute(Object, java.util.function.BiFunction<? super java.lang.Object,? super java.lang.Object,?>);
+ method public Object computeIfAbsent(Object, java.util.function.Function<? super java.lang.Object,?>);
+ method public Object computeIfPresent(Object, java.util.function.BiFunction<? super java.lang.Object,? super java.lang.Object,?>);
+ method public java.util.Enumeration<java.lang.Object> elements();
+ method public java.util.Set<java.util.Map.Entry<java.lang.Object,java.lang.Object>> entrySet();
+ method public void forEach(java.util.function.BiConsumer<? super java.lang.Object,? super java.lang.Object>);
+ method public Object get(Object);
+ method public String getInfo();
+ method public String getName();
+ method public Object getOrDefault(Object, Object);
+ method public java.security.Provider.Service getService(String, String);
+ method public java.util.Set<java.security.Provider.Service> getServices();
+ method public double getVersion();
+ method public java.util.Set<java.lang.Object> keySet();
+ method public java.util.Enumeration<java.lang.Object> keys();
+ method public Object merge(Object, Object, java.util.function.BiFunction<? super java.lang.Object,? super java.lang.Object,?>);
+ method public Object put(Object, Object);
+ method public void putAll(java.util.Map<?,?>);
+ method public Object putIfAbsent(Object, Object);
+ method protected void putService(java.security.Provider.Service);
+ method public Object remove(Object);
+ method protected void removeService(java.security.Provider.Service);
+ method public boolean replace(Object, Object, Object);
+ method public Object replace(Object, Object);
+ method public void replaceAll(java.util.function.BiFunction<? super java.lang.Object,? super java.lang.Object,?>);
+ method public java.util.Collection<java.lang.Object> values();
+ }
+
+ public static class Provider.Service {
+ ctor public Provider.Service(java.security.Provider, String, String, String, java.util.List<java.lang.String>, java.util.Map<java.lang.String,java.lang.String>);
+ method public final String getAlgorithm();
+ method public final String getAttribute(String);
+ method public final String getClassName();
+ method public final java.security.Provider getProvider();
+ method public final String getType();
+ method public Object newInstance(Object) throws java.security.NoSuchAlgorithmException;
+ method public boolean supportsParameter(Object);
+ }
+
+ public class ProviderException extends java.lang.RuntimeException {
+ ctor public ProviderException();
+ ctor public ProviderException(String);
+ ctor public ProviderException(String, Throwable);
+ ctor public ProviderException(Throwable);
+ }
+
+ public interface PublicKey extends java.security.Key {
+ field public static final long serialVersionUID = 7187392471159151072L; // 0x63bebf5f40c219e0L
+ }
+
+ public class SecureClassLoader extends java.lang.ClassLoader {
+ ctor protected SecureClassLoader(ClassLoader);
+ ctor protected SecureClassLoader();
+ method protected final Class<?> defineClass(String, byte[], int, int, java.security.CodeSource);
+ method protected final Class<?> defineClass(String, java.nio.ByteBuffer, java.security.CodeSource);
+ method protected java.security.PermissionCollection getPermissions(java.security.CodeSource);
+ }
+
+ public class SecureRandom extends java.util.Random {
+ ctor public SecureRandom();
+ ctor public SecureRandom(byte[]);
+ ctor protected SecureRandom(java.security.SecureRandomSpi, java.security.Provider);
+ method public byte[] generateSeed(int);
+ method public String getAlgorithm();
+ method public static java.security.SecureRandom getInstance(String) throws java.security.NoSuchAlgorithmException;
+ method public static java.security.SecureRandom getInstance(String, String) throws java.security.NoSuchAlgorithmException, java.security.NoSuchProviderException;
+ method public static java.security.SecureRandom getInstance(String, java.security.Provider) throws java.security.NoSuchAlgorithmException;
+ method public static java.security.SecureRandom getInstanceStrong() throws java.security.NoSuchAlgorithmException;
+ method public final java.security.Provider getProvider();
+ method public static byte[] getSeed(int);
+ method protected final int next(int);
+ method public void setSeed(byte[]);
+ }
+
+ public abstract class SecureRandomSpi implements java.io.Serializable {
+ ctor public SecureRandomSpi();
+ method protected abstract byte[] engineGenerateSeed(int);
+ method protected abstract void engineNextBytes(byte[]);
+ method protected abstract void engineSetSeed(byte[]);
+ }
+
+ public final class Security {
+ method public static int addProvider(java.security.Provider);
+ method @Deprecated public static String getAlgorithmProperty(String, String);
+ method public static java.util.Set<java.lang.String> getAlgorithms(String);
+ method public static String getProperty(String);
+ method public static java.security.Provider getProvider(String);
+ method public static java.security.Provider[] getProviders();
+ method public static java.security.Provider[] getProviders(String);
+ method public static java.security.Provider[] getProviders(java.util.Map<java.lang.String,java.lang.String>);
+ method public static int insertProviderAt(java.security.Provider, int);
+ method public static void removeProvider(String);
+ method public static void setProperty(String, String);
+ }
+
+ public final class SecurityPermission extends java.security.BasicPermission {
+ ctor public SecurityPermission(String);
+ ctor public SecurityPermission(String, String);
+ }
+
+ public abstract class Signature extends java.security.SignatureSpi {
+ ctor protected Signature(String);
+ method public final String getAlgorithm();
+ method public static java.security.Signature getInstance(String) throws java.security.NoSuchAlgorithmException;
+ method public static java.security.Signature getInstance(String, String) throws java.security.NoSuchAlgorithmException, java.security.NoSuchProviderException;
+ method public static java.security.Signature getInstance(String, java.security.Provider) throws java.security.NoSuchAlgorithmException;
+ method @Deprecated public final Object getParameter(String) throws java.security.InvalidParameterException;
+ method public final java.security.AlgorithmParameters getParameters();
+ method public final java.security.Provider getProvider();
+ method public final void initSign(java.security.PrivateKey) throws java.security.InvalidKeyException;
+ method public final void initSign(java.security.PrivateKey, java.security.SecureRandom) throws java.security.InvalidKeyException;
+ method public final void initVerify(java.security.PublicKey) throws java.security.InvalidKeyException;
+ method public final void initVerify(java.security.cert.Certificate) throws java.security.InvalidKeyException;
+ method @Deprecated public final void setParameter(String, Object) throws java.security.InvalidParameterException;
+ method public final void setParameter(java.security.spec.AlgorithmParameterSpec) throws java.security.InvalidAlgorithmParameterException;
+ method public final byte[] sign() throws java.security.SignatureException;
+ method public final int sign(byte[], int, int) throws java.security.SignatureException;
+ method public final void update(byte) throws java.security.SignatureException;
+ method public final void update(byte[]) throws java.security.SignatureException;
+ method public final void update(byte[], int, int) throws java.security.SignatureException;
+ method public final void update(java.nio.ByteBuffer) throws java.security.SignatureException;
+ method public final boolean verify(byte[]) throws java.security.SignatureException;
+ method public final boolean verify(byte[], int, int) throws java.security.SignatureException;
+ field protected static final int SIGN = 2; // 0x2
+ field protected static final int UNINITIALIZED = 0; // 0x0
+ field protected static final int VERIFY = 3; // 0x3
+ field protected int state;
+ }
+
+ public class SignatureException extends java.security.GeneralSecurityException {
+ ctor public SignatureException();
+ ctor public SignatureException(String);
+ ctor public SignatureException(String, Throwable);
+ ctor public SignatureException(Throwable);
+ }
+
+ public abstract class SignatureSpi {
+ ctor public SignatureSpi();
+ method public Object clone() throws java.lang.CloneNotSupportedException;
+ method @Deprecated protected abstract Object engineGetParameter(String) throws java.security.InvalidParameterException;
+ method protected java.security.AlgorithmParameters engineGetParameters();
+ method protected abstract void engineInitSign(java.security.PrivateKey) throws java.security.InvalidKeyException;
+ method protected void engineInitSign(java.security.PrivateKey, java.security.SecureRandom) throws java.security.InvalidKeyException;
+ method protected abstract void engineInitVerify(java.security.PublicKey) throws java.security.InvalidKeyException;
+ method @Deprecated protected abstract void engineSetParameter(String, Object) throws java.security.InvalidParameterException;
+ method protected void engineSetParameter(java.security.spec.AlgorithmParameterSpec) throws java.security.InvalidAlgorithmParameterException;
+ method protected abstract byte[] engineSign() throws java.security.SignatureException;
+ method protected int engineSign(byte[], int, int) throws java.security.SignatureException;
+ method protected abstract void engineUpdate(byte) throws java.security.SignatureException;
+ method protected abstract void engineUpdate(byte[], int, int) throws java.security.SignatureException;
+ method protected void engineUpdate(java.nio.ByteBuffer);
+ method protected abstract boolean engineVerify(byte[]) throws java.security.SignatureException;
+ method protected boolean engineVerify(byte[], int, int) throws java.security.SignatureException;
+ field protected java.security.SecureRandom appRandom;
+ }
+
+ public final class SignedObject implements java.io.Serializable {
+ ctor public SignedObject(java.io.Serializable, java.security.PrivateKey, java.security.Signature) throws java.io.IOException, java.security.InvalidKeyException, java.security.SignatureException;
+ method public String getAlgorithm();
+ method public Object getObject() throws java.lang.ClassNotFoundException, java.io.IOException;
+ method public byte[] getSignature();
+ method public boolean verify(java.security.PublicKey, java.security.Signature) throws java.security.InvalidKeyException, java.security.SignatureException;
+ }
+
+ @Deprecated public abstract class Signer extends java.security.Identity {
+ ctor @Deprecated protected Signer();
+ ctor @Deprecated public Signer(String);
+ ctor @Deprecated public Signer(String, java.security.IdentityScope) throws java.security.KeyManagementException;
+ method @Deprecated public java.security.PrivateKey getPrivateKey();
+ method @Deprecated public final void setKeyPair(java.security.KeyPair) throws java.security.InvalidParameterException, java.security.KeyException;
+ }
+
+ public final class Timestamp implements java.io.Serializable {
+ ctor public Timestamp(java.util.Date, java.security.cert.CertPath);
+ method public java.security.cert.CertPath getSignerCertPath();
+ method public java.util.Date getTimestamp();
+ }
+
+ public class UnrecoverableEntryException extends java.security.GeneralSecurityException {
+ ctor public UnrecoverableEntryException();
+ ctor public UnrecoverableEntryException(String);
+ }
+
+ public class UnrecoverableKeyException extends java.security.UnrecoverableEntryException {
+ ctor public UnrecoverableKeyException();
+ ctor public UnrecoverableKeyException(String);
+ }
+
+ public final class UnresolvedPermission extends java.security.Permission implements java.io.Serializable {
+ ctor public UnresolvedPermission(String, String, String, java.security.cert.Certificate[]);
+ method public String getActions();
+ method public String getUnresolvedActions();
+ method public java.security.cert.Certificate[] getUnresolvedCerts();
+ method public String getUnresolvedName();
+ method public String getUnresolvedType();
+ method public boolean implies(java.security.Permission);
+ }
+
+}
+
+package java.security.acl {
+
+ @Deprecated public interface Acl extends java.security.acl.Owner {
+ method @Deprecated public boolean addEntry(java.security.Principal, java.security.acl.AclEntry) throws java.security.acl.NotOwnerException;
+ method @Deprecated public boolean checkPermission(java.security.Principal, java.security.acl.Permission);
+ method @Deprecated public java.util.Enumeration<java.security.acl.AclEntry> entries();
+ method @Deprecated public String getName();
+ method @Deprecated public java.util.Enumeration<java.security.acl.Permission> getPermissions(java.security.Principal);
+ method @Deprecated public boolean removeEntry(java.security.Principal, java.security.acl.AclEntry) throws java.security.acl.NotOwnerException;
+ method @Deprecated public void setName(java.security.Principal, String) throws java.security.acl.NotOwnerException;
+ method @Deprecated public String toString();
+ }
+
+ @Deprecated public interface AclEntry extends java.lang.Cloneable {
+ method @Deprecated public boolean addPermission(java.security.acl.Permission);
+ method @Deprecated public boolean checkPermission(java.security.acl.Permission);
+ method @Deprecated public Object clone();
+ method @Deprecated public java.security.Principal getPrincipal();
+ method @Deprecated public boolean isNegative();
+ method @Deprecated public java.util.Enumeration<java.security.acl.Permission> permissions();
+ method @Deprecated public boolean removePermission(java.security.acl.Permission);
+ method @Deprecated public void setNegativePermissions();
+ method @Deprecated public boolean setPrincipal(java.security.Principal);
+ method @Deprecated public String toString();
+ }
+
+ @Deprecated public class AclNotFoundException extends java.lang.Exception {
+ ctor @Deprecated public AclNotFoundException();
+ }
+
+ @Deprecated public interface Group extends java.security.Principal {
+ method @Deprecated public boolean addMember(java.security.Principal);
+ method @Deprecated public boolean isMember(java.security.Principal);
+ method @Deprecated public java.util.Enumeration<? extends java.security.Principal> members();
+ method @Deprecated public boolean removeMember(java.security.Principal);
+ }
+
+ @Deprecated public class LastOwnerException extends java.lang.Exception {
+ ctor @Deprecated public LastOwnerException();
+ }
+
+ @Deprecated public class NotOwnerException extends java.lang.Exception {
+ ctor @Deprecated public NotOwnerException();
+ }
+
+ @Deprecated public interface Owner {
+ method @Deprecated public boolean addOwner(java.security.Principal, java.security.Principal) throws java.security.acl.NotOwnerException;
+ method @Deprecated public boolean deleteOwner(java.security.Principal, java.security.Principal) throws java.security.acl.LastOwnerException, java.security.acl.NotOwnerException;
+ method @Deprecated public boolean isOwner(java.security.Principal);
+ }
+
+ @Deprecated public interface Permission {
+ }
+
+}
+
+package java.security.cert {
+
+ public abstract class CRL {
+ ctor protected CRL(String);
+ method public final String getType();
+ method public abstract boolean isRevoked(java.security.cert.Certificate);
+ method public abstract String toString();
+ }
+
+ public class CRLException extends java.security.GeneralSecurityException {
+ ctor public CRLException();
+ ctor public CRLException(String);
+ ctor public CRLException(String, Throwable);
+ ctor public CRLException(Throwable);
+ }
+
+ public enum CRLReason {
+ enum_constant public static final java.security.cert.CRLReason AA_COMPROMISE;
+ enum_constant public static final java.security.cert.CRLReason AFFILIATION_CHANGED;
+ enum_constant public static final java.security.cert.CRLReason CA_COMPROMISE;
+ enum_constant public static final java.security.cert.CRLReason CERTIFICATE_HOLD;
+ enum_constant public static final java.security.cert.CRLReason CESSATION_OF_OPERATION;
+ enum_constant public static final java.security.cert.CRLReason KEY_COMPROMISE;
+ enum_constant public static final java.security.cert.CRLReason PRIVILEGE_WITHDRAWN;
+ enum_constant public static final java.security.cert.CRLReason REMOVE_FROM_CRL;
+ enum_constant public static final java.security.cert.CRLReason SUPERSEDED;
+ enum_constant public static final java.security.cert.CRLReason UNSPECIFIED;
+ enum_constant public static final java.security.cert.CRLReason UNUSED;
+ }
+
+ public interface CRLSelector extends java.lang.Cloneable {
+ method public Object clone();
+ method public boolean match(java.security.cert.CRL);
+ }
+
+ public abstract class CertPath implements java.io.Serializable {
+ ctor protected CertPath(String);
+ method public abstract java.util.List<? extends java.security.cert.Certificate> getCertificates();
+ method public abstract byte[] getEncoded() throws java.security.cert.CertificateEncodingException;
+ method public abstract byte[] getEncoded(String) throws java.security.cert.CertificateEncodingException;
+ method public abstract java.util.Iterator<java.lang.String> getEncodings();
+ method public String getType();
+ method protected Object writeReplace() throws java.io.ObjectStreamException;
+ }
+
+ protected static class CertPath.CertPathRep implements java.io.Serializable {
+ ctor protected CertPath.CertPathRep(String, byte[]);
+ method protected Object readResolve() throws java.io.ObjectStreamException;
+ }
+
+ public class CertPathBuilder {
+ ctor protected CertPathBuilder(java.security.cert.CertPathBuilderSpi, java.security.Provider, String);
+ method public final java.security.cert.CertPathBuilderResult build(java.security.cert.CertPathParameters) throws java.security.cert.CertPathBuilderException, java.security.InvalidAlgorithmParameterException;
+ method public final String getAlgorithm();
+ method public static final String getDefaultType();
+ method public static java.security.cert.CertPathBuilder getInstance(String) throws java.security.NoSuchAlgorithmException;
+ method public static java.security.cert.CertPathBuilder getInstance(String, String) throws java.security.NoSuchAlgorithmException, java.security.NoSuchProviderException;
+ method public static java.security.cert.CertPathBuilder getInstance(String, java.security.Provider) throws java.security.NoSuchAlgorithmException;
+ method public final java.security.Provider getProvider();
+ method public final java.security.cert.CertPathChecker getRevocationChecker();
+ }
+
+ public class CertPathBuilderException extends java.security.GeneralSecurityException {
+ ctor public CertPathBuilderException();
+ ctor public CertPathBuilderException(String);
+ ctor public CertPathBuilderException(Throwable);
+ ctor public CertPathBuilderException(String, Throwable);
+ }
+
+ public interface CertPathBuilderResult extends java.lang.Cloneable {
+ method public Object clone();
+ method public java.security.cert.CertPath getCertPath();
+ }
+
+ public abstract class CertPathBuilderSpi {
+ ctor public CertPathBuilderSpi();
+ method public abstract java.security.cert.CertPathBuilderResult engineBuild(java.security.cert.CertPathParameters) throws java.security.cert.CertPathBuilderException, java.security.InvalidAlgorithmParameterException;
+ method public java.security.cert.CertPathChecker engineGetRevocationChecker();
+ }
+
+ public interface CertPathChecker {
+ method public void check(java.security.cert.Certificate) throws java.security.cert.CertPathValidatorException;
+ method public void init(boolean) throws java.security.cert.CertPathValidatorException;
+ method public boolean isForwardCheckingSupported();
+ }
+
+ public interface CertPathParameters extends java.lang.Cloneable {
+ method public Object clone();
+ }
+
+ public class CertPathValidator {
+ ctor protected CertPathValidator(java.security.cert.CertPathValidatorSpi, java.security.Provider, String);
+ method public final String getAlgorithm();
+ method public static final String getDefaultType();
+ method public static java.security.cert.CertPathValidator getInstance(String) throws java.security.NoSuchAlgorithmException;
+ method public static java.security.cert.CertPathValidator getInstance(String, String) throws java.security.NoSuchAlgorithmException, java.security.NoSuchProviderException;
+ method public static java.security.cert.CertPathValidator getInstance(String, java.security.Provider) throws java.security.NoSuchAlgorithmException;
+ method public final java.security.Provider getProvider();
+ method public final java.security.cert.CertPathChecker getRevocationChecker();
+ method public final java.security.cert.CertPathValidatorResult validate(java.security.cert.CertPath, java.security.cert.CertPathParameters) throws java.security.cert.CertPathValidatorException, java.security.InvalidAlgorithmParameterException;
+ }
+
+ public class CertPathValidatorException extends java.security.GeneralSecurityException {
+ ctor public CertPathValidatorException();
+ ctor public CertPathValidatorException(String);
+ ctor public CertPathValidatorException(Throwable);
+ ctor public CertPathValidatorException(String, Throwable);
+ ctor public CertPathValidatorException(String, Throwable, java.security.cert.CertPath, int);
+ ctor public CertPathValidatorException(String, Throwable, java.security.cert.CertPath, int, java.security.cert.CertPathValidatorException.Reason);
+ method public java.security.cert.CertPath getCertPath();
+ method public int getIndex();
+ method public java.security.cert.CertPathValidatorException.Reason getReason();
+ }
+
+ public enum CertPathValidatorException.BasicReason implements java.security.cert.CertPathValidatorException.Reason {
+ enum_constant public static final java.security.cert.CertPathValidatorException.BasicReason ALGORITHM_CONSTRAINED;
+ enum_constant public static final java.security.cert.CertPathValidatorException.BasicReason EXPIRED;
+ enum_constant public static final java.security.cert.CertPathValidatorException.BasicReason INVALID_SIGNATURE;
+ enum_constant public static final java.security.cert.CertPathValidatorException.BasicReason NOT_YET_VALID;
+ enum_constant public static final java.security.cert.CertPathValidatorException.BasicReason REVOKED;
+ enum_constant public static final java.security.cert.CertPathValidatorException.BasicReason UNDETERMINED_REVOCATION_STATUS;
+ enum_constant public static final java.security.cert.CertPathValidatorException.BasicReason UNSPECIFIED;
+ }
+
+ public static interface CertPathValidatorException.Reason extends java.io.Serializable {
+ }
+
+ public interface CertPathValidatorResult extends java.lang.Cloneable {
+ method public Object clone();
+ }
+
+ public abstract class CertPathValidatorSpi {
+ ctor public CertPathValidatorSpi();
+ method public java.security.cert.CertPathChecker engineGetRevocationChecker();
+ method public abstract java.security.cert.CertPathValidatorResult engineValidate(java.security.cert.CertPath, java.security.cert.CertPathParameters) throws java.security.cert.CertPathValidatorException, java.security.InvalidAlgorithmParameterException;
+ }
+
+ public interface CertSelector extends java.lang.Cloneable {
+ method public Object clone();
+ method public boolean match(java.security.cert.Certificate);
+ }
+
+ public class CertStore {
+ ctor protected CertStore(java.security.cert.CertStoreSpi, java.security.Provider, String, java.security.cert.CertStoreParameters);
+ method public final java.util.Collection<? extends java.security.cert.CRL> getCRLs(java.security.cert.CRLSelector) throws java.security.cert.CertStoreException;
+ method public final java.security.cert.CertStoreParameters getCertStoreParameters();
+ method public final java.util.Collection<? extends java.security.cert.Certificate> getCertificates(java.security.cert.CertSelector) throws java.security.cert.CertStoreException;
+ method public static final String getDefaultType();
+ method public static java.security.cert.CertStore getInstance(String, java.security.cert.CertStoreParameters) throws java.security.InvalidAlgorithmParameterException, java.security.NoSuchAlgorithmException;
+ method public static java.security.cert.CertStore getInstance(String, java.security.cert.CertStoreParameters, String) throws java.security.InvalidAlgorithmParameterException, java.security.NoSuchAlgorithmException, java.security.NoSuchProviderException;
+ method public static java.security.cert.CertStore getInstance(String, java.security.cert.CertStoreParameters, java.security.Provider) throws java.security.InvalidAlgorithmParameterException, java.security.NoSuchAlgorithmException;
+ method public final java.security.Provider getProvider();
+ method public final String getType();
+ }
+
+ public class CertStoreException extends java.security.GeneralSecurityException {
+ ctor public CertStoreException();
+ ctor public CertStoreException(String);
+ ctor public CertStoreException(Throwable);
+ ctor public CertStoreException(String, Throwable);
+ }
+
+ public interface CertStoreParameters extends java.lang.Cloneable {
+ method public Object clone();
+ }
+
+ public abstract class CertStoreSpi {
+ ctor public CertStoreSpi(java.security.cert.CertStoreParameters) throws java.security.InvalidAlgorithmParameterException;
+ method public abstract java.util.Collection<? extends java.security.cert.CRL> engineGetCRLs(java.security.cert.CRLSelector) throws java.security.cert.CertStoreException;
+ method public abstract java.util.Collection<? extends java.security.cert.Certificate> engineGetCertificates(java.security.cert.CertSelector) throws java.security.cert.CertStoreException;
+ }
+
+ public abstract class Certificate implements java.io.Serializable {
+ ctor protected Certificate(String);
+ method public abstract byte[] getEncoded() throws java.security.cert.CertificateEncodingException;
+ method public abstract java.security.PublicKey getPublicKey();
+ method public final String getType();
+ method public abstract String toString();
+ method public abstract void verify(java.security.PublicKey) throws java.security.cert.CertificateException, java.security.InvalidKeyException, java.security.NoSuchAlgorithmException, java.security.NoSuchProviderException, java.security.SignatureException;
+ method public abstract void verify(java.security.PublicKey, String) throws java.security.cert.CertificateException, java.security.InvalidKeyException, java.security.NoSuchAlgorithmException, java.security.NoSuchProviderException, java.security.SignatureException;
+ method public void verify(java.security.PublicKey, java.security.Provider) throws java.security.cert.CertificateException, java.security.InvalidKeyException, java.security.NoSuchAlgorithmException, java.security.SignatureException;
+ method protected Object writeReplace() throws java.io.ObjectStreamException;
+ }
+
+ protected static class Certificate.CertificateRep implements java.io.Serializable {
+ ctor protected Certificate.CertificateRep(String, byte[]);
+ method protected Object readResolve() throws java.io.ObjectStreamException;
+ }
+
+ public class CertificateEncodingException extends java.security.cert.CertificateException {
+ ctor public CertificateEncodingException();
+ ctor public CertificateEncodingException(String);
+ ctor public CertificateEncodingException(String, Throwable);
+ ctor public CertificateEncodingException(Throwable);
+ }
+
+ public class CertificateException extends java.security.GeneralSecurityException {
+ ctor public CertificateException();
+ ctor public CertificateException(String);
+ ctor public CertificateException(String, Throwable);
+ ctor public CertificateException(Throwable);
+ }
+
+ public class CertificateExpiredException extends java.security.cert.CertificateException {
+ ctor public CertificateExpiredException();
+ ctor public CertificateExpiredException(String);
+ }
+
+ public class CertificateFactory {
+ ctor protected CertificateFactory(java.security.cert.CertificateFactorySpi, java.security.Provider, String);
+ method public final java.security.cert.CRL generateCRL(java.io.InputStream) throws java.security.cert.CRLException;
+ method public final java.util.Collection<? extends java.security.cert.CRL> generateCRLs(java.io.InputStream) throws java.security.cert.CRLException;
+ method public final java.security.cert.CertPath generateCertPath(java.io.InputStream) throws java.security.cert.CertificateException;
+ method public final java.security.cert.CertPath generateCertPath(java.io.InputStream, String) throws java.security.cert.CertificateException;
+ method public final java.security.cert.CertPath generateCertPath(java.util.List<? extends java.security.cert.Certificate>) throws java.security.cert.CertificateException;
+ method public final java.security.cert.Certificate generateCertificate(java.io.InputStream) throws java.security.cert.CertificateException;
+ method public final java.util.Collection<? extends java.security.cert.Certificate> generateCertificates(java.io.InputStream) throws java.security.cert.CertificateException;
+ method public final java.util.Iterator<java.lang.String> getCertPathEncodings();
+ method public static final java.security.cert.CertificateFactory getInstance(String) throws java.security.cert.CertificateException;
+ method public static final java.security.cert.CertificateFactory getInstance(String, String) throws java.security.cert.CertificateException, java.security.NoSuchProviderException;
+ method public static final java.security.cert.CertificateFactory getInstance(String, java.security.Provider) throws java.security.cert.CertificateException;
+ method public final java.security.Provider getProvider();
+ method public final String getType();
+ }
+
+ public abstract class CertificateFactorySpi {
+ ctor public CertificateFactorySpi();
+ method public abstract java.security.cert.CRL engineGenerateCRL(java.io.InputStream) throws java.security.cert.CRLException;
+ method public abstract java.util.Collection<? extends java.security.cert.CRL> engineGenerateCRLs(java.io.InputStream) throws java.security.cert.CRLException;
+ method public java.security.cert.CertPath engineGenerateCertPath(java.io.InputStream) throws java.security.cert.CertificateException;
+ method public java.security.cert.CertPath engineGenerateCertPath(java.io.InputStream, String) throws java.security.cert.CertificateException;
+ method public java.security.cert.CertPath engineGenerateCertPath(java.util.List<? extends java.security.cert.Certificate>) throws java.security.cert.CertificateException;
+ method public abstract java.security.cert.Certificate engineGenerateCertificate(java.io.InputStream) throws java.security.cert.CertificateException;
+ method public abstract java.util.Collection<? extends java.security.cert.Certificate> engineGenerateCertificates(java.io.InputStream) throws java.security.cert.CertificateException;
+ method public java.util.Iterator<java.lang.String> engineGetCertPathEncodings();
+ }
+
+ public class CertificateNotYetValidException extends java.security.cert.CertificateException {
+ ctor public CertificateNotYetValidException();
+ ctor public CertificateNotYetValidException(String);
+ }
+
+ public class CertificateParsingException extends java.security.cert.CertificateException {
+ ctor public CertificateParsingException();
+ ctor public CertificateParsingException(String);
+ ctor public CertificateParsingException(String, Throwable);
+ ctor public CertificateParsingException(Throwable);
+ }
+
+ public class CertificateRevokedException extends java.security.cert.CertificateException {
+ ctor public CertificateRevokedException(java.util.Date, java.security.cert.CRLReason, javax.security.auth.x500.X500Principal, java.util.Map<java.lang.String,java.security.cert.Extension>);
+ method public javax.security.auth.x500.X500Principal getAuthorityName();
+ method public java.util.Map<java.lang.String,java.security.cert.Extension> getExtensions();
+ method public java.util.Date getInvalidityDate();
+ method public java.util.Date getRevocationDate();
+ method public java.security.cert.CRLReason getRevocationReason();
+ }
+
+ public class CollectionCertStoreParameters implements java.security.cert.CertStoreParameters {
+ ctor public CollectionCertStoreParameters(java.util.Collection<?>);
+ ctor public CollectionCertStoreParameters();
+ method public Object clone();
+ method public java.util.Collection<?> getCollection();
+ }
+
+ public interface Extension {
+ method public void encode(java.io.OutputStream) throws java.io.IOException;
+ method public String getId();
+ method public byte[] getValue();
+ method public boolean isCritical();
+ }
+
+ public class LDAPCertStoreParameters implements java.security.cert.CertStoreParameters {
+ ctor public LDAPCertStoreParameters(String, int);
+ ctor public LDAPCertStoreParameters(String);
+ ctor public LDAPCertStoreParameters();
+ method public Object clone();
+ method public int getPort();
+ method public String getServerName();
+ }
+
+ public class PKIXBuilderParameters extends java.security.cert.PKIXParameters {
+ ctor public PKIXBuilderParameters(java.util.Set<java.security.cert.TrustAnchor>, java.security.cert.CertSelector) throws java.security.InvalidAlgorithmParameterException;
+ ctor public PKIXBuilderParameters(java.security.KeyStore, java.security.cert.CertSelector) throws java.security.InvalidAlgorithmParameterException, java.security.KeyStoreException;
+ method public int getMaxPathLength();
+ method public void setMaxPathLength(int);
+ }
+
+ public class PKIXCertPathBuilderResult extends java.security.cert.PKIXCertPathValidatorResult implements java.security.cert.CertPathBuilderResult {
+ ctor public PKIXCertPathBuilderResult(java.security.cert.CertPath, java.security.cert.TrustAnchor, java.security.cert.PolicyNode, java.security.PublicKey);
+ method public java.security.cert.CertPath getCertPath();
+ }
+
+ public abstract class PKIXCertPathChecker implements java.security.cert.CertPathChecker java.lang.Cloneable {
+ ctor protected PKIXCertPathChecker();
+ method public abstract void check(java.security.cert.Certificate, java.util.Collection<java.lang.String>) throws java.security.cert.CertPathValidatorException;
+ method public void check(java.security.cert.Certificate) throws java.security.cert.CertPathValidatorException;
+ method public Object clone();
+ method public abstract java.util.Set<java.lang.String> getSupportedExtensions();
+ }
+
+ public class PKIXCertPathValidatorResult implements java.security.cert.CertPathValidatorResult {
+ ctor public PKIXCertPathValidatorResult(java.security.cert.TrustAnchor, java.security.cert.PolicyNode, java.security.PublicKey);
+ method public Object clone();
+ method public java.security.cert.PolicyNode getPolicyTree();
+ method public java.security.PublicKey getPublicKey();
+ method public java.security.cert.TrustAnchor getTrustAnchor();
+ }
+
+ public class PKIXParameters implements java.security.cert.CertPathParameters {
+ ctor public PKIXParameters(java.util.Set<java.security.cert.TrustAnchor>) throws java.security.InvalidAlgorithmParameterException;
+ ctor public PKIXParameters(java.security.KeyStore) throws java.security.InvalidAlgorithmParameterException, java.security.KeyStoreException;
+ method public void addCertPathChecker(java.security.cert.PKIXCertPathChecker);
+ method public void addCertStore(java.security.cert.CertStore);
+ method public Object clone();
+ method public java.util.List<java.security.cert.PKIXCertPathChecker> getCertPathCheckers();
+ method public java.util.List<java.security.cert.CertStore> getCertStores();
+ method public java.util.Date getDate();
+ method public java.util.Set<java.lang.String> getInitialPolicies();
+ method public boolean getPolicyQualifiersRejected();
+ method public String getSigProvider();
+ method public java.security.cert.CertSelector getTargetCertConstraints();
+ method public java.util.Set<java.security.cert.TrustAnchor> getTrustAnchors();
+ method public boolean isAnyPolicyInhibited();
+ method public boolean isExplicitPolicyRequired();
+ method public boolean isPolicyMappingInhibited();
+ method public boolean isRevocationEnabled();
+ method public void setAnyPolicyInhibited(boolean);
+ method public void setCertPathCheckers(java.util.List<java.security.cert.PKIXCertPathChecker>);
+ method public void setCertStores(java.util.List<java.security.cert.CertStore>);
+ method public void setDate(java.util.Date);
+ method public void setExplicitPolicyRequired(boolean);
+ method public void setInitialPolicies(java.util.Set<java.lang.String>);
+ method public void setPolicyMappingInhibited(boolean);
+ method public void setPolicyQualifiersRejected(boolean);
+ method public void setRevocationEnabled(boolean);
+ method public void setSigProvider(String);
+ method public void setTargetCertConstraints(java.security.cert.CertSelector);
+ method public void setTrustAnchors(java.util.Set<java.security.cert.TrustAnchor>) throws java.security.InvalidAlgorithmParameterException;
+ }
+
+ public enum PKIXReason implements java.security.cert.CertPathValidatorException.Reason {
+ enum_constant public static final java.security.cert.PKIXReason INVALID_KEY_USAGE;
+ enum_constant public static final java.security.cert.PKIXReason INVALID_NAME;
+ enum_constant public static final java.security.cert.PKIXReason INVALID_POLICY;
+ enum_constant public static final java.security.cert.PKIXReason NAME_CHAINING;
+ enum_constant public static final java.security.cert.PKIXReason NOT_CA_CERT;
+ enum_constant public static final java.security.cert.PKIXReason NO_TRUST_ANCHOR;
+ enum_constant public static final java.security.cert.PKIXReason PATH_TOO_LONG;
+ enum_constant public static final java.security.cert.PKIXReason UNRECOGNIZED_CRIT_EXT;
+ }
+
+ public abstract class PKIXRevocationChecker extends java.security.cert.PKIXCertPathChecker {
+ ctor protected PKIXRevocationChecker();
+ method public java.security.cert.PKIXRevocationChecker clone();
+ method public java.util.List<java.security.cert.Extension> getOcspExtensions();
+ method public java.net.URI getOcspResponder();
+ method public java.security.cert.X509Certificate getOcspResponderCert();
+ method public java.util.Map<java.security.cert.X509Certificate,byte[]> getOcspResponses();
+ method public java.util.Set<java.security.cert.PKIXRevocationChecker.Option> getOptions();
+ method public abstract java.util.List<java.security.cert.CertPathValidatorException> getSoftFailExceptions();
+ method public void setOcspExtensions(java.util.List<java.security.cert.Extension>);
+ method public void setOcspResponder(java.net.URI);
+ method public void setOcspResponderCert(java.security.cert.X509Certificate);
+ method public void setOcspResponses(java.util.Map<java.security.cert.X509Certificate,byte[]>);
+ method public void setOptions(java.util.Set<java.security.cert.PKIXRevocationChecker.Option>);
+ }
+
+ public enum PKIXRevocationChecker.Option {
+ enum_constant public static final java.security.cert.PKIXRevocationChecker.Option NO_FALLBACK;
+ enum_constant public static final java.security.cert.PKIXRevocationChecker.Option ONLY_END_ENTITY;
+ enum_constant public static final java.security.cert.PKIXRevocationChecker.Option PREFER_CRLS;
+ enum_constant public static final java.security.cert.PKIXRevocationChecker.Option SOFT_FAIL;
+ }
+
+ public interface PolicyNode {
+ method public java.util.Iterator<? extends java.security.cert.PolicyNode> getChildren();
+ method public int getDepth();
+ method public java.util.Set<java.lang.String> getExpectedPolicies();
+ method public java.security.cert.PolicyNode getParent();
+ method public java.util.Set<? extends java.security.cert.PolicyQualifierInfo> getPolicyQualifiers();
+ method public String getValidPolicy();
+ method public boolean isCritical();
+ }
+
+ public class PolicyQualifierInfo {
+ ctor public PolicyQualifierInfo(byte[]) throws java.io.IOException;
+ method public final byte[] getEncoded();
+ method public final byte[] getPolicyQualifier();
+ method public final String getPolicyQualifierId();
+ }
+
+ public class TrustAnchor {
+ ctor public TrustAnchor(java.security.cert.X509Certificate, byte[]);
+ ctor public TrustAnchor(javax.security.auth.x500.X500Principal, java.security.PublicKey, byte[]);
+ ctor public TrustAnchor(String, java.security.PublicKey, byte[]);
+ method public final javax.security.auth.x500.X500Principal getCA();
+ method public final String getCAName();
+ method public final java.security.PublicKey getCAPublicKey();
+ method public final byte[] getNameConstraints();
+ method public final java.security.cert.X509Certificate getTrustedCert();
+ }
+
+ public final class URICertStoreParameters implements java.security.cert.CertStoreParameters {
+ ctor public URICertStoreParameters(java.net.URI);
+ method public java.security.cert.URICertStoreParameters clone();
+ method public java.net.URI getURI();
+ }
+
+ public abstract class X509CRL extends java.security.cert.CRL implements java.security.cert.X509Extension {
+ ctor protected X509CRL();
+ method public abstract byte[] getEncoded() throws java.security.cert.CRLException;
+ method public abstract java.security.Principal getIssuerDN();
+ method public javax.security.auth.x500.X500Principal getIssuerX500Principal();
+ method public abstract java.util.Date getNextUpdate();
+ method public abstract java.security.cert.X509CRLEntry getRevokedCertificate(java.math.BigInteger);
+ method public java.security.cert.X509CRLEntry getRevokedCertificate(java.security.cert.X509Certificate);
+ method public abstract java.util.Set<? extends java.security.cert.X509CRLEntry> getRevokedCertificates();
+ method public abstract String getSigAlgName();
+ method public abstract String getSigAlgOID();
+ method public abstract byte[] getSigAlgParams();
+ method public abstract byte[] getSignature();
+ method public abstract byte[] getTBSCertList() throws java.security.cert.CRLException;
+ method public abstract java.util.Date getThisUpdate();
+ method public abstract int getVersion();
+ method public abstract void verify(java.security.PublicKey) throws java.security.cert.CRLException, java.security.InvalidKeyException, java.security.NoSuchAlgorithmException, java.security.NoSuchProviderException, java.security.SignatureException;
+ method public abstract void verify(java.security.PublicKey, String) throws java.security.cert.CRLException, java.security.InvalidKeyException, java.security.NoSuchAlgorithmException, java.security.NoSuchProviderException, java.security.SignatureException;
+ method public void verify(java.security.PublicKey, java.security.Provider) throws java.security.cert.CRLException, java.security.InvalidKeyException, java.security.NoSuchAlgorithmException, java.security.SignatureException;
+ }
+
+ public abstract class X509CRLEntry implements java.security.cert.X509Extension {
+ ctor public X509CRLEntry();
+ method public javax.security.auth.x500.X500Principal getCertificateIssuer();
+ method public abstract byte[] getEncoded() throws java.security.cert.CRLException;
+ method public abstract java.util.Date getRevocationDate();
+ method public java.security.cert.CRLReason getRevocationReason();
+ method public abstract java.math.BigInteger getSerialNumber();
+ method public abstract boolean hasExtensions();
+ method public abstract String toString();
+ }
+
+ public class X509CRLSelector implements java.security.cert.CRLSelector {
+ ctor public X509CRLSelector();
+ method public void addIssuer(javax.security.auth.x500.X500Principal);
+ method public void addIssuerName(String) throws java.io.IOException;
+ method public void addIssuerName(byte[]) throws java.io.IOException;
+ method public Object clone();
+ method public java.security.cert.X509Certificate getCertificateChecking();
+ method public java.util.Date getDateAndTime();
+ method public java.util.Collection<java.lang.Object> getIssuerNames();
+ method public java.util.Collection<javax.security.auth.x500.X500Principal> getIssuers();
+ method public java.math.BigInteger getMaxCRL();
+ method public java.math.BigInteger getMinCRL();
+ method public boolean match(java.security.cert.CRL);
+ method public void setCertificateChecking(java.security.cert.X509Certificate);
+ method public void setDateAndTime(java.util.Date);
+ method public void setIssuerNames(java.util.Collection<?>) throws java.io.IOException;
+ method public void setIssuers(java.util.Collection<javax.security.auth.x500.X500Principal>);
+ method public void setMaxCRLNumber(java.math.BigInteger);
+ method public void setMinCRLNumber(java.math.BigInteger);
+ }
+
+ public class X509CertSelector implements java.security.cert.CertSelector {
+ ctor public X509CertSelector();
+ method public void addPathToName(int, String) throws java.io.IOException;
+ method public void addPathToName(int, byte[]) throws java.io.IOException;
+ method public void addSubjectAlternativeName(int, String) throws java.io.IOException;
+ method public void addSubjectAlternativeName(int, byte[]) throws java.io.IOException;
+ method public Object clone();
+ method public byte[] getAuthorityKeyIdentifier();
+ method public int getBasicConstraints();
+ method public java.security.cert.X509Certificate getCertificate();
+ method public java.util.Date getCertificateValid();
+ method public java.util.Set<java.lang.String> getExtendedKeyUsage();
+ method public javax.security.auth.x500.X500Principal getIssuer();
+ method public byte[] getIssuerAsBytes() throws java.io.IOException;
+ method public String getIssuerAsString();
+ method public boolean[] getKeyUsage();
+ method public boolean getMatchAllSubjectAltNames();
+ method public byte[] getNameConstraints();
+ method public java.util.Collection<java.util.List<?>> getPathToNames();
+ method public java.util.Set<java.lang.String> getPolicy();
+ method public java.util.Date getPrivateKeyValid();
+ method public java.math.BigInteger getSerialNumber();
+ method public javax.security.auth.x500.X500Principal getSubject();
+ method public java.util.Collection<java.util.List<?>> getSubjectAlternativeNames();
+ method public byte[] getSubjectAsBytes() throws java.io.IOException;
+ method public String getSubjectAsString();
+ method public byte[] getSubjectKeyIdentifier();
+ method public java.security.PublicKey getSubjectPublicKey();
+ method public String getSubjectPublicKeyAlgID();
+ method public boolean match(java.security.cert.Certificate);
+ method public void setAuthorityKeyIdentifier(byte[]);
+ method public void setBasicConstraints(int);
+ method public void setCertificate(java.security.cert.X509Certificate);
+ method public void setCertificateValid(java.util.Date);
+ method public void setExtendedKeyUsage(java.util.Set<java.lang.String>) throws java.io.IOException;
+ method public void setIssuer(javax.security.auth.x500.X500Principal);
+ method public void setIssuer(String) throws java.io.IOException;
+ method public void setIssuer(byte[]) throws java.io.IOException;
+ method public void setKeyUsage(boolean[]);
+ method public void setMatchAllSubjectAltNames(boolean);
+ method public void setNameConstraints(byte[]) throws java.io.IOException;
+ method public void setPathToNames(java.util.Collection<java.util.List<?>>) throws java.io.IOException;
+ method public void setPolicy(java.util.Set<java.lang.String>) throws java.io.IOException;
+ method public void setPrivateKeyValid(java.util.Date);
+ method public void setSerialNumber(java.math.BigInteger);
+ method public void setSubject(javax.security.auth.x500.X500Principal);
+ method public void setSubject(String) throws java.io.IOException;
+ method public void setSubject(byte[]) throws java.io.IOException;
+ method public void setSubjectAlternativeNames(java.util.Collection<java.util.List<?>>) throws java.io.IOException;
+ method public void setSubjectKeyIdentifier(byte[]);
+ method public void setSubjectPublicKey(java.security.PublicKey);
+ method public void setSubjectPublicKey(byte[]) throws java.io.IOException;
+ method public void setSubjectPublicKeyAlgID(String) throws java.io.IOException;
+ }
+
+ public abstract class X509Certificate extends java.security.cert.Certificate implements java.security.cert.X509Extension {
+ ctor protected X509Certificate();
+ method public abstract void checkValidity() throws java.security.cert.CertificateExpiredException, java.security.cert.CertificateNotYetValidException;
+ method public abstract void checkValidity(java.util.Date) throws java.security.cert.CertificateExpiredException, java.security.cert.CertificateNotYetValidException;
+ method public abstract int getBasicConstraints();
+ method public java.util.List<java.lang.String> getExtendedKeyUsage() throws java.security.cert.CertificateParsingException;
+ method public java.util.Collection<java.util.List<?>> getIssuerAlternativeNames() throws java.security.cert.CertificateParsingException;
+ method public abstract java.security.Principal getIssuerDN();
+ method public abstract boolean[] getIssuerUniqueID();
+ method public javax.security.auth.x500.X500Principal getIssuerX500Principal();
+ method public abstract boolean[] getKeyUsage();
+ method public abstract java.util.Date getNotAfter();
+ method public abstract java.util.Date getNotBefore();
+ method public abstract java.math.BigInteger getSerialNumber();
+ method public abstract String getSigAlgName();
+ method public abstract String getSigAlgOID();
+ method public abstract byte[] getSigAlgParams();
+ method public abstract byte[] getSignature();
+ method public java.util.Collection<java.util.List<?>> getSubjectAlternativeNames() throws java.security.cert.CertificateParsingException;
+ method public abstract java.security.Principal getSubjectDN();
+ method public abstract boolean[] getSubjectUniqueID();
+ method public javax.security.auth.x500.X500Principal getSubjectX500Principal();
+ method public abstract byte[] getTBSCertificate() throws java.security.cert.CertificateEncodingException;
+ method public abstract int getVersion();
+ }
+
+ public interface X509Extension {
+ method public java.util.Set<java.lang.String> getCriticalExtensionOIDs();
+ method public byte[] getExtensionValue(String);
+ method public java.util.Set<java.lang.String> getNonCriticalExtensionOIDs();
+ method public boolean hasUnsupportedCriticalExtension();
+ }
+
+}
+
+package java.security.interfaces {
+
+ public interface DSAKey {
+ method public java.security.interfaces.DSAParams getParams();
+ }
+
+ public interface DSAKeyPairGenerator {
+ method public void initialize(java.security.interfaces.DSAParams, java.security.SecureRandom) throws java.security.InvalidParameterException;
+ method public void initialize(int, boolean, java.security.SecureRandom) throws java.security.InvalidParameterException;
+ }
+
+ public interface DSAParams {
+ method public java.math.BigInteger getG();
+ method public java.math.BigInteger getP();
+ method public java.math.BigInteger getQ();
+ }
+
+ public interface DSAPrivateKey extends java.security.interfaces.DSAKey java.security.PrivateKey {
+ method public java.math.BigInteger getX();
+ field public static final long serialVersionUID = 7776497482533790279L; // 0x6bebab423b256247L
+ }
+
+ public interface DSAPublicKey extends java.security.interfaces.DSAKey java.security.PublicKey {
+ method public java.math.BigInteger getY();
+ field public static final long serialVersionUID = 1234526332779022332L; // 0x1121eb28ab28c7fcL
+ }
+
+ public interface ECKey {
+ method public java.security.spec.ECParameterSpec getParams();
+ }
+
+ public interface ECPrivateKey extends java.security.PrivateKey java.security.interfaces.ECKey {
+ method public java.math.BigInteger getS();
+ field public static final long serialVersionUID = -7896394956925609184L; // 0x926a5e9fa2435b20L
+ }
+
+ public interface ECPublicKey extends java.security.PublicKey java.security.interfaces.ECKey {
+ method public java.security.spec.ECPoint getW();
+ field public static final long serialVersionUID = -3314988629879632826L; // 0xd1fecb679990cc46L
+ }
+
+ public interface EdECKey {
+ method public java.security.spec.NamedParameterSpec getParams();
+ }
+
+ public interface EdECPrivateKey extends java.security.interfaces.EdECKey java.security.PrivateKey {
+ method public java.util.Optional<byte[]> getBytes();
+ }
+
+ public interface EdECPublicKey extends java.security.interfaces.EdECKey java.security.PublicKey {
+ method public java.security.spec.EdECPoint getPoint();
+ }
+
+ public interface RSAKey {
+ method public java.math.BigInteger getModulus();
+ }
+
+ public interface RSAMultiPrimePrivateCrtKey extends java.security.interfaces.RSAPrivateKey {
+ method public java.math.BigInteger getCrtCoefficient();
+ method public java.security.spec.RSAOtherPrimeInfo[] getOtherPrimeInfo();
+ method public java.math.BigInteger getPrimeExponentP();
+ method public java.math.BigInteger getPrimeExponentQ();
+ method public java.math.BigInteger getPrimeP();
+ method public java.math.BigInteger getPrimeQ();
+ method public java.math.BigInteger getPublicExponent();
+ field public static final long serialVersionUID = 618058533534628008L; // 0x893c8f62dbaf8a8L
+ }
+
+ public interface RSAPrivateCrtKey extends java.security.interfaces.RSAPrivateKey {
+ method public java.math.BigInteger getCrtCoefficient();
+ method public java.math.BigInteger getPrimeExponentP();
+ method public java.math.BigInteger getPrimeExponentQ();
+ method public java.math.BigInteger getPrimeP();
+ method public java.math.BigInteger getPrimeQ();
+ method public java.math.BigInteger getPublicExponent();
+ field public static final long serialVersionUID = -5682214253527700368L; // 0xb124b83df8d1ec70L
+ }
+
+ public interface RSAPrivateKey extends java.security.PrivateKey java.security.interfaces.RSAKey {
+ method public java.math.BigInteger getPrivateExponent();
+ field public static final long serialVersionUID = 5187144804936595022L; // 0x47fc70b7a8c2364eL
+ }
+
+ public interface RSAPublicKey extends java.security.PublicKey java.security.interfaces.RSAKey {
+ method public java.math.BigInteger getPublicExponent();
+ field public static final long serialVersionUID = -8727434096241101194L; // 0x86e1ecedeceab676L
+ }
+
+ public interface XECKey {
+ method public java.security.spec.AlgorithmParameterSpec getParams();
+ }
+
+ public interface XECPrivateKey extends java.security.interfaces.XECKey java.security.PrivateKey {
+ method public java.util.Optional<byte[]> getScalar();
+ }
+
+ public interface XECPublicKey extends java.security.interfaces.XECKey java.security.PublicKey {
+ method public java.math.BigInteger getU();
+ }
+
+}
+
+package java.security.spec {
+
+ public interface AlgorithmParameterSpec {
+ }
+
+ public class DSAParameterSpec implements java.security.spec.AlgorithmParameterSpec java.security.interfaces.DSAParams {
+ ctor public DSAParameterSpec(java.math.BigInteger, java.math.BigInteger, java.math.BigInteger);
+ method public java.math.BigInteger getG();
+ method public java.math.BigInteger getP();
+ method public java.math.BigInteger getQ();
+ }
+
+ public class DSAPrivateKeySpec implements java.security.spec.KeySpec {
+ ctor public DSAPrivateKeySpec(java.math.BigInteger, java.math.BigInteger, java.math.BigInteger, java.math.BigInteger);
+ method public java.math.BigInteger getG();
+ method public java.math.BigInteger getP();
+ method public java.math.BigInteger getQ();
+ method public java.math.BigInteger getX();
+ }
+
+ public class DSAPublicKeySpec implements java.security.spec.KeySpec {
+ ctor public DSAPublicKeySpec(java.math.BigInteger, java.math.BigInteger, java.math.BigInteger, java.math.BigInteger);
+ method public java.math.BigInteger getG();
+ method public java.math.BigInteger getP();
+ method public java.math.BigInteger getQ();
+ method public java.math.BigInteger getY();
+ }
+
+ public interface ECField {
+ method public int getFieldSize();
+ }
+
+ public class ECFieldF2m implements java.security.spec.ECField {
+ ctor public ECFieldF2m(int);
+ ctor public ECFieldF2m(int, java.math.BigInteger);
+ ctor public ECFieldF2m(int, int[]);
+ method public int getFieldSize();
+ method public int getM();
+ method public int[] getMidTermsOfReductionPolynomial();
+ method public java.math.BigInteger getReductionPolynomial();
+ }
+
+ public class ECFieldFp implements java.security.spec.ECField {
+ ctor public ECFieldFp(java.math.BigInteger);
+ method public int getFieldSize();
+ method public java.math.BigInteger getP();
+ }
+
+ public class ECGenParameterSpec extends java.security.spec.NamedParameterSpec implements java.security.spec.AlgorithmParameterSpec {
+ ctor public ECGenParameterSpec(String);
+ }
+
+ public class ECParameterSpec implements java.security.spec.AlgorithmParameterSpec {
+ ctor public ECParameterSpec(java.security.spec.EllipticCurve, java.security.spec.ECPoint, java.math.BigInteger, int);
+ method public int getCofactor();
+ method public java.security.spec.EllipticCurve getCurve();
+ method public java.security.spec.ECPoint getGenerator();
+ method public java.math.BigInteger getOrder();
+ }
+
+ public class ECPoint {
+ ctor public ECPoint(java.math.BigInteger, java.math.BigInteger);
+ method public java.math.BigInteger getAffineX();
+ method public java.math.BigInteger getAffineY();
+ field public static final java.security.spec.ECPoint POINT_INFINITY;
+ }
+
+ public class ECPrivateKeySpec implements java.security.spec.KeySpec {
+ ctor public ECPrivateKeySpec(java.math.BigInteger, java.security.spec.ECParameterSpec);
+ method public java.security.spec.ECParameterSpec getParams();
+ method public java.math.BigInteger getS();
+ }
+
+ public class ECPublicKeySpec implements java.security.spec.KeySpec {
+ ctor public ECPublicKeySpec(java.security.spec.ECPoint, java.security.spec.ECParameterSpec);
+ method public java.security.spec.ECParameterSpec getParams();
+ method public java.security.spec.ECPoint getW();
+ }
+
+ public final class EdECPoint {
+ ctor public EdECPoint(boolean, @NonNull java.math.BigInteger);
+ method @NonNull public java.math.BigInteger getY();
+ method public boolean isXOdd();
+ }
+
+ public final class EdECPrivateKeySpec implements java.security.spec.KeySpec {
+ ctor public EdECPrivateKeySpec(@NonNull java.security.spec.NamedParameterSpec, @NonNull byte[]);
+ method @NonNull public byte[] getBytes();
+ method @NonNull public java.security.spec.NamedParameterSpec getParams();
+ }
+
+ public final class EdECPublicKeySpec implements java.security.spec.KeySpec {
+ ctor public EdECPublicKeySpec(@NonNull java.security.spec.NamedParameterSpec, @NonNull java.security.spec.EdECPoint);
+ method @NonNull public java.security.spec.NamedParameterSpec getParams();
+ method @NonNull public java.security.spec.EdECPoint getPoint();
+ }
+
+ public class EllipticCurve {
+ ctor public EllipticCurve(java.security.spec.ECField, java.math.BigInteger, java.math.BigInteger);
+ ctor public EllipticCurve(java.security.spec.ECField, java.math.BigInteger, java.math.BigInteger, byte[]);
+ method public java.math.BigInteger getA();
+ method public java.math.BigInteger getB();
+ method public java.security.spec.ECField getField();
+ method public byte[] getSeed();
+ }
+
+ public abstract class EncodedKeySpec implements java.security.spec.KeySpec {
+ ctor public EncodedKeySpec(byte[]);
+ method public byte[] getEncoded();
+ method public abstract String getFormat();
+ }
+
+ public class InvalidKeySpecException extends java.security.GeneralSecurityException {
+ ctor public InvalidKeySpecException();
+ ctor public InvalidKeySpecException(String);
+ ctor public InvalidKeySpecException(String, Throwable);
+ ctor public InvalidKeySpecException(Throwable);
+ }
+
+ public class InvalidParameterSpecException extends java.security.GeneralSecurityException {
+ ctor public InvalidParameterSpecException();
+ ctor public InvalidParameterSpecException(String);
+ }
+
+ public interface KeySpec {
+ }
+
+ public class MGF1ParameterSpec implements java.security.spec.AlgorithmParameterSpec {
+ ctor public MGF1ParameterSpec(String);
+ method public String getDigestAlgorithm();
+ field public static final java.security.spec.MGF1ParameterSpec SHA1;
+ field public static final java.security.spec.MGF1ParameterSpec SHA224;
+ field public static final java.security.spec.MGF1ParameterSpec SHA256;
+ field public static final java.security.spec.MGF1ParameterSpec SHA384;
+ field public static final java.security.spec.MGF1ParameterSpec SHA512;
+ }
+
+ public class NamedParameterSpec implements java.security.spec.AlgorithmParameterSpec {
+ ctor public NamedParameterSpec(@NonNull String);
+ method @NonNull public String getName();
+ field public static final java.security.spec.NamedParameterSpec ED25519;
+ field public static final java.security.spec.NamedParameterSpec ED448;
+ field public static final java.security.spec.NamedParameterSpec X25519;
+ field public static final java.security.spec.NamedParameterSpec X448;
+ }
+
+ public class PKCS8EncodedKeySpec extends java.security.spec.EncodedKeySpec {
+ ctor public PKCS8EncodedKeySpec(byte[]);
+ method public final String getFormat();
+ }
+
+ public class PSSParameterSpec implements java.security.spec.AlgorithmParameterSpec {
+ ctor public PSSParameterSpec(String, String, java.security.spec.AlgorithmParameterSpec, int, int);
+ ctor public PSSParameterSpec(int);
+ method public String getDigestAlgorithm();
+ method public String getMGFAlgorithm();
+ method public java.security.spec.AlgorithmParameterSpec getMGFParameters();
+ method public int getSaltLength();
+ method public int getTrailerField();
+ field public static final java.security.spec.PSSParameterSpec DEFAULT;
+ }
+
+ public class RSAKeyGenParameterSpec implements java.security.spec.AlgorithmParameterSpec {
+ ctor public RSAKeyGenParameterSpec(int, java.math.BigInteger);
+ method public int getKeysize();
+ method public java.math.BigInteger getPublicExponent();
+ field public static final java.math.BigInteger F0;
+ field public static final java.math.BigInteger F4;
+ }
+
+ public class RSAMultiPrimePrivateCrtKeySpec extends java.security.spec.RSAPrivateKeySpec {
+ ctor public RSAMultiPrimePrivateCrtKeySpec(java.math.BigInteger, java.math.BigInteger, java.math.BigInteger, java.math.BigInteger, java.math.BigInteger, java.math.BigInteger, java.math.BigInteger, java.math.BigInteger, java.security.spec.RSAOtherPrimeInfo[]);
+ method public java.math.BigInteger getCrtCoefficient();
+ method public java.security.spec.RSAOtherPrimeInfo[] getOtherPrimeInfo();
+ method public java.math.BigInteger getPrimeExponentP();
+ method public java.math.BigInteger getPrimeExponentQ();
+ method public java.math.BigInteger getPrimeP();
+ method public java.math.BigInteger getPrimeQ();
+ method public java.math.BigInteger getPublicExponent();
+ }
+
+ public class RSAOtherPrimeInfo {
+ ctor public RSAOtherPrimeInfo(java.math.BigInteger, java.math.BigInteger, java.math.BigInteger);
+ method public final java.math.BigInteger getCrtCoefficient();
+ method public final java.math.BigInteger getExponent();
+ method public final java.math.BigInteger getPrime();
+ }
+
+ public class RSAPrivateCrtKeySpec extends java.security.spec.RSAPrivateKeySpec {
+ ctor public RSAPrivateCrtKeySpec(java.math.BigInteger, java.math.BigInteger, java.math.BigInteger, java.math.BigInteger, java.math.BigInteger, java.math.BigInteger, java.math.BigInteger, java.math.BigInteger);
+ method public java.math.BigInteger getCrtCoefficient();
+ method public java.math.BigInteger getPrimeExponentP();
+ method public java.math.BigInteger getPrimeExponentQ();
+ method public java.math.BigInteger getPrimeP();
+ method public java.math.BigInteger getPrimeQ();
+ method public java.math.BigInteger getPublicExponent();
+ }
+
+ public class RSAPrivateKeySpec implements java.security.spec.KeySpec {
+ ctor public RSAPrivateKeySpec(java.math.BigInteger, java.math.BigInteger);
+ method public java.math.BigInteger getModulus();
+ method public java.math.BigInteger getPrivateExponent();
+ }
+
+ public class RSAPublicKeySpec implements java.security.spec.KeySpec {
+ ctor public RSAPublicKeySpec(java.math.BigInteger, java.math.BigInteger);
+ method public java.math.BigInteger getModulus();
+ method public java.math.BigInteger getPublicExponent();
+ }
+
+ public class X509EncodedKeySpec extends java.security.spec.EncodedKeySpec {
+ ctor public X509EncodedKeySpec(byte[]);
+ method public final String getFormat();
+ }
+
+ public class XECPrivateKeySpec implements java.security.spec.KeySpec {
+ ctor public XECPrivateKeySpec(java.security.spec.AlgorithmParameterSpec, byte[]);
+ method public java.security.spec.AlgorithmParameterSpec getParams();
+ method public byte[] getScalar();
+ }
+
+ public class XECPublicKeySpec implements java.security.spec.KeySpec {
+ ctor public XECPublicKeySpec(java.security.spec.AlgorithmParameterSpec, java.math.BigInteger);
+ method public java.security.spec.AlgorithmParameterSpec getParams();
+ method public java.math.BigInteger getU();
+ }
+
+}
+
+package java.sql {
+
+ public interface Array {
+ method public void free() throws java.sql.SQLException;
+ method public Object getArray() throws java.sql.SQLException;
+ method public Object getArray(java.util.Map<java.lang.String,java.lang.Class<?>>) throws java.sql.SQLException;
+ method public Object getArray(long, int) throws java.sql.SQLException;
+ method public Object getArray(long, int, java.util.Map<java.lang.String,java.lang.Class<?>>) throws java.sql.SQLException;
+ method public int getBaseType() throws java.sql.SQLException;
+ method public String getBaseTypeName() throws java.sql.SQLException;
+ method public java.sql.ResultSet getResultSet() throws java.sql.SQLException;
+ method public java.sql.ResultSet getResultSet(java.util.Map<java.lang.String,java.lang.Class<?>>) throws java.sql.SQLException;
+ method public java.sql.ResultSet getResultSet(long, int) throws java.sql.SQLException;
+ method public java.sql.ResultSet getResultSet(long, int, java.util.Map<java.lang.String,java.lang.Class<?>>) throws java.sql.SQLException;
+ }
+
+ public class BatchUpdateException extends java.sql.SQLException {
+ ctor public BatchUpdateException(String, String, int, int[]);
+ ctor public BatchUpdateException(String, String, int[]);
+ ctor public BatchUpdateException(String, int[]);
+ ctor public BatchUpdateException(int[]);
+ ctor public BatchUpdateException();
+ ctor public BatchUpdateException(Throwable);
+ ctor public BatchUpdateException(int[], Throwable);
+ ctor public BatchUpdateException(String, int[], Throwable);
+ ctor public BatchUpdateException(String, String, int[], Throwable);
+ ctor public BatchUpdateException(String, String, int, int[], Throwable);
+ method public int[] getUpdateCounts();
+ }
+
+ public interface Blob {
+ method public void free() throws java.sql.SQLException;
+ method public java.io.InputStream getBinaryStream() throws java.sql.SQLException;
+ method public java.io.InputStream getBinaryStream(long, long) throws java.sql.SQLException;
+ method public byte[] getBytes(long, int) throws java.sql.SQLException;
+ method public long length() throws java.sql.SQLException;
+ method public long position(byte[], long) throws java.sql.SQLException;
+ method public long position(java.sql.Blob, long) throws java.sql.SQLException;
+ method public java.io.OutputStream setBinaryStream(long) throws java.sql.SQLException;
+ method public int setBytes(long, byte[]) throws java.sql.SQLException;
+ method public int setBytes(long, byte[], int, int) throws java.sql.SQLException;
+ method public void truncate(long) throws java.sql.SQLException;
+ }
+
+ public interface CallableStatement extends java.sql.PreparedStatement {
+ method public java.sql.Array getArray(int) throws java.sql.SQLException;
+ method public java.sql.Array getArray(String) throws java.sql.SQLException;
+ method @Deprecated public java.math.BigDecimal getBigDecimal(int, int) throws java.sql.SQLException;
+ method public java.math.BigDecimal getBigDecimal(int) throws java.sql.SQLException;
+ method public java.math.BigDecimal getBigDecimal(String) throws java.sql.SQLException;
+ method public java.sql.Blob getBlob(int) throws java.sql.SQLException;
+ method public java.sql.Blob getBlob(String) throws java.sql.SQLException;
+ method public boolean getBoolean(int) throws java.sql.SQLException;
+ method public boolean getBoolean(String) throws java.sql.SQLException;
+ method public byte getByte(int) throws java.sql.SQLException;
+ method public byte getByte(String) throws java.sql.SQLException;
+ method public byte[] getBytes(int) throws java.sql.SQLException;
+ method public byte[] getBytes(String) throws java.sql.SQLException;
+ method public java.io.Reader getCharacterStream(int) throws java.sql.SQLException;
+ method public java.io.Reader getCharacterStream(String) throws java.sql.SQLException;
+ method public java.sql.Clob getClob(int) throws java.sql.SQLException;
+ method public java.sql.Clob getClob(String) throws java.sql.SQLException;
+ method public java.sql.Date getDate(int) throws java.sql.SQLException;
+ method public java.sql.Date getDate(int, java.util.Calendar) throws java.sql.SQLException;
+ method public java.sql.Date getDate(String) throws java.sql.SQLException;
+ method public java.sql.Date getDate(String, java.util.Calendar) throws java.sql.SQLException;
+ method public double getDouble(int) throws java.sql.SQLException;
+ method public double getDouble(String) throws java.sql.SQLException;
+ method public float getFloat(int) throws java.sql.SQLException;
+ method public float getFloat(String) throws java.sql.SQLException;
+ method public int getInt(int) throws java.sql.SQLException;
+ method public int getInt(String) throws java.sql.SQLException;
+ method public long getLong(int) throws java.sql.SQLException;
+ method public long getLong(String) throws java.sql.SQLException;
+ method public java.io.Reader getNCharacterStream(int) throws java.sql.SQLException;
+ method public java.io.Reader getNCharacterStream(String) throws java.sql.SQLException;
+ method public java.sql.NClob getNClob(int) throws java.sql.SQLException;
+ method public java.sql.NClob getNClob(String) throws java.sql.SQLException;
+ method public String getNString(int) throws java.sql.SQLException;
+ method public String getNString(String) throws java.sql.SQLException;
+ method public Object getObject(int) throws java.sql.SQLException;
+ method public Object getObject(int, java.util.Map<java.lang.String,java.lang.Class<?>>) throws java.sql.SQLException;
+ method public Object getObject(String) throws java.sql.SQLException;
+ method public Object getObject(String, java.util.Map<java.lang.String,java.lang.Class<?>>) throws java.sql.SQLException;
+ method public java.sql.Ref getRef(int) throws java.sql.SQLException;
+ method public java.sql.Ref getRef(String) throws java.sql.SQLException;
+ method public java.sql.RowId getRowId(int) throws java.sql.SQLException;
+ method public java.sql.RowId getRowId(String) throws java.sql.SQLException;
+ method public java.sql.SQLXML getSQLXML(int) throws java.sql.SQLException;
+ method public java.sql.SQLXML getSQLXML(String) throws java.sql.SQLException;
+ method public short getShort(int) throws java.sql.SQLException;
+ method public short getShort(String) throws java.sql.SQLException;
+ method public String getString(int) throws java.sql.SQLException;
+ method public String getString(String) throws java.sql.SQLException;
+ method public java.sql.Time getTime(int) throws java.sql.SQLException;
+ method public java.sql.Time getTime(int, java.util.Calendar) throws java.sql.SQLException;
+ method public java.sql.Time getTime(String) throws java.sql.SQLException;
+ method public java.sql.Time getTime(String, java.util.Calendar) throws java.sql.SQLException;
+ method public java.sql.Timestamp getTimestamp(int) throws java.sql.SQLException;
+ method public java.sql.Timestamp getTimestamp(int, java.util.Calendar) throws java.sql.SQLException;
+ method public java.sql.Timestamp getTimestamp(String) throws java.sql.SQLException;
+ method public java.sql.Timestamp getTimestamp(String, java.util.Calendar) throws java.sql.SQLException;
+ method public java.net.URL getURL(int) throws java.sql.SQLException;
+ method public java.net.URL getURL(String) throws java.sql.SQLException;
+ method public void registerOutParameter(int, int) throws java.sql.SQLException;
+ method public void registerOutParameter(int, int, int) throws java.sql.SQLException;
+ method public void registerOutParameter(int, int, String) throws java.sql.SQLException;
+ method public void registerOutParameter(String, int) throws java.sql.SQLException;
+ method public void registerOutParameter(String, int, int) throws java.sql.SQLException;
+ method public void registerOutParameter(String, int, String) throws java.sql.SQLException;
+ method public void setAsciiStream(String, java.io.InputStream, int) throws java.sql.SQLException;
+ method public void setAsciiStream(String, java.io.InputStream, long) throws java.sql.SQLException;
+ method public void setAsciiStream(String, java.io.InputStream) throws java.sql.SQLException;
+ method public void setBigDecimal(String, java.math.BigDecimal) throws java.sql.SQLException;
+ method public void setBinaryStream(String, java.io.InputStream, int) throws java.sql.SQLException;
+ method public void setBinaryStream(String, java.io.InputStream, long) throws java.sql.SQLException;
+ method public void setBinaryStream(String, java.io.InputStream) throws java.sql.SQLException;
+ method public void setBlob(String, java.io.InputStream, long) throws java.sql.SQLException;
+ method public void setBlob(String, java.sql.Blob) throws java.sql.SQLException;
+ method public void setBlob(String, java.io.InputStream) throws java.sql.SQLException;
+ method public void setBoolean(String, boolean) throws java.sql.SQLException;
+ method public void setByte(String, byte) throws java.sql.SQLException;
+ method public void setBytes(String, byte[]) throws java.sql.SQLException;
+ method public void setCharacterStream(String, java.io.Reader, int) throws java.sql.SQLException;
+ method public void setCharacterStream(String, java.io.Reader, long) throws java.sql.SQLException;
+ method public void setCharacterStream(String, java.io.Reader) throws java.sql.SQLException;
+ method public void setClob(String, java.io.Reader, long) throws java.sql.SQLException;
+ method public void setClob(String, java.sql.Clob) throws java.sql.SQLException;
+ method public void setClob(String, java.io.Reader) throws java.sql.SQLException;
+ method public void setDate(String, java.sql.Date) throws java.sql.SQLException;
+ method public void setDate(String, java.sql.Date, java.util.Calendar) throws java.sql.SQLException;
+ method public void setDouble(String, double) throws java.sql.SQLException;
+ method public void setFloat(String, float) throws java.sql.SQLException;
+ method public void setInt(String, int) throws java.sql.SQLException;
+ method public void setLong(String, long) throws java.sql.SQLException;
+ method public void setNCharacterStream(String, java.io.Reader, long) throws java.sql.SQLException;
+ method public void setNCharacterStream(String, java.io.Reader) throws java.sql.SQLException;
+ method public void setNClob(String, java.sql.NClob) throws java.sql.SQLException;
+ method public void setNClob(String, java.io.Reader, long) throws java.sql.SQLException;
+ method public void setNClob(String, java.io.Reader) throws java.sql.SQLException;
+ method public void setNString(String, String) throws java.sql.SQLException;
+ method public void setNull(String, int) throws java.sql.SQLException;
+ method public void setNull(String, int, String) throws java.sql.SQLException;
+ method public void setObject(String, Object, int, int) throws java.sql.SQLException;
+ method public void setObject(String, Object, int) throws java.sql.SQLException;
+ method public void setObject(String, Object) throws java.sql.SQLException;
+ method public void setRowId(String, java.sql.RowId) throws java.sql.SQLException;
+ method public void setSQLXML(String, java.sql.SQLXML) throws java.sql.SQLException;
+ method public void setShort(String, short) throws java.sql.SQLException;
+ method public void setString(String, String) throws java.sql.SQLException;
+ method public void setTime(String, java.sql.Time) throws java.sql.SQLException;
+ method public void setTime(String, java.sql.Time, java.util.Calendar) throws java.sql.SQLException;
+ method public void setTimestamp(String, java.sql.Timestamp) throws java.sql.SQLException;
+ method public void setTimestamp(String, java.sql.Timestamp, java.util.Calendar) throws java.sql.SQLException;
+ method public void setURL(String, java.net.URL) throws java.sql.SQLException;
+ method public boolean wasNull() throws java.sql.SQLException;
+ }
+
+ public enum ClientInfoStatus {
+ enum_constant public static final java.sql.ClientInfoStatus REASON_UNKNOWN;
+ enum_constant public static final java.sql.ClientInfoStatus REASON_UNKNOWN_PROPERTY;
+ enum_constant public static final java.sql.ClientInfoStatus REASON_VALUE_INVALID;
+ enum_constant public static final java.sql.ClientInfoStatus REASON_VALUE_TRUNCATED;
+ }
+
+ public interface Clob {
+ method public void free() throws java.sql.SQLException;
+ method public java.io.InputStream getAsciiStream() throws java.sql.SQLException;
+ method public java.io.Reader getCharacterStream() throws java.sql.SQLException;
+ method public java.io.Reader getCharacterStream(long, long) throws java.sql.SQLException;
+ method public String getSubString(long, int) throws java.sql.SQLException;
+ method public long length() throws java.sql.SQLException;
+ method public long position(String, long) throws java.sql.SQLException;
+ method public long position(java.sql.Clob, long) throws java.sql.SQLException;
+ method public java.io.OutputStream setAsciiStream(long) throws java.sql.SQLException;
+ method public java.io.Writer setCharacterStream(long) throws java.sql.SQLException;
+ method public int setString(long, String) throws java.sql.SQLException;
+ method public int setString(long, String, int, int) throws java.sql.SQLException;
+ method public void truncate(long) throws java.sql.SQLException;
+ }
+
+ public interface Connection extends java.sql.Wrapper java.lang.AutoCloseable {
+ method public void clearWarnings() throws java.sql.SQLException;
+ method public void close() throws java.sql.SQLException;
+ method public void commit() throws java.sql.SQLException;
+ method public java.sql.Array createArrayOf(String, Object[]) throws java.sql.SQLException;
+ method public java.sql.Blob createBlob() throws java.sql.SQLException;
+ method public java.sql.Clob createClob() throws java.sql.SQLException;
+ method public java.sql.NClob createNClob() throws java.sql.SQLException;
+ method public java.sql.SQLXML createSQLXML() throws java.sql.SQLException;
+ method public java.sql.Statement createStatement() throws java.sql.SQLException;
+ method public java.sql.Statement createStatement(int, int) throws java.sql.SQLException;
+ method public java.sql.Statement createStatement(int, int, int) throws java.sql.SQLException;
+ method public java.sql.Struct createStruct(String, Object[]) throws java.sql.SQLException;
+ method public boolean getAutoCommit() throws java.sql.SQLException;
+ method public String getCatalog() throws java.sql.SQLException;
+ method public String getClientInfo(String) throws java.sql.SQLException;
+ method public java.util.Properties getClientInfo() throws java.sql.SQLException;
+ method public int getHoldability() throws java.sql.SQLException;
+ method public java.sql.DatabaseMetaData getMetaData() throws java.sql.SQLException;
+ method public int getTransactionIsolation() throws java.sql.SQLException;
+ method public java.util.Map<java.lang.String,java.lang.Class<?>> getTypeMap() throws java.sql.SQLException;
+ method public java.sql.SQLWarning getWarnings() throws java.sql.SQLException;
+ method public boolean isClosed() throws java.sql.SQLException;
+ method public boolean isReadOnly() throws java.sql.SQLException;
+ method public boolean isValid(int) throws java.sql.SQLException;
+ method public String nativeSQL(String) throws java.sql.SQLException;
+ method public java.sql.CallableStatement prepareCall(String) throws java.sql.SQLException;
+ method public java.sql.CallableStatement prepareCall(String, int, int) throws java.sql.SQLException;
+ method public java.sql.CallableStatement prepareCall(String, int, int, int) throws java.sql.SQLException;
+ method public java.sql.PreparedStatement prepareStatement(String) throws java.sql.SQLException;
+ method public java.sql.PreparedStatement prepareStatement(String, int, int) throws java.sql.SQLException;
+ method public java.sql.PreparedStatement prepareStatement(String, int, int, int) throws java.sql.SQLException;
+ method public java.sql.PreparedStatement prepareStatement(String, int) throws java.sql.SQLException;
+ method public java.sql.PreparedStatement prepareStatement(String, int[]) throws java.sql.SQLException;
+ method public java.sql.PreparedStatement prepareStatement(String, String[]) throws java.sql.SQLException;
+ method public void releaseSavepoint(java.sql.Savepoint) throws java.sql.SQLException;
+ method public void rollback() throws java.sql.SQLException;
+ method public void rollback(java.sql.Savepoint) throws java.sql.SQLException;
+ method public void setAutoCommit(boolean) throws java.sql.SQLException;
+ method public void setCatalog(String) throws java.sql.SQLException;
+ method public void setClientInfo(String, String) throws java.sql.SQLClientInfoException;
+ method public void setClientInfo(java.util.Properties) throws java.sql.SQLClientInfoException;
+ method public void setHoldability(int) throws java.sql.SQLException;
+ method public void setReadOnly(boolean) throws java.sql.SQLException;
+ method public java.sql.Savepoint setSavepoint() throws java.sql.SQLException;
+ method public java.sql.Savepoint setSavepoint(String) throws java.sql.SQLException;
+ method public void setTransactionIsolation(int) throws java.sql.SQLException;
+ method public void setTypeMap(java.util.Map<java.lang.String,java.lang.Class<?>>) throws java.sql.SQLException;
+ field public static final int TRANSACTION_NONE = 0; // 0x0
+ field public static final int TRANSACTION_READ_COMMITTED = 2; // 0x2
+ field public static final int TRANSACTION_READ_UNCOMMITTED = 1; // 0x1
+ field public static final int TRANSACTION_REPEATABLE_READ = 4; // 0x4
+ field public static final int TRANSACTION_SERIALIZABLE = 8; // 0x8
+ }
+
+ public class DataTruncation extends java.sql.SQLWarning {
+ ctor public DataTruncation(int, boolean, boolean, int, int);
+ ctor public DataTruncation(int, boolean, boolean, int, int, Throwable);
+ method public int getDataSize();
+ method public int getIndex();
+ method public boolean getParameter();
+ method public boolean getRead();
+ method public int getTransferSize();
+ }
+
+ public interface DatabaseMetaData extends java.sql.Wrapper {
+ method public boolean allProceduresAreCallable() throws java.sql.SQLException;
+ method public boolean allTablesAreSelectable() throws java.sql.SQLException;
+ method public boolean autoCommitFailureClosesAllResultSets() throws java.sql.SQLException;
+ method public boolean dataDefinitionCausesTransactionCommit() throws java.sql.SQLException;
+ method public boolean dataDefinitionIgnoredInTransactions() throws java.sql.SQLException;
+ method public boolean deletesAreDetected(int) throws java.sql.SQLException;
+ method public boolean doesMaxRowSizeIncludeBlobs() throws java.sql.SQLException;
+ method public java.sql.ResultSet getAttributes(String, String, String, String) throws java.sql.SQLException;
+ method public java.sql.ResultSet getBestRowIdentifier(String, String, String, int, boolean) throws java.sql.SQLException;
+ method public String getCatalogSeparator() throws java.sql.SQLException;
+ method public String getCatalogTerm() throws java.sql.SQLException;
+ method public java.sql.ResultSet getCatalogs() throws java.sql.SQLException;
+ method public java.sql.ResultSet getClientInfoProperties() throws java.sql.SQLException;
+ method public java.sql.ResultSet getColumnPrivileges(String, String, String, String) throws java.sql.SQLException;
+ method public java.sql.ResultSet getColumns(String, String, String, String) throws java.sql.SQLException;
+ method public java.sql.Connection getConnection() throws java.sql.SQLException;
+ method public java.sql.ResultSet getCrossReference(String, String, String, String, String, String) throws java.sql.SQLException;
+ method public int getDatabaseMajorVersion() throws java.sql.SQLException;
+ method public int getDatabaseMinorVersion() throws java.sql.SQLException;
+ method public String getDatabaseProductName() throws java.sql.SQLException;
+ method public String getDatabaseProductVersion() throws java.sql.SQLException;
+ method public int getDefaultTransactionIsolation() throws java.sql.SQLException;
+ method public int getDriverMajorVersion();
+ method public int getDriverMinorVersion();
+ method public String getDriverName() throws java.sql.SQLException;
+ method public String getDriverVersion() throws java.sql.SQLException;
+ method public java.sql.ResultSet getExportedKeys(String, String, String) throws java.sql.SQLException;
+ method public String getExtraNameCharacters() throws java.sql.SQLException;
+ method public java.sql.ResultSet getFunctionColumns(String, String, String, String) throws java.sql.SQLException;
+ method public java.sql.ResultSet getFunctions(String, String, String) throws java.sql.SQLException;
+ method public String getIdentifierQuoteString() throws java.sql.SQLException;
+ method public java.sql.ResultSet getImportedKeys(String, String, String) throws java.sql.SQLException;
+ method public java.sql.ResultSet getIndexInfo(String, String, String, boolean, boolean) throws java.sql.SQLException;
+ method public int getJDBCMajorVersion() throws java.sql.SQLException;
+ method public int getJDBCMinorVersion() throws java.sql.SQLException;
+ method public int getMaxBinaryLiteralLength() throws java.sql.SQLException;
+ method public int getMaxCatalogNameLength() throws java.sql.SQLException;
+ method public int getMaxCharLiteralLength() throws java.sql.SQLException;
+ method public int getMaxColumnNameLength() throws java.sql.SQLException;
+ method public int getMaxColumnsInGroupBy() throws java.sql.SQLException;
+ method public int getMaxColumnsInIndex() throws java.sql.SQLException;
+ method public int getMaxColumnsInOrderBy() throws java.sql.SQLException;
+ method public int getMaxColumnsInSelect() throws java.sql.SQLException;
+ method public int getMaxColumnsInTable() throws java.sql.SQLException;
+ method public int getMaxConnections() throws java.sql.SQLException;
+ method public int getMaxCursorNameLength() throws java.sql.SQLException;
+ method public int getMaxIndexLength() throws java.sql.SQLException;
+ method public int getMaxProcedureNameLength() throws java.sql.SQLException;
+ method public int getMaxRowSize() throws java.sql.SQLException;
+ method public int getMaxSchemaNameLength() throws java.sql.SQLException;
+ method public int getMaxStatementLength() throws java.sql.SQLException;
+ method public int getMaxStatements() throws java.sql.SQLException;
+ method public int getMaxTableNameLength() throws java.sql.SQLException;
+ method public int getMaxTablesInSelect() throws java.sql.SQLException;
+ method public int getMaxUserNameLength() throws java.sql.SQLException;
+ method public String getNumericFunctions() throws java.sql.SQLException;
+ method public java.sql.ResultSet getPrimaryKeys(String, String, String) throws java.sql.SQLException;
+ method public java.sql.ResultSet getProcedureColumns(String, String, String, String) throws java.sql.SQLException;
+ method public String getProcedureTerm() throws java.sql.SQLException;
+ method public java.sql.ResultSet getProcedures(String, String, String) throws java.sql.SQLException;
+ method public int getResultSetHoldability() throws java.sql.SQLException;
+ method public java.sql.RowIdLifetime getRowIdLifetime() throws java.sql.SQLException;
+ method public String getSQLKeywords() throws java.sql.SQLException;
+ method public int getSQLStateType() throws java.sql.SQLException;
+ method public String getSchemaTerm() throws java.sql.SQLException;
+ method public java.sql.ResultSet getSchemas() throws java.sql.SQLException;
+ method public java.sql.ResultSet getSchemas(String, String) throws java.sql.SQLException;
+ method public String getSearchStringEscape() throws java.sql.SQLException;
+ method public String getStringFunctions() throws java.sql.SQLException;
+ method public java.sql.ResultSet getSuperTables(String, String, String) throws java.sql.SQLException;
+ method public java.sql.ResultSet getSuperTypes(String, String, String) throws java.sql.SQLException;
+ method public String getSystemFunctions() throws java.sql.SQLException;
+ method public java.sql.ResultSet getTablePrivileges(String, String, String) throws java.sql.SQLException;
+ method public java.sql.ResultSet getTableTypes() throws java.sql.SQLException;
+ method public java.sql.ResultSet getTables(String, String, String, String[]) throws java.sql.SQLException;
+ method public String getTimeDateFunctions() throws java.sql.SQLException;
+ method public java.sql.ResultSet getTypeInfo() throws java.sql.SQLException;
+ method public java.sql.ResultSet getUDTs(String, String, String, int[]) throws java.sql.SQLException;
+ method public String getURL() throws java.sql.SQLException;
+ method public String getUserName() throws java.sql.SQLException;
+ method public java.sql.ResultSet getVersionColumns(String, String, String) throws java.sql.SQLException;
+ method public boolean insertsAreDetected(int) throws java.sql.SQLException;
+ method public boolean isCatalogAtStart() throws java.sql.SQLException;
+ method public boolean isReadOnly() throws java.sql.SQLException;
+ method public boolean locatorsUpdateCopy() throws java.sql.SQLException;
+ method public boolean nullPlusNonNullIsNull() throws java.sql.SQLException;
+ method public boolean nullsAreSortedAtEnd() throws java.sql.SQLException;
+ method public boolean nullsAreSortedAtStart() throws java.sql.SQLException;
+ method public boolean nullsAreSortedHigh() throws java.sql.SQLException;
+ method public boolean nullsAreSortedLow() throws java.sql.SQLException;
+ method public boolean othersDeletesAreVisible(int) throws java.sql.SQLException;
+ method public boolean othersInsertsAreVisible(int) throws java.sql.SQLException;
+ method public boolean othersUpdatesAreVisible(int) throws java.sql.SQLException;
+ method public boolean ownDeletesAreVisible(int) throws java.sql.SQLException;
+ method public boolean ownInsertsAreVisible(int) throws java.sql.SQLException;
+ method public boolean ownUpdatesAreVisible(int) throws java.sql.SQLException;
+ method public boolean storesLowerCaseIdentifiers() throws java.sql.SQLException;
+ method public boolean storesLowerCaseQuotedIdentifiers() throws java.sql.SQLException;
+ method public boolean storesMixedCaseIdentifiers() throws java.sql.SQLException;
+ method public boolean storesMixedCaseQuotedIdentifiers() throws java.sql.SQLException;
+ method public boolean storesUpperCaseIdentifiers() throws java.sql.SQLException;
+ method public boolean storesUpperCaseQuotedIdentifiers() throws java.sql.SQLException;
+ method public boolean supportsANSI92EntryLevelSQL() throws java.sql.SQLException;
+ method public boolean supportsANSI92FullSQL() throws java.sql.SQLException;
+ method public boolean supportsANSI92IntermediateSQL() throws java.sql.SQLException;
+ method public boolean supportsAlterTableWithAddColumn() throws java.sql.SQLException;
+ method public boolean supportsAlterTableWithDropColumn() throws java.sql.SQLException;
+ method public boolean supportsBatchUpdates() throws java.sql.SQLException;
+ method public boolean supportsCatalogsInDataManipulation() throws java.sql.SQLException;
+ method public boolean supportsCatalogsInIndexDefinitions() throws java.sql.SQLException;
+ method public boolean supportsCatalogsInPrivilegeDefinitions() throws java.sql.SQLException;
+ method public boolean supportsCatalogsInProcedureCalls() throws java.sql.SQLException;
+ method public boolean supportsCatalogsInTableDefinitions() throws java.sql.SQLException;
+ method public boolean supportsColumnAliasing() throws java.sql.SQLException;
+ method public boolean supportsConvert() throws java.sql.SQLException;
+ method public boolean supportsConvert(int, int) throws java.sql.SQLException;
+ method public boolean supportsCoreSQLGrammar() throws java.sql.SQLException;
+ method public boolean supportsCorrelatedSubqueries() throws java.sql.SQLException;
+ method public boolean supportsDataDefinitionAndDataManipulationTransactions() throws java.sql.SQLException;
+ method public boolean supportsDataManipulationTransactionsOnly() throws java.sql.SQLException;
+ method public boolean supportsDifferentTableCorrelationNames() throws java.sql.SQLException;
+ method public boolean supportsExpressionsInOrderBy() throws java.sql.SQLException;
+ method public boolean supportsExtendedSQLGrammar() throws java.sql.SQLException;
+ method public boolean supportsFullOuterJoins() throws java.sql.SQLException;
+ method public boolean supportsGetGeneratedKeys() throws java.sql.SQLException;
+ method public boolean supportsGroupBy() throws java.sql.SQLException;
+ method public boolean supportsGroupByBeyondSelect() throws java.sql.SQLException;
+ method public boolean supportsGroupByUnrelated() throws java.sql.SQLException;
+ method public boolean supportsIntegrityEnhancementFacility() throws java.sql.SQLException;
+ method public boolean supportsLikeEscapeClause() throws java.sql.SQLException;
+ method public boolean supportsLimitedOuterJoins() throws java.sql.SQLException;
+ method public boolean supportsMinimumSQLGrammar() throws java.sql.SQLException;
+ method public boolean supportsMixedCaseIdentifiers() throws java.sql.SQLException;
+ method public boolean supportsMixedCaseQuotedIdentifiers() throws java.sql.SQLException;
+ method public boolean supportsMultipleOpenResults() throws java.sql.SQLException;
+ method public boolean supportsMultipleResultSets() throws java.sql.SQLException;
+ method public boolean supportsMultipleTransactions() throws java.sql.SQLException;
+ method public boolean supportsNamedParameters() throws java.sql.SQLException;
+ method public boolean supportsNonNullableColumns() throws java.sql.SQLException;
+ method public boolean supportsOpenCursorsAcrossCommit() throws java.sql.SQLException;
+ method public boolean supportsOpenCursorsAcrossRollback() throws java.sql.SQLException;
+ method public boolean supportsOpenStatementsAcrossCommit() throws java.sql.SQLException;
+ method public boolean supportsOpenStatementsAcrossRollback() throws java.sql.SQLException;
+ method public boolean supportsOrderByUnrelated() throws java.sql.SQLException;
+ method public boolean supportsOuterJoins() throws java.sql.SQLException;
+ method public boolean supportsPositionedDelete() throws java.sql.SQLException;
+ method public boolean supportsPositionedUpdate() throws java.sql.SQLException;
+ method public boolean supportsResultSetConcurrency(int, int) throws java.sql.SQLException;
+ method public boolean supportsResultSetHoldability(int) throws java.sql.SQLException;
+ method public boolean supportsResultSetType(int) throws java.sql.SQLException;
+ method public boolean supportsSavepoints() throws java.sql.SQLException;
+ method public boolean supportsSchemasInDataManipulation() throws java.sql.SQLException;
+ method public boolean supportsSchemasInIndexDefinitions() throws java.sql.SQLException;
+ method public boolean supportsSchemasInPrivilegeDefinitions() throws java.sql.SQLException;
+ method public boolean supportsSchemasInProcedureCalls() throws java.sql.SQLException;
+ method public boolean supportsSchemasInTableDefinitions() throws java.sql.SQLException;
+ method public boolean supportsSelectForUpdate() throws java.sql.SQLException;
+ method public boolean supportsStatementPooling() throws java.sql.SQLException;
+ method public boolean supportsStoredFunctionsUsingCallSyntax() throws java.sql.SQLException;
+ method public boolean supportsStoredProcedures() throws java.sql.SQLException;
+ method public boolean supportsSubqueriesInComparisons() throws java.sql.SQLException;
+ method public boolean supportsSubqueriesInExists() throws java.sql.SQLException;
+ method public boolean supportsSubqueriesInIns() throws java.sql.SQLException;
+ method public boolean supportsSubqueriesInQuantifieds() throws java.sql.SQLException;
+ method public boolean supportsTableCorrelationNames() throws java.sql.SQLException;
+ method public boolean supportsTransactionIsolationLevel(int) throws java.sql.SQLException;
+ method public boolean supportsTransactions() throws java.sql.SQLException;
+ method public boolean supportsUnion() throws java.sql.SQLException;
+ method public boolean supportsUnionAll() throws java.sql.SQLException;
+ method public boolean updatesAreDetected(int) throws java.sql.SQLException;
+ method public boolean usesLocalFilePerTable() throws java.sql.SQLException;
+ method public boolean usesLocalFiles() throws java.sql.SQLException;
+ field public static final short attributeNoNulls = 0; // 0x0
+ field public static final short attributeNullable = 1; // 0x1
+ field public static final short attributeNullableUnknown = 2; // 0x2
+ field public static final int bestRowNotPseudo = 1; // 0x1
+ field public static final int bestRowPseudo = 2; // 0x2
+ field public static final int bestRowSession = 2; // 0x2
+ field public static final int bestRowTemporary = 0; // 0x0
+ field public static final int bestRowTransaction = 1; // 0x1
+ field public static final int bestRowUnknown = 0; // 0x0
+ field public static final int columnNoNulls = 0; // 0x0
+ field public static final int columnNullable = 1; // 0x1
+ field public static final int columnNullableUnknown = 2; // 0x2
+ field public static final int functionColumnIn = 1; // 0x1
+ field public static final int functionColumnInOut = 2; // 0x2
+ field public static final int functionColumnOut = 3; // 0x3
+ field public static final int functionColumnResult = 5; // 0x5
+ field public static final int functionColumnUnknown = 0; // 0x0
+ field public static final int functionNoNulls = 0; // 0x0
+ field public static final int functionNoTable = 1; // 0x1
+ field public static final int functionNullable = 1; // 0x1
+ field public static final int functionNullableUnknown = 2; // 0x2
+ field public static final int functionResultUnknown = 0; // 0x0
+ field public static final int functionReturn = 4; // 0x4
+ field public static final int functionReturnsTable = 2; // 0x2
+ field public static final int importedKeyCascade = 0; // 0x0
+ field public static final int importedKeyInitiallyDeferred = 5; // 0x5
+ field public static final int importedKeyInitiallyImmediate = 6; // 0x6
+ field public static final int importedKeyNoAction = 3; // 0x3
+ field public static final int importedKeyNotDeferrable = 7; // 0x7
+ field public static final int importedKeyRestrict = 1; // 0x1
+ field public static final int importedKeySetDefault = 4; // 0x4
+ field public static final int importedKeySetNull = 2; // 0x2
+ field public static final int procedureColumnIn = 1; // 0x1
+ field public static final int procedureColumnInOut = 2; // 0x2
+ field public static final int procedureColumnOut = 4; // 0x4
+ field public static final int procedureColumnResult = 3; // 0x3
+ field public static final int procedureColumnReturn = 5; // 0x5
+ field public static final int procedureColumnUnknown = 0; // 0x0
+ field public static final int procedureNoNulls = 0; // 0x0
+ field public static final int procedureNoResult = 1; // 0x1
+ field public static final int procedureNullable = 1; // 0x1
+ field public static final int procedureNullableUnknown = 2; // 0x2
+ field public static final int procedureResultUnknown = 0; // 0x0
+ field public static final int procedureReturnsResult = 2; // 0x2
+ field public static final int sqlStateSQL = 2; // 0x2
+ field public static final int sqlStateSQL99 = 2; // 0x2
+ field public static final int sqlStateXOpen = 1; // 0x1
+ field public static final short tableIndexClustered = 1; // 0x1
+ field public static final short tableIndexHashed = 2; // 0x2
+ field public static final short tableIndexOther = 3; // 0x3
+ field public static final short tableIndexStatistic = 0; // 0x0
+ field public static final int typeNoNulls = 0; // 0x0
+ field public static final int typeNullable = 1; // 0x1
+ field public static final int typeNullableUnknown = 2; // 0x2
+ field public static final int typePredBasic = 2; // 0x2
+ field public static final int typePredChar = 1; // 0x1
+ field public static final int typePredNone = 0; // 0x0
+ field public static final int typeSearchable = 3; // 0x3
+ field public static final int versionColumnNotPseudo = 1; // 0x1
+ field public static final int versionColumnPseudo = 2; // 0x2
+ field public static final int versionColumnUnknown = 0; // 0x0
+ }
+
+ public class Date extends java.util.Date {
+ ctor @Deprecated public Date(int, int, int);
+ ctor public Date(long);
+ method public static java.sql.Date valueOf(String);
+ }
+
+ public interface Driver {
+ method public boolean acceptsURL(String) throws java.sql.SQLException;
+ method public java.sql.Connection connect(String, java.util.Properties) throws java.sql.SQLException;
+ method public int getMajorVersion();
+ method public int getMinorVersion();
+ method public java.sql.DriverPropertyInfo[] getPropertyInfo(String, java.util.Properties) throws java.sql.SQLException;
+ method public boolean jdbcCompliant();
+ }
+
+ public class DriverManager {
+ method public static void deregisterDriver(java.sql.Driver) throws java.sql.SQLException;
+ method public static java.sql.Connection getConnection(String, java.util.Properties) throws java.sql.SQLException;
+ method public static java.sql.Connection getConnection(String, String, String) throws java.sql.SQLException;
+ method public static java.sql.Connection getConnection(String) throws java.sql.SQLException;
+ method public static java.sql.Driver getDriver(String) throws java.sql.SQLException;
+ method public static java.util.Enumeration<java.sql.Driver> getDrivers();
+ method @Deprecated public static java.io.PrintStream getLogStream();
+ method public static java.io.PrintWriter getLogWriter();
+ method public static int getLoginTimeout();
+ method public static void println(String);
+ method public static void registerDriver(java.sql.Driver) throws java.sql.SQLException;
+ method @Deprecated public static void setLogStream(java.io.PrintStream);
+ method public static void setLogWriter(java.io.PrintWriter);
+ method public static void setLoginTimeout(int);
+ }
+
+ public class DriverPropertyInfo {
+ ctor public DriverPropertyInfo(String, String);
+ field public String[] choices;
+ field public String description;
+ field public String name;
+ field public boolean required;
+ field public String value;
+ }
+
+ public interface NClob extends java.sql.Clob {
+ }
+
+ public interface ParameterMetaData extends java.sql.Wrapper {
+ method public String getParameterClassName(int) throws java.sql.SQLException;
+ method public int getParameterCount() throws java.sql.SQLException;
+ method public int getParameterMode(int) throws java.sql.SQLException;
+ method public int getParameterType(int) throws java.sql.SQLException;
+ method public String getParameterTypeName(int) throws java.sql.SQLException;
+ method public int getPrecision(int) throws java.sql.SQLException;
+ method public int getScale(int) throws java.sql.SQLException;
+ method public int isNullable(int) throws java.sql.SQLException;
+ method public boolean isSigned(int) throws java.sql.SQLException;
+ field public static final int parameterModeIn = 1; // 0x1
+ field public static final int parameterModeInOut = 2; // 0x2
+ field public static final int parameterModeOut = 4; // 0x4
+ field public static final int parameterModeUnknown = 0; // 0x0
+ field public static final int parameterNoNulls = 0; // 0x0
+ field public static final int parameterNullable = 1; // 0x1
+ field public static final int parameterNullableUnknown = 2; // 0x2
+ }
+
+ public interface PreparedStatement extends java.sql.Statement {
+ method public void addBatch() throws java.sql.SQLException;
+ method public void clearParameters() throws java.sql.SQLException;
+ method public boolean execute() throws java.sql.SQLException;
+ method public java.sql.ResultSet executeQuery() throws java.sql.SQLException;
+ method public int executeUpdate() throws java.sql.SQLException;
+ method public java.sql.ResultSetMetaData getMetaData() throws java.sql.SQLException;
+ method public java.sql.ParameterMetaData getParameterMetaData() throws java.sql.SQLException;
+ method public void setArray(int, java.sql.Array) throws java.sql.SQLException;
+ method public void setAsciiStream(int, java.io.InputStream, int) throws java.sql.SQLException;
+ method public void setAsciiStream(int, java.io.InputStream, long) throws java.sql.SQLException;
+ method public void setAsciiStream(int, java.io.InputStream) throws java.sql.SQLException;
+ method public void setBigDecimal(int, java.math.BigDecimal) throws java.sql.SQLException;
+ method public void setBinaryStream(int, java.io.InputStream, int) throws java.sql.SQLException;
+ method public void setBinaryStream(int, java.io.InputStream, long) throws java.sql.SQLException;
+ method public void setBinaryStream(int, java.io.InputStream) throws java.sql.SQLException;
+ method public void setBlob(int, java.sql.Blob) throws java.sql.SQLException;
+ method public void setBlob(int, java.io.InputStream, long) throws java.sql.SQLException;
+ method public void setBlob(int, java.io.InputStream) throws java.sql.SQLException;
+ method public void setBoolean(int, boolean) throws java.sql.SQLException;
+ method public void setByte(int, byte) throws java.sql.SQLException;
+ method public void setBytes(int, byte[]) throws java.sql.SQLException;
+ method public void setCharacterStream(int, java.io.Reader, int) throws java.sql.SQLException;
+ method public void setCharacterStream(int, java.io.Reader, long) throws java.sql.SQLException;
+ method public void setCharacterStream(int, java.io.Reader) throws java.sql.SQLException;
+ method public void setClob(int, java.sql.Clob) throws java.sql.SQLException;
+ method public void setClob(int, java.io.Reader, long) throws java.sql.SQLException;
+ method public void setClob(int, java.io.Reader) throws java.sql.SQLException;
+ method public void setDate(int, java.sql.Date) throws java.sql.SQLException;
+ method public void setDate(int, java.sql.Date, java.util.Calendar) throws java.sql.SQLException;
+ method public void setDouble(int, double) throws java.sql.SQLException;
+ method public void setFloat(int, float) throws java.sql.SQLException;
+ method public void setInt(int, int) throws java.sql.SQLException;
+ method public void setLong(int, long) throws java.sql.SQLException;
+ method public void setNCharacterStream(int, java.io.Reader, long) throws java.sql.SQLException;
+ method public void setNCharacterStream(int, java.io.Reader) throws java.sql.SQLException;
+ method public void setNClob(int, java.sql.NClob) throws java.sql.SQLException;
+ method public void setNClob(int, java.io.Reader, long) throws java.sql.SQLException;
+ method public void setNClob(int, java.io.Reader) throws java.sql.SQLException;
+ method public void setNString(int, String) throws java.sql.SQLException;
+ method public void setNull(int, int) throws java.sql.SQLException;
+ method public void setNull(int, int, String) throws java.sql.SQLException;
+ method public void setObject(int, Object, int) throws java.sql.SQLException;
+ method public void setObject(int, Object) throws java.sql.SQLException;
+ method public void setObject(int, Object, int, int) throws java.sql.SQLException;
+ method public void setRef(int, java.sql.Ref) throws java.sql.SQLException;
+ method public void setRowId(int, java.sql.RowId) throws java.sql.SQLException;
+ method public void setSQLXML(int, java.sql.SQLXML) throws java.sql.SQLException;
+ method public void setShort(int, short) throws java.sql.SQLException;
+ method public void setString(int, String) throws java.sql.SQLException;
+ method public void setTime(int, java.sql.Time) throws java.sql.SQLException;
+ method public void setTime(int, java.sql.Time, java.util.Calendar) throws java.sql.SQLException;
+ method public void setTimestamp(int, java.sql.Timestamp) throws java.sql.SQLException;
+ method public void setTimestamp(int, java.sql.Timestamp, java.util.Calendar) throws java.sql.SQLException;
+ method public void setURL(int, java.net.URL) throws java.sql.SQLException;
+ method @Deprecated public void setUnicodeStream(int, java.io.InputStream, int) throws java.sql.SQLException;
+ }
+
+ public interface Ref {
+ method public String getBaseTypeName() throws java.sql.SQLException;
+ method public Object getObject(java.util.Map<java.lang.String,java.lang.Class<?>>) throws java.sql.SQLException;
+ method public Object getObject() throws java.sql.SQLException;
+ method public void setObject(Object) throws java.sql.SQLException;
+ }
+
+ public interface ResultSet extends java.sql.Wrapper java.lang.AutoCloseable {
+ method public boolean absolute(int) throws java.sql.SQLException;
+ method public void afterLast() throws java.sql.SQLException;
+ method public void beforeFirst() throws java.sql.SQLException;
+ method public void cancelRowUpdates() throws java.sql.SQLException;
+ method public void clearWarnings() throws java.sql.SQLException;
+ method public void close() throws java.sql.SQLException;
+ method public void deleteRow() throws java.sql.SQLException;
+ method public int findColumn(String) throws java.sql.SQLException;
+ method public boolean first() throws java.sql.SQLException;
+ method public java.sql.Array getArray(int) throws java.sql.SQLException;
+ method public java.sql.Array getArray(String) throws java.sql.SQLException;
+ method public java.io.InputStream getAsciiStream(int) throws java.sql.SQLException;
+ method public java.io.InputStream getAsciiStream(String) throws java.sql.SQLException;
+ method @Deprecated public java.math.BigDecimal getBigDecimal(int, int) throws java.sql.SQLException;
+ method @Deprecated public java.math.BigDecimal getBigDecimal(String, int) throws java.sql.SQLException;
+ method public java.math.BigDecimal getBigDecimal(int) throws java.sql.SQLException;
+ method public java.math.BigDecimal getBigDecimal(String) throws java.sql.SQLException;
+ method public java.io.InputStream getBinaryStream(int) throws java.sql.SQLException;
+ method public java.io.InputStream getBinaryStream(String) throws java.sql.SQLException;
+ method public java.sql.Blob getBlob(int) throws java.sql.SQLException;
+ method public java.sql.Blob getBlob(String) throws java.sql.SQLException;
+ method public boolean getBoolean(int) throws java.sql.SQLException;
+ method public boolean getBoolean(String) throws java.sql.SQLException;
+ method public byte getByte(int) throws java.sql.SQLException;
+ method public byte getByte(String) throws java.sql.SQLException;
+ method public byte[] getBytes(int) throws java.sql.SQLException;
+ method public byte[] getBytes(String) throws java.sql.SQLException;
+ method public java.io.Reader getCharacterStream(int) throws java.sql.SQLException;
+ method public java.io.Reader getCharacterStream(String) throws java.sql.SQLException;
+ method public java.sql.Clob getClob(int) throws java.sql.SQLException;
+ method public java.sql.Clob getClob(String) throws java.sql.SQLException;
+ method public int getConcurrency() throws java.sql.SQLException;
+ method public String getCursorName() throws java.sql.SQLException;
+ method public java.sql.Date getDate(int) throws java.sql.SQLException;
+ method public java.sql.Date getDate(String) throws java.sql.SQLException;
+ method public java.sql.Date getDate(int, java.util.Calendar) throws java.sql.SQLException;
+ method public java.sql.Date getDate(String, java.util.Calendar) throws java.sql.SQLException;
+ method public double getDouble(int) throws java.sql.SQLException;
+ method public double getDouble(String) throws java.sql.SQLException;
+ method public int getFetchDirection() throws java.sql.SQLException;
+ method public int getFetchSize() throws java.sql.SQLException;
+ method public float getFloat(int) throws java.sql.SQLException;
+ method public float getFloat(String) throws java.sql.SQLException;
+ method public int getHoldability() throws java.sql.SQLException;
+ method public int getInt(int) throws java.sql.SQLException;
+ method public int getInt(String) throws java.sql.SQLException;
+ method public long getLong(int) throws java.sql.SQLException;
+ method public long getLong(String) throws java.sql.SQLException;
+ method public java.sql.ResultSetMetaData getMetaData() throws java.sql.SQLException;
+ method public java.io.Reader getNCharacterStream(int) throws java.sql.SQLException;
+ method public java.io.Reader getNCharacterStream(String) throws java.sql.SQLException;
+ method public java.sql.NClob getNClob(int) throws java.sql.SQLException;
+ method public java.sql.NClob getNClob(String) throws java.sql.SQLException;
+ method public String getNString(int) throws java.sql.SQLException;
+ method public String getNString(String) throws java.sql.SQLException;
+ method public Object getObject(int) throws java.sql.SQLException;
+ method public Object getObject(String) throws java.sql.SQLException;
+ method public Object getObject(int, java.util.Map<java.lang.String,java.lang.Class<?>>) throws java.sql.SQLException;
+ method public Object getObject(String, java.util.Map<java.lang.String,java.lang.Class<?>>) throws java.sql.SQLException;
+ method public java.sql.Ref getRef(int) throws java.sql.SQLException;
+ method public java.sql.Ref getRef(String) throws java.sql.SQLException;
+ method public int getRow() throws java.sql.SQLException;
+ method public java.sql.RowId getRowId(int) throws java.sql.SQLException;
+ method public java.sql.RowId getRowId(String) throws java.sql.SQLException;
+ method public java.sql.SQLXML getSQLXML(int) throws java.sql.SQLException;
+ method public java.sql.SQLXML getSQLXML(String) throws java.sql.SQLException;
+ method public short getShort(int) throws java.sql.SQLException;
+ method public short getShort(String) throws java.sql.SQLException;
+ method public java.sql.Statement getStatement() throws java.sql.SQLException;
+ method public String getString(int) throws java.sql.SQLException;
+ method public String getString(String) throws java.sql.SQLException;
+ method public java.sql.Time getTime(int) throws java.sql.SQLException;
+ method public java.sql.Time getTime(String) throws java.sql.SQLException;
+ method public java.sql.Time getTime(int, java.util.Calendar) throws java.sql.SQLException;
+ method public java.sql.Time getTime(String, java.util.Calendar) throws java.sql.SQLException;
+ method public java.sql.Timestamp getTimestamp(int) throws java.sql.SQLException;
+ method public java.sql.Timestamp getTimestamp(String) throws java.sql.SQLException;
+ method public java.sql.Timestamp getTimestamp(int, java.util.Calendar) throws java.sql.SQLException;
+ method public java.sql.Timestamp getTimestamp(String, java.util.Calendar) throws java.sql.SQLException;
+ method public int getType() throws java.sql.SQLException;
+ method public java.net.URL getURL(int) throws java.sql.SQLException;
+ method public java.net.URL getURL(String) throws java.sql.SQLException;
+ method @Deprecated public java.io.InputStream getUnicodeStream(int) throws java.sql.SQLException;
+ method @Deprecated public java.io.InputStream getUnicodeStream(String) throws java.sql.SQLException;
+ method public java.sql.SQLWarning getWarnings() throws java.sql.SQLException;
+ method public void insertRow() throws java.sql.SQLException;
+ method public boolean isAfterLast() throws java.sql.SQLException;
+ method public boolean isBeforeFirst() throws java.sql.SQLException;
+ method public boolean isClosed() throws java.sql.SQLException;
+ method public boolean isFirst() throws java.sql.SQLException;
+ method public boolean isLast() throws java.sql.SQLException;
+ method public boolean last() throws java.sql.SQLException;
+ method public void moveToCurrentRow() throws java.sql.SQLException;
+ method public void moveToInsertRow() throws java.sql.SQLException;
+ method public boolean next() throws java.sql.SQLException;
+ method public boolean previous() throws java.sql.SQLException;
+ method public void refreshRow() throws java.sql.SQLException;
+ method public boolean relative(int) throws java.sql.SQLException;
+ method public boolean rowDeleted() throws java.sql.SQLException;
+ method public boolean rowInserted() throws java.sql.SQLException;
+ method public boolean rowUpdated() throws java.sql.SQLException;
+ method public void setFetchDirection(int) throws java.sql.SQLException;
+ method public void setFetchSize(int) throws java.sql.SQLException;
+ method public void updateArray(int, java.sql.Array) throws java.sql.SQLException;
+ method public void updateArray(String, java.sql.Array) throws java.sql.SQLException;
+ method public void updateAsciiStream(int, java.io.InputStream, int) throws java.sql.SQLException;
+ method public void updateAsciiStream(String, java.io.InputStream, int) throws java.sql.SQLException;
+ method public void updateAsciiStream(int, java.io.InputStream, long) throws java.sql.SQLException;
+ method public void updateAsciiStream(String, java.io.InputStream, long) throws java.sql.SQLException;
+ method public void updateAsciiStream(int, java.io.InputStream) throws java.sql.SQLException;
+ method public void updateAsciiStream(String, java.io.InputStream) throws java.sql.SQLException;
+ method public void updateBigDecimal(int, java.math.BigDecimal) throws java.sql.SQLException;
+ method public void updateBigDecimal(String, java.math.BigDecimal) throws java.sql.SQLException;
+ method public void updateBinaryStream(int, java.io.InputStream, int) throws java.sql.SQLException;
+ method public void updateBinaryStream(String, java.io.InputStream, int) throws java.sql.SQLException;
+ method public void updateBinaryStream(int, java.io.InputStream, long) throws java.sql.SQLException;
+ method public void updateBinaryStream(String, java.io.InputStream, long) throws java.sql.SQLException;
+ method public void updateBinaryStream(int, java.io.InputStream) throws java.sql.SQLException;
+ method public void updateBinaryStream(String, java.io.InputStream) throws java.sql.SQLException;
+ method public void updateBlob(int, java.sql.Blob) throws java.sql.SQLException;
+ method public void updateBlob(String, java.sql.Blob) throws java.sql.SQLException;
+ method public void updateBlob(int, java.io.InputStream, long) throws java.sql.SQLException;
+ method public void updateBlob(String, java.io.InputStream, long) throws java.sql.SQLException;
+ method public void updateBlob(int, java.io.InputStream) throws java.sql.SQLException;
+ method public void updateBlob(String, java.io.InputStream) throws java.sql.SQLException;
+ method public void updateBoolean(int, boolean) throws java.sql.SQLException;
+ method public void updateBoolean(String, boolean) throws java.sql.SQLException;
+ method public void updateByte(int, byte) throws java.sql.SQLException;
+ method public void updateByte(String, byte) throws java.sql.SQLException;
+ method public void updateBytes(int, byte[]) throws java.sql.SQLException;
+ method public void updateBytes(String, byte[]) throws java.sql.SQLException;
+ method public void updateCharacterStream(int, java.io.Reader, int) throws java.sql.SQLException;
+ method public void updateCharacterStream(String, java.io.Reader, int) throws java.sql.SQLException;
+ method public void updateCharacterStream(int, java.io.Reader, long) throws java.sql.SQLException;
+ method public void updateCharacterStream(String, java.io.Reader, long) throws java.sql.SQLException;
+ method public void updateCharacterStream(int, java.io.Reader) throws java.sql.SQLException;
+ method public void updateCharacterStream(String, java.io.Reader) throws java.sql.SQLException;
+ method public void updateClob(int, java.sql.Clob) throws java.sql.SQLException;
+ method public void updateClob(String, java.sql.Clob) throws java.sql.SQLException;
+ method public void updateClob(int, java.io.Reader, long) throws java.sql.SQLException;
+ method public void updateClob(String, java.io.Reader, long) throws java.sql.SQLException;
+ method public void updateClob(int, java.io.Reader) throws java.sql.SQLException;
+ method public void updateClob(String, java.io.Reader) throws java.sql.SQLException;
+ method public void updateDate(int, java.sql.Date) throws java.sql.SQLException;
+ method public void updateDate(String, java.sql.Date) throws java.sql.SQLException;
+ method public void updateDouble(int, double) throws java.sql.SQLException;
+ method public void updateDouble(String, double) throws java.sql.SQLException;
+ method public void updateFloat(int, float) throws java.sql.SQLException;
+ method public void updateFloat(String, float) throws java.sql.SQLException;
+ method public void updateInt(int, int) throws java.sql.SQLException;
+ method public void updateInt(String, int) throws java.sql.SQLException;
+ method public void updateLong(int, long) throws java.sql.SQLException;
+ method public void updateLong(String, long) throws java.sql.SQLException;
+ method public void updateNCharacterStream(int, java.io.Reader, long) throws java.sql.SQLException;
+ method public void updateNCharacterStream(String, java.io.Reader, long) throws java.sql.SQLException;
+ method public void updateNCharacterStream(int, java.io.Reader) throws java.sql.SQLException;
+ method public void updateNCharacterStream(String, java.io.Reader) throws java.sql.SQLException;
+ method public void updateNClob(int, java.sql.NClob) throws java.sql.SQLException;
+ method public void updateNClob(String, java.sql.NClob) throws java.sql.SQLException;
+ method public void updateNClob(int, java.io.Reader, long) throws java.sql.SQLException;
+ method public void updateNClob(String, java.io.Reader, long) throws java.sql.SQLException;
+ method public void updateNClob(int, java.io.Reader) throws java.sql.SQLException;
+ method public void updateNClob(String, java.io.Reader) throws java.sql.SQLException;
+ method public void updateNString(int, String) throws java.sql.SQLException;
+ method public void updateNString(String, String) throws java.sql.SQLException;
+ method public void updateNull(int) throws java.sql.SQLException;
+ method public void updateNull(String) throws java.sql.SQLException;
+ method public void updateObject(int, Object, int) throws java.sql.SQLException;
+ method public void updateObject(int, Object) throws java.sql.SQLException;
+ method public void updateObject(String, Object, int) throws java.sql.SQLException;
+ method public void updateObject(String, Object) throws java.sql.SQLException;
+ method public void updateRef(int, java.sql.Ref) throws java.sql.SQLException;
+ method public void updateRef(String, java.sql.Ref) throws java.sql.SQLException;
+ method public void updateRow() throws java.sql.SQLException;
+ method public void updateRowId(int, java.sql.RowId) throws java.sql.SQLException;
+ method public void updateRowId(String, java.sql.RowId) throws java.sql.SQLException;
+ method public void updateSQLXML(int, java.sql.SQLXML) throws java.sql.SQLException;
+ method public void updateSQLXML(String, java.sql.SQLXML) throws java.sql.SQLException;
+ method public void updateShort(int, short) throws java.sql.SQLException;
+ method public void updateShort(String, short) throws java.sql.SQLException;
+ method public void updateString(int, String) throws java.sql.SQLException;
+ method public void updateString(String, String) throws java.sql.SQLException;
+ method public void updateTime(int, java.sql.Time) throws java.sql.SQLException;
+ method public void updateTime(String, java.sql.Time) throws java.sql.SQLException;
+ method public void updateTimestamp(int, java.sql.Timestamp) throws java.sql.SQLException;
+ method public void updateTimestamp(String, java.sql.Timestamp) throws java.sql.SQLException;
+ method public boolean wasNull() throws java.sql.SQLException;
+ field public static final int CLOSE_CURSORS_AT_COMMIT = 2; // 0x2
+ field public static final int CONCUR_READ_ONLY = 1007; // 0x3ef
+ field public static final int CONCUR_UPDATABLE = 1008; // 0x3f0
+ field public static final int FETCH_FORWARD = 1000; // 0x3e8
+ field public static final int FETCH_REVERSE = 1001; // 0x3e9
+ field public static final int FETCH_UNKNOWN = 1002; // 0x3ea
+ field public static final int HOLD_CURSORS_OVER_COMMIT = 1; // 0x1
+ field public static final int TYPE_FORWARD_ONLY = 1003; // 0x3eb
+ field public static final int TYPE_SCROLL_INSENSITIVE = 1004; // 0x3ec
+ field public static final int TYPE_SCROLL_SENSITIVE = 1005; // 0x3ed
+ }
+
+ public interface ResultSetMetaData extends java.sql.Wrapper {
+ method public String getCatalogName(int) throws java.sql.SQLException;
+ method public String getColumnClassName(int) throws java.sql.SQLException;
+ method public int getColumnCount() throws java.sql.SQLException;
+ method public int getColumnDisplaySize(int) throws java.sql.SQLException;
+ method public String getColumnLabel(int) throws java.sql.SQLException;
+ method public String getColumnName(int) throws java.sql.SQLException;
+ method public int getColumnType(int) throws java.sql.SQLException;
+ method public String getColumnTypeName(int) throws java.sql.SQLException;
+ method public int getPrecision(int) throws java.sql.SQLException;
+ method public int getScale(int) throws java.sql.SQLException;
+ method public String getSchemaName(int) throws java.sql.SQLException;
+ method public String getTableName(int) throws java.sql.SQLException;
+ method public boolean isAutoIncrement(int) throws java.sql.SQLException;
+ method public boolean isCaseSensitive(int) throws java.sql.SQLException;
+ method public boolean isCurrency(int) throws java.sql.SQLException;
+ method public boolean isDefinitelyWritable(int) throws java.sql.SQLException;
+ method public int isNullable(int) throws java.sql.SQLException;
+ method public boolean isReadOnly(int) throws java.sql.SQLException;
+ method public boolean isSearchable(int) throws java.sql.SQLException;
+ method public boolean isSigned(int) throws java.sql.SQLException;
+ method public boolean isWritable(int) throws java.sql.SQLException;
+ field public static final int columnNoNulls = 0; // 0x0
+ field public static final int columnNullable = 1; // 0x1
+ field public static final int columnNullableUnknown = 2; // 0x2
+ }
+
+ public interface RowId {
+ method public boolean equals(Object);
+ method public byte[] getBytes();
+ method public int hashCode();
+ method public String toString();
+ }
+
+ public enum RowIdLifetime {
+ enum_constant public static final java.sql.RowIdLifetime ROWID_UNSUPPORTED;
+ enum_constant public static final java.sql.RowIdLifetime ROWID_VALID_FOREVER;
+ enum_constant public static final java.sql.RowIdLifetime ROWID_VALID_OTHER;
+ enum_constant public static final java.sql.RowIdLifetime ROWID_VALID_SESSION;
+ enum_constant public static final java.sql.RowIdLifetime ROWID_VALID_TRANSACTION;
+ }
+
+ public class SQLClientInfoException extends java.sql.SQLException {
+ ctor public SQLClientInfoException();
+ ctor public SQLClientInfoException(java.util.Map<java.lang.String,java.sql.ClientInfoStatus>);
+ ctor public SQLClientInfoException(java.util.Map<java.lang.String,java.sql.ClientInfoStatus>, Throwable);
+ ctor public SQLClientInfoException(String, java.util.Map<java.lang.String,java.sql.ClientInfoStatus>);
+ ctor public SQLClientInfoException(String, java.util.Map<java.lang.String,java.sql.ClientInfoStatus>, Throwable);
+ ctor public SQLClientInfoException(String, String, java.util.Map<java.lang.String,java.sql.ClientInfoStatus>);
+ ctor public SQLClientInfoException(String, String, java.util.Map<java.lang.String,java.sql.ClientInfoStatus>, Throwable);
+ ctor public SQLClientInfoException(String, String, int, java.util.Map<java.lang.String,java.sql.ClientInfoStatus>);
+ ctor public SQLClientInfoException(String, String, int, java.util.Map<java.lang.String,java.sql.ClientInfoStatus>, Throwable);
+ method public java.util.Map<java.lang.String,java.sql.ClientInfoStatus> getFailedProperties();
+ }
+
+ public interface SQLData {
+ method public String getSQLTypeName() throws java.sql.SQLException;
+ method public void readSQL(java.sql.SQLInput, String) throws java.sql.SQLException;
+ method public void writeSQL(java.sql.SQLOutput) throws java.sql.SQLException;
+ }
+
+ public class SQLDataException extends java.sql.SQLNonTransientException {
+ ctor public SQLDataException();
+ ctor public SQLDataException(String);
+ ctor public SQLDataException(String, String);
+ ctor public SQLDataException(String, String, int);
+ ctor public SQLDataException(Throwable);
+ ctor public SQLDataException(String, Throwable);
+ ctor public SQLDataException(String, String, Throwable);
+ ctor public SQLDataException(String, String, int, Throwable);
+ }
+
+ public class SQLException extends java.lang.Exception implements java.lang.Iterable<java.lang.Throwable> {
+ ctor public SQLException(String, String, int);
+ ctor public SQLException(String, String);
+ ctor public SQLException(String);
+ ctor public SQLException();
+ ctor public SQLException(Throwable);
+ ctor public SQLException(String, Throwable);
+ ctor public SQLException(String, String, Throwable);
+ ctor public SQLException(String, String, int, Throwable);
+ method public int getErrorCode();
+ method public java.sql.SQLException getNextException();
+ method public String getSQLState();
+ method public java.util.Iterator<java.lang.Throwable> iterator();
+ method public void setNextException(java.sql.SQLException);
+ }
+
+ public class SQLFeatureNotSupportedException extends java.sql.SQLNonTransientException {
+ ctor public SQLFeatureNotSupportedException();
+ ctor public SQLFeatureNotSupportedException(String);
+ ctor public SQLFeatureNotSupportedException(String, String);
+ ctor public SQLFeatureNotSupportedException(String, String, int);
+ ctor public SQLFeatureNotSupportedException(Throwable);
+ ctor public SQLFeatureNotSupportedException(String, Throwable);
+ ctor public SQLFeatureNotSupportedException(String, String, Throwable);
+ ctor public SQLFeatureNotSupportedException(String, String, int, Throwable);
+ }
+
+ public interface SQLInput {
+ method public java.sql.Array readArray() throws java.sql.SQLException;
+ method public java.io.InputStream readAsciiStream() throws java.sql.SQLException;
+ method public java.math.BigDecimal readBigDecimal() throws java.sql.SQLException;
+ method public java.io.InputStream readBinaryStream() throws java.sql.SQLException;
+ method public java.sql.Blob readBlob() throws java.sql.SQLException;
+ method public boolean readBoolean() throws java.sql.SQLException;
+ method public byte readByte() throws java.sql.SQLException;
+ method public byte[] readBytes() throws java.sql.SQLException;
+ method public java.io.Reader readCharacterStream() throws java.sql.SQLException;
+ method public java.sql.Clob readClob() throws java.sql.SQLException;
+ method public java.sql.Date readDate() throws java.sql.SQLException;
+ method public double readDouble() throws java.sql.SQLException;
+ method public float readFloat() throws java.sql.SQLException;
+ method public int readInt() throws java.sql.SQLException;
+ method public long readLong() throws java.sql.SQLException;
+ method public java.sql.NClob readNClob() throws java.sql.SQLException;
+ method public String readNString() throws java.sql.SQLException;
+ method public Object readObject() throws java.sql.SQLException;
+ method public java.sql.Ref readRef() throws java.sql.SQLException;
+ method public java.sql.RowId readRowId() throws java.sql.SQLException;
+ method public java.sql.SQLXML readSQLXML() throws java.sql.SQLException;
+ method public short readShort() throws java.sql.SQLException;
+ method public String readString() throws java.sql.SQLException;
+ method public java.sql.Time readTime() throws java.sql.SQLException;
+ method public java.sql.Timestamp readTimestamp() throws java.sql.SQLException;
+ method public java.net.URL readURL() throws java.sql.SQLException;
+ method public boolean wasNull() throws java.sql.SQLException;
+ }
+
+ public class SQLIntegrityConstraintViolationException extends java.sql.SQLNonTransientException {
+ ctor public SQLIntegrityConstraintViolationException();
+ ctor public SQLIntegrityConstraintViolationException(String);
+ ctor public SQLIntegrityConstraintViolationException(String, String);
+ ctor public SQLIntegrityConstraintViolationException(String, String, int);
+ ctor public SQLIntegrityConstraintViolationException(Throwable);
+ ctor public SQLIntegrityConstraintViolationException(String, Throwable);
+ ctor public SQLIntegrityConstraintViolationException(String, String, Throwable);
+ ctor public SQLIntegrityConstraintViolationException(String, String, int, Throwable);
+ }
+
+ public class SQLInvalidAuthorizationSpecException extends java.sql.SQLNonTransientException {
+ ctor public SQLInvalidAuthorizationSpecException();
+ ctor public SQLInvalidAuthorizationSpecException(String);
+ ctor public SQLInvalidAuthorizationSpecException(String, String);
+ ctor public SQLInvalidAuthorizationSpecException(String, String, int);
+ ctor public SQLInvalidAuthorizationSpecException(Throwable);
+ ctor public SQLInvalidAuthorizationSpecException(String, Throwable);
+ ctor public SQLInvalidAuthorizationSpecException(String, String, Throwable);
+ ctor public SQLInvalidAuthorizationSpecException(String, String, int, Throwable);
+ }
+
+ public class SQLNonTransientConnectionException extends java.sql.SQLNonTransientException {
+ ctor public SQLNonTransientConnectionException();
+ ctor public SQLNonTransientConnectionException(String);
+ ctor public SQLNonTransientConnectionException(String, String);
+ ctor public SQLNonTransientConnectionException(String, String, int);
+ ctor public SQLNonTransientConnectionException(Throwable);
+ ctor public SQLNonTransientConnectionException(String, Throwable);
+ ctor public SQLNonTransientConnectionException(String, String, Throwable);
+ ctor public SQLNonTransientConnectionException(String, String, int, Throwable);
+ }
+
+ public class SQLNonTransientException extends java.sql.SQLException {
+ ctor public SQLNonTransientException();
+ ctor public SQLNonTransientException(String);
+ ctor public SQLNonTransientException(String, String);
+ ctor public SQLNonTransientException(String, String, int);
+ ctor public SQLNonTransientException(Throwable);
+ ctor public SQLNonTransientException(String, Throwable);
+ ctor public SQLNonTransientException(String, String, Throwable);
+ ctor public SQLNonTransientException(String, String, int, Throwable);
+ }
+
+ public interface SQLOutput {
+ method public void writeArray(java.sql.Array) throws java.sql.SQLException;
+ method public void writeAsciiStream(java.io.InputStream) throws java.sql.SQLException;
+ method public void writeBigDecimal(java.math.BigDecimal) throws java.sql.SQLException;
+ method public void writeBinaryStream(java.io.InputStream) throws java.sql.SQLException;
+ method public void writeBlob(java.sql.Blob) throws java.sql.SQLException;
+ method public void writeBoolean(boolean) throws java.sql.SQLException;
+ method public void writeByte(byte) throws java.sql.SQLException;
+ method public void writeBytes(byte[]) throws java.sql.SQLException;
+ method public void writeCharacterStream(java.io.Reader) throws java.sql.SQLException;
+ method public void writeClob(java.sql.Clob) throws java.sql.SQLException;
+ method public void writeDate(java.sql.Date) throws java.sql.SQLException;
+ method public void writeDouble(double) throws java.sql.SQLException;
+ method public void writeFloat(float) throws java.sql.SQLException;
+ method public void writeInt(int) throws java.sql.SQLException;
+ method public void writeLong(long) throws java.sql.SQLException;
+ method public void writeNClob(java.sql.NClob) throws java.sql.SQLException;
+ method public void writeNString(String) throws java.sql.SQLException;
+ method public void writeObject(java.sql.SQLData) throws java.sql.SQLException;
+ method public void writeRef(java.sql.Ref) throws java.sql.SQLException;
+ method public void writeRowId(java.sql.RowId) throws java.sql.SQLException;
+ method public void writeSQLXML(java.sql.SQLXML) throws java.sql.SQLException;
+ method public void writeShort(short) throws java.sql.SQLException;
+ method public void writeString(String) throws java.sql.SQLException;
+ method public void writeStruct(java.sql.Struct) throws java.sql.SQLException;
+ method public void writeTime(java.sql.Time) throws java.sql.SQLException;
+ method public void writeTimestamp(java.sql.Timestamp) throws java.sql.SQLException;
+ method public void writeURL(java.net.URL) throws java.sql.SQLException;
+ }
+
+ public final class SQLPermission extends java.security.BasicPermission {
+ ctor public SQLPermission(String);
+ ctor public SQLPermission(String, String);
+ }
+
+ public class SQLRecoverableException extends java.sql.SQLException {
+ ctor public SQLRecoverableException();
+ ctor public SQLRecoverableException(String);
+ ctor public SQLRecoverableException(String, String);
+ ctor public SQLRecoverableException(String, String, int);
+ ctor public SQLRecoverableException(Throwable);
+ ctor public SQLRecoverableException(String, Throwable);
+ ctor public SQLRecoverableException(String, String, Throwable);
+ ctor public SQLRecoverableException(String, String, int, Throwable);
+ }
+
+ public class SQLSyntaxErrorException extends java.sql.SQLNonTransientException {
+ ctor public SQLSyntaxErrorException();
+ ctor public SQLSyntaxErrorException(String);
+ ctor public SQLSyntaxErrorException(String, String);
+ ctor public SQLSyntaxErrorException(String, String, int);
+ ctor public SQLSyntaxErrorException(Throwable);
+ ctor public SQLSyntaxErrorException(String, Throwable);
+ ctor public SQLSyntaxErrorException(String, String, Throwable);
+ ctor public SQLSyntaxErrorException(String, String, int, Throwable);
+ }
+
+ public class SQLTimeoutException extends java.sql.SQLTransientException {
+ ctor public SQLTimeoutException();
+ ctor public SQLTimeoutException(String);
+ ctor public SQLTimeoutException(String, String);
+ ctor public SQLTimeoutException(String, String, int);
+ ctor public SQLTimeoutException(Throwable);
+ ctor public SQLTimeoutException(String, Throwable);
+ ctor public SQLTimeoutException(String, String, Throwable);
+ ctor public SQLTimeoutException(String, String, int, Throwable);
+ }
+
+ public class SQLTransactionRollbackException extends java.sql.SQLTransientException {
+ ctor public SQLTransactionRollbackException();
+ ctor public SQLTransactionRollbackException(String);
+ ctor public SQLTransactionRollbackException(String, String);
+ ctor public SQLTransactionRollbackException(String, String, int);
+ ctor public SQLTransactionRollbackException(Throwable);
+ ctor public SQLTransactionRollbackException(String, Throwable);
+ ctor public SQLTransactionRollbackException(String, String, Throwable);
+ ctor public SQLTransactionRollbackException(String, String, int, Throwable);
+ }
+
+ public class SQLTransientConnectionException extends java.sql.SQLTransientException {
+ ctor public SQLTransientConnectionException();
+ ctor public SQLTransientConnectionException(String);
+ ctor public SQLTransientConnectionException(String, String);
+ ctor public SQLTransientConnectionException(String, String, int);
+ ctor public SQLTransientConnectionException(Throwable);
+ ctor public SQLTransientConnectionException(String, Throwable);
+ ctor public SQLTransientConnectionException(String, String, Throwable);
+ ctor public SQLTransientConnectionException(String, String, int, Throwable);
+ }
+
+ public class SQLTransientException extends java.sql.SQLException {
+ ctor public SQLTransientException();
+ ctor public SQLTransientException(String);
+ ctor public SQLTransientException(String, String);
+ ctor public SQLTransientException(String, String, int);
+ ctor public SQLTransientException(Throwable);
+ ctor public SQLTransientException(String, Throwable);
+ ctor public SQLTransientException(String, String, Throwable);
+ ctor public SQLTransientException(String, String, int, Throwable);
+ }
+
+ public class SQLWarning extends java.sql.SQLException {
+ ctor public SQLWarning(String, String, int);
+ ctor public SQLWarning(String, String);
+ ctor public SQLWarning(String);
+ ctor public SQLWarning();
+ ctor public SQLWarning(Throwable);
+ ctor public SQLWarning(String, Throwable);
+ ctor public SQLWarning(String, String, Throwable);
+ ctor public SQLWarning(String, String, int, Throwable);
+ method public java.sql.SQLWarning getNextWarning();
+ method public void setNextWarning(java.sql.SQLWarning);
+ }
+
+ public interface SQLXML {
+ method public void free() throws java.sql.SQLException;
+ method public java.io.InputStream getBinaryStream() throws java.sql.SQLException;
+ method public java.io.Reader getCharacterStream() throws java.sql.SQLException;
+ method public <T extends javax.xml.transform.Source> T getSource(Class<T>) throws java.sql.SQLException;
+ method public String getString() throws java.sql.SQLException;
+ method public java.io.OutputStream setBinaryStream() throws java.sql.SQLException;
+ method public java.io.Writer setCharacterStream() throws java.sql.SQLException;
+ method public <T extends javax.xml.transform.Result> T setResult(Class<T>) throws java.sql.SQLException;
+ method public void setString(String) throws java.sql.SQLException;
+ }
+
+ public interface Savepoint {
+ method public int getSavepointId() throws java.sql.SQLException;
+ method public String getSavepointName() throws java.sql.SQLException;
+ }
+
+ public interface Statement extends java.sql.Wrapper java.lang.AutoCloseable {
+ method public void addBatch(String) throws java.sql.SQLException;
+ method public void cancel() throws java.sql.SQLException;
+ method public void clearBatch() throws java.sql.SQLException;
+ method public void clearWarnings() throws java.sql.SQLException;
+ method public void close() throws java.sql.SQLException;
+ method public boolean execute(String) throws java.sql.SQLException;
+ method public boolean execute(String, int) throws java.sql.SQLException;
+ method public boolean execute(String, int[]) throws java.sql.SQLException;
+ method public boolean execute(String, String[]) throws java.sql.SQLException;
+ method public int[] executeBatch() throws java.sql.SQLException;
+ method public java.sql.ResultSet executeQuery(String) throws java.sql.SQLException;
+ method public int executeUpdate(String) throws java.sql.SQLException;
+ method public int executeUpdate(String, int) throws java.sql.SQLException;
+ method public int executeUpdate(String, int[]) throws java.sql.SQLException;
+ method public int executeUpdate(String, String[]) throws java.sql.SQLException;
+ method public java.sql.Connection getConnection() throws java.sql.SQLException;
+ method public int getFetchDirection() throws java.sql.SQLException;
+ method public int getFetchSize() throws java.sql.SQLException;
+ method public java.sql.ResultSet getGeneratedKeys() throws java.sql.SQLException;
+ method public int getMaxFieldSize() throws java.sql.SQLException;
+ method public int getMaxRows() throws java.sql.SQLException;
+ method public boolean getMoreResults() throws java.sql.SQLException;
+ method public boolean getMoreResults(int) throws java.sql.SQLException;
+ method public int getQueryTimeout() throws java.sql.SQLException;
+ method public java.sql.ResultSet getResultSet() throws java.sql.SQLException;
+ method public int getResultSetConcurrency() throws java.sql.SQLException;
+ method public int getResultSetHoldability() throws java.sql.SQLException;
+ method public int getResultSetType() throws java.sql.SQLException;
+ method public int getUpdateCount() throws java.sql.SQLException;
+ method public java.sql.SQLWarning getWarnings() throws java.sql.SQLException;
+ method public boolean isClosed() throws java.sql.SQLException;
+ method public boolean isPoolable() throws java.sql.SQLException;
+ method public void setCursorName(String) throws java.sql.SQLException;
+ method public void setEscapeProcessing(boolean) throws java.sql.SQLException;
+ method public void setFetchDirection(int) throws java.sql.SQLException;
+ method public void setFetchSize(int) throws java.sql.SQLException;
+ method public void setMaxFieldSize(int) throws java.sql.SQLException;
+ method public void setMaxRows(int) throws java.sql.SQLException;
+ method public void setPoolable(boolean) throws java.sql.SQLException;
+ method public void setQueryTimeout(int) throws java.sql.SQLException;
+ field public static final int CLOSE_ALL_RESULTS = 3; // 0x3
+ field public static final int CLOSE_CURRENT_RESULT = 1; // 0x1
+ field public static final int EXECUTE_FAILED = -3; // 0xfffffffd
+ field public static final int KEEP_CURRENT_RESULT = 2; // 0x2
+ field public static final int NO_GENERATED_KEYS = 2; // 0x2
+ field public static final int RETURN_GENERATED_KEYS = 1; // 0x1
+ field public static final int SUCCESS_NO_INFO = -2; // 0xfffffffe
+ }
+
+ public interface Struct {
+ method public Object[] getAttributes() throws java.sql.SQLException;
+ method public Object[] getAttributes(java.util.Map<java.lang.String,java.lang.Class<?>>) throws java.sql.SQLException;
+ method public String getSQLTypeName() throws java.sql.SQLException;
+ }
+
+ public class Time extends java.util.Date {
+ ctor @Deprecated public Time(int, int, int);
+ ctor public Time(long);
+ method public static java.sql.Time valueOf(String);
+ }
+
+ public class Timestamp extends java.util.Date {
+ ctor @Deprecated public Timestamp(int, int, int, int, int, int, int);
+ ctor public Timestamp(long);
+ method public boolean after(java.sql.Timestamp);
+ method public boolean before(java.sql.Timestamp);
+ method public int compareTo(java.sql.Timestamp);
+ method public boolean equals(java.sql.Timestamp);
+ method public int getNanos();
+ method public void setNanos(int);
+ method public static java.sql.Timestamp valueOf(String);
+ }
+
+ public class Types {
+ field public static final int ARRAY = 2003; // 0x7d3
+ field public static final int BIGINT = -5; // 0xfffffffb
+ field public static final int BINARY = -2; // 0xfffffffe
+ field public static final int BIT = -7; // 0xfffffff9
+ field public static final int BLOB = 2004; // 0x7d4
+ field public static final int BOOLEAN = 16; // 0x10
+ field public static final int CHAR = 1; // 0x1
+ field public static final int CLOB = 2005; // 0x7d5
+ field public static final int DATALINK = 70; // 0x46
+ field public static final int DATE = 91; // 0x5b
+ field public static final int DECIMAL = 3; // 0x3
+ field public static final int DISTINCT = 2001; // 0x7d1
+ field public static final int DOUBLE = 8; // 0x8
+ field public static final int FLOAT = 6; // 0x6
+ field public static final int INTEGER = 4; // 0x4
+ field public static final int JAVA_OBJECT = 2000; // 0x7d0
+ field public static final int LONGNVARCHAR = -16; // 0xfffffff0
+ field public static final int LONGVARBINARY = -4; // 0xfffffffc
+ field public static final int LONGVARCHAR = -1; // 0xffffffff
+ field public static final int NCHAR = -15; // 0xfffffff1
+ field public static final int NCLOB = 2011; // 0x7db
+ field public static final int NULL = 0; // 0x0
+ field public static final int NUMERIC = 2; // 0x2
+ field public static final int NVARCHAR = -9; // 0xfffffff7
+ field public static final int OTHER = 1111; // 0x457
+ field public static final int REAL = 7; // 0x7
+ field public static final int REF = 2006; // 0x7d6
+ field public static final int ROWID = -8; // 0xfffffff8
+ field public static final int SMALLINT = 5; // 0x5
+ field public static final int SQLXML = 2009; // 0x7d9
+ field public static final int STRUCT = 2002; // 0x7d2
+ field public static final int TIME = 92; // 0x5c
+ field public static final int TIMESTAMP = 93; // 0x5d
+ field public static final int TINYINT = -6; // 0xfffffffa
+ field public static final int VARBINARY = -3; // 0xfffffffd
+ field public static final int VARCHAR = 12; // 0xc
+ }
+
+ public interface Wrapper {
+ method public boolean isWrapperFor(Class<?>) throws java.sql.SQLException;
+ method public <T> T unwrap(Class<T>) throws java.sql.SQLException;
+ }
+
+}
+
+package java.text {
+
+ public class Annotation {
+ ctor public Annotation(Object);
+ method public Object getValue();
+ }
+
+ public interface AttributedCharacterIterator extends java.text.CharacterIterator {
+ method public java.util.Set<java.text.AttributedCharacterIterator.Attribute> getAllAttributeKeys();
+ method public Object getAttribute(java.text.AttributedCharacterIterator.Attribute);
+ method public java.util.Map<java.text.AttributedCharacterIterator.Attribute,java.lang.Object> getAttributes();
+ method public int getRunLimit();
+ method public int getRunLimit(java.text.AttributedCharacterIterator.Attribute);
+ method public int getRunLimit(java.util.Set<? extends java.text.AttributedCharacterIterator.Attribute>);
+ method public int getRunStart();
+ method public int getRunStart(java.text.AttributedCharacterIterator.Attribute);
+ method public int getRunStart(java.util.Set<? extends java.text.AttributedCharacterIterator.Attribute>);
+ }
+
+ public static class AttributedCharacterIterator.Attribute implements java.io.Serializable {
+ ctor protected AttributedCharacterIterator.Attribute(String);
+ method public final boolean equals(Object);
+ method protected String getName();
+ method public final int hashCode();
+ method protected Object readResolve() throws java.io.InvalidObjectException;
+ field public static final java.text.AttributedCharacterIterator.Attribute INPUT_METHOD_SEGMENT;
+ field public static final java.text.AttributedCharacterIterator.Attribute LANGUAGE;
+ field public static final java.text.AttributedCharacterIterator.Attribute READING;
+ }
+
+ public class AttributedString {
+ ctor public AttributedString(String);
+ ctor public AttributedString(String, java.util.Map<? extends java.text.AttributedCharacterIterator.Attribute,?>);
+ ctor public AttributedString(java.text.AttributedCharacterIterator);
+ ctor public AttributedString(java.text.AttributedCharacterIterator, int, int);
+ ctor public AttributedString(java.text.AttributedCharacterIterator, int, int, java.text.AttributedCharacterIterator.Attribute[]);
+ method public void addAttribute(java.text.AttributedCharacterIterator.Attribute, Object);
+ method public void addAttribute(java.text.AttributedCharacterIterator.Attribute, Object, int, int);
+ method public void addAttributes(java.util.Map<? extends java.text.AttributedCharacterIterator.Attribute,?>, int, int);
+ method public java.text.AttributedCharacterIterator getIterator();
+ method public java.text.AttributedCharacterIterator getIterator(java.text.AttributedCharacterIterator.Attribute[]);
+ method public java.text.AttributedCharacterIterator getIterator(java.text.AttributedCharacterIterator.Attribute[], int, int);
+ }
+
+ public final class Bidi {
+ ctor public Bidi(String, int);
+ ctor public Bidi(java.text.AttributedCharacterIterator);
+ ctor public Bidi(char[], int, byte[], int, int, int);
+ method public boolean baseIsLeftToRight();
+ method public java.text.Bidi createLineBidi(int, int);
+ method public int getBaseLevel();
+ method public int getLength();
+ method public int getLevelAt(int);
+ method public int getRunCount();
+ method public int getRunLevel(int);
+ method public int getRunLimit(int);
+ method public int getRunStart(int);
+ method public boolean isLeftToRight();
+ method public boolean isMixed();
+ method public boolean isRightToLeft();
+ method public static void reorderVisually(byte[], int, Object[], int, int);
+ method public static boolean requiresBidi(char[], int, int);
+ field public static final int DIRECTION_DEFAULT_LEFT_TO_RIGHT = -2; // 0xfffffffe
+ field public static final int DIRECTION_DEFAULT_RIGHT_TO_LEFT = -1; // 0xffffffff
+ field public static final int DIRECTION_LEFT_TO_RIGHT = 0; // 0x0
+ field public static final int DIRECTION_RIGHT_TO_LEFT = 1; // 0x1
+ }
+
+ public abstract class BreakIterator implements java.lang.Cloneable {
+ ctor protected BreakIterator();
+ method public Object clone();
+ method public abstract int current();
+ method public abstract int first();
+ method public abstract int following(int);
+ method public static java.util.Locale[] getAvailableLocales();
+ method public static java.text.BreakIterator getCharacterInstance();
+ method public static java.text.BreakIterator getCharacterInstance(java.util.Locale);
+ method public static java.text.BreakIterator getLineInstance();
+ method public static java.text.BreakIterator getLineInstance(java.util.Locale);
+ method public static java.text.BreakIterator getSentenceInstance();
+ method public static java.text.BreakIterator getSentenceInstance(java.util.Locale);
+ method public abstract java.text.CharacterIterator getText();
+ method public static java.text.BreakIterator getWordInstance();
+ method public static java.text.BreakIterator getWordInstance(java.util.Locale);
+ method public boolean isBoundary(int);
+ method public abstract int last();
+ method public abstract int next(int);
+ method public abstract int next();
+ method public int preceding(int);
+ method public abstract int previous();
+ method public void setText(String);
+ method public abstract void setText(java.text.CharacterIterator);
+ field public static final int DONE = -1; // 0xffffffff
+ }
+
+ public interface CharacterIterator extends java.lang.Cloneable {
+ method public Object clone();
+ method public char current();
+ method public char first();
+ method public int getBeginIndex();
+ method public int getEndIndex();
+ method public int getIndex();
+ method public char last();
+ method public char next();
+ method public char previous();
+ method public char setIndex(int);
+ field public static final char DONE = 65535; // 0xffff '\uffff'
+ }
+
+ public class ChoiceFormat extends java.text.NumberFormat {
+ ctor public ChoiceFormat(String);
+ ctor public ChoiceFormat(double[], String[]);
+ method public void applyPattern(String);
+ method public StringBuffer format(long, StringBuffer, java.text.FieldPosition);
+ method public StringBuffer format(double, StringBuffer, java.text.FieldPosition);
+ method public Object[] getFormats();
+ method public double[] getLimits();
+ method public static final double nextDouble(double);
+ method public static double nextDouble(double, boolean);
+ method public Number parse(String, java.text.ParsePosition);
+ method public static final double previousDouble(double);
+ method public void setChoices(double[], String[]);
+ method public String toPattern();
+ }
+
+ public final class CollationElementIterator {
+ method public int getMaxExpansion(int);
+ method public int getOffset();
+ method public int next();
+ method public int previous();
+ method public static int primaryOrder(int);
+ method public void reset();
+ method public static short secondaryOrder(int);
+ method public void setOffset(int);
+ method public void setText(String);
+ method public void setText(java.text.CharacterIterator);
+ method public static short tertiaryOrder(int);
+ field public static final int NULLORDER = -1; // 0xffffffff
+ }
+
+ public abstract class CollationKey implements java.lang.Comparable<java.text.CollationKey> {
+ ctor protected CollationKey(String);
+ method public abstract int compareTo(java.text.CollationKey);
+ method public String getSourceString();
+ method public abstract byte[] toByteArray();
+ }
+
+ public abstract class Collator implements java.lang.Cloneable java.util.Comparator<java.lang.Object> {
+ ctor protected Collator();
+ method public Object clone();
+ method public abstract int compare(String, String);
+ method public int compare(Object, Object);
+ method public boolean equals(String, String);
+ method public static java.util.Locale[] getAvailableLocales();
+ method public abstract java.text.CollationKey getCollationKey(String);
+ method public int getDecomposition();
+ method public static java.text.Collator getInstance();
+ method public static java.text.Collator getInstance(java.util.Locale);
+ method public int getStrength();
+ method public abstract int hashCode();
+ method public void setDecomposition(int);
+ method public void setStrength(int);
+ field public static final int CANONICAL_DECOMPOSITION = 1; // 0x1
+ field public static final int FULL_DECOMPOSITION = 2; // 0x2
+ field public static final int IDENTICAL = 3; // 0x3
+ field public static final int NO_DECOMPOSITION = 0; // 0x0
+ field public static final int PRIMARY = 0; // 0x0
+ field public static final int SECONDARY = 1; // 0x1
+ field public static final int TERTIARY = 2; // 0x2
+ }
+
+ public abstract class DateFormat extends java.text.Format {
+ ctor protected DateFormat();
+ method @NonNull public final StringBuffer format(@NonNull Object, @NonNull StringBuffer, @NonNull java.text.FieldPosition);
+ method @NonNull public abstract StringBuffer format(@NonNull java.util.Date, @NonNull StringBuffer, @NonNull java.text.FieldPosition);
+ method @NonNull public final String format(@NonNull java.util.Date);
+ method @NonNull public static java.util.Locale[] getAvailableLocales();
+ method @NonNull public java.util.Calendar getCalendar();
+ method @NonNull public static final java.text.DateFormat getDateInstance();
+ method @NonNull public static final java.text.DateFormat getDateInstance(int);
+ method @NonNull public static final java.text.DateFormat getDateInstance(int, @NonNull java.util.Locale);
+ method @NonNull public static final java.text.DateFormat getDateTimeInstance();
+ method @NonNull public static final java.text.DateFormat getDateTimeInstance(int, int);
+ method @NonNull public static final java.text.DateFormat getDateTimeInstance(int, int, @NonNull java.util.Locale);
+ method @NonNull public static final java.text.DateFormat getInstance();
+ method @NonNull public java.text.NumberFormat getNumberFormat();
+ method @NonNull public static final java.text.DateFormat getTimeInstance();
+ method @NonNull public static final java.text.DateFormat getTimeInstance(int);
+ method @NonNull public static final java.text.DateFormat getTimeInstance(int, @NonNull java.util.Locale);
+ method @NonNull public java.util.TimeZone getTimeZone();
+ method public boolean isLenient();
+ method @Nullable public java.util.Date parse(@NonNull String) throws java.text.ParseException;
+ method @Nullable public abstract java.util.Date parse(@NonNull String, @NonNull java.text.ParsePosition);
+ method @Nullable public Object parseObject(@NonNull String, @NonNull java.text.ParsePosition);
+ method public void setCalendar(@NonNull java.util.Calendar);
+ method public void setLenient(boolean);
+ method public void setNumberFormat(@NonNull java.text.NumberFormat);
+ method public void setTimeZone(@NonNull java.util.TimeZone);
+ field public static final int AM_PM_FIELD = 14; // 0xe
+ field public static final int DATE_FIELD = 3; // 0x3
+ field public static final int DAY_OF_WEEK_FIELD = 9; // 0x9
+ field public static final int DAY_OF_WEEK_IN_MONTH_FIELD = 11; // 0xb
+ field public static final int DAY_OF_YEAR_FIELD = 10; // 0xa
+ field public static final int DEFAULT = 2; // 0x2
+ field public static final int ERA_FIELD = 0; // 0x0
+ field public static final int FULL = 0; // 0x0
+ field public static final int HOUR0_FIELD = 16; // 0x10
+ field public static final int HOUR1_FIELD = 15; // 0xf
+ field public static final int HOUR_OF_DAY0_FIELD = 5; // 0x5
+ field public static final int HOUR_OF_DAY1_FIELD = 4; // 0x4
+ field public static final int LONG = 1; // 0x1
+ field public static final int MEDIUM = 2; // 0x2
+ field public static final int MILLISECOND_FIELD = 8; // 0x8
+ field public static final int MINUTE_FIELD = 6; // 0x6
+ field public static final int MONTH_FIELD = 2; // 0x2
+ field public static final int SECOND_FIELD = 7; // 0x7
+ field public static final int SHORT = 3; // 0x3
+ field public static final int TIMEZONE_FIELD = 17; // 0x11
+ field public static final int WEEK_OF_MONTH_FIELD = 13; // 0xd
+ field public static final int WEEK_OF_YEAR_FIELD = 12; // 0xc
+ field public static final int YEAR_FIELD = 1; // 0x1
+ field @NonNull protected java.util.Calendar calendar;
+ field @NonNull protected java.text.NumberFormat numberFormat;
+ }
+
+ public static class DateFormat.Field extends java.text.Format.Field {
+ ctor protected DateFormat.Field(@NonNull String, int);
+ method public int getCalendarField();
+ method @NonNull public static java.text.DateFormat.Field ofCalendarField(int);
+ field @NonNull public static final java.text.DateFormat.Field AM_PM;
+ field @NonNull public static final java.text.DateFormat.Field DAY_OF_MONTH;
+ field @NonNull public static final java.text.DateFormat.Field DAY_OF_WEEK;
+ field @NonNull public static final java.text.DateFormat.Field DAY_OF_WEEK_IN_MONTH;
+ field @NonNull public static final java.text.DateFormat.Field DAY_OF_YEAR;
+ field @NonNull public static final java.text.DateFormat.Field ERA;
+ field @NonNull public static final java.text.DateFormat.Field HOUR0;
+ field @NonNull public static final java.text.DateFormat.Field HOUR1;
+ field @NonNull public static final java.text.DateFormat.Field HOUR_OF_DAY0;
+ field @NonNull public static final java.text.DateFormat.Field HOUR_OF_DAY1;
+ field @NonNull public static final java.text.DateFormat.Field MILLISECOND;
+ field @NonNull public static final java.text.DateFormat.Field MINUTE;
+ field @NonNull public static final java.text.DateFormat.Field MONTH;
+ field @NonNull public static final java.text.DateFormat.Field SECOND;
+ field @NonNull public static final java.text.DateFormat.Field TIME_ZONE;
+ field @NonNull public static final java.text.DateFormat.Field WEEK_OF_MONTH;
+ field @NonNull public static final java.text.DateFormat.Field WEEK_OF_YEAR;
+ field @NonNull public static final java.text.DateFormat.Field YEAR;
+ }
+
+ public class DateFormatSymbols implements java.lang.Cloneable java.io.Serializable {
+ ctor public DateFormatSymbols();
+ ctor public DateFormatSymbols(java.util.Locale);
+ method public Object clone();
+ method public String[] getAmPmStrings();
+ method public static java.util.Locale[] getAvailableLocales();
+ method public String[] getEras();
+ method public static final java.text.DateFormatSymbols getInstance();
+ method public static final java.text.DateFormatSymbols getInstance(java.util.Locale);
+ method public String getLocalPatternChars();
+ method public String[] getMonths();
+ method public String[] getShortMonths();
+ method public String[] getShortWeekdays();
+ method public String[] getWeekdays();
+ method public String[][] getZoneStrings();
+ method public void setAmPmStrings(String[]);
+ method public void setEras(String[]);
+ method public void setLocalPatternChars(String);
+ method public void setMonths(String[]);
+ method public void setShortMonths(String[]);
+ method public void setShortWeekdays(String[]);
+ method public void setWeekdays(String[]);
+ method public void setZoneStrings(String[][]);
+ }
+
+ public class DecimalFormat extends java.text.NumberFormat {
+ ctor public DecimalFormat();
+ ctor public DecimalFormat(String);
+ ctor public DecimalFormat(String, java.text.DecimalFormatSymbols);
+ method public void applyLocalizedPattern(String);
+ method public void applyPattern(String);
+ method public final StringBuffer format(Object, StringBuffer, java.text.FieldPosition);
+ method public StringBuffer format(double, StringBuffer, java.text.FieldPosition);
+ method public StringBuffer format(long, StringBuffer, java.text.FieldPosition);
+ method public java.text.DecimalFormatSymbols getDecimalFormatSymbols();
+ method public int getGroupingSize();
+ method public int getMultiplier();
+ method public String getNegativePrefix();
+ method public String getNegativeSuffix();
+ method public String getPositivePrefix();
+ method public String getPositiveSuffix();
+ method public boolean isDecimalSeparatorAlwaysShown();
+ method public boolean isParseBigDecimal();
+ method public Number parse(String, java.text.ParsePosition);
+ method public void setDecimalFormatSymbols(java.text.DecimalFormatSymbols);
+ method public void setDecimalSeparatorAlwaysShown(boolean);
+ method public void setGroupingSize(int);
+ method public void setMultiplier(int);
+ method public void setNegativePrefix(String);
+ method public void setNegativeSuffix(String);
+ method public void setParseBigDecimal(boolean);
+ method public void setPositivePrefix(String);
+ method public void setPositiveSuffix(String);
+ method public String toLocalizedPattern();
+ method public String toPattern();
+ }
+
+ public class DecimalFormatSymbols implements java.lang.Cloneable java.io.Serializable {
+ ctor public DecimalFormatSymbols();
+ ctor public DecimalFormatSymbols(java.util.Locale);
+ method public Object clone();
+ method public static java.util.Locale[] getAvailableLocales();
+ method public java.util.Currency getCurrency();
+ method public String getCurrencySymbol();
+ method public char getDecimalSeparator();
+ method public char getDigit();
+ method public String getExponentSeparator();
+ method public char getGroupingSeparator();
+ method public String getInfinity();
+ method public static final java.text.DecimalFormatSymbols getInstance();
+ method public static final java.text.DecimalFormatSymbols getInstance(java.util.Locale);
+ method public String getInternationalCurrencySymbol();
+ method public char getMinusSign();
+ method public char getMonetaryDecimalSeparator();
+ method public String getNaN();
+ method public char getPatternSeparator();
+ method public char getPerMill();
+ method public char getPercent();
+ method public char getZeroDigit();
+ method public void setCurrency(java.util.Currency);
+ method public void setCurrencySymbol(String);
+ method public void setDecimalSeparator(char);
+ method public void setDigit(char);
+ method public void setExponentSeparator(String);
+ method public void setGroupingSeparator(char);
+ method public void setInfinity(String);
+ method public void setInternationalCurrencySymbol(String);
+ method public void setMinusSign(char);
+ method public void setMonetaryDecimalSeparator(char);
+ method public void setNaN(String);
+ method public void setPatternSeparator(char);
+ method public void setPerMill(char);
+ method public void setPercent(char);
+ method public void setZeroDigit(char);
+ }
+
+ public class FieldPosition {
+ ctor public FieldPosition(int);
+ ctor public FieldPosition(java.text.Format.Field);
+ ctor public FieldPosition(java.text.Format.Field, int);
+ method public int getBeginIndex();
+ method public int getEndIndex();
+ method public int getField();
+ method public java.text.Format.Field getFieldAttribute();
+ method public void setBeginIndex(int);
+ method public void setEndIndex(int);
+ }
+
+ public abstract class Format implements java.lang.Cloneable java.io.Serializable {
+ ctor protected Format();
+ method public Object clone();
+ method public final String format(Object);
+ method public abstract StringBuffer format(Object, StringBuffer, java.text.FieldPosition);
+ method public java.text.AttributedCharacterIterator formatToCharacterIterator(Object);
+ method public abstract Object parseObject(String, java.text.ParsePosition);
+ method public Object parseObject(String) throws java.text.ParseException;
+ }
+
+ public static class Format.Field extends java.text.AttributedCharacterIterator.Attribute {
+ ctor protected Format.Field(String);
+ }
+
+ public class MessageFormat extends java.text.Format {
+ ctor public MessageFormat(String);
+ ctor public MessageFormat(String, java.util.Locale);
+ method public void applyPattern(String);
+ method public final StringBuffer format(Object[], StringBuffer, java.text.FieldPosition);
+ method public static String format(String, java.lang.Object...);
+ method public final StringBuffer format(Object, StringBuffer, java.text.FieldPosition);
+ method public java.text.Format[] getFormats();
+ method public java.text.Format[] getFormatsByArgumentIndex();
+ method public java.util.Locale getLocale();
+ method public Object[] parse(String, java.text.ParsePosition);
+ method public Object[] parse(String) throws java.text.ParseException;
+ method public Object parseObject(String, java.text.ParsePosition);
+ method public void setFormat(int, java.text.Format);
+ method public void setFormatByArgumentIndex(int, java.text.Format);
+ method public void setFormats(java.text.Format[]);
+ method public void setFormatsByArgumentIndex(java.text.Format[]);
+ method public void setLocale(java.util.Locale);
+ method public String toPattern();
+ }
+
+ public static class MessageFormat.Field extends java.text.Format.Field {
+ ctor protected MessageFormat.Field(String);
+ field public static final java.text.MessageFormat.Field ARGUMENT;
+ }
+
+ public final class Normalizer {
+ method public static boolean isNormalized(CharSequence, java.text.Normalizer.Form);
+ method public static String normalize(CharSequence, java.text.Normalizer.Form);
+ }
+
+ public enum Normalizer.Form {
+ enum_constant public static final java.text.Normalizer.Form NFC;
+ enum_constant public static final java.text.Normalizer.Form NFD;
+ enum_constant public static final java.text.Normalizer.Form NFKC;
+ enum_constant public static final java.text.Normalizer.Form NFKD;
+ }
+
+ public abstract class NumberFormat extends java.text.Format {
+ ctor protected NumberFormat();
+ method @NonNull public StringBuffer format(@NonNull Object, @NonNull StringBuffer, @NonNull java.text.FieldPosition);
+ method @NonNull public final String format(double);
+ method @NonNull public final String format(long);
+ method @NonNull public abstract StringBuffer format(double, @NonNull StringBuffer, @NonNull java.text.FieldPosition);
+ method @NonNull public abstract StringBuffer format(long, @NonNull StringBuffer, @NonNull java.text.FieldPosition);
+ method @NonNull public static java.util.Locale[] getAvailableLocales();
+ method @Nullable public java.util.Currency getCurrency();
+ method @NonNull public static final java.text.NumberFormat getCurrencyInstance();
+ method @NonNull public static java.text.NumberFormat getCurrencyInstance(@NonNull java.util.Locale);
+ method @NonNull public static final java.text.NumberFormat getInstance();
+ method @NonNull public static java.text.NumberFormat getInstance(@NonNull java.util.Locale);
+ method @NonNull public static final java.text.NumberFormat getIntegerInstance();
+ method @NonNull public static java.text.NumberFormat getIntegerInstance(@NonNull java.util.Locale);
+ method public int getMaximumFractionDigits();
+ method public int getMaximumIntegerDigits();
+ method public int getMinimumFractionDigits();
+ method public int getMinimumIntegerDigits();
+ method @NonNull public static final java.text.NumberFormat getNumberInstance();
+ method @NonNull public static java.text.NumberFormat getNumberInstance(@NonNull java.util.Locale);
+ method @NonNull public static final java.text.NumberFormat getPercentInstance();
+ method @NonNull public static java.text.NumberFormat getPercentInstance(@NonNull java.util.Locale);
+ method @NonNull public java.math.RoundingMode getRoundingMode();
+ method public boolean isGroupingUsed();
+ method public boolean isParseIntegerOnly();
+ method @Nullable public abstract Number parse(@NonNull String, @NonNull java.text.ParsePosition);
+ method @Nullable public Number parse(@NonNull String) throws java.text.ParseException;
+ method @Nullable public final Object parseObject(@NonNull String, @NonNull java.text.ParsePosition);
+ method public void setCurrency(@NonNull java.util.Currency);
+ method public void setGroupingUsed(boolean);
+ method public void setMaximumFractionDigits(int);
+ method public void setMaximumIntegerDigits(int);
+ method public void setMinimumFractionDigits(int);
+ method public void setMinimumIntegerDigits(int);
+ method public void setParseIntegerOnly(boolean);
+ method public void setRoundingMode(@Nullable java.math.RoundingMode);
+ field public static final int FRACTION_FIELD = 1; // 0x1
+ field public static final int INTEGER_FIELD = 0; // 0x0
+ }
+
+ public static class NumberFormat.Field extends java.text.Format.Field {
+ ctor protected NumberFormat.Field(@NonNull String);
+ field @NonNull public static final java.text.NumberFormat.Field CURRENCY;
+ field @NonNull public static final java.text.NumberFormat.Field DECIMAL_SEPARATOR;
+ field @NonNull public static final java.text.NumberFormat.Field EXPONENT;
+ field @NonNull public static final java.text.NumberFormat.Field EXPONENT_SIGN;
+ field @NonNull public static final java.text.NumberFormat.Field EXPONENT_SYMBOL;
+ field @NonNull public static final java.text.NumberFormat.Field FRACTION;
+ field @NonNull public static final java.text.NumberFormat.Field GROUPING_SEPARATOR;
+ field @NonNull public static final java.text.NumberFormat.Field INTEGER;
+ field @NonNull public static final java.text.NumberFormat.Field PERCENT;
+ field @NonNull public static final java.text.NumberFormat.Field PERMILLE;
+ field @NonNull public static final java.text.NumberFormat.Field SIGN;
+ }
+
+ public class ParseException extends java.lang.Exception {
+ ctor public ParseException(String, int);
+ method public int getErrorOffset();
+ }
+
+ public class ParsePosition {
+ ctor public ParsePosition(int);
+ method public int getErrorIndex();
+ method public int getIndex();
+ method public void setErrorIndex(int);
+ method public void setIndex(int);
+ }
+
+ public class RuleBasedCollator extends java.text.Collator {
+ ctor public RuleBasedCollator(String) throws java.text.ParseException;
+ method public int compare(String, String);
+ method public java.text.CollationElementIterator getCollationElementIterator(String);
+ method public java.text.CollationElementIterator getCollationElementIterator(java.text.CharacterIterator);
+ method public java.text.CollationKey getCollationKey(String);
+ method public String getRules();
+ }
+
+ public class SimpleDateFormat extends java.text.DateFormat {
+ ctor public SimpleDateFormat();
+ ctor public SimpleDateFormat(String);
+ ctor public SimpleDateFormat(String, java.util.Locale);
+ ctor public SimpleDateFormat(String, java.text.DateFormatSymbols);
+ method public void applyLocalizedPattern(String);
+ method public void applyPattern(String);
+ method public StringBuffer format(java.util.Date, StringBuffer, java.text.FieldPosition);
+ method public java.util.Date get2DigitYearStart();
+ method public java.text.DateFormatSymbols getDateFormatSymbols();
+ method public java.util.Date parse(String, java.text.ParsePosition);
+ method public void set2DigitYearStart(java.util.Date);
+ method public void setDateFormatSymbols(java.text.DateFormatSymbols);
+ method public String toLocalizedPattern();
+ method public String toPattern();
+ }
+
+ public final class StringCharacterIterator implements java.text.CharacterIterator {
+ ctor public StringCharacterIterator(String);
+ ctor public StringCharacterIterator(String, int);
+ ctor public StringCharacterIterator(String, int, int, int);
+ method public Object clone();
+ method public char current();
+ method public char first();
+ method public int getBeginIndex();
+ method public int getEndIndex();
+ method public int getIndex();
+ method public char last();
+ method public char next();
+ method public char previous();
+ method public char setIndex(int);
+ method public void setText(String);
+ }
+
+}
+
+package java.time {
+
+ public abstract class Clock {
+ ctor protected Clock();
+ method public static java.time.Clock fixed(java.time.Instant, java.time.ZoneId);
+ method public abstract java.time.ZoneId getZone();
+ method public abstract java.time.Instant instant();
+ method public long millis();
+ method public static java.time.Clock offset(java.time.Clock, java.time.Duration);
+ method public static java.time.Clock system(java.time.ZoneId);
+ method public static java.time.Clock systemDefaultZone();
+ method public static java.time.Clock systemUTC();
+ method public static java.time.Clock tick(java.time.Clock, java.time.Duration);
+ method public static java.time.Clock tickMinutes(java.time.ZoneId);
+ method public static java.time.Clock tickSeconds(java.time.ZoneId);
+ method public abstract java.time.Clock withZone(java.time.ZoneId);
+ }
+
+ public class DateTimeException extends java.lang.RuntimeException {
+ ctor public DateTimeException(String);
+ ctor public DateTimeException(String, Throwable);
+ }
+
+ public enum DayOfWeek implements java.time.temporal.TemporalAccessor java.time.temporal.TemporalAdjuster {
+ method public java.time.temporal.Temporal adjustInto(java.time.temporal.Temporal);
+ method public static java.time.DayOfWeek from(java.time.temporal.TemporalAccessor);
+ method public String getDisplayName(java.time.format.TextStyle, java.util.Locale);
+ method public long getLong(java.time.temporal.TemporalField);
+ method public int getValue();
+ method public boolean isSupported(java.time.temporal.TemporalField);
+ method public java.time.DayOfWeek minus(long);
+ method public static java.time.DayOfWeek of(int);
+ method public java.time.DayOfWeek plus(long);
+ enum_constant public static final java.time.DayOfWeek FRIDAY;
+ enum_constant public static final java.time.DayOfWeek MONDAY;
+ enum_constant public static final java.time.DayOfWeek SATURDAY;
+ enum_constant public static final java.time.DayOfWeek SUNDAY;
+ enum_constant public static final java.time.DayOfWeek THURSDAY;
+ enum_constant public static final java.time.DayOfWeek TUESDAY;
+ enum_constant public static final java.time.DayOfWeek WEDNESDAY;
+ }
+
+ public final class Duration implements java.lang.Comparable<java.time.Duration> java.io.Serializable java.time.temporal.TemporalAmount {
+ method public java.time.Duration abs();
+ method public java.time.temporal.Temporal addTo(java.time.temporal.Temporal);
+ method public static java.time.Duration between(java.time.temporal.Temporal, java.time.temporal.Temporal);
+ method public int compareTo(java.time.Duration);
+ method public java.time.Duration dividedBy(long);
+ method public long dividedBy(java.time.Duration);
+ method public static java.time.Duration from(java.time.temporal.TemporalAmount);
+ method public long get(java.time.temporal.TemporalUnit);
+ method public int getNano();
+ method public long getSeconds();
+ method public java.util.List<java.time.temporal.TemporalUnit> getUnits();
+ method public boolean isNegative();
+ method public boolean isZero();
+ method public java.time.Duration minus(java.time.Duration);
+ method public java.time.Duration minus(long, java.time.temporal.TemporalUnit);
+ method public java.time.Duration minusDays(long);
+ method public java.time.Duration minusHours(long);
+ method public java.time.Duration minusMillis(long);
+ method public java.time.Duration minusMinutes(long);
+ method public java.time.Duration minusNanos(long);
+ method public java.time.Duration minusSeconds(long);
+ method public java.time.Duration multipliedBy(long);
+ method public java.time.Duration negated();
+ method public static java.time.Duration of(long, java.time.temporal.TemporalUnit);
+ method public static java.time.Duration ofDays(long);
+ method public static java.time.Duration ofHours(long);
+ method public static java.time.Duration ofMillis(long);
+ method public static java.time.Duration ofMinutes(long);
+ method public static java.time.Duration ofNanos(long);
+ method public static java.time.Duration ofSeconds(long);
+ method public static java.time.Duration ofSeconds(long, long);
+ method public static java.time.Duration parse(CharSequence);
+ method public java.time.Duration plus(java.time.Duration);
+ method public java.time.Duration plus(long, java.time.temporal.TemporalUnit);
+ method public java.time.Duration plusDays(long);
+ method public java.time.Duration plusHours(long);
+ method public java.time.Duration plusMillis(long);
+ method public java.time.Duration plusMinutes(long);
+ method public java.time.Duration plusNanos(long);
+ method public java.time.Duration plusSeconds(long);
+ method public java.time.temporal.Temporal subtractFrom(java.time.temporal.Temporal);
+ method public long toDays();
+ method public long toDaysPart();
+ method public long toHours();
+ method public int toHoursPart();
+ method public long toMillis();
+ method public int toMillisPart();
+ method public long toMinutes();
+ method public int toMinutesPart();
+ method public long toNanos();
+ method public int toNanosPart();
+ method public long toSeconds();
+ method public int toSecondsPart();
+ method public java.time.Duration truncatedTo(java.time.temporal.TemporalUnit);
+ method public java.time.Duration withNanos(int);
+ method public java.time.Duration withSeconds(long);
+ field public static final java.time.Duration ZERO;
+ }
+
+ public final class Instant implements java.lang.Comparable<java.time.Instant> java.io.Serializable java.time.temporal.Temporal java.time.temporal.TemporalAdjuster {
+ method public java.time.temporal.Temporal adjustInto(java.time.temporal.Temporal);
+ method public java.time.OffsetDateTime atOffset(java.time.ZoneOffset);
+ method public java.time.ZonedDateTime atZone(java.time.ZoneId);
+ method public int compareTo(java.time.Instant);
+ method public static java.time.Instant from(java.time.temporal.TemporalAccessor);
+ method public long getEpochSecond();
+ method public long getLong(java.time.temporal.TemporalField);
+ method public int getNano();
+ method public boolean isAfter(java.time.Instant);
+ method public boolean isBefore(java.time.Instant);
+ method public boolean isSupported(java.time.temporal.TemporalField);
+ method public boolean isSupported(java.time.temporal.TemporalUnit);
+ method public java.time.Instant minus(java.time.temporal.TemporalAmount);
+ method public java.time.Instant minus(long, java.time.temporal.TemporalUnit);
+ method public java.time.Instant minusMillis(long);
+ method public java.time.Instant minusNanos(long);
+ method public java.time.Instant minusSeconds(long);
+ method public static java.time.Instant now();
+ method public static java.time.Instant now(java.time.Clock);
+ method public static java.time.Instant ofEpochMilli(long);
+ method public static java.time.Instant ofEpochSecond(long);
+ method public static java.time.Instant ofEpochSecond(long, long);
+ method public static java.time.Instant parse(CharSequence);
+ method public java.time.Instant plus(java.time.temporal.TemporalAmount);
+ method public java.time.Instant plus(long, java.time.temporal.TemporalUnit);
+ method public java.time.Instant plusMillis(long);
+ method public java.time.Instant plusNanos(long);
+ method public java.time.Instant plusSeconds(long);
+ method public long toEpochMilli();
+ method public java.time.Instant truncatedTo(java.time.temporal.TemporalUnit);
+ method public long until(java.time.temporal.Temporal, java.time.temporal.TemporalUnit);
+ method public java.time.Instant with(java.time.temporal.TemporalAdjuster);
+ method public java.time.Instant with(java.time.temporal.TemporalField, long);
+ field public static final java.time.Instant EPOCH;
+ field public static final java.time.Instant MAX;
+ field public static final java.time.Instant MIN;
+ }
+
+ public final class LocalDate implements java.time.chrono.ChronoLocalDate java.io.Serializable java.time.temporal.Temporal java.time.temporal.TemporalAdjuster {
+ method public java.time.LocalDateTime atStartOfDay();
+ method public java.time.ZonedDateTime atStartOfDay(java.time.ZoneId);
+ method public java.time.LocalDateTime atTime(java.time.LocalTime);
+ method public java.time.LocalDateTime atTime(int, int);
+ method public java.time.LocalDateTime atTime(int, int, int);
+ method public java.time.LocalDateTime atTime(int, int, int, int);
+ method public java.time.OffsetDateTime atTime(java.time.OffsetTime);
+ method public static java.time.LocalDate from(java.time.temporal.TemporalAccessor);
+ method public java.time.chrono.IsoChronology getChronology();
+ method public int getDayOfMonth();
+ method public java.time.DayOfWeek getDayOfWeek();
+ method public int getDayOfYear();
+ method public long getLong(java.time.temporal.TemporalField);
+ method public java.time.Month getMonth();
+ method public int getMonthValue();
+ method public int getYear();
+ method public int lengthOfMonth();
+ method public java.time.LocalDate minus(java.time.temporal.TemporalAmount);
+ method public java.time.LocalDate minus(long, java.time.temporal.TemporalUnit);
+ method public java.time.LocalDate minusDays(long);
+ method public java.time.LocalDate minusMonths(long);
+ method public java.time.LocalDate minusWeeks(long);
+ method public java.time.LocalDate minusYears(long);
+ method public static java.time.LocalDate now();
+ method public static java.time.LocalDate now(java.time.ZoneId);
+ method public static java.time.LocalDate now(java.time.Clock);
+ method public static java.time.LocalDate of(int, java.time.Month, int);
+ method public static java.time.LocalDate of(int, int, int);
+ method public static java.time.LocalDate ofEpochDay(long);
+ method public static java.time.LocalDate ofYearDay(int, int);
+ method public static java.time.LocalDate parse(CharSequence);
+ method public static java.time.LocalDate parse(CharSequence, java.time.format.DateTimeFormatter);
+ method public java.time.LocalDate plus(java.time.temporal.TemporalAmount);
+ method public java.time.LocalDate plus(long, java.time.temporal.TemporalUnit);
+ method public java.time.LocalDate plusDays(long);
+ method public java.time.LocalDate plusMonths(long);
+ method public java.time.LocalDate plusWeeks(long);
+ method public java.time.LocalDate plusYears(long);
+ method public long until(java.time.temporal.Temporal, java.time.temporal.TemporalUnit);
+ method public java.time.Period until(java.time.chrono.ChronoLocalDate);
+ method public java.time.LocalDate with(java.time.temporal.TemporalAdjuster);
+ method public java.time.LocalDate with(java.time.temporal.TemporalField, long);
+ method public java.time.LocalDate withDayOfMonth(int);
+ method public java.time.LocalDate withDayOfYear(int);
+ method public java.time.LocalDate withMonth(int);
+ method public java.time.LocalDate withYear(int);
+ field public static final java.time.LocalDate MAX;
+ field public static final java.time.LocalDate MIN;
+ }
+
+ public final class LocalDateTime implements java.time.chrono.ChronoLocalDateTime<java.time.LocalDate> java.io.Serializable java.time.temporal.Temporal java.time.temporal.TemporalAdjuster {
+ method public java.time.OffsetDateTime atOffset(java.time.ZoneOffset);
+ method public java.time.ZonedDateTime atZone(java.time.ZoneId);
+ method public static java.time.LocalDateTime from(java.time.temporal.TemporalAccessor);
+ method public int getDayOfMonth();
+ method public java.time.DayOfWeek getDayOfWeek();
+ method public int getDayOfYear();
+ method public int getHour();
+ method public long getLong(java.time.temporal.TemporalField);
+ method public int getMinute();
+ method public java.time.Month getMonth();
+ method public int getMonthValue();
+ method public int getNano();
+ method public int getSecond();
+ method public int getYear();
+ method public boolean isSupported(java.time.temporal.TemporalField);
+ method public java.time.LocalDateTime minus(java.time.temporal.TemporalAmount);
+ method public java.time.LocalDateTime minus(long, java.time.temporal.TemporalUnit);
+ method public java.time.LocalDateTime minusDays(long);
+ method public java.time.LocalDateTime minusHours(long);
+ method public java.time.LocalDateTime minusMinutes(long);
+ method public java.time.LocalDateTime minusMonths(long);
+ method public java.time.LocalDateTime minusNanos(long);
+ method public java.time.LocalDateTime minusSeconds(long);
+ method public java.time.LocalDateTime minusWeeks(long);
+ method public java.time.LocalDateTime minusYears(long);
+ method public static java.time.LocalDateTime now();
+ method public static java.time.LocalDateTime now(java.time.ZoneId);
+ method public static java.time.LocalDateTime now(java.time.Clock);
+ method public static java.time.LocalDateTime of(int, java.time.Month, int, int, int);
+ method public static java.time.LocalDateTime of(int, java.time.Month, int, int, int, int);
+ method public static java.time.LocalDateTime of(int, java.time.Month, int, int, int, int, int);
+ method public static java.time.LocalDateTime of(int, int, int, int, int);
+ method public static java.time.LocalDateTime of(int, int, int, int, int, int);
+ method public static java.time.LocalDateTime of(int, int, int, int, int, int, int);
+ method public static java.time.LocalDateTime of(java.time.LocalDate, java.time.LocalTime);
+ method public static java.time.LocalDateTime ofEpochSecond(long, int, java.time.ZoneOffset);
+ method public static java.time.LocalDateTime ofInstant(java.time.Instant, java.time.ZoneId);
+ method public static java.time.LocalDateTime parse(CharSequence);
+ method public static java.time.LocalDateTime parse(CharSequence, java.time.format.DateTimeFormatter);
+ method public java.time.LocalDateTime plus(java.time.temporal.TemporalAmount);
+ method public java.time.LocalDateTime plus(long, java.time.temporal.TemporalUnit);
+ method public java.time.LocalDateTime plusDays(long);
+ method public java.time.LocalDateTime plusHours(long);
+ method public java.time.LocalDateTime plusMinutes(long);
+ method public java.time.LocalDateTime plusMonths(long);
+ method public java.time.LocalDateTime plusNanos(long);
+ method public java.time.LocalDateTime plusSeconds(long);
+ method public java.time.LocalDateTime plusWeeks(long);
+ method public java.time.LocalDateTime plusYears(long);
+ method public java.time.LocalDate toLocalDate();
+ method public java.time.LocalTime toLocalTime();
+ method public java.time.LocalDateTime truncatedTo(java.time.temporal.TemporalUnit);
+ method public long until(java.time.temporal.Temporal, java.time.temporal.TemporalUnit);
+ method public java.time.LocalDateTime with(java.time.temporal.TemporalAdjuster);
+ method public java.time.LocalDateTime with(java.time.temporal.TemporalField, long);
+ method public java.time.LocalDateTime withDayOfMonth(int);
+ method public java.time.LocalDateTime withDayOfYear(int);
+ method public java.time.LocalDateTime withHour(int);
+ method public java.time.LocalDateTime withMinute(int);
+ method public java.time.LocalDateTime withMonth(int);
+ method public java.time.LocalDateTime withNano(int);
+ method public java.time.LocalDateTime withSecond(int);
+ method public java.time.LocalDateTime withYear(int);
+ field public static final java.time.LocalDateTime MAX;
+ field public static final java.time.LocalDateTime MIN;
+ }
+
+ public final class LocalTime implements java.lang.Comparable<java.time.LocalTime> java.io.Serializable java.time.temporal.Temporal java.time.temporal.TemporalAdjuster {
+ method public java.time.temporal.Temporal adjustInto(java.time.temporal.Temporal);
+ method public java.time.LocalDateTime atDate(java.time.LocalDate);
+ method public java.time.OffsetTime atOffset(java.time.ZoneOffset);
+ method public int compareTo(java.time.LocalTime);
+ method public String format(java.time.format.DateTimeFormatter);
+ method public static java.time.LocalTime from(java.time.temporal.TemporalAccessor);
+ method public int getHour();
+ method public long getLong(java.time.temporal.TemporalField);
+ method public int getMinute();
+ method public int getNano();
+ method public int getSecond();
+ method public boolean isAfter(java.time.LocalTime);
+ method public boolean isBefore(java.time.LocalTime);
+ method public boolean isSupported(java.time.temporal.TemporalField);
+ method public boolean isSupported(java.time.temporal.TemporalUnit);
+ method public java.time.LocalTime minus(java.time.temporal.TemporalAmount);
+ method public java.time.LocalTime minus(long, java.time.temporal.TemporalUnit);
+ method public java.time.LocalTime minusHours(long);
+ method public java.time.LocalTime minusMinutes(long);
+ method public java.time.LocalTime minusNanos(long);
+ method public java.time.LocalTime minusSeconds(long);
+ method public static java.time.LocalTime now();
+ method public static java.time.LocalTime now(java.time.ZoneId);
+ method public static java.time.LocalTime now(java.time.Clock);
+ method public static java.time.LocalTime of(int, int);
+ method public static java.time.LocalTime of(int, int, int);
+ method public static java.time.LocalTime of(int, int, int, int);
+ method public static java.time.LocalTime ofInstant(java.time.Instant, java.time.ZoneId);
+ method public static java.time.LocalTime ofNanoOfDay(long);
+ method public static java.time.LocalTime ofSecondOfDay(long);
+ method public static java.time.LocalTime parse(CharSequence);
+ method public static java.time.LocalTime parse(CharSequence, java.time.format.DateTimeFormatter);
+ method public java.time.LocalTime plus(java.time.temporal.TemporalAmount);
+ method public java.time.LocalTime plus(long, java.time.temporal.TemporalUnit);
+ method public java.time.LocalTime plusHours(long);
+ method public java.time.LocalTime plusMinutes(long);
+ method public java.time.LocalTime plusNanos(long);
+ method public java.time.LocalTime plusSeconds(long);
+ method public long toEpochSecond(java.time.LocalDate, java.time.ZoneOffset);
+ method public long toNanoOfDay();
+ method public int toSecondOfDay();
+ method public java.time.LocalTime truncatedTo(java.time.temporal.TemporalUnit);
+ method public long until(java.time.temporal.Temporal, java.time.temporal.TemporalUnit);
+ method public java.time.LocalTime with(java.time.temporal.TemporalAdjuster);
+ method public java.time.LocalTime with(java.time.temporal.TemporalField, long);
+ method public java.time.LocalTime withHour(int);
+ method public java.time.LocalTime withMinute(int);
+ method public java.time.LocalTime withNano(int);
+ method public java.time.LocalTime withSecond(int);
+ field public static final java.time.LocalTime MAX;
+ field public static final java.time.LocalTime MIDNIGHT;
+ field public static final java.time.LocalTime MIN;
+ field public static final java.time.LocalTime NOON;
+ }
+
+ public enum Month implements java.time.temporal.TemporalAccessor java.time.temporal.TemporalAdjuster {
+ method public java.time.temporal.Temporal adjustInto(java.time.temporal.Temporal);
+ method public int firstDayOfYear(boolean);
+ method public java.time.Month firstMonthOfQuarter();
+ method public static java.time.Month from(java.time.temporal.TemporalAccessor);
+ method public String getDisplayName(java.time.format.TextStyle, java.util.Locale);
+ method public long getLong(java.time.temporal.TemporalField);
+ method public int getValue();
+ method public boolean isSupported(java.time.temporal.TemporalField);
+ method public int length(boolean);
+ method public int maxLength();
+ method public int minLength();
+ method public java.time.Month minus(long);
+ method public static java.time.Month of(int);
+ method public java.time.Month plus(long);
+ enum_constant public static final java.time.Month APRIL;
+ enum_constant public static final java.time.Month AUGUST;
+ enum_constant public static final java.time.Month DECEMBER;
+ enum_constant public static final java.time.Month FEBRUARY;
+ enum_constant public static final java.time.Month JANUARY;
+ enum_constant public static final java.time.Month JULY;
+ enum_constant public static final java.time.Month JUNE;
+ enum_constant public static final java.time.Month MARCH;
+ enum_constant public static final java.time.Month MAY;
+ enum_constant public static final java.time.Month NOVEMBER;
+ enum_constant public static final java.time.Month OCTOBER;
+ enum_constant public static final java.time.Month SEPTEMBER;
+ }
+
+ public final class MonthDay implements java.lang.Comparable<java.time.MonthDay> java.io.Serializable java.time.temporal.TemporalAccessor java.time.temporal.TemporalAdjuster {
+ method public java.time.temporal.Temporal adjustInto(java.time.temporal.Temporal);
+ method public java.time.LocalDate atYear(int);
+ method public int compareTo(java.time.MonthDay);
+ method public String format(java.time.format.DateTimeFormatter);
+ method public static java.time.MonthDay from(java.time.temporal.TemporalAccessor);
+ method public int getDayOfMonth();
+ method public long getLong(java.time.temporal.TemporalField);
+ method public java.time.Month getMonth();
+ method public int getMonthValue();
+ method public boolean isAfter(java.time.MonthDay);
+ method public boolean isBefore(java.time.MonthDay);
+ method public boolean isSupported(java.time.temporal.TemporalField);
+ method public boolean isValidYear(int);
+ method public static java.time.MonthDay now();
+ method public static java.time.MonthDay now(java.time.ZoneId);
+ method public static java.time.MonthDay now(java.time.Clock);
+ method public static java.time.MonthDay of(java.time.Month, int);
+ method public static java.time.MonthDay of(int, int);
+ method public static java.time.MonthDay parse(CharSequence);
+ method public static java.time.MonthDay parse(CharSequence, java.time.format.DateTimeFormatter);
+ method public java.time.MonthDay with(java.time.Month);
+ method public java.time.MonthDay withDayOfMonth(int);
+ method public java.time.MonthDay withMonth(int);
+ }
+
+ public final class OffsetDateTime implements java.lang.Comparable<java.time.OffsetDateTime> java.io.Serializable java.time.temporal.Temporal java.time.temporal.TemporalAdjuster {
+ method public java.time.temporal.Temporal adjustInto(java.time.temporal.Temporal);
+ method public java.time.ZonedDateTime atZoneSameInstant(java.time.ZoneId);
+ method public java.time.ZonedDateTime atZoneSimilarLocal(java.time.ZoneId);
+ method public int compareTo(java.time.OffsetDateTime);
+ method public String format(java.time.format.DateTimeFormatter);
+ method public static java.time.OffsetDateTime from(java.time.temporal.TemporalAccessor);
+ method public int getDayOfMonth();
+ method public java.time.DayOfWeek getDayOfWeek();
+ method public int getDayOfYear();
+ method public int getHour();
+ method public long getLong(java.time.temporal.TemporalField);
+ method public int getMinute();
+ method public java.time.Month getMonth();
+ method public int getMonthValue();
+ method public int getNano();
+ method public java.time.ZoneOffset getOffset();
+ method public int getSecond();
+ method public int getYear();
+ method public boolean isAfter(java.time.OffsetDateTime);
+ method public boolean isBefore(java.time.OffsetDateTime);
+ method public boolean isEqual(java.time.OffsetDateTime);
+ method public boolean isSupported(java.time.temporal.TemporalField);
+ method public boolean isSupported(java.time.temporal.TemporalUnit);
+ method public java.time.OffsetDateTime minus(java.time.temporal.TemporalAmount);
+ method public java.time.OffsetDateTime minus(long, java.time.temporal.TemporalUnit);
+ method public java.time.OffsetDateTime minusDays(long);
+ method public java.time.OffsetDateTime minusHours(long);
+ method public java.time.OffsetDateTime minusMinutes(long);
+ method public java.time.OffsetDateTime minusMonths(long);
+ method public java.time.OffsetDateTime minusNanos(long);
+ method public java.time.OffsetDateTime minusSeconds(long);
+ method public java.time.OffsetDateTime minusWeeks(long);
+ method public java.time.OffsetDateTime minusYears(long);
+ method public static java.time.OffsetDateTime now();
+ method public static java.time.OffsetDateTime now(java.time.ZoneId);
+ method public static java.time.OffsetDateTime now(java.time.Clock);
+ method public static java.time.OffsetDateTime of(java.time.LocalDate, java.time.LocalTime, java.time.ZoneOffset);
+ method public static java.time.OffsetDateTime of(java.time.LocalDateTime, java.time.ZoneOffset);
+ method public static java.time.OffsetDateTime of(int, int, int, int, int, int, int, java.time.ZoneOffset);
+ method public static java.time.OffsetDateTime ofInstant(java.time.Instant, java.time.ZoneId);
+ method public static java.time.OffsetDateTime parse(CharSequence);
+ method public static java.time.OffsetDateTime parse(CharSequence, java.time.format.DateTimeFormatter);
+ method public java.time.OffsetDateTime plus(java.time.temporal.TemporalAmount);
+ method public java.time.OffsetDateTime plus(long, java.time.temporal.TemporalUnit);
+ method public java.time.OffsetDateTime plusDays(long);
+ method public java.time.OffsetDateTime plusHours(long);
+ method public java.time.OffsetDateTime plusMinutes(long);
+ method public java.time.OffsetDateTime plusMonths(long);
+ method public java.time.OffsetDateTime plusNanos(long);
+ method public java.time.OffsetDateTime plusSeconds(long);
+ method public java.time.OffsetDateTime plusWeeks(long);
+ method public java.time.OffsetDateTime plusYears(long);
+ method public static java.util.Comparator<java.time.OffsetDateTime> timeLineOrder();
+ method public long toEpochSecond();
+ method public java.time.Instant toInstant();
+ method public java.time.LocalDate toLocalDate();
+ method public java.time.LocalDateTime toLocalDateTime();
+ method public java.time.LocalTime toLocalTime();
+ method public java.time.OffsetTime toOffsetTime();
+ method public java.time.ZonedDateTime toZonedDateTime();
+ method public java.time.OffsetDateTime truncatedTo(java.time.temporal.TemporalUnit);
+ method public long until(java.time.temporal.Temporal, java.time.temporal.TemporalUnit);
+ method public java.time.OffsetDateTime with(java.time.temporal.TemporalAdjuster);
+ method public java.time.OffsetDateTime with(java.time.temporal.TemporalField, long);
+ method public java.time.OffsetDateTime withDayOfMonth(int);
+ method public java.time.OffsetDateTime withDayOfYear(int);
+ method public java.time.OffsetDateTime withHour(int);
+ method public java.time.OffsetDateTime withMinute(int);
+ method public java.time.OffsetDateTime withMonth(int);
+ method public java.time.OffsetDateTime withNano(int);
+ method public java.time.OffsetDateTime withOffsetSameInstant(java.time.ZoneOffset);
+ method public java.time.OffsetDateTime withOffsetSameLocal(java.time.ZoneOffset);
+ method public java.time.OffsetDateTime withSecond(int);
+ method public java.time.OffsetDateTime withYear(int);
+ field public static final java.time.OffsetDateTime MAX;
+ field public static final java.time.OffsetDateTime MIN;
+ }
+
+ public final class OffsetTime implements java.lang.Comparable<java.time.OffsetTime> java.io.Serializable java.time.temporal.Temporal java.time.temporal.TemporalAdjuster {
+ method public java.time.temporal.Temporal adjustInto(java.time.temporal.Temporal);
+ method public java.time.OffsetDateTime atDate(java.time.LocalDate);
+ method public int compareTo(java.time.OffsetTime);
+ method public String format(java.time.format.DateTimeFormatter);
+ method public static java.time.OffsetTime from(java.time.temporal.TemporalAccessor);
+ method public int getHour();
+ method public long getLong(java.time.temporal.TemporalField);
+ method public int getMinute();
+ method public int getNano();
+ method public java.time.ZoneOffset getOffset();
+ method public int getSecond();
+ method public boolean isAfter(java.time.OffsetTime);
+ method public boolean isBefore(java.time.OffsetTime);
+ method public boolean isEqual(java.time.OffsetTime);
+ method public boolean isSupported(java.time.temporal.TemporalField);
+ method public boolean isSupported(java.time.temporal.TemporalUnit);
+ method public java.time.OffsetTime minus(java.time.temporal.TemporalAmount);
+ method public java.time.OffsetTime minus(long, java.time.temporal.TemporalUnit);
+ method public java.time.OffsetTime minusHours(long);
+ method public java.time.OffsetTime minusMinutes(long);
+ method public java.time.OffsetTime minusNanos(long);
+ method public java.time.OffsetTime minusSeconds(long);
+ method public static java.time.OffsetTime now();
+ method public static java.time.OffsetTime now(java.time.ZoneId);
+ method public static java.time.OffsetTime now(java.time.Clock);
+ method public static java.time.OffsetTime of(java.time.LocalTime, java.time.ZoneOffset);
+ method public static java.time.OffsetTime of(int, int, int, int, java.time.ZoneOffset);
+ method public static java.time.OffsetTime ofInstant(java.time.Instant, java.time.ZoneId);
+ method public static java.time.OffsetTime parse(CharSequence);
+ method public static java.time.OffsetTime parse(CharSequence, java.time.format.DateTimeFormatter);
+ method public java.time.OffsetTime plus(java.time.temporal.TemporalAmount);
+ method public java.time.OffsetTime plus(long, java.time.temporal.TemporalUnit);
+ method public java.time.OffsetTime plusHours(long);
+ method public java.time.OffsetTime plusMinutes(long);
+ method public java.time.OffsetTime plusNanos(long);
+ method public java.time.OffsetTime plusSeconds(long);
+ method public java.time.LocalTime toLocalTime();
+ method public java.time.OffsetTime truncatedTo(java.time.temporal.TemporalUnit);
+ method public long until(java.time.temporal.Temporal, java.time.temporal.TemporalUnit);
+ method public java.time.OffsetTime with(java.time.temporal.TemporalAdjuster);
+ method public java.time.OffsetTime with(java.time.temporal.TemporalField, long);
+ method public java.time.OffsetTime withHour(int);
+ method public java.time.OffsetTime withMinute(int);
+ method public java.time.OffsetTime withNano(int);
+ method public java.time.OffsetTime withOffsetSameInstant(java.time.ZoneOffset);
+ method public java.time.OffsetTime withOffsetSameLocal(java.time.ZoneOffset);
+ method public java.time.OffsetTime withSecond(int);
+ field public static final java.time.OffsetTime MAX;
+ field public static final java.time.OffsetTime MIN;
+ }
+
+ public final class Period implements java.time.chrono.ChronoPeriod java.io.Serializable {
+ method public java.time.temporal.Temporal addTo(java.time.temporal.Temporal);
+ method public static java.time.Period between(java.time.LocalDate, java.time.LocalDate);
+ method public static java.time.Period from(java.time.temporal.TemporalAmount);
+ method public long get(java.time.temporal.TemporalUnit);
+ method public java.time.chrono.IsoChronology getChronology();
+ method public int getDays();
+ method public int getMonths();
+ method public java.util.List<java.time.temporal.TemporalUnit> getUnits();
+ method public int getYears();
+ method public java.time.Period minus(java.time.temporal.TemporalAmount);
+ method public java.time.Period minusDays(long);
+ method public java.time.Period minusMonths(long);
+ method public java.time.Period minusYears(long);
+ method public java.time.Period multipliedBy(int);
+ method public java.time.Period negated();
+ method public java.time.Period normalized();
+ method public static java.time.Period of(int, int, int);
+ method public static java.time.Period ofDays(int);
+ method public static java.time.Period ofMonths(int);
+ method public static java.time.Period ofWeeks(int);
+ method public static java.time.Period ofYears(int);
+ method public static java.time.Period parse(CharSequence);
+ method public java.time.Period plus(java.time.temporal.TemporalAmount);
+ method public java.time.Period plusDays(long);
+ method public java.time.Period plusMonths(long);
+ method public java.time.Period plusYears(long);
+ method public java.time.temporal.Temporal subtractFrom(java.time.temporal.Temporal);
+ method public long toTotalMonths();
+ method public java.time.Period withDays(int);
+ method public java.time.Period withMonths(int);
+ method public java.time.Period withYears(int);
+ field public static final java.time.Period ZERO;
+ }
+
+ public final class Year implements java.lang.Comparable<java.time.Year> java.io.Serializable java.time.temporal.Temporal java.time.temporal.TemporalAdjuster {
+ method public java.time.temporal.Temporal adjustInto(java.time.temporal.Temporal);
+ method public java.time.LocalDate atDay(int);
+ method public java.time.YearMonth atMonth(java.time.Month);
+ method public java.time.YearMonth atMonth(int);
+ method public java.time.LocalDate atMonthDay(java.time.MonthDay);
+ method public int compareTo(java.time.Year);
+ method public String format(java.time.format.DateTimeFormatter);
+ method public static java.time.Year from(java.time.temporal.TemporalAccessor);
+ method public long getLong(java.time.temporal.TemporalField);
+ method public int getValue();
+ method public boolean isAfter(java.time.Year);
+ method public boolean isBefore(java.time.Year);
+ method public static boolean isLeap(long);
+ method public boolean isLeap();
+ method public boolean isSupported(java.time.temporal.TemporalField);
+ method public boolean isSupported(java.time.temporal.TemporalUnit);
+ method public boolean isValidMonthDay(java.time.MonthDay);
+ method public int length();
+ method public java.time.Year minus(java.time.temporal.TemporalAmount);
+ method public java.time.Year minus(long, java.time.temporal.TemporalUnit);
+ method public java.time.Year minusYears(long);
+ method public static java.time.Year now();
+ method public static java.time.Year now(java.time.ZoneId);
+ method public static java.time.Year now(java.time.Clock);
+ method public static java.time.Year of(int);
+ method public static java.time.Year parse(CharSequence);
+ method public static java.time.Year parse(CharSequence, java.time.format.DateTimeFormatter);
+ method public java.time.Year plus(java.time.temporal.TemporalAmount);
+ method public java.time.Year plus(long, java.time.temporal.TemporalUnit);
+ method public java.time.Year plusYears(long);
+ method public long until(java.time.temporal.Temporal, java.time.temporal.TemporalUnit);
+ method public java.time.Year with(java.time.temporal.TemporalAdjuster);
+ method public java.time.Year with(java.time.temporal.TemporalField, long);
+ field public static final int MAX_VALUE = 999999999; // 0x3b9ac9ff
+ field public static final int MIN_VALUE = -999999999; // 0xc4653601
+ }
+
+ public final class YearMonth implements java.lang.Comparable<java.time.YearMonth> java.io.Serializable java.time.temporal.Temporal java.time.temporal.TemporalAdjuster {
+ method public java.time.temporal.Temporal adjustInto(java.time.temporal.Temporal);
+ method public java.time.LocalDate atDay(int);
+ method public java.time.LocalDate atEndOfMonth();
+ method public int compareTo(java.time.YearMonth);
+ method public String format(java.time.format.DateTimeFormatter);
+ method public static java.time.YearMonth from(java.time.temporal.TemporalAccessor);
+ method public long getLong(java.time.temporal.TemporalField);
+ method public java.time.Month getMonth();
+ method public int getMonthValue();
+ method public int getYear();
+ method public boolean isAfter(java.time.YearMonth);
+ method public boolean isBefore(java.time.YearMonth);
+ method public boolean isLeapYear();
+ method public boolean isSupported(java.time.temporal.TemporalField);
+ method public boolean isSupported(java.time.temporal.TemporalUnit);
+ method public boolean isValidDay(int);
+ method public int lengthOfMonth();
+ method public int lengthOfYear();
+ method public java.time.YearMonth minus(java.time.temporal.TemporalAmount);
+ method public java.time.YearMonth minus(long, java.time.temporal.TemporalUnit);
+ method public java.time.YearMonth minusMonths(long);
+ method public java.time.YearMonth minusYears(long);
+ method public static java.time.YearMonth now();
+ method public static java.time.YearMonth now(java.time.ZoneId);
+ method public static java.time.YearMonth now(java.time.Clock);
+ method public static java.time.YearMonth of(int, java.time.Month);
+ method public static java.time.YearMonth of(int, int);
+ method public static java.time.YearMonth parse(CharSequence);
+ method public static java.time.YearMonth parse(CharSequence, java.time.format.DateTimeFormatter);
+ method public java.time.YearMonth plus(java.time.temporal.TemporalAmount);
+ method public java.time.YearMonth plus(long, java.time.temporal.TemporalUnit);
+ method public java.time.YearMonth plusMonths(long);
+ method public java.time.YearMonth plusYears(long);
+ method public long until(java.time.temporal.Temporal, java.time.temporal.TemporalUnit);
+ method public java.time.YearMonth with(java.time.temporal.TemporalAdjuster);
+ method public java.time.YearMonth with(java.time.temporal.TemporalField, long);
+ method public java.time.YearMonth withMonth(int);
+ method public java.time.YearMonth withYear(int);
+ }
+
+ public abstract class ZoneId implements java.io.Serializable {
+ method public static java.time.ZoneId from(java.time.temporal.TemporalAccessor);
+ method public static java.util.Set<java.lang.String> getAvailableZoneIds();
+ method public String getDisplayName(java.time.format.TextStyle, java.util.Locale);
+ method public abstract String getId();
+ method public abstract java.time.zone.ZoneRules getRules();
+ method public java.time.ZoneId normalized();
+ method public static java.time.ZoneId of(String, java.util.Map<java.lang.String,java.lang.String>);
+ method public static java.time.ZoneId of(String);
+ method public static java.time.ZoneId ofOffset(String, java.time.ZoneOffset);
+ method public static java.time.ZoneId systemDefault();
+ field public static final java.util.Map<java.lang.String,java.lang.String> SHORT_IDS;
+ }
+
+ public final class ZoneOffset extends java.time.ZoneId implements java.lang.Comparable<java.time.ZoneOffset> java.io.Serializable java.time.temporal.TemporalAccessor java.time.temporal.TemporalAdjuster {
+ method public java.time.temporal.Temporal adjustInto(java.time.temporal.Temporal);
+ method public int compareTo(java.time.ZoneOffset);
+ method public static java.time.ZoneOffset from(java.time.temporal.TemporalAccessor);
+ method public String getId();
+ method public long getLong(java.time.temporal.TemporalField);
+ method public java.time.zone.ZoneRules getRules();
+ method public int getTotalSeconds();
+ method public boolean isSupported(java.time.temporal.TemporalField);
+ method public static java.time.ZoneOffset of(String);
+ method public static java.time.ZoneOffset ofHours(int);
+ method public static java.time.ZoneOffset ofHoursMinutes(int, int);
+ method public static java.time.ZoneOffset ofHoursMinutesSeconds(int, int, int);
+ method public static java.time.ZoneOffset ofTotalSeconds(int);
+ field public static final java.time.ZoneOffset MAX;
+ field public static final java.time.ZoneOffset MIN;
+ field public static final java.time.ZoneOffset UTC;
+ }
+
+ public final class ZonedDateTime implements java.time.chrono.ChronoZonedDateTime<java.time.LocalDate> java.io.Serializable java.time.temporal.Temporal {
+ method public static java.time.ZonedDateTime from(java.time.temporal.TemporalAccessor);
+ method public int getDayOfMonth();
+ method public java.time.DayOfWeek getDayOfWeek();
+ method public int getDayOfYear();
+ method public int getHour();
+ method public int getMinute();
+ method public java.time.Month getMonth();
+ method public int getMonthValue();
+ method public int getNano();
+ method public java.time.ZoneOffset getOffset();
+ method public int getSecond();
+ method public int getYear();
+ method public java.time.ZoneId getZone();
+ method public boolean isSupported(java.time.temporal.TemporalField);
+ method public java.time.ZonedDateTime minus(java.time.temporal.TemporalAmount);
+ method public java.time.ZonedDateTime minus(long, java.time.temporal.TemporalUnit);
+ method public java.time.ZonedDateTime minusDays(long);
+ method public java.time.ZonedDateTime minusHours(long);
+ method public java.time.ZonedDateTime minusMinutes(long);
+ method public java.time.ZonedDateTime minusMonths(long);
+ method public java.time.ZonedDateTime minusNanos(long);
+ method public java.time.ZonedDateTime minusSeconds(long);
+ method public java.time.ZonedDateTime minusWeeks(long);
+ method public java.time.ZonedDateTime minusYears(long);
+ method public static java.time.ZonedDateTime now();
+ method public static java.time.ZonedDateTime now(java.time.ZoneId);
+ method public static java.time.ZonedDateTime now(java.time.Clock);
+ method public static java.time.ZonedDateTime of(java.time.LocalDate, java.time.LocalTime, java.time.ZoneId);
+ method public static java.time.ZonedDateTime of(java.time.LocalDateTime, java.time.ZoneId);
+ method public static java.time.ZonedDateTime of(int, int, int, int, int, int, int, java.time.ZoneId);
+ method public static java.time.ZonedDateTime ofInstant(java.time.Instant, java.time.ZoneId);
+ method public static java.time.ZonedDateTime ofInstant(java.time.LocalDateTime, java.time.ZoneOffset, java.time.ZoneId);
+ method public static java.time.ZonedDateTime ofLocal(java.time.LocalDateTime, java.time.ZoneId, java.time.ZoneOffset);
+ method public static java.time.ZonedDateTime ofStrict(java.time.LocalDateTime, java.time.ZoneOffset, java.time.ZoneId);
+ method public static java.time.ZonedDateTime parse(CharSequence);
+ method public static java.time.ZonedDateTime parse(CharSequence, java.time.format.DateTimeFormatter);
+ method public java.time.ZonedDateTime plus(java.time.temporal.TemporalAmount);
+ method public java.time.ZonedDateTime plus(long, java.time.temporal.TemporalUnit);
+ method public java.time.ZonedDateTime plusDays(long);
+ method public java.time.ZonedDateTime plusHours(long);
+ method public java.time.ZonedDateTime plusMinutes(long);
+ method public java.time.ZonedDateTime plusMonths(long);
+ method public java.time.ZonedDateTime plusNanos(long);
+ method public java.time.ZonedDateTime plusSeconds(long);
+ method public java.time.ZonedDateTime plusWeeks(long);
+ method public java.time.ZonedDateTime plusYears(long);
+ method public java.time.LocalDate toLocalDate();
+ method public java.time.LocalDateTime toLocalDateTime();
+ method public java.time.OffsetDateTime toOffsetDateTime();
+ method public java.time.ZonedDateTime truncatedTo(java.time.temporal.TemporalUnit);
+ method public long until(java.time.temporal.Temporal, java.time.temporal.TemporalUnit);
+ method public java.time.ZonedDateTime with(java.time.temporal.TemporalAdjuster);
+ method public java.time.ZonedDateTime with(java.time.temporal.TemporalField, long);
+ method public java.time.ZonedDateTime withDayOfMonth(int);
+ method public java.time.ZonedDateTime withDayOfYear(int);
+ method public java.time.ZonedDateTime withEarlierOffsetAtOverlap();
+ method public java.time.ZonedDateTime withFixedOffsetZone();
+ method public java.time.ZonedDateTime withHour(int);
+ method public java.time.ZonedDateTime withLaterOffsetAtOverlap();
+ method public java.time.ZonedDateTime withMinute(int);
+ method public java.time.ZonedDateTime withMonth(int);
+ method public java.time.ZonedDateTime withNano(int);
+ method public java.time.ZonedDateTime withSecond(int);
+ method public java.time.ZonedDateTime withYear(int);
+ method public java.time.ZonedDateTime withZoneSameInstant(java.time.ZoneId);
+ method public java.time.ZonedDateTime withZoneSameLocal(java.time.ZoneId);
+ }
+
+}
+
+package java.time.chrono {
+
+ public abstract class AbstractChronology implements java.time.chrono.Chronology {
+ ctor protected AbstractChronology();
+ method public int compareTo(java.time.chrono.Chronology);
+ method public java.time.chrono.ChronoLocalDate resolveDate(java.util.Map<java.time.temporal.TemporalField,java.lang.Long>, java.time.format.ResolverStyle);
+ }
+
+ public interface ChronoLocalDate extends java.time.temporal.Temporal java.lang.Comparable<java.time.chrono.ChronoLocalDate> java.time.temporal.TemporalAdjuster {
+ method public default java.time.temporal.Temporal adjustInto(java.time.temporal.Temporal);
+ method public default java.time.chrono.ChronoLocalDateTime<?> atTime(java.time.LocalTime);
+ method public default int compareTo(java.time.chrono.ChronoLocalDate);
+ method public boolean equals(Object);
+ method public default String format(java.time.format.DateTimeFormatter);
+ method public static java.time.chrono.ChronoLocalDate from(java.time.temporal.TemporalAccessor);
+ method public java.time.chrono.Chronology getChronology();
+ method public default java.time.chrono.Era getEra();
+ method public int hashCode();
+ method public default boolean isAfter(java.time.chrono.ChronoLocalDate);
+ method public default boolean isBefore(java.time.chrono.ChronoLocalDate);
+ method public default boolean isEqual(java.time.chrono.ChronoLocalDate);
+ method public default boolean isLeapYear();
+ method public default boolean isSupported(java.time.temporal.TemporalField);
+ method public default boolean isSupported(java.time.temporal.TemporalUnit);
+ method public int lengthOfMonth();
+ method public default int lengthOfYear();
+ method public default java.time.chrono.ChronoLocalDate minus(java.time.temporal.TemporalAmount);
+ method public default java.time.chrono.ChronoLocalDate minus(long, java.time.temporal.TemporalUnit);
+ method public default java.time.chrono.ChronoLocalDate plus(java.time.temporal.TemporalAmount);
+ method public default java.time.chrono.ChronoLocalDate plus(long, java.time.temporal.TemporalUnit);
+ method public static java.util.Comparator<java.time.chrono.ChronoLocalDate> timeLineOrder();
+ method public default long toEpochDay();
+ method public String toString();
+ method public java.time.chrono.ChronoPeriod until(java.time.chrono.ChronoLocalDate);
+ method public default java.time.chrono.ChronoLocalDate with(java.time.temporal.TemporalAdjuster);
+ method public default java.time.chrono.ChronoLocalDate with(java.time.temporal.TemporalField, long);
+ }
+
+ public interface ChronoLocalDateTime<D extends java.time.chrono.ChronoLocalDate> extends java.time.temporal.Temporal java.lang.Comparable<java.time.chrono.ChronoLocalDateTime<?>> java.time.temporal.TemporalAdjuster {
+ method public default java.time.temporal.Temporal adjustInto(java.time.temporal.Temporal);
+ method public java.time.chrono.ChronoZonedDateTime<D> atZone(java.time.ZoneId);
+ method public default int compareTo(java.time.chrono.ChronoLocalDateTime<?>);
+ method public boolean equals(Object);
+ method public default String format(java.time.format.DateTimeFormatter);
+ method public static java.time.chrono.ChronoLocalDateTime<?> from(java.time.temporal.TemporalAccessor);
+ method public default java.time.chrono.Chronology getChronology();
+ method public int hashCode();
+ method public default boolean isAfter(java.time.chrono.ChronoLocalDateTime<?>);
+ method public default boolean isBefore(java.time.chrono.ChronoLocalDateTime<?>);
+ method public default boolean isEqual(java.time.chrono.ChronoLocalDateTime<?>);
+ method public default boolean isSupported(java.time.temporal.TemporalUnit);
+ method public default java.time.chrono.ChronoLocalDateTime<D> minus(java.time.temporal.TemporalAmount);
+ method public default java.time.chrono.ChronoLocalDateTime<D> minus(long, java.time.temporal.TemporalUnit);
+ method public default java.time.chrono.ChronoLocalDateTime<D> plus(java.time.temporal.TemporalAmount);
+ method public java.time.chrono.ChronoLocalDateTime<D> plus(long, java.time.temporal.TemporalUnit);
+ method public static java.util.Comparator<java.time.chrono.ChronoLocalDateTime<?>> timeLineOrder();
+ method public default long toEpochSecond(java.time.ZoneOffset);
+ method public default java.time.Instant toInstant(java.time.ZoneOffset);
+ method public D toLocalDate();
+ method public java.time.LocalTime toLocalTime();
+ method public String toString();
+ method public default java.time.chrono.ChronoLocalDateTime<D> with(java.time.temporal.TemporalAdjuster);
+ method public java.time.chrono.ChronoLocalDateTime<D> with(java.time.temporal.TemporalField, long);
+ }
+
+ public interface ChronoPeriod extends java.time.temporal.TemporalAmount {
+ method public static java.time.chrono.ChronoPeriod between(java.time.chrono.ChronoLocalDate, java.time.chrono.ChronoLocalDate);
+ method public boolean equals(Object);
+ method public java.time.chrono.Chronology getChronology();
+ method public int hashCode();
+ method public default boolean isNegative();
+ method public default boolean isZero();
+ method public java.time.chrono.ChronoPeriod minus(java.time.temporal.TemporalAmount);
+ method public java.time.chrono.ChronoPeriod multipliedBy(int);
+ method public default java.time.chrono.ChronoPeriod negated();
+ method public java.time.chrono.ChronoPeriod normalized();
+ method public java.time.chrono.ChronoPeriod plus(java.time.temporal.TemporalAmount);
+ method public String toString();
+ }
+
+ public interface ChronoZonedDateTime<D extends java.time.chrono.ChronoLocalDate> extends java.time.temporal.Temporal java.lang.Comparable<java.time.chrono.ChronoZonedDateTime<?>> {
+ method public default int compareTo(java.time.chrono.ChronoZonedDateTime<?>);
+ method public boolean equals(Object);
+ method public default String format(java.time.format.DateTimeFormatter);
+ method public static java.time.chrono.ChronoZonedDateTime<?> from(java.time.temporal.TemporalAccessor);
+ method public default java.time.chrono.Chronology getChronology();
+ method public default long getLong(java.time.temporal.TemporalField);
+ method public java.time.ZoneOffset getOffset();
+ method public java.time.ZoneId getZone();
+ method public int hashCode();
+ method public default boolean isAfter(java.time.chrono.ChronoZonedDateTime<?>);
+ method public default boolean isBefore(java.time.chrono.ChronoZonedDateTime<?>);
+ method public default boolean isEqual(java.time.chrono.ChronoZonedDateTime<?>);
+ method public default boolean isSupported(java.time.temporal.TemporalUnit);
+ method public default java.time.chrono.ChronoZonedDateTime<D> minus(java.time.temporal.TemporalAmount);
+ method public default java.time.chrono.ChronoZonedDateTime<D> minus(long, java.time.temporal.TemporalUnit);
+ method public default java.time.chrono.ChronoZonedDateTime<D> plus(java.time.temporal.TemporalAmount);
+ method public java.time.chrono.ChronoZonedDateTime<D> plus(long, java.time.temporal.TemporalUnit);
+ method public static java.util.Comparator<java.time.chrono.ChronoZonedDateTime<?>> timeLineOrder();
+ method public default long toEpochSecond();
+ method public default java.time.Instant toInstant();
+ method public default D toLocalDate();
+ method public java.time.chrono.ChronoLocalDateTime<D> toLocalDateTime();
+ method public default java.time.LocalTime toLocalTime();
+ method public String toString();
+ method public default java.time.chrono.ChronoZonedDateTime<D> with(java.time.temporal.TemporalAdjuster);
+ method public java.time.chrono.ChronoZonedDateTime<D> with(java.time.temporal.TemporalField, long);
+ method public java.time.chrono.ChronoZonedDateTime<D> withEarlierOffsetAtOverlap();
+ method public java.time.chrono.ChronoZonedDateTime<D> withLaterOffsetAtOverlap();
+ method public java.time.chrono.ChronoZonedDateTime<D> withZoneSameInstant(java.time.ZoneId);
+ method public java.time.chrono.ChronoZonedDateTime<D> withZoneSameLocal(java.time.ZoneId);
+ }
+
+ public interface Chronology extends java.lang.Comparable<java.time.chrono.Chronology> {
+ method public int compareTo(java.time.chrono.Chronology);
+ method public default java.time.chrono.ChronoLocalDate date(java.time.chrono.Era, int, int, int);
+ method public java.time.chrono.ChronoLocalDate date(int, int, int);
+ method public java.time.chrono.ChronoLocalDate date(java.time.temporal.TemporalAccessor);
+ method public java.time.chrono.ChronoLocalDate dateEpochDay(long);
+ method public default java.time.chrono.ChronoLocalDate dateNow();
+ method public default java.time.chrono.ChronoLocalDate dateNow(java.time.ZoneId);
+ method public default java.time.chrono.ChronoLocalDate dateNow(java.time.Clock);
+ method public default java.time.chrono.ChronoLocalDate dateYearDay(java.time.chrono.Era, int, int);
+ method public java.time.chrono.ChronoLocalDate dateYearDay(int, int);
+ method public boolean equals(Object);
+ method public java.time.chrono.Era eraOf(int);
+ method public java.util.List<java.time.chrono.Era> eras();
+ method public static java.time.chrono.Chronology from(java.time.temporal.TemporalAccessor);
+ method public static java.util.Set<java.time.chrono.Chronology> getAvailableChronologies();
+ method public String getCalendarType();
+ method public default String getDisplayName(java.time.format.TextStyle, java.util.Locale);
+ method public String getId();
+ method public int hashCode();
+ method public boolean isLeapYear(long);
+ method public default java.time.chrono.ChronoLocalDateTime<? extends java.time.chrono.ChronoLocalDate> localDateTime(java.time.temporal.TemporalAccessor);
+ method public static java.time.chrono.Chronology of(String);
+ method public static java.time.chrono.Chronology ofLocale(java.util.Locale);
+ method public default java.time.chrono.ChronoPeriod period(int, int, int);
+ method public int prolepticYear(java.time.chrono.Era, int);
+ method public java.time.temporal.ValueRange range(java.time.temporal.ChronoField);
+ method public java.time.chrono.ChronoLocalDate resolveDate(java.util.Map<java.time.temporal.TemporalField,java.lang.Long>, java.time.format.ResolverStyle);
+ method public String toString();
+ method public default java.time.chrono.ChronoZonedDateTime<? extends java.time.chrono.ChronoLocalDate> zonedDateTime(java.time.temporal.TemporalAccessor);
+ method public default java.time.chrono.ChronoZonedDateTime<? extends java.time.chrono.ChronoLocalDate> zonedDateTime(java.time.Instant, java.time.ZoneId);
+ }
+
+ public interface Era extends java.time.temporal.TemporalAccessor java.time.temporal.TemporalAdjuster {
+ method public default java.time.temporal.Temporal adjustInto(java.time.temporal.Temporal);
+ method public default String getDisplayName(java.time.format.TextStyle, java.util.Locale);
+ method public default long getLong(java.time.temporal.TemporalField);
+ method public int getValue();
+ method public default boolean isSupported(java.time.temporal.TemporalField);
+ }
+
+ public final class HijrahChronology extends java.time.chrono.AbstractChronology implements java.io.Serializable {
+ method public java.time.chrono.HijrahDate date(java.time.chrono.Era, int, int, int);
+ method public java.time.chrono.HijrahDate date(int, int, int);
+ method public java.time.chrono.HijrahDate date(java.time.temporal.TemporalAccessor);
+ method public java.time.chrono.HijrahDate dateEpochDay(long);
+ method public java.time.chrono.HijrahDate dateNow();
+ method public java.time.chrono.HijrahDate dateNow(java.time.ZoneId);
+ method public java.time.chrono.HijrahDate dateNow(java.time.Clock);
+ method public java.time.chrono.HijrahDate dateYearDay(java.time.chrono.Era, int, int);
+ method public java.time.chrono.HijrahDate dateYearDay(int, int);
+ method public java.time.chrono.HijrahEra eraOf(int);
+ method public java.util.List<java.time.chrono.Era> eras();
+ method public String getCalendarType();
+ method public String getId();
+ method public boolean isLeapYear(long);
+ method public java.time.chrono.ChronoLocalDateTime<java.time.chrono.HijrahDate> localDateTime(java.time.temporal.TemporalAccessor);
+ method public int prolepticYear(java.time.chrono.Era, int);
+ method public java.time.temporal.ValueRange range(java.time.temporal.ChronoField);
+ method public java.time.chrono.HijrahDate resolveDate(java.util.Map<java.time.temporal.TemporalField,java.lang.Long>, java.time.format.ResolverStyle);
+ method public java.time.chrono.ChronoZonedDateTime<java.time.chrono.HijrahDate> zonedDateTime(java.time.temporal.TemporalAccessor);
+ method public java.time.chrono.ChronoZonedDateTime<java.time.chrono.HijrahDate> zonedDateTime(java.time.Instant, java.time.ZoneId);
+ field public static final java.time.chrono.HijrahChronology INSTANCE;
+ }
+
+ public final class HijrahDate implements java.time.chrono.ChronoLocalDate java.io.Serializable java.time.temporal.Temporal java.time.temporal.TemporalAdjuster {
+ method public java.time.chrono.ChronoLocalDateTime<java.time.chrono.HijrahDate> atTime(java.time.LocalTime);
+ method public static java.time.chrono.HijrahDate from(java.time.temporal.TemporalAccessor);
+ method public java.time.chrono.HijrahChronology getChronology();
+ method public java.time.chrono.HijrahEra getEra();
+ method public long getLong(java.time.temporal.TemporalField);
+ method public int lengthOfMonth();
+ method public java.time.chrono.HijrahDate minus(java.time.temporal.TemporalAmount);
+ method public java.time.chrono.HijrahDate minus(long, java.time.temporal.TemporalUnit);
+ method public static java.time.chrono.HijrahDate now();
+ method public static java.time.chrono.HijrahDate now(java.time.ZoneId);
+ method public static java.time.chrono.HijrahDate now(java.time.Clock);
+ method public static java.time.chrono.HijrahDate of(int, int, int);
+ method public java.time.chrono.HijrahDate plus(java.time.temporal.TemporalAmount);
+ method public java.time.chrono.HijrahDate plus(long, java.time.temporal.TemporalUnit);
+ method public java.time.chrono.ChronoPeriod until(java.time.chrono.ChronoLocalDate);
+ method public long until(java.time.temporal.Temporal, java.time.temporal.TemporalUnit);
+ method public java.time.chrono.HijrahDate with(java.time.temporal.TemporalField, long);
+ method public java.time.chrono.HijrahDate with(java.time.temporal.TemporalAdjuster);
+ method public java.time.chrono.HijrahDate withVariant(java.time.chrono.HijrahChronology);
+ }
+
+ public enum HijrahEra implements java.time.chrono.Era {
+ method public int getValue();
+ method public static java.time.chrono.HijrahEra of(int);
+ enum_constant public static final java.time.chrono.HijrahEra AH;
+ }
+
+ public final class IsoChronology extends java.time.chrono.AbstractChronology implements java.io.Serializable {
+ method public java.time.LocalDate date(java.time.chrono.Era, int, int, int);
+ method public java.time.LocalDate date(int, int, int);
+ method public java.time.LocalDate date(java.time.temporal.TemporalAccessor);
+ method public java.time.LocalDate dateEpochDay(long);
+ method public java.time.LocalDate dateNow();
+ method public java.time.LocalDate dateNow(java.time.ZoneId);
+ method public java.time.LocalDate dateNow(java.time.Clock);
+ method public java.time.LocalDate dateYearDay(java.time.chrono.Era, int, int);
+ method public java.time.LocalDate dateYearDay(int, int);
+ method public java.time.chrono.IsoEra eraOf(int);
+ method public java.util.List<java.time.chrono.Era> eras();
+ method public String getCalendarType();
+ method public String getId();
+ method public boolean isLeapYear(long);
+ method public java.time.LocalDateTime localDateTime(java.time.temporal.TemporalAccessor);
+ method public java.time.Period period(int, int, int);
+ method public int prolepticYear(java.time.chrono.Era, int);
+ method public java.time.temporal.ValueRange range(java.time.temporal.ChronoField);
+ method public java.time.LocalDate resolveDate(java.util.Map<java.time.temporal.TemporalField,java.lang.Long>, java.time.format.ResolverStyle);
+ method public java.time.ZonedDateTime zonedDateTime(java.time.temporal.TemporalAccessor);
+ method public java.time.ZonedDateTime zonedDateTime(java.time.Instant, java.time.ZoneId);
+ field public static final java.time.chrono.IsoChronology INSTANCE;
+ }
+
+ public enum IsoEra implements java.time.chrono.Era {
+ method public int getValue();
+ method public static java.time.chrono.IsoEra of(int);
+ enum_constant public static final java.time.chrono.IsoEra BCE;
+ enum_constant public static final java.time.chrono.IsoEra CE;
+ }
+
+ public final class JapaneseChronology extends java.time.chrono.AbstractChronology implements java.io.Serializable {
+ method public java.time.chrono.JapaneseDate date(java.time.chrono.Era, int, int, int);
+ method public java.time.chrono.JapaneseDate date(int, int, int);
+ method public java.time.chrono.JapaneseDate date(java.time.temporal.TemporalAccessor);
+ method public java.time.chrono.JapaneseDate dateEpochDay(long);
+ method public java.time.chrono.JapaneseDate dateNow();
+ method public java.time.chrono.JapaneseDate dateNow(java.time.ZoneId);
+ method public java.time.chrono.JapaneseDate dateNow(java.time.Clock);
+ method public java.time.chrono.JapaneseDate dateYearDay(java.time.chrono.Era, int, int);
+ method public java.time.chrono.JapaneseDate dateYearDay(int, int);
+ method public java.time.chrono.JapaneseEra eraOf(int);
+ method public java.util.List<java.time.chrono.Era> eras();
+ method public String getCalendarType();
+ method public String getId();
+ method public boolean isLeapYear(long);
+ method public java.time.chrono.ChronoLocalDateTime<java.time.chrono.JapaneseDate> localDateTime(java.time.temporal.TemporalAccessor);
+ method public int prolepticYear(java.time.chrono.Era, int);
+ method public java.time.temporal.ValueRange range(java.time.temporal.ChronoField);
+ method public java.time.chrono.JapaneseDate resolveDate(java.util.Map<java.time.temporal.TemporalField,java.lang.Long>, java.time.format.ResolverStyle);
+ method public java.time.chrono.ChronoZonedDateTime<java.time.chrono.JapaneseDate> zonedDateTime(java.time.temporal.TemporalAccessor);
+ method public java.time.chrono.ChronoZonedDateTime<java.time.chrono.JapaneseDate> zonedDateTime(java.time.Instant, java.time.ZoneId);
+ field public static final java.time.chrono.JapaneseChronology INSTANCE;
+ }
+
+ public final class JapaneseDate implements java.time.chrono.ChronoLocalDate java.io.Serializable java.time.temporal.Temporal java.time.temporal.TemporalAdjuster {
+ method public java.time.chrono.ChronoLocalDateTime<java.time.chrono.JapaneseDate> atTime(java.time.LocalTime);
+ method public static java.time.chrono.JapaneseDate from(java.time.temporal.TemporalAccessor);
+ method public java.time.chrono.JapaneseChronology getChronology();
+ method public java.time.chrono.JapaneseEra getEra();
+ method public long getLong(java.time.temporal.TemporalField);
+ method public int lengthOfMonth();
+ method public java.time.chrono.JapaneseDate minus(java.time.temporal.TemporalAmount);
+ method public java.time.chrono.JapaneseDate minus(long, java.time.temporal.TemporalUnit);
+ method public static java.time.chrono.JapaneseDate now();
+ method public static java.time.chrono.JapaneseDate now(java.time.ZoneId);
+ method public static java.time.chrono.JapaneseDate now(java.time.Clock);
+ method public static java.time.chrono.JapaneseDate of(java.time.chrono.JapaneseEra, int, int, int);
+ method public static java.time.chrono.JapaneseDate of(int, int, int);
+ method public java.time.chrono.JapaneseDate plus(java.time.temporal.TemporalAmount);
+ method public java.time.chrono.JapaneseDate plus(long, java.time.temporal.TemporalUnit);
+ method public java.time.chrono.ChronoPeriod until(java.time.chrono.ChronoLocalDate);
+ method public long until(java.time.temporal.Temporal, java.time.temporal.TemporalUnit);
+ method public java.time.chrono.JapaneseDate with(java.time.temporal.TemporalField, long);
+ method public java.time.chrono.JapaneseDate with(java.time.temporal.TemporalAdjuster);
+ }
+
+ public final class JapaneseEra implements java.time.chrono.Era java.io.Serializable {
+ method public int getValue();
+ method public static java.time.chrono.JapaneseEra of(int);
+ method public static java.time.chrono.JapaneseEra valueOf(String);
+ method public static java.time.chrono.JapaneseEra[] values();
+ field public static final java.time.chrono.JapaneseEra HEISEI;
+ field public static final java.time.chrono.JapaneseEra MEIJI;
+ field public static final java.time.chrono.JapaneseEra REIWA;
+ field public static final java.time.chrono.JapaneseEra SHOWA;
+ field public static final java.time.chrono.JapaneseEra TAISHO;
+ }
+
+ public final class MinguoChronology extends java.time.chrono.AbstractChronology implements java.io.Serializable {
+ method public java.time.chrono.MinguoDate date(java.time.chrono.Era, int, int, int);
+ method public java.time.chrono.MinguoDate date(int, int, int);
+ method public java.time.chrono.MinguoDate date(java.time.temporal.TemporalAccessor);
+ method public java.time.chrono.MinguoDate dateEpochDay(long);
+ method public java.time.chrono.MinguoDate dateNow();
+ method public java.time.chrono.MinguoDate dateNow(java.time.ZoneId);
+ method public java.time.chrono.MinguoDate dateNow(java.time.Clock);
+ method public java.time.chrono.MinguoDate dateYearDay(java.time.chrono.Era, int, int);
+ method public java.time.chrono.MinguoDate dateYearDay(int, int);
+ method public java.time.chrono.MinguoEra eraOf(int);
+ method public java.util.List<java.time.chrono.Era> eras();
+ method public String getCalendarType();
+ method public String getId();
+ method public boolean isLeapYear(long);
+ method public java.time.chrono.ChronoLocalDateTime<java.time.chrono.MinguoDate> localDateTime(java.time.temporal.TemporalAccessor);
+ method public int prolepticYear(java.time.chrono.Era, int);
+ method public java.time.temporal.ValueRange range(java.time.temporal.ChronoField);
+ method public java.time.chrono.MinguoDate resolveDate(java.util.Map<java.time.temporal.TemporalField,java.lang.Long>, java.time.format.ResolverStyle);
+ method public java.time.chrono.ChronoZonedDateTime<java.time.chrono.MinguoDate> zonedDateTime(java.time.temporal.TemporalAccessor);
+ method public java.time.chrono.ChronoZonedDateTime<java.time.chrono.MinguoDate> zonedDateTime(java.time.Instant, java.time.ZoneId);
+ field public static final java.time.chrono.MinguoChronology INSTANCE;
+ }
+
+ public final class MinguoDate implements java.time.chrono.ChronoLocalDate java.io.Serializable java.time.temporal.Temporal java.time.temporal.TemporalAdjuster {
+ method public java.time.chrono.ChronoLocalDateTime<java.time.chrono.MinguoDate> atTime(java.time.LocalTime);
+ method public static java.time.chrono.MinguoDate from(java.time.temporal.TemporalAccessor);
+ method public java.time.chrono.MinguoChronology getChronology();
+ method public java.time.chrono.MinguoEra getEra();
+ method public long getLong(java.time.temporal.TemporalField);
+ method public int lengthOfMonth();
+ method public java.time.chrono.MinguoDate minus(java.time.temporal.TemporalAmount);
+ method public java.time.chrono.MinguoDate minus(long, java.time.temporal.TemporalUnit);
+ method public static java.time.chrono.MinguoDate now();
+ method public static java.time.chrono.MinguoDate now(java.time.ZoneId);
+ method public static java.time.chrono.MinguoDate now(java.time.Clock);
+ method public static java.time.chrono.MinguoDate of(int, int, int);
+ method public java.time.chrono.MinguoDate plus(java.time.temporal.TemporalAmount);
+ method public java.time.chrono.MinguoDate plus(long, java.time.temporal.TemporalUnit);
+ method public java.time.chrono.ChronoPeriod until(java.time.chrono.ChronoLocalDate);
+ method public long until(java.time.temporal.Temporal, java.time.temporal.TemporalUnit);
+ method public java.time.chrono.MinguoDate with(java.time.temporal.TemporalField, long);
+ method public java.time.chrono.MinguoDate with(java.time.temporal.TemporalAdjuster);
+ }
+
+ public enum MinguoEra implements java.time.chrono.Era {
+ method public int getValue();
+ method public static java.time.chrono.MinguoEra of(int);
+ enum_constant public static final java.time.chrono.MinguoEra BEFORE_ROC;
+ enum_constant public static final java.time.chrono.MinguoEra ROC;
+ }
+
+ public final class ThaiBuddhistChronology extends java.time.chrono.AbstractChronology implements java.io.Serializable {
+ method public java.time.chrono.ThaiBuddhistDate date(java.time.chrono.Era, int, int, int);
+ method public java.time.chrono.ThaiBuddhistDate date(int, int, int);
+ method public java.time.chrono.ThaiBuddhistDate date(java.time.temporal.TemporalAccessor);
+ method public java.time.chrono.ThaiBuddhistDate dateEpochDay(long);
+ method public java.time.chrono.ThaiBuddhistDate dateNow();
+ method public java.time.chrono.ThaiBuddhistDate dateNow(java.time.ZoneId);
+ method public java.time.chrono.ThaiBuddhistDate dateNow(java.time.Clock);
+ method public java.time.chrono.ThaiBuddhistDate dateYearDay(java.time.chrono.Era, int, int);
+ method public java.time.chrono.ThaiBuddhistDate dateYearDay(int, int);
+ method public java.time.chrono.ThaiBuddhistEra eraOf(int);
+ method public java.util.List<java.time.chrono.Era> eras();
+ method public String getCalendarType();
+ method public String getId();
+ method public boolean isLeapYear(long);
+ method public java.time.chrono.ChronoLocalDateTime<java.time.chrono.ThaiBuddhistDate> localDateTime(java.time.temporal.TemporalAccessor);
+ method public int prolepticYear(java.time.chrono.Era, int);
+ method public java.time.temporal.ValueRange range(java.time.temporal.ChronoField);
+ method public java.time.chrono.ThaiBuddhistDate resolveDate(java.util.Map<java.time.temporal.TemporalField,java.lang.Long>, java.time.format.ResolverStyle);
+ method public java.time.chrono.ChronoZonedDateTime<java.time.chrono.ThaiBuddhistDate> zonedDateTime(java.time.temporal.TemporalAccessor);
+ method public java.time.chrono.ChronoZonedDateTime<java.time.chrono.ThaiBuddhistDate> zonedDateTime(java.time.Instant, java.time.ZoneId);
+ field public static final java.time.chrono.ThaiBuddhistChronology INSTANCE;
+ }
+
+ public final class ThaiBuddhistDate implements java.time.chrono.ChronoLocalDate java.io.Serializable java.time.temporal.Temporal java.time.temporal.TemporalAdjuster {
+ method public java.time.chrono.ChronoLocalDateTime<java.time.chrono.ThaiBuddhistDate> atTime(java.time.LocalTime);
+ method public static java.time.chrono.ThaiBuddhistDate from(java.time.temporal.TemporalAccessor);
+ method public java.time.chrono.ThaiBuddhistChronology getChronology();
+ method public java.time.chrono.ThaiBuddhistEra getEra();
+ method public long getLong(java.time.temporal.TemporalField);
+ method public int lengthOfMonth();
+ method public java.time.chrono.ThaiBuddhistDate minus(java.time.temporal.TemporalAmount);
+ method public java.time.chrono.ThaiBuddhistDate minus(long, java.time.temporal.TemporalUnit);
+ method public static java.time.chrono.ThaiBuddhistDate now();
+ method public static java.time.chrono.ThaiBuddhistDate now(java.time.ZoneId);
+ method public static java.time.chrono.ThaiBuddhistDate now(java.time.Clock);
+ method public static java.time.chrono.ThaiBuddhistDate of(int, int, int);
+ method public java.time.chrono.ThaiBuddhistDate plus(java.time.temporal.TemporalAmount);
+ method public java.time.chrono.ThaiBuddhistDate plus(long, java.time.temporal.TemporalUnit);
+ method public java.time.chrono.ChronoPeriod until(java.time.chrono.ChronoLocalDate);
+ method public long until(java.time.temporal.Temporal, java.time.temporal.TemporalUnit);
+ method public java.time.chrono.ThaiBuddhistDate with(java.time.temporal.TemporalField, long);
+ method public java.time.chrono.ThaiBuddhistDate with(java.time.temporal.TemporalAdjuster);
+ }
+
+ public enum ThaiBuddhistEra implements java.time.chrono.Era {
+ method public int getValue();
+ method public static java.time.chrono.ThaiBuddhistEra of(int);
+ enum_constant public static final java.time.chrono.ThaiBuddhistEra BE;
+ enum_constant public static final java.time.chrono.ThaiBuddhistEra BEFORE_BE;
+ }
+
+}
+
+package java.time.format {
+
+ public final class DateTimeFormatter {
+ method public String format(java.time.temporal.TemporalAccessor);
+ method public void formatTo(java.time.temporal.TemporalAccessor, Appendable);
+ method public java.time.chrono.Chronology getChronology();
+ method public java.time.format.DecimalStyle getDecimalStyle();
+ method public java.util.Locale getLocale();
+ method public java.util.Set<java.time.temporal.TemporalField> getResolverFields();
+ method public java.time.format.ResolverStyle getResolverStyle();
+ method public java.time.ZoneId getZone();
+ method public static java.time.format.DateTimeFormatter ofLocalizedDate(java.time.format.FormatStyle);
+ method public static java.time.format.DateTimeFormatter ofLocalizedDateTime(java.time.format.FormatStyle);
+ method public static java.time.format.DateTimeFormatter ofLocalizedDateTime(java.time.format.FormatStyle, java.time.format.FormatStyle);
+ method public static java.time.format.DateTimeFormatter ofLocalizedTime(java.time.format.FormatStyle);
+ method public static java.time.format.DateTimeFormatter ofPattern(String);
+ method public static java.time.format.DateTimeFormatter ofPattern(String, java.util.Locale);
+ method public java.time.temporal.TemporalAccessor parse(CharSequence);
+ method public java.time.temporal.TemporalAccessor parse(CharSequence, java.text.ParsePosition);
+ method public <T> T parse(CharSequence, java.time.temporal.TemporalQuery<T>);
+ method public java.time.temporal.TemporalAccessor parseBest(CharSequence, java.time.temporal.TemporalQuery<?>...);
+ method public java.time.temporal.TemporalAccessor parseUnresolved(CharSequence, java.text.ParsePosition);
+ method public static java.time.temporal.TemporalQuery<java.time.Period> parsedExcessDays();
+ method public static java.time.temporal.TemporalQuery<java.lang.Boolean> parsedLeapSecond();
+ method public java.text.Format toFormat();
+ method public java.text.Format toFormat(java.time.temporal.TemporalQuery<?>);
+ method public java.time.format.DateTimeFormatter withChronology(java.time.chrono.Chronology);
+ method public java.time.format.DateTimeFormatter withDecimalStyle(java.time.format.DecimalStyle);
+ method public java.time.format.DateTimeFormatter withLocale(java.util.Locale);
+ method public java.time.format.DateTimeFormatter withResolverFields(java.time.temporal.TemporalField...);
+ method public java.time.format.DateTimeFormatter withResolverFields(java.util.Set<java.time.temporal.TemporalField>);
+ method public java.time.format.DateTimeFormatter withResolverStyle(java.time.format.ResolverStyle);
+ method public java.time.format.DateTimeFormatter withZone(java.time.ZoneId);
+ field public static final java.time.format.DateTimeFormatter BASIC_ISO_DATE;
+ field public static final java.time.format.DateTimeFormatter ISO_DATE;
+ field public static final java.time.format.DateTimeFormatter ISO_DATE_TIME;
+ field public static final java.time.format.DateTimeFormatter ISO_INSTANT;
+ field public static final java.time.format.DateTimeFormatter ISO_LOCAL_DATE;
+ field public static final java.time.format.DateTimeFormatter ISO_LOCAL_DATE_TIME;
+ field public static final java.time.format.DateTimeFormatter ISO_LOCAL_TIME;
+ field public static final java.time.format.DateTimeFormatter ISO_OFFSET_DATE;
+ field public static final java.time.format.DateTimeFormatter ISO_OFFSET_DATE_TIME;
+ field public static final java.time.format.DateTimeFormatter ISO_OFFSET_TIME;
+ field public static final java.time.format.DateTimeFormatter ISO_ORDINAL_DATE;
+ field public static final java.time.format.DateTimeFormatter ISO_TIME;
+ field public static final java.time.format.DateTimeFormatter ISO_WEEK_DATE;
+ field public static final java.time.format.DateTimeFormatter ISO_ZONED_DATE_TIME;
+ field public static final java.time.format.DateTimeFormatter RFC_1123_DATE_TIME;
+ }
+
+ public final class DateTimeFormatterBuilder {
+ ctor public DateTimeFormatterBuilder();
+ method public java.time.format.DateTimeFormatterBuilder append(java.time.format.DateTimeFormatter);
+ method public java.time.format.DateTimeFormatterBuilder appendChronologyId();
+ method public java.time.format.DateTimeFormatterBuilder appendChronologyText(java.time.format.TextStyle);
+ method public java.time.format.DateTimeFormatterBuilder appendFraction(java.time.temporal.TemporalField, int, int, boolean);
+ method public java.time.format.DateTimeFormatterBuilder appendInstant();
+ method public java.time.format.DateTimeFormatterBuilder appendInstant(int);
+ method public java.time.format.DateTimeFormatterBuilder appendLiteral(char);
+ method public java.time.format.DateTimeFormatterBuilder appendLiteral(String);
+ method public java.time.format.DateTimeFormatterBuilder appendLocalized(java.time.format.FormatStyle, java.time.format.FormatStyle);
+ method public java.time.format.DateTimeFormatterBuilder appendLocalizedOffset(java.time.format.TextStyle);
+ method public java.time.format.DateTimeFormatterBuilder appendOffset(String, String);
+ method public java.time.format.DateTimeFormatterBuilder appendOffsetId();
+ method public java.time.format.DateTimeFormatterBuilder appendOptional(java.time.format.DateTimeFormatter);
+ method public java.time.format.DateTimeFormatterBuilder appendPattern(String);
+ method public java.time.format.DateTimeFormatterBuilder appendText(java.time.temporal.TemporalField);
+ method public java.time.format.DateTimeFormatterBuilder appendText(java.time.temporal.TemporalField, java.time.format.TextStyle);
+ method public java.time.format.DateTimeFormatterBuilder appendText(java.time.temporal.TemporalField, java.util.Map<java.lang.Long,java.lang.String>);
+ method public java.time.format.DateTimeFormatterBuilder appendValue(java.time.temporal.TemporalField);
+ method public java.time.format.DateTimeFormatterBuilder appendValue(java.time.temporal.TemporalField, int);
+ method public java.time.format.DateTimeFormatterBuilder appendValue(java.time.temporal.TemporalField, int, int, java.time.format.SignStyle);
+ method public java.time.format.DateTimeFormatterBuilder appendValueReduced(java.time.temporal.TemporalField, int, int, int);
+ method public java.time.format.DateTimeFormatterBuilder appendValueReduced(java.time.temporal.TemporalField, int, int, java.time.chrono.ChronoLocalDate);
+ method public java.time.format.DateTimeFormatterBuilder appendZoneId();
+ method public java.time.format.DateTimeFormatterBuilder appendZoneOrOffsetId();
+ method public java.time.format.DateTimeFormatterBuilder appendZoneRegionId();
+ method public java.time.format.DateTimeFormatterBuilder appendZoneText(java.time.format.TextStyle);
+ method public java.time.format.DateTimeFormatterBuilder appendZoneText(java.time.format.TextStyle, java.util.Set<java.time.ZoneId>);
+ method public static String getLocalizedDateTimePattern(java.time.format.FormatStyle, java.time.format.FormatStyle, java.time.chrono.Chronology, java.util.Locale);
+ method public java.time.format.DateTimeFormatterBuilder optionalEnd();
+ method public java.time.format.DateTimeFormatterBuilder optionalStart();
+ method public java.time.format.DateTimeFormatterBuilder padNext(int);
+ method public java.time.format.DateTimeFormatterBuilder padNext(int, char);
+ method public java.time.format.DateTimeFormatterBuilder parseCaseInsensitive();
+ method public java.time.format.DateTimeFormatterBuilder parseCaseSensitive();
+ method public java.time.format.DateTimeFormatterBuilder parseDefaulting(java.time.temporal.TemporalField, long);
+ method public java.time.format.DateTimeFormatterBuilder parseLenient();
+ method public java.time.format.DateTimeFormatterBuilder parseStrict();
+ method public java.time.format.DateTimeFormatter toFormatter();
+ method public java.time.format.DateTimeFormatter toFormatter(java.util.Locale);
+ }
+
+ public class DateTimeParseException extends java.time.DateTimeException {
+ ctor public DateTimeParseException(String, CharSequence, int);
+ ctor public DateTimeParseException(String, CharSequence, int, Throwable);
+ method public int getErrorIndex();
+ method public String getParsedString();
+ }
+
+ public final class DecimalStyle {
+ method public static java.util.Set<java.util.Locale> getAvailableLocales();
+ method public char getDecimalSeparator();
+ method public char getNegativeSign();
+ method public char getPositiveSign();
+ method public char getZeroDigit();
+ method public static java.time.format.DecimalStyle of(java.util.Locale);
+ method public static java.time.format.DecimalStyle ofDefaultLocale();
+ method public java.time.format.DecimalStyle withDecimalSeparator(char);
+ method public java.time.format.DecimalStyle withNegativeSign(char);
+ method public java.time.format.DecimalStyle withPositiveSign(char);
+ method public java.time.format.DecimalStyle withZeroDigit(char);
+ field public static final java.time.format.DecimalStyle STANDARD;
+ }
+
+ public enum FormatStyle {
+ enum_constant public static final java.time.format.FormatStyle FULL;
+ enum_constant public static final java.time.format.FormatStyle LONG;
+ enum_constant public static final java.time.format.FormatStyle MEDIUM;
+ enum_constant public static final java.time.format.FormatStyle SHORT;
+ }
+
+ public enum ResolverStyle {
+ enum_constant public static final java.time.format.ResolverStyle LENIENT;
+ enum_constant public static final java.time.format.ResolverStyle SMART;
+ enum_constant public static final java.time.format.ResolverStyle STRICT;
+ }
+
+ public enum SignStyle {
+ enum_constant public static final java.time.format.SignStyle ALWAYS;
+ enum_constant public static final java.time.format.SignStyle EXCEEDS_PAD;
+ enum_constant public static final java.time.format.SignStyle NEVER;
+ enum_constant public static final java.time.format.SignStyle NORMAL;
+ enum_constant public static final java.time.format.SignStyle NOT_NEGATIVE;
+ }
+
+ public enum TextStyle {
+ method public java.time.format.TextStyle asNormal();
+ method public java.time.format.TextStyle asStandalone();
+ method public boolean isStandalone();
+ enum_constant public static final java.time.format.TextStyle FULL;
+ enum_constant public static final java.time.format.TextStyle FULL_STANDALONE;
+ enum_constant public static final java.time.format.TextStyle NARROW;
+ enum_constant public static final java.time.format.TextStyle NARROW_STANDALONE;
+ enum_constant public static final java.time.format.TextStyle SHORT;
+ enum_constant public static final java.time.format.TextStyle SHORT_STANDALONE;
+ }
+
+}
+
+package java.time.temporal {
+
+ public enum ChronoField implements java.time.temporal.TemporalField {
+ method public <R extends java.time.temporal.Temporal> R adjustInto(R, long);
+ method public int checkValidIntValue(long);
+ method public long checkValidValue(long);
+ method public java.time.temporal.TemporalUnit getBaseUnit();
+ method public long getFrom(java.time.temporal.TemporalAccessor);
+ method public java.time.temporal.TemporalUnit getRangeUnit();
+ method public boolean isDateBased();
+ method public boolean isSupportedBy(java.time.temporal.TemporalAccessor);
+ method public boolean isTimeBased();
+ method public java.time.temporal.ValueRange range();
+ method public java.time.temporal.ValueRange rangeRefinedBy(java.time.temporal.TemporalAccessor);
+ enum_constant public static final java.time.temporal.ChronoField ALIGNED_DAY_OF_WEEK_IN_MONTH;
+ enum_constant public static final java.time.temporal.ChronoField ALIGNED_DAY_OF_WEEK_IN_YEAR;
+ enum_constant public static final java.time.temporal.ChronoField ALIGNED_WEEK_OF_MONTH;
+ enum_constant public static final java.time.temporal.ChronoField ALIGNED_WEEK_OF_YEAR;
+ enum_constant public static final java.time.temporal.ChronoField AMPM_OF_DAY;
+ enum_constant public static final java.time.temporal.ChronoField CLOCK_HOUR_OF_AMPM;
+ enum_constant public static final java.time.temporal.ChronoField CLOCK_HOUR_OF_DAY;
+ enum_constant public static final java.time.temporal.ChronoField DAY_OF_MONTH;
+ enum_constant public static final java.time.temporal.ChronoField DAY_OF_WEEK;
+ enum_constant public static final java.time.temporal.ChronoField DAY_OF_YEAR;
+ enum_constant public static final java.time.temporal.ChronoField EPOCH_DAY;
+ enum_constant public static final java.time.temporal.ChronoField ERA;
+ enum_constant public static final java.time.temporal.ChronoField HOUR_OF_AMPM;
+ enum_constant public static final java.time.temporal.ChronoField HOUR_OF_DAY;
+ enum_constant public static final java.time.temporal.ChronoField INSTANT_SECONDS;
+ enum_constant public static final java.time.temporal.ChronoField MICRO_OF_DAY;
+ enum_constant public static final java.time.temporal.ChronoField MICRO_OF_SECOND;
+ enum_constant public static final java.time.temporal.ChronoField MILLI_OF_DAY;
+ enum_constant public static final java.time.temporal.ChronoField MILLI_OF_SECOND;
+ enum_constant public static final java.time.temporal.ChronoField MINUTE_OF_DAY;
+ enum_constant public static final java.time.temporal.ChronoField MINUTE_OF_HOUR;
+ enum_constant public static final java.time.temporal.ChronoField MONTH_OF_YEAR;
+ enum_constant public static final java.time.temporal.ChronoField NANO_OF_DAY;
+ enum_constant public static final java.time.temporal.ChronoField NANO_OF_SECOND;
+ enum_constant public static final java.time.temporal.ChronoField OFFSET_SECONDS;
+ enum_constant public static final java.time.temporal.ChronoField PROLEPTIC_MONTH;
+ enum_constant public static final java.time.temporal.ChronoField SECOND_OF_DAY;
+ enum_constant public static final java.time.temporal.ChronoField SECOND_OF_MINUTE;
+ enum_constant public static final java.time.temporal.ChronoField YEAR;
+ enum_constant public static final java.time.temporal.ChronoField YEAR_OF_ERA;
+ }
+
+ public enum ChronoUnit implements java.time.temporal.TemporalUnit {
+ method public <R extends java.time.temporal.Temporal> R addTo(R, long);
+ method public long between(java.time.temporal.Temporal, java.time.temporal.Temporal);
+ method public java.time.Duration getDuration();
+ method public boolean isDateBased();
+ method public boolean isDurationEstimated();
+ method public boolean isTimeBased();
+ enum_constant public static final java.time.temporal.ChronoUnit CENTURIES;
+ enum_constant public static final java.time.temporal.ChronoUnit DAYS;
+ enum_constant public static final java.time.temporal.ChronoUnit DECADES;
+ enum_constant public static final java.time.temporal.ChronoUnit ERAS;
+ enum_constant public static final java.time.temporal.ChronoUnit FOREVER;
+ enum_constant public static final java.time.temporal.ChronoUnit HALF_DAYS;
+ enum_constant public static final java.time.temporal.ChronoUnit HOURS;
+ enum_constant public static final java.time.temporal.ChronoUnit MICROS;
+ enum_constant public static final java.time.temporal.ChronoUnit MILLENNIA;
+ enum_constant public static final java.time.temporal.ChronoUnit MILLIS;
+ enum_constant public static final java.time.temporal.ChronoUnit MINUTES;
+ enum_constant public static final java.time.temporal.ChronoUnit MONTHS;
+ enum_constant public static final java.time.temporal.ChronoUnit NANOS;
+ enum_constant public static final java.time.temporal.ChronoUnit SECONDS;
+ enum_constant public static final java.time.temporal.ChronoUnit WEEKS;
+ enum_constant public static final java.time.temporal.ChronoUnit YEARS;
+ }
+
+ public final class IsoFields {
+ field public static final java.time.temporal.TemporalField DAY_OF_QUARTER;
+ field public static final java.time.temporal.TemporalField QUARTER_OF_YEAR;
+ field public static final java.time.temporal.TemporalUnit QUARTER_YEARS;
+ field public static final java.time.temporal.TemporalField WEEK_BASED_YEAR;
+ field public static final java.time.temporal.TemporalUnit WEEK_BASED_YEARS;
+ field public static final java.time.temporal.TemporalField WEEK_OF_WEEK_BASED_YEAR;
+ }
+
+ public final class JulianFields {
+ field public static final java.time.temporal.TemporalField JULIAN_DAY;
+ field public static final java.time.temporal.TemporalField MODIFIED_JULIAN_DAY;
+ field public static final java.time.temporal.TemporalField RATA_DIE;
+ }
+
+ public interface Temporal extends java.time.temporal.TemporalAccessor {
+ method public boolean isSupported(java.time.temporal.TemporalUnit);
+ method public default java.time.temporal.Temporal minus(java.time.temporal.TemporalAmount);
+ method public default java.time.temporal.Temporal minus(long, java.time.temporal.TemporalUnit);
+ method public default java.time.temporal.Temporal plus(java.time.temporal.TemporalAmount);
+ method public java.time.temporal.Temporal plus(long, java.time.temporal.TemporalUnit);
+ method public long until(java.time.temporal.Temporal, java.time.temporal.TemporalUnit);
+ method public default java.time.temporal.Temporal with(java.time.temporal.TemporalAdjuster);
+ method public java.time.temporal.Temporal with(java.time.temporal.TemporalField, long);
+ }
+
+ public interface TemporalAccessor {
+ method public default int get(java.time.temporal.TemporalField);
+ method public long getLong(java.time.temporal.TemporalField);
+ method public boolean isSupported(java.time.temporal.TemporalField);
+ method public default <R> R query(java.time.temporal.TemporalQuery<R>);
+ method public default java.time.temporal.ValueRange range(java.time.temporal.TemporalField);
+ }
+
+ @java.lang.FunctionalInterface public interface TemporalAdjuster {
+ method public java.time.temporal.Temporal adjustInto(java.time.temporal.Temporal);
+ }
+
+ public final class TemporalAdjusters {
+ method public static java.time.temporal.TemporalAdjuster dayOfWeekInMonth(int, java.time.DayOfWeek);
+ method public static java.time.temporal.TemporalAdjuster firstDayOfMonth();
+ method public static java.time.temporal.TemporalAdjuster firstDayOfNextMonth();
+ method public static java.time.temporal.TemporalAdjuster firstDayOfNextYear();
+ method public static java.time.temporal.TemporalAdjuster firstDayOfYear();
+ method public static java.time.temporal.TemporalAdjuster firstInMonth(java.time.DayOfWeek);
+ method public static java.time.temporal.TemporalAdjuster lastDayOfMonth();
+ method public static java.time.temporal.TemporalAdjuster lastDayOfYear();
+ method public static java.time.temporal.TemporalAdjuster lastInMonth(java.time.DayOfWeek);
+ method public static java.time.temporal.TemporalAdjuster next(java.time.DayOfWeek);
+ method public static java.time.temporal.TemporalAdjuster nextOrSame(java.time.DayOfWeek);
+ method public static java.time.temporal.TemporalAdjuster ofDateAdjuster(java.util.function.UnaryOperator<java.time.LocalDate>);
+ method public static java.time.temporal.TemporalAdjuster previous(java.time.DayOfWeek);
+ method public static java.time.temporal.TemporalAdjuster previousOrSame(java.time.DayOfWeek);
+ }
+
+ public interface TemporalAmount {
+ method public java.time.temporal.Temporal addTo(java.time.temporal.Temporal);
+ method public long get(java.time.temporal.TemporalUnit);
+ method public java.util.List<java.time.temporal.TemporalUnit> getUnits();
+ method public java.time.temporal.Temporal subtractFrom(java.time.temporal.Temporal);
+ }
+
+ public interface TemporalField {
+ method public <R extends java.time.temporal.Temporal> R adjustInto(R, long);
+ method public java.time.temporal.TemporalUnit getBaseUnit();
+ method public default String getDisplayName(java.util.Locale);
+ method public long getFrom(java.time.temporal.TemporalAccessor);
+ method public java.time.temporal.TemporalUnit getRangeUnit();
+ method public boolean isDateBased();
+ method public boolean isSupportedBy(java.time.temporal.TemporalAccessor);
+ method public boolean isTimeBased();
+ method public java.time.temporal.ValueRange range();
+ method public java.time.temporal.ValueRange rangeRefinedBy(java.time.temporal.TemporalAccessor);
+ method public default java.time.temporal.TemporalAccessor resolve(java.util.Map<java.time.temporal.TemporalField,java.lang.Long>, java.time.temporal.TemporalAccessor, java.time.format.ResolverStyle);
+ method public String toString();
+ }
+
+ public final class TemporalQueries {
+ method public static java.time.temporal.TemporalQuery<java.time.chrono.Chronology> chronology();
+ method public static java.time.temporal.TemporalQuery<java.time.LocalDate> localDate();
+ method public static java.time.temporal.TemporalQuery<java.time.LocalTime> localTime();
+ method public static java.time.temporal.TemporalQuery<java.time.ZoneOffset> offset();
+ method public static java.time.temporal.TemporalQuery<java.time.temporal.TemporalUnit> precision();
+ method public static java.time.temporal.TemporalQuery<java.time.ZoneId> zone();
+ method public static java.time.temporal.TemporalQuery<java.time.ZoneId> zoneId();
+ }
+
+ @java.lang.FunctionalInterface public interface TemporalQuery<R> {
+ method public R queryFrom(java.time.temporal.TemporalAccessor);
+ }
+
+ public interface TemporalUnit {
+ method public <R extends java.time.temporal.Temporal> R addTo(R, long);
+ method public long between(java.time.temporal.Temporal, java.time.temporal.Temporal);
+ method public java.time.Duration getDuration();
+ method public boolean isDateBased();
+ method public boolean isDurationEstimated();
+ method public default boolean isSupportedBy(java.time.temporal.Temporal);
+ method public boolean isTimeBased();
+ method public String toString();
+ }
+
+ public class UnsupportedTemporalTypeException extends java.time.DateTimeException {
+ ctor public UnsupportedTemporalTypeException(String);
+ ctor public UnsupportedTemporalTypeException(String, Throwable);
+ }
+
+ public final class ValueRange implements java.io.Serializable {
+ method public int checkValidIntValue(long, java.time.temporal.TemporalField);
+ method public long checkValidValue(long, java.time.temporal.TemporalField);
+ method public long getLargestMinimum();
+ method public long getMaximum();
+ method public long getMinimum();
+ method public long getSmallestMaximum();
+ method public boolean isFixed();
+ method public boolean isIntValue();
+ method public boolean isValidIntValue(long);
+ method public boolean isValidValue(long);
+ method public static java.time.temporal.ValueRange of(long, long);
+ method public static java.time.temporal.ValueRange of(long, long, long);
+ method public static java.time.temporal.ValueRange of(long, long, long, long);
+ }
+
+ public final class WeekFields implements java.io.Serializable {
+ method public java.time.temporal.TemporalField dayOfWeek();
+ method public java.time.DayOfWeek getFirstDayOfWeek();
+ method public int getMinimalDaysInFirstWeek();
+ method public static java.time.temporal.WeekFields of(java.util.Locale);
+ method public static java.time.temporal.WeekFields of(java.time.DayOfWeek, int);
+ method public java.time.temporal.TemporalField weekBasedYear();
+ method public java.time.temporal.TemporalField weekOfMonth();
+ method public java.time.temporal.TemporalField weekOfWeekBasedYear();
+ method public java.time.temporal.TemporalField weekOfYear();
+ field public static final java.time.temporal.WeekFields ISO;
+ field public static final java.time.temporal.WeekFields SUNDAY_START;
+ field public static final java.time.temporal.TemporalUnit WEEK_BASED_YEARS;
+ }
+
+}
+
+package java.time.zone {
+
+ public final class ZoneOffsetTransition implements java.lang.Comparable<java.time.zone.ZoneOffsetTransition> java.io.Serializable {
+ method public int compareTo(java.time.zone.ZoneOffsetTransition);
+ method public java.time.LocalDateTime getDateTimeAfter();
+ method public java.time.LocalDateTime getDateTimeBefore();
+ method public java.time.Duration getDuration();
+ method public java.time.Instant getInstant();
+ method public java.time.ZoneOffset getOffsetAfter();
+ method public java.time.ZoneOffset getOffsetBefore();
+ method public boolean isGap();
+ method public boolean isOverlap();
+ method public boolean isValidOffset(java.time.ZoneOffset);
+ method public static java.time.zone.ZoneOffsetTransition of(java.time.LocalDateTime, java.time.ZoneOffset, java.time.ZoneOffset);
+ method public long toEpochSecond();
+ }
+
+ public final class ZoneOffsetTransitionRule implements java.io.Serializable {
+ method public java.time.zone.ZoneOffsetTransition createTransition(int);
+ method public int getDayOfMonthIndicator();
+ method public java.time.DayOfWeek getDayOfWeek();
+ method public java.time.LocalTime getLocalTime();
+ method public java.time.Month getMonth();
+ method public java.time.ZoneOffset getOffsetAfter();
+ method public java.time.ZoneOffset getOffsetBefore();
+ method public java.time.ZoneOffset getStandardOffset();
+ method public java.time.zone.ZoneOffsetTransitionRule.TimeDefinition getTimeDefinition();
+ method public boolean isMidnightEndOfDay();
+ method public static java.time.zone.ZoneOffsetTransitionRule of(java.time.Month, int, java.time.DayOfWeek, java.time.LocalTime, boolean, java.time.zone.ZoneOffsetTransitionRule.TimeDefinition, java.time.ZoneOffset, java.time.ZoneOffset, java.time.ZoneOffset);
+ }
+
+ public enum ZoneOffsetTransitionRule.TimeDefinition {
+ method public java.time.LocalDateTime createDateTime(java.time.LocalDateTime, java.time.ZoneOffset, java.time.ZoneOffset);
+ enum_constant public static final java.time.zone.ZoneOffsetTransitionRule.TimeDefinition STANDARD;
+ enum_constant public static final java.time.zone.ZoneOffsetTransitionRule.TimeDefinition UTC;
+ enum_constant public static final java.time.zone.ZoneOffsetTransitionRule.TimeDefinition WALL;
+ }
+
+ public final class ZoneRules implements java.io.Serializable {
+ method public java.time.Duration getDaylightSavings(java.time.Instant);
+ method public java.time.ZoneOffset getOffset(java.time.Instant);
+ method public java.time.ZoneOffset getOffset(java.time.LocalDateTime);
+ method public java.time.ZoneOffset getStandardOffset(java.time.Instant);
+ method public java.time.zone.ZoneOffsetTransition getTransition(java.time.LocalDateTime);
+ method public java.util.List<java.time.zone.ZoneOffsetTransitionRule> getTransitionRules();
+ method public java.util.List<java.time.zone.ZoneOffsetTransition> getTransitions();
+ method public java.util.List<java.time.ZoneOffset> getValidOffsets(java.time.LocalDateTime);
+ method public boolean isDaylightSavings(java.time.Instant);
+ method public boolean isFixedOffset();
+ method public boolean isValidOffset(java.time.LocalDateTime, java.time.ZoneOffset);
+ method public java.time.zone.ZoneOffsetTransition nextTransition(java.time.Instant);
+ method public static java.time.zone.ZoneRules of(java.time.ZoneOffset, java.time.ZoneOffset, java.util.List<java.time.zone.ZoneOffsetTransition>, java.util.List<java.time.zone.ZoneOffsetTransition>, java.util.List<java.time.zone.ZoneOffsetTransitionRule>);
+ method public static java.time.zone.ZoneRules of(java.time.ZoneOffset);
+ method public java.time.zone.ZoneOffsetTransition previousTransition(java.time.Instant);
+ }
+
+ public class ZoneRulesException extends java.time.DateTimeException {
+ ctor public ZoneRulesException(String);
+ ctor public ZoneRulesException(String, Throwable);
+ }
+
+}
+
+package java.util {
+
+ public abstract class AbstractCollection<E> implements java.util.Collection<E> {
+ ctor protected AbstractCollection();
+ method public boolean add(E);
+ method public boolean addAll(@NonNull java.util.Collection<? extends E>);
+ method public void clear();
+ method public boolean contains(@Nullable Object);
+ method public boolean containsAll(@NonNull java.util.Collection<?>);
+ method public boolean isEmpty();
+ method public boolean remove(@Nullable Object);
+ method public boolean removeAll(@NonNull java.util.Collection<?>);
+ method public boolean retainAll(@NonNull java.util.Collection<?>);
+ method @NonNull public Object[] toArray();
+ method @NonNull public <T> T[] toArray(@NonNull T[]);
+ }
+
+ public abstract class AbstractList<E> extends java.util.AbstractCollection<E> implements java.util.List<E> {
+ ctor protected AbstractList();
+ method public void add(int, E);
+ method public boolean addAll(int, @NonNull java.util.Collection<? extends E>);
+ method public int indexOf(@Nullable Object);
+ method @NonNull public java.util.Iterator<E> iterator();
+ method public int lastIndexOf(@Nullable Object);
+ method @NonNull public java.util.ListIterator<E> listIterator();
+ method @NonNull public java.util.ListIterator<E> listIterator(int);
+ method public E remove(int);
+ method protected void removeRange(int, int);
+ method public E set(int, E);
+ method @NonNull public java.util.List<E> subList(int, int);
+ field protected transient int modCount;
+ }
+
+ public abstract class AbstractMap<K, V> implements java.util.Map<K,V> {
+ ctor protected AbstractMap();
+ method public void clear();
+ method public boolean containsKey(@Nullable Object);
+ method public boolean containsValue(@Nullable Object);
+ method @Nullable public V get(@Nullable Object);
+ method public boolean isEmpty();
+ method @NonNull public java.util.Set<K> keySet();
+ method @Nullable public V put(K, V);
+ method public void putAll(@NonNull java.util.Map<? extends K,? extends V>);
+ method @Nullable public V remove(@Nullable Object);
+ method public int size();
+ method @NonNull public java.util.Collection<V> values();
+ }
+
+ public static class AbstractMap.SimpleEntry<K, V> implements java.util.Map.Entry<K,V> java.io.Serializable {
+ ctor public AbstractMap.SimpleEntry(K, V);
+ ctor public AbstractMap.SimpleEntry(@NonNull java.util.Map.Entry<? extends K,? extends V>);
+ method public K getKey();
+ method public V getValue();
+ method public V setValue(V);
+ }
+
+ public static class AbstractMap.SimpleImmutableEntry<K, V> implements java.util.Map.Entry<K,V> java.io.Serializable {
+ ctor public AbstractMap.SimpleImmutableEntry(K, V);
+ ctor public AbstractMap.SimpleImmutableEntry(@NonNull java.util.Map.Entry<? extends K,? extends V>);
+ method public K getKey();
+ method public V getValue();
+ method public V setValue(V);
+ }
+
+ public abstract class AbstractQueue<E> extends java.util.AbstractCollection<E> implements java.util.Queue<E> {
+ ctor protected AbstractQueue();
+ method public E element();
+ method public E remove();
+ }
+
+ public abstract class AbstractSequentialList<E> extends java.util.AbstractList<E> {
+ ctor protected AbstractSequentialList();
+ method public E get(int);
+ }
+
+ public abstract class AbstractSet<E> extends java.util.AbstractCollection<E> implements java.util.Set<E> {
+ ctor protected AbstractSet();
+ }
+
+ public class ArrayDeque<E> extends java.util.AbstractCollection<E> implements java.lang.Cloneable java.util.Deque<E> java.io.Serializable {
+ ctor public ArrayDeque();
+ ctor public ArrayDeque(int);
+ ctor public ArrayDeque(@NonNull java.util.Collection<? extends E>);
+ method public void addFirst(E);
+ method public void addLast(E);
+ method @NonNull public java.util.ArrayDeque<E> clone();
+ method @NonNull public java.util.Iterator<E> descendingIterator();
+ method public E element();
+ method public E getFirst();
+ method public E getLast();
+ method @NonNull public java.util.Iterator<E> iterator();
+ method public boolean offer(E);
+ method public boolean offerFirst(E);
+ method public boolean offerLast(E);
+ method @Nullable public E peek();
+ method @Nullable public E peekFirst();
+ method @Nullable public E peekLast();
+ method @Nullable public E poll();
+ method @Nullable public E pollFirst();
+ method @Nullable public E pollLast();
+ method public E pop();
+ method public void push(E);
+ method public E remove();
+ method public E removeFirst();
+ method public boolean removeFirstOccurrence(@Nullable Object);
+ method public E removeLast();
+ method public boolean removeLastOccurrence(@Nullable Object);
+ method public int size();
+ }
+
+ public class ArrayList<E> extends java.util.AbstractList<E> implements java.lang.Cloneable java.util.List<E> java.util.RandomAccess java.io.Serializable {
+ ctor public ArrayList(int);
+ ctor public ArrayList();
+ ctor public ArrayList(@NonNull java.util.Collection<? extends E>);
+ method @NonNull public Object clone();
+ method public void ensureCapacity(int);
+ method public void forEach(@NonNull java.util.function.Consumer<? super E>);
+ method public E get(int);
+ method public int size();
+ method public void trimToSize();
+ }
+
+ public class Arrays {
+ method @NonNull @java.lang.SafeVarargs public static <T> java.util.List<T> asList(@NonNull T...);
+ method public static int binarySearch(@NonNull long[], long);
+ method public static int binarySearch(@NonNull long[], int, int, long);
+ method public static int binarySearch(@NonNull int[], int);
+ method public static int binarySearch(@NonNull int[], int, int, int);
+ method public static int binarySearch(@NonNull short[], short);
+ method public static int binarySearch(@NonNull short[], int, int, short);
+ method public static int binarySearch(@NonNull char[], char);
+ method public static int binarySearch(@NonNull char[], int, int, char);
+ method public static int binarySearch(@NonNull byte[], byte);
+ method public static int binarySearch(@NonNull byte[], int, int, byte);
+ method public static int binarySearch(@NonNull double[], double);
+ method public static int binarySearch(@NonNull double[], int, int, double);
+ method public static int binarySearch(@NonNull float[], float);
+ method public static int binarySearch(@NonNull float[], int, int, float);
+ method public static int binarySearch(@NonNull Object[], @NonNull Object);
+ method public static int binarySearch(@NonNull Object[], int, int, @NonNull Object);
+ method public static <T> int binarySearch(@NonNull T[], T, @Nullable java.util.Comparator<? super T>);
+ method public static <T> int binarySearch(@NonNull T[], int, int, T, @Nullable java.util.Comparator<? super T>);
+ method public static int compare(@Nullable boolean[], @Nullable boolean[]);
+ method public static int compare(@NonNull boolean[], int, int, @NonNull boolean[], int, int);
+ method public static int compare(@Nullable byte[], @Nullable byte[]);
+ method public static int compare(@NonNull byte[], int, int, @NonNull byte[], int, int);
+ method public static int compare(@Nullable short[], @Nullable short[]);
+ method public static int compare(@NonNull short[], int, int, @NonNull short[], int, int);
+ method public static int compare(@Nullable char[], @Nullable char[]);
+ method public static int compare(@NonNull char[], int, int, @NonNull char[], int, int);
+ method public static int compare(@Nullable int[], @Nullable int[]);
+ method public static int compare(@NonNull int[], int, int, @NonNull int[], int, int);
+ method public static int compare(@Nullable long[], @Nullable long[]);
+ method public static int compare(@NonNull long[], int, int, @NonNull long[], int, int);
+ method public static int compare(@Nullable float[], @Nullable float[]);
+ method public static int compare(@NonNull float[], int, int, @NonNull float[], int, int);
+ method public static int compare(@Nullable double[], @Nullable double[]);
+ method public static int compare(@NonNull double[], int, int, @NonNull double[], int, int);
+ method public static <T extends java.lang.Comparable<? super T>> int compare(@Nullable T[], @Nullable T[]);
+ method public static <T extends java.lang.Comparable<? super T>> int compare(@NonNull T[], int, int, @NonNull T[], int, int);
+ method public static <T> int compare(@Nullable T[], @Nullable T[], @NonNull java.util.Comparator<? super T>);
+ method public static <T> int compare(@NonNull T[], int, int, @NonNull T[], int, int, @NonNull java.util.Comparator<? super T>);
+ method public static int compareUnsigned(@Nullable byte[], @Nullable byte[]);
+ method public static int compareUnsigned(@NonNull byte[], int, int, @NonNull byte[], int, int);
+ method public static int compareUnsigned(@Nullable short[], @Nullable short[]);
+ method public static int compareUnsigned(@NonNull short[], int, int, @NonNull short[], int, int);
+ method public static int compareUnsigned(@Nullable int[], @Nullable int[]);
+ method public static int compareUnsigned(@NonNull int[], int, int, @NonNull int[], int, int);
+ method public static int compareUnsigned(@Nullable long[], @Nullable long[]);
+ method public static int compareUnsigned(@NonNull long[], int, int, @NonNull long[], int, int);
+ method @NonNull public static <T> T[] copyOf(@NonNull T[], int);
+ method @NonNull public static <T, U> T[] copyOf(@NonNull U[], int, @NonNull Class<? extends T[]>);
+ method @NonNull public static byte[] copyOf(@NonNull byte[], int);
+ method @NonNull public static short[] copyOf(@NonNull short[], int);
+ method @NonNull public static int[] copyOf(@NonNull int[], int);
+ method @NonNull public static long[] copyOf(@NonNull long[], int);
+ method @NonNull public static char[] copyOf(@NonNull char[], int);
+ method @NonNull public static float[] copyOf(@NonNull float[], int);
+ method @NonNull public static double[] copyOf(@NonNull double[], int);
+ method @NonNull public static boolean[] copyOf(@NonNull boolean[], int);
+ method @NonNull public static <T> T[] copyOfRange(@NonNull T[], int, int);
+ method @NonNull public static <T, U> T[] copyOfRange(@NonNull U[], int, int, @NonNull Class<? extends T[]>);
+ method @NonNull public static byte[] copyOfRange(@NonNull byte[], int, int);
+ method @NonNull public static short[] copyOfRange(@NonNull short[], int, int);
+ method @NonNull public static int[] copyOfRange(@NonNull int[], int, int);
+ method @NonNull public static long[] copyOfRange(@NonNull long[], int, int);
+ method @NonNull public static char[] copyOfRange(@NonNull char[], int, int);
+ method @NonNull public static float[] copyOfRange(@NonNull float[], int, int);
+ method @NonNull public static double[] copyOfRange(@NonNull double[], int, int);
+ method @NonNull public static boolean[] copyOfRange(@NonNull boolean[], int, int);
+ method public static boolean deepEquals(@Nullable Object[], @Nullable Object[]);
+ method public static int deepHashCode(@Nullable Object[]);
+ method @NonNull public static String deepToString(@Nullable Object[]);
+ method public static boolean equals(@Nullable long[], @Nullable long[]);
+ method public static boolean equals(@NonNull long[], int, int, @NonNull long[], int, int);
+ method public static boolean equals(@Nullable int[], @Nullable int[]);
+ method public static boolean equals(@NonNull int[], int, int, @NonNull int[], int, int);
+ method public static boolean equals(@Nullable short[], @Nullable short[]);
+ method public static boolean equals(@NonNull short[], int, int, @NonNull short[], int, int);
+ method public static boolean equals(@Nullable char[], @Nullable char[]);
+ method public static boolean equals(@NonNull char[], int, int, @NonNull char[], int, int);
+ method public static boolean equals(@Nullable byte[], @Nullable byte[]);
+ method public static boolean equals(@NonNull byte[], int, int, @NonNull byte[], int, int);
+ method public static boolean equals(@Nullable boolean[], @Nullable boolean[]);
+ method public static boolean equals(@NonNull boolean[], int, int, @NonNull boolean[], int, int);
+ method public static boolean equals(@Nullable double[], @Nullable double[]);
+ method public static boolean equals(@NonNull double[], int, int, @NonNull double[], int, int);
+ method public static boolean equals(@Nullable float[], @Nullable float[]);
+ method public static boolean equals(@NonNull float[], int, int, @NonNull float[], int, int);
+ method public static boolean equals(@Nullable Object[], @Nullable Object[]);
+ method public static boolean equals(@NonNull Object[], int, int, @NonNull Object[], int, int);
+ method public static <T> boolean equals(@Nullable T[], @Nullable T[], @NonNull java.util.Comparator<? super T>);
+ method public static <T> boolean equals(@NonNull T[], int, int, @NonNull T[], int, int, @NonNull java.util.Comparator<? super T>);
+ method public static void fill(@NonNull long[], long);
+ method public static void fill(@NonNull long[], int, int, long);
+ method public static void fill(@NonNull int[], int);
+ method public static void fill(@NonNull int[], int, int, int);
+ method public static void fill(@NonNull short[], short);
+ method public static void fill(@NonNull short[], int, int, short);
+ method public static void fill(@NonNull char[], char);
+ method public static void fill(@NonNull char[], int, int, char);
+ method public static void fill(@NonNull byte[], byte);
+ method public static void fill(@NonNull byte[], int, int, byte);
+ method public static void fill(@NonNull boolean[], boolean);
+ method public static void fill(@NonNull boolean[], int, int, boolean);
+ method public static void fill(@NonNull double[], double);
+ method public static void fill(@NonNull double[], int, int, double);
+ method public static void fill(@NonNull float[], float);
+ method public static void fill(@NonNull float[], int, int, float);
+ method public static void fill(@NonNull Object[], @Nullable Object);
+ method public static void fill(@NonNull Object[], int, int, @Nullable Object);
+ method public static int hashCode(@Nullable long[]);
+ method public static int hashCode(@Nullable int[]);
+ method public static int hashCode(@Nullable short[]);
+ method public static int hashCode(@Nullable char[]);
+ method public static int hashCode(@Nullable byte[]);
+ method public static int hashCode(@Nullable boolean[]);
+ method public static int hashCode(@Nullable float[]);
+ method public static int hashCode(@Nullable double[]);
+ method public static int hashCode(@Nullable Object[]);
+ method public static int mismatch(@NonNull boolean[], @NonNull boolean[]);
+ method public static int mismatch(@NonNull boolean[], int, int, @NonNull boolean[], int, int);
+ method public static int mismatch(@NonNull byte[], @NonNull byte[]);
+ method public static int mismatch(byte[], int, int, byte[], int, int);
+ method public static int mismatch(@NonNull char[], @NonNull char[]);
+ method public static int mismatch(@NonNull char[], int, int, @NonNull char[], int, int);
+ method public static int mismatch(@NonNull short[], @NonNull short[]);
+ method public static int mismatch(@NonNull short[], int, int, @NonNull short[], int, int);
+ method public static int mismatch(@NonNull int[], @NonNull int[]);
+ method public static int mismatch(@NonNull int[], int, int, @NonNull int[], int, int);
+ method public static int mismatch(@NonNull long[], @NonNull long[]);
+ method public static int mismatch(@NonNull long[], int, int, @NonNull long[], int, int);
+ method public static int mismatch(@NonNull float[], @NonNull float[]);
+ method public static int mismatch(@NonNull float[], int, int, @NonNull float[], int, int);
+ method public static int mismatch(@NonNull double[], @NonNull double[]);
+ method public static int mismatch(@NonNull double[], int, int, @NonNull double[], int, int);
+ method public static int mismatch(@NonNull Object[], @NonNull Object[]);
+ method public static int mismatch(@NonNull Object[], int, int, @NonNull Object[], int, int);
+ method public static <T> int mismatch(@NonNull T[], @NonNull T[], @NonNull java.util.Comparator<? super T>);
+ method public static <T> int mismatch(@NonNull T[], int, int, @NonNull T[], int, int, @NonNull java.util.Comparator<? super T>);
+ method public static <T> void parallelPrefix(@NonNull T[], @NonNull java.util.function.BinaryOperator<T>);
+ method public static <T> void parallelPrefix(@NonNull T[], int, int, @NonNull java.util.function.BinaryOperator<T>);
+ method public static void parallelPrefix(@NonNull long[], @NonNull java.util.function.LongBinaryOperator);
+ method public static void parallelPrefix(@NonNull long[], int, int, @NonNull java.util.function.LongBinaryOperator);
+ method public static void parallelPrefix(@NonNull double[], @NonNull java.util.function.DoubleBinaryOperator);
+ method public static void parallelPrefix(@NonNull double[], int, int, @NonNull java.util.function.DoubleBinaryOperator);
+ method public static void parallelPrefix(@NonNull int[], @NonNull java.util.function.IntBinaryOperator);
+ method public static void parallelPrefix(@NonNull int[], int, int, @NonNull java.util.function.IntBinaryOperator);
+ method public static <T> void parallelSetAll(@NonNull T[], @NonNull java.util.function.IntFunction<? extends T>);
+ method public static void parallelSetAll(@NonNull int[], @NonNull java.util.function.IntUnaryOperator);
+ method public static void parallelSetAll(@NonNull long[], @NonNull java.util.function.IntToLongFunction);
+ method public static void parallelSetAll(@NonNull double[], @NonNull java.util.function.IntToDoubleFunction);
+ method public static void parallelSort(@NonNull byte[]);
+ method public static void parallelSort(@NonNull byte[], int, int);
+ method public static void parallelSort(@NonNull char[]);
+ method public static void parallelSort(@NonNull char[], int, int);
+ method public static void parallelSort(@NonNull short[]);
+ method public static void parallelSort(@NonNull short[], int, int);
+ method public static void parallelSort(@NonNull int[]);
+ method public static void parallelSort(@NonNull int[], int, int);
+ method public static void parallelSort(@NonNull long[]);
+ method public static void parallelSort(@NonNull long[], int, int);
+ method public static void parallelSort(@NonNull float[]);
+ method public static void parallelSort(@NonNull float[], int, int);
+ method public static void parallelSort(@NonNull double[]);
+ method public static void parallelSort(@NonNull double[], int, int);
+ method public static <T extends java.lang.Comparable<? super T>> void parallelSort(@NonNull T[]);
+ method public static <T extends java.lang.Comparable<? super T>> void parallelSort(@NonNull T[], int, int);
+ method public static <T> void parallelSort(@NonNull T[], @Nullable java.util.Comparator<? super T>);
+ method public static <T> void parallelSort(@NonNull T[], int, int, @Nullable java.util.Comparator<? super T>);
+ method public static <T> void setAll(@NonNull T[], @NonNull java.util.function.IntFunction<? extends T>);
+ method public static void setAll(@NonNull int[], @NonNull java.util.function.IntUnaryOperator);
+ method public static void setAll(@NonNull long[], @NonNull java.util.function.IntToLongFunction);
+ method public static void setAll(@NonNull double[], @NonNull java.util.function.IntToDoubleFunction);
+ method public static void sort(@NonNull int[]);
+ method public static void sort(@NonNull int[], int, int);
+ method public static void sort(@NonNull long[]);
+ method public static void sort(@NonNull long[], int, int);
+ method public static void sort(@NonNull short[]);
+ method public static void sort(@NonNull short[], int, int);
+ method public static void sort(@NonNull char[]);
+ method public static void sort(@NonNull char[], int, int);
+ method public static void sort(@NonNull byte[]);
+ method public static void sort(@NonNull byte[], int, int);
+ method public static void sort(@NonNull float[]);
+ method public static void sort(@NonNull float[], int, int);
+ method public static void sort(@NonNull double[]);
+ method public static void sort(@NonNull double[], int, int);
+ method public static void sort(@NonNull Object[]);
+ method public static void sort(@NonNull Object[], int, int);
+ method public static <T> void sort(@NonNull T[], @Nullable java.util.Comparator<? super T>);
+ method public static <T> void sort(@NonNull T[], int, int, @Nullable java.util.Comparator<? super T>);
+ method @NonNull public static <T> java.util.Spliterator<T> spliterator(@NonNull T[]);
+ method @NonNull public static <T> java.util.Spliterator<T> spliterator(@NonNull T[], int, int);
+ method @NonNull public static java.util.Spliterator.OfInt spliterator(@NonNull int[]);
+ method @NonNull public static java.util.Spliterator.OfInt spliterator(@NonNull int[], int, int);
+ method @NonNull public static java.util.Spliterator.OfLong spliterator(@NonNull long[]);
+ method @NonNull public static java.util.Spliterator.OfLong spliterator(@NonNull long[], int, int);
+ method @NonNull public static java.util.Spliterator.OfDouble spliterator(@NonNull double[]);
+ method @NonNull public static java.util.Spliterator.OfDouble spliterator(@NonNull double[], int, int);
+ method @NonNull public static <T> java.util.stream.Stream<T> stream(@NonNull T[]);
+ method @NonNull public static <T> java.util.stream.Stream<T> stream(@NonNull T[], int, int);
+ method @NonNull public static java.util.stream.IntStream stream(@NonNull int[]);
+ method @NonNull public static java.util.stream.IntStream stream(@NonNull int[], int, int);
+ method @NonNull public static java.util.stream.LongStream stream(@NonNull long[]);
+ method @NonNull public static java.util.stream.LongStream stream(@NonNull long[], int, int);
+ method @NonNull public static java.util.stream.DoubleStream stream(@NonNull double[]);
+ method @NonNull public static java.util.stream.DoubleStream stream(@NonNull double[], int, int);
+ method @NonNull public static String toString(@Nullable long[]);
+ method @NonNull public static String toString(@Nullable int[]);
+ method @NonNull public static String toString(@Nullable short[]);
+ method @NonNull public static String toString(@Nullable char[]);
+ method @NonNull public static String toString(@Nullable byte[]);
+ method @NonNull public static String toString(@Nullable boolean[]);
+ method @NonNull public static String toString(@Nullable float[]);
+ method @NonNull public static String toString(@Nullable double[]);
+ method @NonNull public static String toString(@Nullable Object[]);
+ }
+
+ public class Base64 {
+ method public static java.util.Base64.Decoder getDecoder();
+ method public static java.util.Base64.Encoder getEncoder();
+ method public static java.util.Base64.Decoder getMimeDecoder();
+ method public static java.util.Base64.Encoder getMimeEncoder();
+ method public static java.util.Base64.Encoder getMimeEncoder(int, byte[]);
+ method public static java.util.Base64.Decoder getUrlDecoder();
+ method public static java.util.Base64.Encoder getUrlEncoder();
+ }
+
+ public static class Base64.Decoder {
+ method public byte[] decode(byte[]);
+ method public byte[] decode(String);
+ method public int decode(byte[], byte[]);
+ method public java.nio.ByteBuffer decode(java.nio.ByteBuffer);
+ method public java.io.InputStream wrap(java.io.InputStream);
+ }
+
+ public static class Base64.Encoder {
+ method public byte[] encode(byte[]);
+ method public int encode(byte[], byte[]);
+ method public java.nio.ByteBuffer encode(java.nio.ByteBuffer);
+ method public String encodeToString(byte[]);
+ method public java.util.Base64.Encoder withoutPadding();
+ method public java.io.OutputStream wrap(java.io.OutputStream);
+ }
+
+ public class BitSet implements java.lang.Cloneable java.io.Serializable {
+ ctor public BitSet();
+ ctor public BitSet(int);
+ method public void and(java.util.BitSet);
+ method public void andNot(java.util.BitSet);
+ method public int cardinality();
+ method public void clear(int);
+ method public void clear(int, int);
+ method public void clear();
+ method public Object clone();
+ method public void flip(int);
+ method public void flip(int, int);
+ method public boolean get(int);
+ method public java.util.BitSet get(int, int);
+ method public boolean intersects(java.util.BitSet);
+ method public boolean isEmpty();
+ method public int length();
+ method public int nextClearBit(int);
+ method public int nextSetBit(int);
+ method public void or(java.util.BitSet);
+ method public int previousClearBit(int);
+ method public int previousSetBit(int);
+ method public void set(int);
+ method public void set(int, boolean);
+ method public void set(int, int);
+ method public void set(int, int, boolean);
+ method public int size();
+ method public java.util.stream.IntStream stream();
+ method public byte[] toByteArray();
+ method public long[] toLongArray();
+ method public static java.util.BitSet valueOf(long[]);
+ method public static java.util.BitSet valueOf(java.nio.LongBuffer);
+ method public static java.util.BitSet valueOf(byte[]);
+ method public static java.util.BitSet valueOf(java.nio.ByteBuffer);
+ method public void xor(java.util.BitSet);
+ }
+
+ public abstract class Calendar implements java.lang.Cloneable java.lang.Comparable<java.util.Calendar> java.io.Serializable {
+ ctor protected Calendar();
+ ctor protected Calendar(@NonNull java.util.TimeZone, @NonNull java.util.Locale);
+ method public abstract void add(int, int);
+ method public boolean after(@Nullable Object);
+ method public boolean before(@Nullable Object);
+ method public final void clear();
+ method public final void clear(int);
+ method @NonNull public Object clone();
+ method public int compareTo(@NonNull java.util.Calendar);
+ method protected void complete();
+ method protected abstract void computeFields();
+ method protected abstract void computeTime();
+ method public int get(int);
+ method public int getActualMaximum(int);
+ method public int getActualMinimum(int);
+ method @NonNull public static java.util.Set<java.lang.String> getAvailableCalendarTypes();
+ method @NonNull public static java.util.Locale[] getAvailableLocales();
+ method @NonNull public String getCalendarType();
+ method @Nullable public String getDisplayName(int, int, @NonNull java.util.Locale);
+ method @Nullable public java.util.Map<java.lang.String,java.lang.Integer> getDisplayNames(int, int, @NonNull java.util.Locale);
+ method public int getFirstDayOfWeek();
+ method public abstract int getGreatestMinimum(int);
+ method @NonNull public static java.util.Calendar getInstance();
+ method @NonNull public static java.util.Calendar getInstance(@NonNull java.util.TimeZone);
+ method @NonNull public static java.util.Calendar getInstance(@NonNull java.util.Locale);
+ method @NonNull public static java.util.Calendar getInstance(@NonNull java.util.TimeZone, @NonNull java.util.Locale);
+ method public abstract int getLeastMaximum(int);
+ method public abstract int getMaximum(int);
+ method public int getMinimalDaysInFirstWeek();
+ method public abstract int getMinimum(int);
+ method @NonNull public final java.util.Date getTime();
+ method public long getTimeInMillis();
+ method @NonNull public java.util.TimeZone getTimeZone();
+ method public int getWeekYear();
+ method public int getWeeksInWeekYear();
+ method protected final int internalGet(int);
+ method public boolean isLenient();
+ method public final boolean isSet(int);
+ method public boolean isWeekDateSupported();
+ method public abstract void roll(int, boolean);
+ method public void roll(int, int);
+ method public void set(int, int);
+ method public final void set(int, int, int);
+ method public final void set(int, int, int, int, int);
+ method public final void set(int, int, int, int, int, int);
+ method public void setFirstDayOfWeek(int);
+ method public void setLenient(boolean);
+ method public void setMinimalDaysInFirstWeek(int);
+ method public final void setTime(@NonNull java.util.Date);
+ method public void setTimeInMillis(long);
+ method public void setTimeZone(@NonNull java.util.TimeZone);
+ method public void setWeekDate(int, int, int);
+ method @NonNull public final java.time.Instant toInstant();
+ field public static final int ALL_STYLES = 0; // 0x0
+ field public static final int AM = 0; // 0x0
+ field public static final int AM_PM = 9; // 0x9
+ field public static final int APRIL = 3; // 0x3
+ field public static final int AUGUST = 7; // 0x7
+ field public static final int DATE = 5; // 0x5
+ field public static final int DAY_OF_MONTH = 5; // 0x5
+ field public static final int DAY_OF_WEEK = 7; // 0x7
+ field public static final int DAY_OF_WEEK_IN_MONTH = 8; // 0x8
+ field public static final int DAY_OF_YEAR = 6; // 0x6
+ field public static final int DECEMBER = 11; // 0xb
+ field public static final int DST_OFFSET = 16; // 0x10
+ field public static final int ERA = 0; // 0x0
+ field public static final int FEBRUARY = 1; // 0x1
+ field public static final int FIELD_COUNT = 17; // 0x11
+ field public static final int FRIDAY = 6; // 0x6
+ field public static final int HOUR = 10; // 0xa
+ field public static final int HOUR_OF_DAY = 11; // 0xb
+ field public static final int JANUARY = 0; // 0x0
+ field public static final int JULY = 6; // 0x6
+ field public static final int JUNE = 5; // 0x5
+ field public static final int LONG = 2; // 0x2
+ field public static final int LONG_FORMAT = 2; // 0x2
+ field public static final int LONG_STANDALONE = 32770; // 0x8002
+ field public static final int MARCH = 2; // 0x2
+ field public static final int MAY = 4; // 0x4
+ field public static final int MILLISECOND = 14; // 0xe
+ field public static final int MINUTE = 12; // 0xc
+ field public static final int MONDAY = 2; // 0x2
+ field public static final int MONTH = 2; // 0x2
+ field public static final int NARROW_FORMAT = 4; // 0x4
+ field public static final int NARROW_STANDALONE = 32772; // 0x8004
+ field public static final int NOVEMBER = 10; // 0xa
+ field public static final int OCTOBER = 9; // 0x9
+ field public static final int PM = 1; // 0x1
+ field public static final int SATURDAY = 7; // 0x7
+ field public static final int SECOND = 13; // 0xd
+ field public static final int SEPTEMBER = 8; // 0x8
+ field public static final int SHORT = 1; // 0x1
+ field public static final int SHORT_FORMAT = 1; // 0x1
+ field public static final int SHORT_STANDALONE = 32769; // 0x8001
+ field public static final int SUNDAY = 1; // 0x1
+ field public static final int THURSDAY = 5; // 0x5
+ field public static final int TUESDAY = 3; // 0x3
+ field public static final int UNDECIMBER = 12; // 0xc
+ field public static final int WEDNESDAY = 4; // 0x4
+ field public static final int WEEK_OF_MONTH = 4; // 0x4
+ field public static final int WEEK_OF_YEAR = 3; // 0x3
+ field public static final int YEAR = 1; // 0x1
+ field public static final int ZONE_OFFSET = 15; // 0xf
+ field protected boolean areFieldsSet;
+ field @NonNull protected int[] fields;
+ field @NonNull protected boolean[] isSet;
+ field protected boolean isTimeSet;
+ field protected long time;
+ }
+
+ public static class Calendar.Builder {
+ ctor public Calendar.Builder();
+ method @NonNull public java.util.Calendar build();
+ method @NonNull public java.util.Calendar.Builder set(int, int);
+ method @NonNull public java.util.Calendar.Builder setCalendarType(@NonNull String);
+ method @NonNull public java.util.Calendar.Builder setDate(int, int, int);
+ method @NonNull public java.util.Calendar.Builder setFields(@NonNull int...);
+ method @NonNull public java.util.Calendar.Builder setInstant(long);
+ method @NonNull public java.util.Calendar.Builder setInstant(@NonNull java.util.Date);
+ method @NonNull public java.util.Calendar.Builder setLenient(boolean);
+ method @NonNull public java.util.Calendar.Builder setLocale(@NonNull java.util.Locale);
+ method @NonNull public java.util.Calendar.Builder setTimeOfDay(int, int, int);
+ method @NonNull public java.util.Calendar.Builder setTimeOfDay(int, int, int, int);
+ method @NonNull public java.util.Calendar.Builder setTimeZone(@NonNull java.util.TimeZone);
+ method @NonNull public java.util.Calendar.Builder setWeekDate(int, int, int);
+ method @NonNull public java.util.Calendar.Builder setWeekDefinition(int, int);
+ }
+
+ public interface Collection<E> extends java.lang.Iterable<E> {
+ method public boolean add(E);
+ method public boolean addAll(@NonNull java.util.Collection<? extends E>);
+ method public void clear();
+ method public boolean contains(@Nullable Object);
+ method public boolean containsAll(@NonNull java.util.Collection<?>);
+ method public boolean equals(@Nullable Object);
+ method public int hashCode();
+ method public boolean isEmpty();
+ method @NonNull public java.util.Iterator<E> iterator();
+ method @NonNull public default java.util.stream.Stream<E> parallelStream();
+ method public boolean remove(@Nullable Object);
+ method public boolean removeAll(@NonNull java.util.Collection<?>);
+ method public default boolean removeIf(@NonNull java.util.function.Predicate<? super E>);
+ method public boolean retainAll(@NonNull java.util.Collection<?>);
+ method public int size();
+ method @NonNull public default java.util.Spliterator<E> spliterator();
+ method @NonNull public default java.util.stream.Stream<E> stream();
+ method @NonNull public Object[] toArray();
+ method @NonNull public <T> T[] toArray(@NonNull T[]);
+ method @NonNull public default <T> T[] toArray(@NonNull java.util.function.IntFunction<T[]>);
+ }
+
+ public class Collections {
+ method @java.lang.SafeVarargs public static <T> boolean addAll(@NonNull java.util.Collection<? super T>, @NonNull T...);
+ method @NonNull public static <T> java.util.Queue<T> asLifoQueue(@NonNull java.util.Deque<T>);
+ method public static <T> int binarySearch(@NonNull java.util.List<? extends java.lang.Comparable<? super T>>, @NonNull T);
+ method public static <T> int binarySearch(@NonNull java.util.List<? extends T>, T, @Nullable java.util.Comparator<? super T>);
+ method @NonNull public static <E> java.util.Collection<E> checkedCollection(@NonNull java.util.Collection<E>, @NonNull Class<E>);
+ method @NonNull public static <E> java.util.List<E> checkedList(@NonNull java.util.List<E>, @NonNull Class<E>);
+ method @NonNull public static <K, V> java.util.Map<K,V> checkedMap(@NonNull java.util.Map<K,V>, @NonNull Class<K>, @NonNull Class<V>);
+ method @NonNull public static <K, V> java.util.NavigableMap<K,V> checkedNavigableMap(@NonNull java.util.NavigableMap<K,V>, @NonNull Class<K>, @NonNull Class<V>);
+ method @NonNull public static <E> java.util.NavigableSet<E> checkedNavigableSet(@NonNull java.util.NavigableSet<E>, @NonNull Class<E>);
+ method @NonNull public static <E> java.util.Queue<E> checkedQueue(@NonNull java.util.Queue<E>, @NonNull Class<E>);
+ method @NonNull public static <E> java.util.Set<E> checkedSet(@NonNull java.util.Set<E>, @NonNull Class<E>);
+ method @NonNull public static <K, V> java.util.SortedMap<K,V> checkedSortedMap(@NonNull java.util.SortedMap<K,V>, @NonNull Class<K>, @NonNull Class<V>);
+ method @NonNull public static <E> java.util.SortedSet<E> checkedSortedSet(@NonNull java.util.SortedSet<E>, @NonNull Class<E>);
+ method public static <T> void copy(@NonNull java.util.List<? super T>, @NonNull java.util.List<? extends T>);
+ method public static boolean disjoint(@NonNull java.util.Collection<?>, @NonNull java.util.Collection<?>);
+ method @NonNull public static <T> java.util.Enumeration<T> emptyEnumeration();
+ method @NonNull public static <T> java.util.Iterator<T> emptyIterator();
+ method @NonNull public static final <T> java.util.List<T> emptyList();
+ method @NonNull public static <T> java.util.ListIterator<T> emptyListIterator();
+ method @NonNull public static final <K, V> java.util.Map<K,V> emptyMap();
+ method @NonNull public static final <K, V> java.util.NavigableMap<K,V> emptyNavigableMap();
+ method @NonNull public static <E> java.util.NavigableSet<E> emptyNavigableSet();
+ method @NonNull public static final <T> java.util.Set<T> emptySet();
+ method @NonNull public static final <K, V> java.util.SortedMap<K,V> emptySortedMap();
+ method @NonNull public static <E> java.util.SortedSet<E> emptySortedSet();
+ method @NonNull public static <T> java.util.Enumeration<T> enumeration(@NonNull java.util.Collection<T>);
+ method public static <T> void fill(@NonNull java.util.List<? super T>, T);
+ method public static int frequency(@NonNull java.util.Collection<?>, @Nullable Object);
+ method public static int indexOfSubList(@NonNull java.util.List<?>, @NonNull java.util.List<?>);
+ method public static int lastIndexOfSubList(@NonNull java.util.List<?>, @NonNull java.util.List<?>);
+ method @NonNull public static <T> java.util.ArrayList<T> list(@NonNull java.util.Enumeration<T>);
+ method @NonNull public static <T extends java.lang.Object & java.lang.Comparable<? super T>> T max(@NonNull java.util.Collection<? extends T>);
+ method public static <T> T max(@NonNull java.util.Collection<? extends T>, @Nullable java.util.Comparator<? super T>);
+ method @NonNull public static <T extends java.lang.Object & java.lang.Comparable<? super T>> T min(@NonNull java.util.Collection<? extends T>);
+ method public static <T> T min(@NonNull java.util.Collection<? extends T>, @Nullable java.util.Comparator<? super T>);
+ method @NonNull public static <T> java.util.List<T> nCopies(int, T);
+ method @NonNull public static <E> java.util.Set<E> newSetFromMap(@NonNull java.util.Map<E,java.lang.Boolean>);
+ method public static <T> boolean replaceAll(@NonNull java.util.List<T>, T, T);
+ method public static void reverse(@NonNull java.util.List<?>);
+ method @NonNull public static <T> java.util.Comparator<T> reverseOrder();
+ method @NonNull public static <T> java.util.Comparator<T> reverseOrder(@Nullable java.util.Comparator<T>);
+ method public static void rotate(@NonNull java.util.List<?>, int);
+ method public static void shuffle(@NonNull java.util.List<?>);
+ method public static void shuffle(@NonNull java.util.List<?>, @NonNull java.util.Random);
+ method @NonNull public static <T> java.util.Set<T> singleton(T);
+ method @NonNull public static <T> java.util.List<T> singletonList(T);
+ method @NonNull public static <K, V> java.util.Map<K,V> singletonMap(K, V);
+ method public static <T extends java.lang.Comparable<? super T>> void sort(@NonNull java.util.List<T>);
+ method public static <T> void sort(@NonNull java.util.List<T>, @Nullable java.util.Comparator<? super T>);
+ method public static void swap(@NonNull java.util.List<?>, int, int);
+ method @NonNull public static <T> java.util.Collection<T> synchronizedCollection(@NonNull java.util.Collection<T>);
+ method @NonNull public static <T> java.util.List<T> synchronizedList(@NonNull java.util.List<T>);
+ method @NonNull public static <K, V> java.util.Map<K,V> synchronizedMap(@NonNull java.util.Map<K,V>);
+ method @NonNull public static <K, V> java.util.NavigableMap<K,V> synchronizedNavigableMap(@NonNull java.util.NavigableMap<K,V>);
+ method @NonNull public static <T> java.util.NavigableSet<T> synchronizedNavigableSet(@NonNull java.util.NavigableSet<T>);
+ method @NonNull public static <T> java.util.Set<T> synchronizedSet(@NonNull java.util.Set<T>);
+ method @NonNull public static <K, V> java.util.SortedMap<K,V> synchronizedSortedMap(@NonNull java.util.SortedMap<K,V>);
+ method @NonNull public static <T> java.util.SortedSet<T> synchronizedSortedSet(@NonNull java.util.SortedSet<T>);
+ method @NonNull public static <T> java.util.Collection<T> unmodifiableCollection(@NonNull java.util.Collection<? extends T>);
+ method @NonNull public static <T> java.util.List<T> unmodifiableList(@NonNull java.util.List<? extends T>);
+ method @NonNull public static <K, V> java.util.Map<K,V> unmodifiableMap(@NonNull java.util.Map<? extends K,? extends V>);
+ method @NonNull public static <K, V> java.util.NavigableMap<K,V> unmodifiableNavigableMap(@NonNull java.util.NavigableMap<K,? extends V>);
+ method @NonNull public static <T> java.util.NavigableSet<T> unmodifiableNavigableSet(@NonNull java.util.NavigableSet<T>);
+ method @NonNull public static <T> java.util.Set<T> unmodifiableSet(@NonNull java.util.Set<? extends T>);
+ method @NonNull public static <K, V> java.util.SortedMap<K,V> unmodifiableSortedMap(@NonNull java.util.SortedMap<K,? extends V>);
+ method @NonNull public static <T> java.util.SortedSet<T> unmodifiableSortedSet(@NonNull java.util.SortedSet<T>);
+ field @NonNull public static final java.util.List EMPTY_LIST;
+ field @NonNull public static final java.util.Map EMPTY_MAP;
+ field @NonNull public static final java.util.Set EMPTY_SET;
+ }
+
+ @java.lang.FunctionalInterface public interface Comparator<T> {
+ method public int compare(T, T);
+ method public static <T, U> java.util.Comparator<T> comparing(java.util.function.Function<? super T,? extends U>, java.util.Comparator<? super U>);
+ method public static <T, U extends java.lang.Comparable<? super U>> java.util.Comparator<T> comparing(java.util.function.Function<? super T,? extends U>);
+ method public static <T> java.util.Comparator<T> comparingDouble(java.util.function.ToDoubleFunction<? super T>);
+ method public static <T> java.util.Comparator<T> comparingInt(java.util.function.ToIntFunction<? super T>);
+ method public static <T> java.util.Comparator<T> comparingLong(java.util.function.ToLongFunction<? super T>);
+ method public boolean equals(Object);
+ method public static <T extends java.lang.Comparable<? super T>> java.util.Comparator<T> naturalOrder();
+ method public static <T> java.util.Comparator<T> nullsFirst(java.util.Comparator<? super T>);
+ method public static <T> java.util.Comparator<T> nullsLast(java.util.Comparator<? super T>);
+ method public static <T extends java.lang.Comparable<? super T>> java.util.Comparator<T> reverseOrder();
+ method public default java.util.Comparator<T> reversed();
+ method public default java.util.Comparator<T> thenComparing(java.util.Comparator<? super T>);
+ method public default <U> java.util.Comparator<T> thenComparing(java.util.function.Function<? super T,? extends U>, java.util.Comparator<? super U>);
+ method public default <U extends java.lang.Comparable<? super U>> java.util.Comparator<T> thenComparing(java.util.function.Function<? super T,? extends U>);
+ method public default java.util.Comparator<T> thenComparingDouble(java.util.function.ToDoubleFunction<? super T>);
+ method public default java.util.Comparator<T> thenComparingInt(java.util.function.ToIntFunction<? super T>);
+ method public default java.util.Comparator<T> thenComparingLong(java.util.function.ToLongFunction<? super T>);
+ }
+
+ public class ConcurrentModificationException extends java.lang.RuntimeException {
+ ctor public ConcurrentModificationException();
+ ctor public ConcurrentModificationException(String);
+ ctor public ConcurrentModificationException(Throwable);
+ ctor public ConcurrentModificationException(String, Throwable);
+ }
+
+ public final class Currency implements java.io.Serializable {
+ method public static java.util.Set<java.util.Currency> getAvailableCurrencies();
+ method public String getCurrencyCode();
+ method public int getDefaultFractionDigits();
+ method public String getDisplayName();
+ method public String getDisplayName(java.util.Locale);
+ method public static java.util.Currency getInstance(String);
+ method public static java.util.Currency getInstance(java.util.Locale);
+ method public int getNumericCode();
+ method public String getSymbol();
+ method public String getSymbol(java.util.Locale);
+ }
+
+ public class Date implements java.lang.Cloneable java.lang.Comparable<java.util.Date> java.io.Serializable {
+ ctor public Date();
+ ctor public Date(long);
+ ctor @Deprecated public Date(int, int, int);
+ ctor @Deprecated public Date(int, int, int, int, int);
+ ctor @Deprecated public Date(int, int, int, int, int, int);
+ ctor @Deprecated public Date(String);
+ method @Deprecated public static long UTC(int, int, int, int, int, int);
+ method public boolean after(java.util.Date);
+ method public boolean before(java.util.Date);
+ method public Object clone();
+ method public int compareTo(java.util.Date);
+ method public static java.util.Date from(java.time.Instant);
+ method @Deprecated public int getDate();
+ method @Deprecated public int getDay();
+ method @Deprecated public int getHours();
+ method @Deprecated public int getMinutes();
+ method @Deprecated public int getMonth();
+ method @Deprecated public int getSeconds();
+ method public long getTime();
+ method @Deprecated public int getTimezoneOffset();
+ method @Deprecated public int getYear();
+ method @Deprecated public static long parse(String);
+ method @Deprecated public void setDate(int);
+ method @Deprecated public void setHours(int);
+ method @Deprecated public void setMinutes(int);
+ method @Deprecated public void setMonth(int);
+ method @Deprecated public void setSeconds(int);
+ method public void setTime(long);
+ method @Deprecated public void setYear(int);
+ method @Deprecated public String toGMTString();
+ method public java.time.Instant toInstant();
+ method @Deprecated public String toLocaleString();
+ }
+
+ public interface Deque<E> extends java.util.Queue<E> {
+ method public void addFirst(E);
+ method public void addLast(E);
+ method @NonNull public java.util.Iterator<E> descendingIterator();
+ method public E getFirst();
+ method public E getLast();
+ method public boolean offerFirst(E);
+ method public boolean offerLast(E);
+ method @Nullable public E peekFirst();
+ method @Nullable public E peekLast();
+ method @Nullable public E pollFirst();
+ method @Nullable public E pollLast();
+ method public E pop();
+ method public void push(E);
+ method public E removeFirst();
+ method public boolean removeFirstOccurrence(@Nullable Object);
+ method public E removeLast();
+ method public boolean removeLastOccurrence(@Nullable Object);
+ }
+
+ public abstract class Dictionary<K, V> {
+ ctor public Dictionary();
+ method public abstract java.util.Enumeration<V> elements();
+ method public abstract V get(Object);
+ method public abstract boolean isEmpty();
+ method public abstract java.util.Enumeration<K> keys();
+ method public abstract V put(K, V);
+ method public abstract V remove(Object);
+ method public abstract int size();
+ }
+
+ public class DoubleSummaryStatistics implements java.util.function.DoubleConsumer {
+ ctor public DoubleSummaryStatistics();
+ method public void accept(double);
+ method public void combine(java.util.DoubleSummaryStatistics);
+ method public final double getAverage();
+ method public final long getCount();
+ method public final double getMax();
+ method public final double getMin();
+ method public final double getSum();
+ }
+
+ public class DuplicateFormatFlagsException extends java.util.IllegalFormatException {
+ ctor public DuplicateFormatFlagsException(String);
+ method public String getFlags();
+ }
+
+ public class EmptyStackException extends java.lang.RuntimeException {
+ ctor public EmptyStackException();
+ }
+
+ public class EnumMap<K extends java.lang.Enum<K>, V> extends java.util.AbstractMap<K,V> implements java.lang.Cloneable java.io.Serializable {
+ ctor public EnumMap(Class<K>);
+ ctor public EnumMap(java.util.EnumMap<K,? extends V>);
+ ctor public EnumMap(java.util.Map<K,? extends V>);
+ method public java.util.EnumMap<K,V> clone();
+ method public java.util.Set<java.util.Map.Entry<K,V>> entrySet();
+ }
+
+ public abstract class EnumSet<E extends java.lang.Enum<E>> extends java.util.AbstractSet<E> implements java.lang.Cloneable java.io.Serializable {
+ method public static <E extends java.lang.Enum<E>> java.util.EnumSet<E> allOf(Class<E>);
+ method public java.util.EnumSet<E> clone();
+ method public static <E extends java.lang.Enum<E>> java.util.EnumSet<E> complementOf(java.util.EnumSet<E>);
+ method public static <E extends java.lang.Enum<E>> java.util.EnumSet<E> copyOf(java.util.EnumSet<E>);
+ method public static <E extends java.lang.Enum<E>> java.util.EnumSet<E> copyOf(java.util.Collection<E>);
+ method public static <E extends java.lang.Enum<E>> java.util.EnumSet<E> noneOf(Class<E>);
+ method public static <E extends java.lang.Enum<E>> java.util.EnumSet<E> of(E);
+ method public static <E extends java.lang.Enum<E>> java.util.EnumSet<E> of(E, E);
+ method public static <E extends java.lang.Enum<E>> java.util.EnumSet<E> of(E, E, E);
+ method public static <E extends java.lang.Enum<E>> java.util.EnumSet<E> of(E, E, E, E);
+ method public static <E extends java.lang.Enum<E>> java.util.EnumSet<E> of(E, E, E, E, E);
+ method @java.lang.SafeVarargs public static <E extends java.lang.Enum<E>> java.util.EnumSet<E> of(E, E...);
+ method public static <E extends java.lang.Enum<E>> java.util.EnumSet<E> range(E, E);
+ }
+
+ public interface Enumeration<E> {
+ method public default java.util.Iterator<E> asIterator();
+ method public boolean hasMoreElements();
+ method public E nextElement();
+ }
+
+ public interface EventListener {
+ }
+
+ public abstract class EventListenerProxy<T extends java.util.EventListener> implements java.util.EventListener {
+ ctor public EventListenerProxy(T);
+ method public T getListener();
+ }
+
+ public class EventObject implements java.io.Serializable {
+ ctor public EventObject(Object);
+ method public Object getSource();
+ field protected transient Object source;
+ }
+
+ public class FormatFlagsConversionMismatchException extends java.util.IllegalFormatException {
+ ctor public FormatFlagsConversionMismatchException(String, char);
+ method public char getConversion();
+ method public String getFlags();
+ }
+
+ public interface Formattable {
+ method public void formatTo(java.util.Formatter, int, int, int);
+ }
+
+ public class FormattableFlags {
+ field public static final int ALTERNATE = 4; // 0x4
+ field public static final int LEFT_JUSTIFY = 1; // 0x1
+ field public static final int UPPERCASE = 2; // 0x2
+ }
+
+ public final class Formatter implements java.io.Closeable java.io.Flushable {
+ ctor public Formatter();
+ ctor public Formatter(Appendable);
+ ctor public Formatter(java.util.Locale);
+ ctor public Formatter(Appendable, java.util.Locale);
+ ctor public Formatter(String) throws java.io.FileNotFoundException;
+ ctor public Formatter(String, String) throws java.io.FileNotFoundException, java.io.UnsupportedEncodingException;
+ ctor public Formatter(String, String, java.util.Locale) throws java.io.FileNotFoundException, java.io.UnsupportedEncodingException;
+ ctor public Formatter(java.io.File) throws java.io.FileNotFoundException;
+ ctor public Formatter(java.io.File, String) throws java.io.FileNotFoundException, java.io.UnsupportedEncodingException;
+ ctor public Formatter(java.io.File, String, java.util.Locale) throws java.io.FileNotFoundException, java.io.UnsupportedEncodingException;
+ ctor public Formatter(java.io.PrintStream);
+ ctor public Formatter(java.io.OutputStream);
+ ctor public Formatter(java.io.OutputStream, String) throws java.io.UnsupportedEncodingException;
+ ctor public Formatter(java.io.OutputStream, String, java.util.Locale) throws java.io.UnsupportedEncodingException;
+ method public void close();
+ method public void flush();
+ method public java.util.Formatter format(String, java.lang.Object...);
+ method public java.util.Formatter format(java.util.Locale, String, java.lang.Object...);
+ method public java.io.IOException ioException();
+ method public java.util.Locale locale();
+ method public Appendable out();
+ }
+
+ public enum Formatter.BigDecimalLayoutForm {
+ enum_constant public static final java.util.Formatter.BigDecimalLayoutForm DECIMAL_FLOAT;
+ enum_constant public static final java.util.Formatter.BigDecimalLayoutForm SCIENTIFIC;
+ }
+
+ public class FormatterClosedException extends java.lang.IllegalStateException {
+ ctor public FormatterClosedException();
+ }
+
+ public class GregorianCalendar extends java.util.Calendar {
+ ctor public GregorianCalendar();
+ ctor public GregorianCalendar(java.util.TimeZone);
+ ctor public GregorianCalendar(java.util.Locale);
+ ctor public GregorianCalendar(java.util.TimeZone, java.util.Locale);
+ ctor public GregorianCalendar(int, int, int);
+ ctor public GregorianCalendar(int, int, int, int, int);
+ ctor public GregorianCalendar(int, int, int, int, int, int);
+ method public void add(int, int);
+ method protected void computeFields();
+ method protected void computeTime();
+ method public static java.util.GregorianCalendar from(java.time.ZonedDateTime);
+ method public int getGreatestMinimum(int);
+ method public final java.util.Date getGregorianChange();
+ method public int getLeastMaximum(int);
+ method public int getMaximum(int);
+ method public int getMinimum(int);
+ method public boolean isLeapYear(int);
+ method public final boolean isWeekDateSupported();
+ method public void roll(int, boolean);
+ method public void setGregorianChange(java.util.Date);
+ method public java.time.ZonedDateTime toZonedDateTime();
+ field public static final int AD = 1; // 0x1
+ field public static final int BC = 0; // 0x0
+ }
+
+ public class HashMap<K, V> extends java.util.AbstractMap<K,V> implements java.lang.Cloneable java.util.Map<K,V> java.io.Serializable {
+ ctor public HashMap(int, float);
+ ctor public HashMap(int);
+ ctor public HashMap();
+ ctor public HashMap(@NonNull java.util.Map<? extends K,? extends V>);
+ method @NonNull public Object clone();
+ method @NonNull public java.util.Set<java.util.Map.Entry<K,V>> entrySet();
+ }
+
+ public class HashSet<E> extends java.util.AbstractSet<E> implements java.lang.Cloneable java.io.Serializable java.util.Set<E> {
+ ctor public HashSet();
+ ctor public HashSet(@NonNull java.util.Collection<? extends E>);
+ ctor public HashSet(int, float);
+ ctor public HashSet(int);
+ method @NonNull public Object clone();
+ method @NonNull public java.util.Iterator<E> iterator();
+ method public int size();
+ }
+
+ public class Hashtable<K, V> extends java.util.Dictionary<K,V> implements java.lang.Cloneable java.util.Map<K,V> java.io.Serializable {
+ ctor public Hashtable(int, float);
+ ctor public Hashtable(int);
+ ctor public Hashtable();
+ ctor public Hashtable(java.util.Map<? extends K,? extends V>);
+ method public void clear();
+ method public Object clone();
+ method public boolean contains(Object);
+ method public boolean containsKey(Object);
+ method public boolean containsValue(Object);
+ method public java.util.Enumeration<V> elements();
+ method public java.util.Set<java.util.Map.Entry<K,V>> entrySet();
+ method public V get(Object);
+ method public boolean isEmpty();
+ method public java.util.Set<K> keySet();
+ method public java.util.Enumeration<K> keys();
+ method public V put(K, V);
+ method public void putAll(java.util.Map<? extends K,? extends V>);
+ method protected void rehash();
+ method public V remove(Object);
+ method public int size();
+ method public java.util.Collection<V> values();
+ }
+
+ public class IdentityHashMap<K, V> extends java.util.AbstractMap<K,V> implements java.lang.Cloneable java.util.Map<K,V> java.io.Serializable {
+ ctor public IdentityHashMap();
+ ctor public IdentityHashMap(int);
+ ctor public IdentityHashMap(java.util.Map<? extends K,? extends V>);
+ method public Object clone();
+ method public java.util.Set<java.util.Map.Entry<K,V>> entrySet();
+ }
+
+ public class IllegalFormatCodePointException extends java.util.IllegalFormatException {
+ ctor public IllegalFormatCodePointException(int);
+ method public int getCodePoint();
+ }
+
+ public class IllegalFormatConversionException extends java.util.IllegalFormatException {
+ ctor public IllegalFormatConversionException(char, Class<?>);
+ method public Class<?> getArgumentClass();
+ method public char getConversion();
+ }
+
+ public class IllegalFormatException extends java.lang.IllegalArgumentException {
+ }
+
+ public class IllegalFormatFlagsException extends java.util.IllegalFormatException {
+ ctor public IllegalFormatFlagsException(String);
+ method public String getFlags();
+ }
+
+ public class IllegalFormatPrecisionException extends java.util.IllegalFormatException {
+ ctor public IllegalFormatPrecisionException(int);
+ method public int getPrecision();
+ }
+
+ public class IllegalFormatWidthException extends java.util.IllegalFormatException {
+ ctor public IllegalFormatWidthException(int);
+ method public int getWidth();
+ }
+
+ public class IllformedLocaleException extends java.lang.RuntimeException {
+ ctor public IllformedLocaleException();
+ ctor public IllformedLocaleException(String);
+ ctor public IllformedLocaleException(String, int);
+ method public int getErrorIndex();
+ }
+
+ public class InputMismatchException extends java.util.NoSuchElementException {
+ ctor public InputMismatchException();
+ ctor public InputMismatchException(String);
+ }
+
+ public class IntSummaryStatistics implements java.util.function.IntConsumer {
+ ctor public IntSummaryStatistics();
+ ctor public IntSummaryStatistics(long, int, int, long) throws java.lang.IllegalArgumentException;
+ method public void accept(int);
+ method public void combine(java.util.IntSummaryStatistics);
+ method public final double getAverage();
+ method public final long getCount();
+ method public final int getMax();
+ method public final int getMin();
+ method public final long getSum();
+ }
+
+ public class InvalidPropertiesFormatException extends java.io.IOException {
+ ctor public InvalidPropertiesFormatException(Throwable);
+ ctor public InvalidPropertiesFormatException(String);
+ }
+
+ public interface Iterator<E> {
+ method public default void forEachRemaining(@NonNull java.util.function.Consumer<? super E>);
+ method public boolean hasNext();
+ method public E next();
+ method public default void remove();
+ }
+
+ public class LinkedHashMap<K, V> extends java.util.HashMap<K,V> implements java.util.Map<K,V> {
+ ctor public LinkedHashMap(int, float);
+ ctor public LinkedHashMap(int);
+ ctor public LinkedHashMap();
+ ctor public LinkedHashMap(java.util.Map<? extends K,? extends V>);
+ ctor public LinkedHashMap(int, float, boolean);
+ method protected boolean removeEldestEntry(java.util.Map.Entry<K,V>);
+ }
+
+ public class LinkedHashSet<E> extends java.util.HashSet<E> implements java.lang.Cloneable java.io.Serializable java.util.Set<E> {
+ ctor public LinkedHashSet(int, float);
+ ctor public LinkedHashSet(int);
+ ctor public LinkedHashSet();
+ ctor public LinkedHashSet(java.util.Collection<? extends E>);
+ }
+
+ public class LinkedList<E> extends java.util.AbstractSequentialList<E> implements java.lang.Cloneable java.util.Deque<E> java.util.List<E> java.io.Serializable {
+ ctor public LinkedList();
+ ctor public LinkedList(@NonNull java.util.Collection<? extends E>);
+ method public void addFirst(E);
+ method public void addLast(E);
+ method @NonNull public Object clone();
+ method @NonNull public java.util.Iterator<E> descendingIterator();
+ method public E element();
+ method public E getFirst();
+ method public E getLast();
+ method public boolean offer(E);
+ method public boolean offerFirst(E);
+ method public boolean offerLast(E);
+ method @Nullable public E peek();
+ method @Nullable public E peekFirst();
+ method @Nullable public E peekLast();
+ method @Nullable public E poll();
+ method @Nullable public E pollFirst();
+ method @Nullable public E pollLast();
+ method public E pop();
+ method public void push(E);
+ method public E remove();
+ method public E removeFirst();
+ method public boolean removeFirstOccurrence(@Nullable Object);
+ method public E removeLast();
+ method public boolean removeLastOccurrence(@Nullable Object);
+ method public int size();
+ }
+
+ public interface List<E> extends java.util.Collection<E> {
+ method public void add(int, E);
+ method public boolean addAll(int, @NonNull java.util.Collection<? extends E>);
+ method @NonNull public static <E> java.util.List<E> copyOf(@NonNull java.util.Collection<? extends E>);
+ method public E get(int);
+ method public int indexOf(@Nullable Object);
+ method public int lastIndexOf(@Nullable Object);
+ method @NonNull public java.util.ListIterator<E> listIterator();
+ method @NonNull public java.util.ListIterator<E> listIterator(int);
+ method @NonNull public static <E> java.util.List<E> of();
+ method @NonNull public static <E> java.util.List<E> of(@NonNull E);
+ method @NonNull public static <E> java.util.List<E> of(@NonNull E, @NonNull E);
+ method @NonNull public static <E> java.util.List<E> of(@NonNull E, @NonNull E, @NonNull E);
+ method @NonNull public static <E> java.util.List<E> of(@NonNull E, @NonNull E, @NonNull E, @NonNull E);
+ method @NonNull public static <E> java.util.List<E> of(@NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E);
+ method @NonNull public static <E> java.util.List<E> of(@NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E);
+ method @NonNull public static <E> java.util.List<E> of(@NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E);
+ method @NonNull public static <E> java.util.List<E> of(@NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E);
+ method @NonNull public static <E> java.util.List<E> of(@NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E);
+ method @NonNull public static <E> java.util.List<E> of(@NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E);
+ method @NonNull @java.lang.SafeVarargs public static <E> java.util.List<E> of(@NonNull E...);
+ method public E remove(int);
+ method public default void replaceAll(@NonNull java.util.function.UnaryOperator<E>);
+ method public E set(int, E);
+ method public default void sort(@Nullable java.util.Comparator<? super E>);
+ method @NonNull public java.util.List<E> subList(int, int);
+ }
+
+ public interface ListIterator<E> extends java.util.Iterator<E> {
+ method public void add(E);
+ method public boolean hasPrevious();
+ method public int nextIndex();
+ method public E previous();
+ method public int previousIndex();
+ method public void remove();
+ method public void set(E);
+ }
+
+ public abstract class ListResourceBundle extends java.util.ResourceBundle {
+ ctor public ListResourceBundle();
+ method protected abstract Object[][] getContents();
+ method public java.util.Enumeration<java.lang.String> getKeys();
+ method public final Object handleGetObject(String);
+ }
+
+ public final class Locale implements java.lang.Cloneable java.io.Serializable {
+ ctor public Locale(@NonNull String, @NonNull String, @NonNull String);
+ ctor public Locale(@NonNull String, @NonNull String);
+ ctor public Locale(@NonNull String);
+ method @NonNull public Object clone();
+ method @NonNull public static java.util.List<java.util.Locale> filter(@NonNull java.util.List<java.util.Locale.LanguageRange>, @NonNull java.util.Collection<java.util.Locale>, @NonNull java.util.Locale.FilteringMode);
+ method @NonNull public static java.util.List<java.util.Locale> filter(@NonNull java.util.List<java.util.Locale.LanguageRange>, @NonNull java.util.Collection<java.util.Locale>);
+ method @NonNull public static java.util.List<java.lang.String> filterTags(@NonNull java.util.List<java.util.Locale.LanguageRange>, @NonNull java.util.Collection<java.lang.String>, @NonNull java.util.Locale.FilteringMode);
+ method @NonNull public static java.util.List<java.lang.String> filterTags(@NonNull java.util.List<java.util.Locale.LanguageRange>, @NonNull java.util.Collection<java.lang.String>);
+ method @NonNull public static java.util.Locale forLanguageTag(@NonNull String);
+ method @NonNull public static java.util.Locale[] getAvailableLocales();
+ method @NonNull public String getCountry();
+ method @NonNull public static java.util.Locale getDefault();
+ method @NonNull public static java.util.Locale getDefault(@NonNull java.util.Locale.Category);
+ method @NonNull public String getDisplayCountry();
+ method @NonNull public String getDisplayCountry(@NonNull java.util.Locale);
+ method @NonNull public String getDisplayLanguage();
+ method @NonNull public String getDisplayLanguage(@NonNull java.util.Locale);
+ method @NonNull public String getDisplayName();
+ method @NonNull public String getDisplayName(@NonNull java.util.Locale);
+ method @NonNull public String getDisplayScript();
+ method @NonNull public String getDisplayScript(@NonNull java.util.Locale);
+ method @NonNull public String getDisplayVariant();
+ method @NonNull public String getDisplayVariant(@NonNull java.util.Locale);
+ method @Nullable public String getExtension(char);
+ method @NonNull public java.util.Set<java.lang.Character> getExtensionKeys();
+ method @NonNull public String getISO3Country() throws java.util.MissingResourceException;
+ method @NonNull public String getISO3Language() throws java.util.MissingResourceException;
+ method @NonNull public static String[] getISOCountries();
+ method @NonNull public static String[] getISOLanguages();
+ method @NonNull public String getLanguage();
+ method @NonNull public String getScript();
+ method @NonNull public java.util.Set<java.lang.String> getUnicodeLocaleAttributes();
+ method @NonNull public java.util.Set<java.lang.String> getUnicodeLocaleKeys();
+ method @Nullable public String getUnicodeLocaleType(@NonNull String);
+ method @NonNull public String getVariant();
+ method public boolean hasExtensions();
+ method @Nullable public static java.util.Locale lookup(@NonNull java.util.List<java.util.Locale.LanguageRange>, @NonNull java.util.Collection<java.util.Locale>);
+ method @Nullable public static String lookupTag(@NonNull java.util.List<java.util.Locale.LanguageRange>, @NonNull java.util.Collection<java.lang.String>);
+ method public static void setDefault(@NonNull java.util.Locale);
+ method public static void setDefault(@NonNull java.util.Locale.Category, @NonNull java.util.Locale);
+ method @NonNull public java.util.Locale stripExtensions();
+ method @NonNull public String toLanguageTag();
+ field @NonNull public static final java.util.Locale CANADA;
+ field @NonNull public static final java.util.Locale CANADA_FRENCH;
+ field @NonNull public static final java.util.Locale CHINA;
+ field @NonNull public static final java.util.Locale CHINESE;
+ field @NonNull public static final java.util.Locale ENGLISH;
+ field @NonNull public static final java.util.Locale FRANCE;
+ field @NonNull public static final java.util.Locale FRENCH;
+ field @NonNull public static final java.util.Locale GERMAN;
+ field @NonNull public static final java.util.Locale GERMANY;
+ field @NonNull public static final java.util.Locale ITALIAN;
+ field @NonNull public static final java.util.Locale ITALY;
+ field @NonNull public static final java.util.Locale JAPAN;
+ field @NonNull public static final java.util.Locale JAPANESE;
+ field @NonNull public static final java.util.Locale KOREA;
+ field @NonNull public static final java.util.Locale KOREAN;
+ field @NonNull public static final java.util.Locale PRC;
+ field public static final char PRIVATE_USE_EXTENSION = 120; // 0x0078 'x'
+ field @NonNull public static final java.util.Locale ROOT;
+ field @NonNull public static final java.util.Locale SIMPLIFIED_CHINESE;
+ field @NonNull public static final java.util.Locale TAIWAN;
+ field @NonNull public static final java.util.Locale TRADITIONAL_CHINESE;
+ field @NonNull public static final java.util.Locale UK;
+ field public static final char UNICODE_LOCALE_EXTENSION = 117; // 0x0075 'u'
+ field @NonNull public static final java.util.Locale US;
+ }
+
+ public static final class Locale.Builder {
+ ctor public Locale.Builder();
+ method @NonNull public java.util.Locale.Builder addUnicodeLocaleAttribute(@NonNull String);
+ method @NonNull public java.util.Locale build();
+ method @NonNull public java.util.Locale.Builder clear();
+ method @NonNull public java.util.Locale.Builder clearExtensions();
+ method @NonNull public java.util.Locale.Builder removeUnicodeLocaleAttribute(@NonNull String);
+ method @NonNull public java.util.Locale.Builder setExtension(char, @Nullable String);
+ method @NonNull public java.util.Locale.Builder setLanguage(@Nullable String);
+ method @NonNull public java.util.Locale.Builder setLanguageTag(@NonNull String);
+ method @NonNull public java.util.Locale.Builder setLocale(@NonNull java.util.Locale);
+ method @NonNull public java.util.Locale.Builder setRegion(@Nullable String);
+ method @NonNull public java.util.Locale.Builder setScript(@Nullable String);
+ method @NonNull public java.util.Locale.Builder setUnicodeLocaleKeyword(@NonNull String, @Nullable String);
+ method @NonNull public java.util.Locale.Builder setVariant(@Nullable String);
+ }
+
+ public enum Locale.Category {
+ enum_constant public static final java.util.Locale.Category DISPLAY;
+ enum_constant public static final java.util.Locale.Category FORMAT;
+ }
+
+ public enum Locale.FilteringMode {
+ enum_constant public static final java.util.Locale.FilteringMode AUTOSELECT_FILTERING;
+ enum_constant public static final java.util.Locale.FilteringMode EXTENDED_FILTERING;
+ enum_constant public static final java.util.Locale.FilteringMode IGNORE_EXTENDED_RANGES;
+ enum_constant public static final java.util.Locale.FilteringMode MAP_EXTENDED_RANGES;
+ enum_constant public static final java.util.Locale.FilteringMode REJECT_EXTENDED_RANGES;
+ }
+
+ public static final class Locale.LanguageRange {
+ ctor public Locale.LanguageRange(@NonNull String);
+ ctor public Locale.LanguageRange(@NonNull String, double);
+ method @NonNull public String getRange();
+ method public double getWeight();
+ method @NonNull public static java.util.List<java.util.Locale.LanguageRange> mapEquivalents(@NonNull java.util.List<java.util.Locale.LanguageRange>, @NonNull java.util.Map<java.lang.String,java.util.List<java.lang.String>>);
+ method @NonNull public static java.util.List<java.util.Locale.LanguageRange> parse(@NonNull String);
+ method @NonNull public static java.util.List<java.util.Locale.LanguageRange> parse(@NonNull String, @NonNull java.util.Map<java.lang.String,java.util.List<java.lang.String>>);
+ field public static final double MAX_WEIGHT = 1.0;
+ field public static final double MIN_WEIGHT = 0.0;
+ }
+
+ public class LongSummaryStatistics implements java.util.function.IntConsumer java.util.function.LongConsumer {
+ ctor public LongSummaryStatistics();
+ ctor public LongSummaryStatistics(long, long, long, long) throws java.lang.IllegalArgumentException;
+ method public void accept(int);
+ method public void accept(long);
+ method public void combine(java.util.LongSummaryStatistics);
+ method public final double getAverage();
+ method public final long getCount();
+ method public final long getMax();
+ method public final long getMin();
+ method public final long getSum();
+ }
+
+ public interface Map<K, V> {
+ method public void clear();
+ method @Nullable public default V compute(K, @NonNull java.util.function.BiFunction<? super K,? super V,? extends V>);
+ method @Nullable public default V computeIfAbsent(K, @NonNull java.util.function.Function<? super K,? extends V>);
+ method @Nullable public default V computeIfPresent(K, @NonNull java.util.function.BiFunction<? super K,? super V,? extends V>);
+ method public boolean containsKey(@Nullable Object);
+ method public boolean containsValue(@Nullable Object);
+ method @NonNull public static <K, V> java.util.Map<K,V> copyOf(@NonNull java.util.Map<? extends K,? extends V>);
+ method @NonNull public static <K, V> java.util.Map.Entry<K,V> entry(@NonNull K, @NonNull V);
+ method @NonNull public java.util.Set<java.util.Map.Entry<K,V>> entrySet();
+ method public boolean equals(@Nullable Object);
+ method public default void forEach(@NonNull java.util.function.BiConsumer<? super K,? super V>);
+ method @Nullable public V get(@Nullable Object);
+ method @Nullable public default V getOrDefault(@Nullable Object, @Nullable V);
+ method public int hashCode();
+ method public boolean isEmpty();
+ method @NonNull public java.util.Set<K> keySet();
+ method @Nullable public default V merge(K, @NonNull V, @NonNull java.util.function.BiFunction<? super V,? super V,? extends V>);
+ method @NonNull public static <K, V> java.util.Map<K,V> of();
+ method @NonNull public static <K, V> java.util.Map<K,V> of(@NonNull K, @NonNull V);
+ method @NonNull public static <K, V> java.util.Map<K,V> of(@NonNull K, @NonNull V, @NonNull K, @NonNull V);
+ method @NonNull public static <K, V> java.util.Map<K,V> of(@NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V);
+ method @NonNull public static <K, V> java.util.Map<K,V> of(@NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V);
+ method @NonNull public static <K, V> java.util.Map<K,V> of(@NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V);
+ method @NonNull public static <K, V> java.util.Map<K,V> of(@NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V);
+ method @NonNull public static <K, V> java.util.Map<K,V> of(@NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V);
+ method @NonNull public static <K, V> java.util.Map<K,V> of(@NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V);
+ method @NonNull public static <K, V> java.util.Map<K,V> of(@NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V);
+ method @NonNull public static <K, V> java.util.Map<K,V> of(@NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V, @NonNull K, @NonNull V);
+ method @NonNull @java.lang.SafeVarargs public static <K, V> java.util.Map<K,V> ofEntries(@NonNull java.util.Map.Entry<? extends K,? extends V>...);
+ method @Nullable public V put(K, V);
+ method public void putAll(@NonNull java.util.Map<? extends K,? extends V>);
+ method @Nullable public default V putIfAbsent(K, V);
+ method @Nullable public V remove(@Nullable Object);
+ method public default boolean remove(@Nullable Object, @Nullable Object);
+ method public default boolean replace(K, @Nullable V, V);
+ method @Nullable public default V replace(K, V);
+ method public default void replaceAll(@NonNull java.util.function.BiFunction<? super K,? super V,? extends V>);
+ method public int size();
+ method @NonNull public java.util.Collection<V> values();
+ }
+
+ public static interface Map.Entry<K, V> {
+ method @NonNull public static <K extends java.lang.Comparable<? super K>, V> java.util.Comparator<java.util.Map.Entry<K,V>> comparingByKey();
+ method @NonNull public static <K, V> java.util.Comparator<java.util.Map.Entry<K,V>> comparingByKey(@NonNull java.util.Comparator<? super K>);
+ method @NonNull public static <K, V extends java.lang.Comparable<? super V>> java.util.Comparator<java.util.Map.Entry<K,V>> comparingByValue();
+ method @NonNull public static <K, V> java.util.Comparator<java.util.Map.Entry<K,V>> comparingByValue(@NonNull java.util.Comparator<? super V>);
+ method public boolean equals(@Nullable Object);
+ method public K getKey();
+ method public V getValue();
+ method public int hashCode();
+ method public V setValue(V);
+ }
+
+ public class MissingFormatArgumentException extends java.util.IllegalFormatException {
+ ctor public MissingFormatArgumentException(String);
+ method public String getFormatSpecifier();
+ }
+
+ public class MissingFormatWidthException extends java.util.IllegalFormatException {
+ ctor public MissingFormatWidthException(String);
+ method public String getFormatSpecifier();
+ }
+
+ public class MissingResourceException extends java.lang.RuntimeException {
+ ctor public MissingResourceException(String, String, String);
+ method public String getClassName();
+ method public String getKey();
+ }
+
+ public interface NavigableMap<K, V> extends java.util.SortedMap<K,V> {
+ method @Nullable public java.util.Map.Entry<K,V> ceilingEntry(K);
+ method @Nullable public K ceilingKey(K);
+ method @NonNull public java.util.NavigableSet<K> descendingKeySet();
+ method @NonNull public java.util.NavigableMap<K,V> descendingMap();
+ method @Nullable public java.util.Map.Entry<K,V> firstEntry();
+ method @Nullable public java.util.Map.Entry<K,V> floorEntry(K);
+ method @Nullable public K floorKey(K);
+ method @NonNull public java.util.NavigableMap<K,V> headMap(K, boolean);
+ method @Nullable public java.util.Map.Entry<K,V> higherEntry(K);
+ method @Nullable public K higherKey(K);
+ method @Nullable public java.util.Map.Entry<K,V> lastEntry();
+ method @Nullable public java.util.Map.Entry<K,V> lowerEntry(K);
+ method @Nullable public K lowerKey(K);
+ method @NonNull public java.util.NavigableSet<K> navigableKeySet();
+ method @Nullable public java.util.Map.Entry<K,V> pollFirstEntry();
+ method @Nullable public java.util.Map.Entry<K,V> pollLastEntry();
+ method @NonNull public java.util.NavigableMap<K,V> subMap(K, boolean, K, boolean);
+ method @NonNull public java.util.NavigableMap<K,V> tailMap(K, boolean);
+ }
+
+ public interface NavigableSet<E> extends java.util.SortedSet<E> {
+ method public E ceiling(E);
+ method public java.util.Iterator<E> descendingIterator();
+ method public java.util.NavigableSet<E> descendingSet();
+ method public E floor(E);
+ method public java.util.NavigableSet<E> headSet(E, boolean);
+ method public E higher(E);
+ method public E lower(E);
+ method public E pollFirst();
+ method public E pollLast();
+ method public java.util.NavigableSet<E> subSet(E, boolean, E, boolean);
+ method public java.util.NavigableSet<E> tailSet(E, boolean);
+ }
+
+ public class NoSuchElementException extends java.lang.RuntimeException {
+ ctor public NoSuchElementException();
+ ctor public NoSuchElementException(String);
+ }
+
+ public final class Objects {
+ method public static int checkFromIndexSize(int, int, int);
+ method public static int checkFromToIndex(int, int, int);
+ method public static int checkIndex(int, int);
+ method public static <T> int compare(T, T, @NonNull java.util.Comparator<? super T>);
+ method public static boolean deepEquals(@Nullable Object, @Nullable Object);
+ method public static boolean equals(@Nullable Object, @Nullable Object);
+ method public static int hash(@Nullable java.lang.Object...);
+ method public static int hashCode(@Nullable Object);
+ method public static boolean isNull(@Nullable Object);
+ method public static boolean nonNull(@Nullable Object);
+ method @NonNull public static <T> T requireNonNull(@Nullable T);
+ method @NonNull public static <T> T requireNonNull(@Nullable T, @NonNull String);
+ method @NonNull public static <T> T requireNonNull(@Nullable T, @NonNull java.util.function.Supplier<java.lang.String>);
+ method @NonNull public static <T> T requireNonNullElse(@Nullable T, @NonNull T);
+ method @NonNull public static <T> T requireNonNullElseGet(@Nullable T, @NonNull java.util.function.Supplier<? extends T>);
+ method @NonNull public static String toString(@Nullable Object);
+ method @NonNull public static String toString(@Nullable Object, @NonNull String);
+ }
+
+ @Deprecated public class Observable {
+ ctor @Deprecated public Observable();
+ method @Deprecated public void addObserver(java.util.Observer);
+ method @Deprecated protected void clearChanged();
+ method @Deprecated public int countObservers();
+ method @Deprecated public void deleteObserver(java.util.Observer);
+ method @Deprecated public void deleteObservers();
+ method @Deprecated public boolean hasChanged();
+ method @Deprecated public void notifyObservers();
+ method @Deprecated public void notifyObservers(Object);
+ method @Deprecated protected void setChanged();
+ }
+
+ @Deprecated public interface Observer {
+ method @Deprecated public void update(java.util.Observable, Object);
+ }
+
+ public final class Optional<T> {
+ method public static <T> java.util.Optional<T> empty();
+ method public java.util.Optional<T> filter(java.util.function.Predicate<? super T>);
+ method public <U> java.util.Optional<U> flatMap(java.util.function.Function<? super T,? extends java.util.Optional<? extends U>>);
+ method public T get();
+ method public void ifPresent(java.util.function.Consumer<? super T>);
+ method public void ifPresentOrElse(java.util.function.Consumer<? super T>, Runnable);
+ method public boolean isEmpty();
+ method public boolean isPresent();
+ method public <U> java.util.Optional<U> map(java.util.function.Function<? super T,? extends U>);
+ method public static <T> java.util.Optional<T> of(T);
+ method public static <T> java.util.Optional<T> ofNullable(T);
+ method public java.util.Optional<T> or(java.util.function.Supplier<? extends java.util.Optional<? extends T>>);
+ method public T orElse(T);
+ method public T orElseGet(java.util.function.Supplier<? extends T>);
+ method public T orElseThrow();
+ method public <X extends java.lang.Throwable> T orElseThrow(java.util.function.Supplier<? extends X>) throws X;
+ method public java.util.stream.Stream<T> stream();
+ }
+
+ public final class OptionalDouble {
+ method public static java.util.OptionalDouble empty();
+ method public double getAsDouble();
+ method public void ifPresent(java.util.function.DoubleConsumer);
+ method public void ifPresentOrElse(java.util.function.DoubleConsumer, Runnable);
+ method public boolean isEmpty();
+ method public boolean isPresent();
+ method public static java.util.OptionalDouble of(double);
+ method public double orElse(double);
+ method public double orElseGet(java.util.function.DoubleSupplier);
+ method public double orElseThrow();
+ method public <X extends java.lang.Throwable> double orElseThrow(java.util.function.Supplier<? extends X>) throws X;
+ method public java.util.stream.DoubleStream stream();
+ }
+
+ public final class OptionalInt {
+ method public static java.util.OptionalInt empty();
+ method public int getAsInt();
+ method public void ifPresent(java.util.function.IntConsumer);
+ method public void ifPresentOrElse(java.util.function.IntConsumer, Runnable);
+ method public boolean isEmpty();
+ method public boolean isPresent();
+ method public static java.util.OptionalInt of(int);
+ method public int orElse(int);
+ method public int orElseGet(java.util.function.IntSupplier);
+ method public int orElseThrow();
+ method public <X extends java.lang.Throwable> int orElseThrow(java.util.function.Supplier<? extends X>) throws X;
+ method public java.util.stream.IntStream stream();
+ }
+
+ public final class OptionalLong {
+ method public static java.util.OptionalLong empty();
+ method public long getAsLong();
+ method public void ifPresent(java.util.function.LongConsumer);
+ method public void ifPresentOrElse(java.util.function.LongConsumer, Runnable);
+ method public boolean isEmpty();
+ method public boolean isPresent();
+ method public static java.util.OptionalLong of(long);
+ method public long orElse(long);
+ method public long orElseGet(java.util.function.LongSupplier);
+ method public long orElseThrow();
+ method public <X extends java.lang.Throwable> long orElseThrow(java.util.function.Supplier<? extends X>) throws X;
+ method public java.util.stream.LongStream stream();
+ }
+
+ public interface PrimitiveIterator<T, T_CONS> extends java.util.Iterator<T> {
+ method public void forEachRemaining(T_CONS);
+ }
+
+ public static interface PrimitiveIterator.OfDouble extends java.util.PrimitiveIterator<java.lang.Double,java.util.function.DoubleConsumer> {
+ method public default void forEachRemaining(java.util.function.DoubleConsumer);
+ method public default void forEachRemaining(java.util.function.Consumer<? super java.lang.Double>);
+ method public default Double next();
+ method public double nextDouble();
+ }
+
+ public static interface PrimitiveIterator.OfInt extends java.util.PrimitiveIterator<java.lang.Integer,java.util.function.IntConsumer> {
+ method public default void forEachRemaining(java.util.function.IntConsumer);
+ method public default void forEachRemaining(java.util.function.Consumer<? super java.lang.Integer>);
+ method public default Integer next();
+ method public int nextInt();
+ }
+
+ public static interface PrimitiveIterator.OfLong extends java.util.PrimitiveIterator<java.lang.Long,java.util.function.LongConsumer> {
+ method public default void forEachRemaining(java.util.function.LongConsumer);
+ method public default void forEachRemaining(java.util.function.Consumer<? super java.lang.Long>);
+ method public default Long next();
+ method public long nextLong();
+ }
+
+ public class PriorityQueue<E> extends java.util.AbstractQueue<E> implements java.io.Serializable {
+ ctor public PriorityQueue();
+ ctor public PriorityQueue(int);
+ ctor public PriorityQueue(java.util.Comparator<? super E>);
+ ctor public PriorityQueue(int, java.util.Comparator<? super E>);
+ ctor public PriorityQueue(java.util.Collection<? extends E>);
+ ctor public PriorityQueue(java.util.PriorityQueue<? extends E>);
+ ctor public PriorityQueue(java.util.SortedSet<? extends E>);
+ method public java.util.Comparator<? super E> comparator();
+ method public java.util.Iterator<E> iterator();
+ method public boolean offer(E);
+ method public E peek();
+ method public E poll();
+ method public int size();
+ method public final java.util.Spliterator<E> spliterator();
+ }
+
+ public class Properties extends java.util.Hashtable<java.lang.Object,java.lang.Object> {
+ ctor public Properties();
+ ctor public Properties(java.util.Properties);
+ method public String getProperty(String);
+ method public String getProperty(String, String);
+ method public void list(java.io.PrintStream);
+ method public void list(java.io.PrintWriter);
+ method public void load(java.io.Reader) throws java.io.IOException;
+ method public void load(java.io.InputStream) throws java.io.IOException;
+ method public void loadFromXML(java.io.InputStream) throws java.io.IOException, java.util.InvalidPropertiesFormatException;
+ method public java.util.Enumeration<?> propertyNames();
+ method @Deprecated public void save(java.io.OutputStream, String);
+ method public Object setProperty(String, String);
+ method public void store(java.io.Writer, String) throws java.io.IOException;
+ method public void store(java.io.OutputStream, String) throws java.io.IOException;
+ method public void storeToXML(java.io.OutputStream, String) throws java.io.IOException;
+ method public void storeToXML(java.io.OutputStream, String, String) throws java.io.IOException;
+ method public java.util.Set<java.lang.String> stringPropertyNames();
+ field protected java.util.Properties defaults;
+ }
+
+ public final class PropertyPermission extends java.security.BasicPermission {
+ ctor public PropertyPermission(String, String);
+ }
+
+ public class PropertyResourceBundle extends java.util.ResourceBundle {
+ ctor public PropertyResourceBundle(java.io.InputStream) throws java.io.IOException;
+ ctor public PropertyResourceBundle(java.io.Reader) throws java.io.IOException;
+ method public java.util.Enumeration<java.lang.String> getKeys();
+ method public Object handleGetObject(String);
+ }
+
+ public interface Queue<E> extends java.util.Collection<E> {
+ method public E element();
+ method public boolean offer(E);
+ method @Nullable public E peek();
+ method @Nullable public E poll();
+ method public E remove();
+ }
+
+ public class Random implements java.io.Serializable {
+ ctor public Random();
+ ctor public Random(long);
+ method public java.util.stream.DoubleStream doubles(long);
+ method public java.util.stream.DoubleStream doubles();
+ method public java.util.stream.DoubleStream doubles(long, double, double);
+ method public java.util.stream.DoubleStream doubles(double, double);
+ method public java.util.stream.IntStream ints(long);
+ method public java.util.stream.IntStream ints();
+ method public java.util.stream.IntStream ints(long, int, int);
+ method public java.util.stream.IntStream ints(int, int);
+ method public java.util.stream.LongStream longs(long);
+ method public java.util.stream.LongStream longs();
+ method public java.util.stream.LongStream longs(long, long, long);
+ method public java.util.stream.LongStream longs(long, long);
+ method protected int next(int);
+ method public boolean nextBoolean();
+ method public void nextBytes(byte[]);
+ method public double nextDouble();
+ method public float nextFloat();
+ method public double nextGaussian();
+ method public int nextInt();
+ method public int nextInt(int);
+ method public long nextLong();
+ method public void setSeed(long);
+ }
+
+ public interface RandomAccess {
+ }
+
+ public abstract class ResourceBundle {
+ ctor public ResourceBundle();
+ method public static final void clearCache();
+ method public static final void clearCache(ClassLoader);
+ method public boolean containsKey(String);
+ method public String getBaseBundleName();
+ method public static final java.util.ResourceBundle getBundle(String);
+ method public static final java.util.ResourceBundle getBundle(String, java.util.ResourceBundle.Control);
+ method public static final java.util.ResourceBundle getBundle(String, java.util.Locale);
+ method public static final java.util.ResourceBundle getBundle(String, java.util.Locale, java.util.ResourceBundle.Control);
+ method public static java.util.ResourceBundle getBundle(String, java.util.Locale, ClassLoader);
+ method public static java.util.ResourceBundle getBundle(String, java.util.Locale, ClassLoader, java.util.ResourceBundle.Control);
+ method public abstract java.util.Enumeration<java.lang.String> getKeys();
+ method public java.util.Locale getLocale();
+ method public final Object getObject(String);
+ method public final String getString(String);
+ method public final String[] getStringArray(String);
+ method protected abstract Object handleGetObject(String);
+ method protected java.util.Set<java.lang.String> handleKeySet();
+ method public java.util.Set<java.lang.String> keySet();
+ method protected void setParent(java.util.ResourceBundle);
+ field protected java.util.ResourceBundle parent;
+ }
+
+ public static class ResourceBundle.Control {
+ ctor protected ResourceBundle.Control();
+ method public java.util.List<java.util.Locale> getCandidateLocales(String, java.util.Locale);
+ method public static final java.util.ResourceBundle.Control getControl(java.util.List<java.lang.String>);
+ method public java.util.Locale getFallbackLocale(String, java.util.Locale);
+ method public java.util.List<java.lang.String> getFormats(String);
+ method public static final java.util.ResourceBundle.Control getNoFallbackControl(java.util.List<java.lang.String>);
+ method public long getTimeToLive(String, java.util.Locale);
+ method public boolean needsReload(String, java.util.Locale, String, ClassLoader, java.util.ResourceBundle, long);
+ method public java.util.ResourceBundle newBundle(String, java.util.Locale, String, ClassLoader, boolean) throws java.io.IOException, java.lang.IllegalAccessException, java.lang.InstantiationException;
+ method public String toBundleName(String, java.util.Locale);
+ method public final String toResourceName(String, String);
+ field public static final java.util.List<java.lang.String> FORMAT_CLASS;
+ field public static final java.util.List<java.lang.String> FORMAT_DEFAULT;
+ field public static final java.util.List<java.lang.String> FORMAT_PROPERTIES;
+ field public static final long TTL_DONT_CACHE = -1L; // 0xffffffffffffffffL
+ field public static final long TTL_NO_EXPIRATION_CONTROL = -2L; // 0xfffffffffffffffeL
+ }
+
+ public final class Scanner implements java.io.Closeable java.util.Iterator<java.lang.String> {
+ ctor public Scanner(Readable);
+ ctor public Scanner(java.io.InputStream);
+ ctor public Scanner(java.io.InputStream, String);
+ ctor public Scanner(java.io.File) throws java.io.FileNotFoundException;
+ ctor public Scanner(java.io.File, String) throws java.io.FileNotFoundException;
+ ctor public Scanner(java.nio.file.Path) throws java.io.IOException;
+ ctor public Scanner(java.nio.file.Path, String) throws java.io.IOException;
+ ctor public Scanner(String);
+ ctor public Scanner(java.nio.channels.ReadableByteChannel);
+ ctor public Scanner(java.nio.channels.ReadableByteChannel, String);
+ method public void close();
+ method public java.util.regex.Pattern delimiter();
+ method public String findInLine(String);
+ method public String findInLine(java.util.regex.Pattern);
+ method public String findWithinHorizon(String, int);
+ method public String findWithinHorizon(java.util.regex.Pattern, int);
+ method public boolean hasNext();
+ method public boolean hasNext(String);
+ method public boolean hasNext(java.util.regex.Pattern);
+ method public boolean hasNextBigDecimal();
+ method public boolean hasNextBigInteger();
+ method public boolean hasNextBigInteger(int);
+ method public boolean hasNextBoolean();
+ method public boolean hasNextByte();
+ method public boolean hasNextByte(int);
+ method public boolean hasNextDouble();
+ method public boolean hasNextFloat();
+ method public boolean hasNextInt();
+ method public boolean hasNextInt(int);
+ method public boolean hasNextLine();
+ method public boolean hasNextLong();
+ method public boolean hasNextLong(int);
+ method public boolean hasNextShort();
+ method public boolean hasNextShort(int);
+ method public java.io.IOException ioException();
+ method public java.util.Locale locale();
+ method public java.util.regex.MatchResult match();
+ method public String next();
+ method public String next(String);
+ method public String next(java.util.regex.Pattern);
+ method public java.math.BigDecimal nextBigDecimal();
+ method public java.math.BigInteger nextBigInteger();
+ method public java.math.BigInteger nextBigInteger(int);
+ method public boolean nextBoolean();
+ method public byte nextByte();
+ method public byte nextByte(int);
+ method public double nextDouble();
+ method public float nextFloat();
+ method public int nextInt();
+ method public int nextInt(int);
+ method public String nextLine();
+ method public long nextLong();
+ method public long nextLong(int);
+ method public short nextShort();
+ method public short nextShort(int);
+ method public int radix();
+ method public java.util.Scanner reset();
+ method public java.util.Scanner skip(java.util.regex.Pattern);
+ method public java.util.Scanner skip(String);
+ method public java.util.Scanner useDelimiter(java.util.regex.Pattern);
+ method public java.util.Scanner useDelimiter(String);
+ method public java.util.Scanner useLocale(java.util.Locale);
+ method public java.util.Scanner useRadix(int);
+ }
+
+ public class ServiceConfigurationError extends java.lang.Error {
+ ctor public ServiceConfigurationError(String);
+ ctor public ServiceConfigurationError(String, Throwable);
+ }
+
+ public final class ServiceLoader<S> implements java.lang.Iterable<S> {
+ method public java.util.Iterator<S> iterator();
+ method public static <S> java.util.ServiceLoader<S> load(Class<S>, ClassLoader);
+ method public static <S> java.util.ServiceLoader<S> load(Class<S>);
+ method public static <S> java.util.ServiceLoader<S> loadInstalled(Class<S>);
+ method public void reload();
+ }
+
+ public interface Set<E> extends java.util.Collection<E> {
+ method @NonNull public static <E> java.util.Set<E> copyOf(@NonNull java.util.Collection<? extends E>);
+ method @NonNull public static <E> java.util.Set<E> of();
+ method @NonNull public static <E> java.util.Set<E> of(@NonNull E);
+ method @NonNull public static <E> java.util.Set<E> of(@NonNull E, @NonNull E);
+ method @NonNull public static <E> java.util.Set<E> of(@NonNull E, @NonNull E, @NonNull E);
+ method @NonNull public static <E> java.util.Set<E> of(@NonNull E, @NonNull E, @NonNull E, @NonNull E);
+ method @NonNull public static <E> java.util.Set<E> of(@NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E);
+ method @NonNull public static <E> java.util.Set<E> of(@NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E);
+ method @NonNull public static <E> java.util.Set<E> of(@NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E);
+ method @NonNull public static <E> java.util.Set<E> of(@NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E);
+ method @NonNull public static <E> java.util.Set<E> of(@NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E);
+ method @NonNull public static <E> java.util.Set<E> of(@NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E, @NonNull E);
+ method @NonNull @java.lang.SafeVarargs public static <E> java.util.Set<E> of(@NonNull E...);
+ }
+
+ public class SimpleTimeZone extends java.util.TimeZone {
+ ctor public SimpleTimeZone(int, String);
+ ctor public SimpleTimeZone(int, String, int, int, int, int, int, int, int, int);
+ ctor public SimpleTimeZone(int, String, int, int, int, int, int, int, int, int, int);
+ ctor public SimpleTimeZone(int, String, int, int, int, int, int, int, int, int, int, int, int);
+ method public int getOffset(int, int, int, int, int, int);
+ method public int getRawOffset();
+ method public boolean inDaylightTime(java.util.Date);
+ method public void setDSTSavings(int);
+ method public void setEndRule(int, int, int, int);
+ method public void setEndRule(int, int, int);
+ method public void setEndRule(int, int, int, int, boolean);
+ method public void setRawOffset(int);
+ method public void setStartRule(int, int, int, int);
+ method public void setStartRule(int, int, int);
+ method public void setStartRule(int, int, int, int, boolean);
+ method public void setStartYear(int);
+ method public boolean useDaylightTime();
+ field public static final int STANDARD_TIME = 1; // 0x1
+ field public static final int UTC_TIME = 2; // 0x2
+ field public static final int WALL_TIME = 0; // 0x0
+ }
+
+ public interface SortedMap<K, V> extends java.util.Map<K,V> {
+ method @Nullable public java.util.Comparator<? super K> comparator();
+ method public K firstKey();
+ method @NonNull public java.util.SortedMap<K,V> headMap(K);
+ method public K lastKey();
+ method @NonNull public java.util.SortedMap<K,V> subMap(K, K);
+ method @NonNull public java.util.SortedMap<K,V> tailMap(K);
+ }
+
+ public interface SortedSet<E> extends java.util.Set<E> {
+ method public java.util.Comparator<? super E> comparator();
+ method public E first();
+ method public java.util.SortedSet<E> headSet(E);
+ method public E last();
+ method public java.util.SortedSet<E> subSet(E, E);
+ method public java.util.SortedSet<E> tailSet(E);
+ }
+
+ public interface Spliterator<T> {
+ method public int characteristics();
+ method public long estimateSize();
+ method public default void forEachRemaining(java.util.function.Consumer<? super T>);
+ method public default java.util.Comparator<? super T> getComparator();
+ method public default long getExactSizeIfKnown();
+ method public default boolean hasCharacteristics(int);
+ method public boolean tryAdvance(java.util.function.Consumer<? super T>);
+ method public java.util.Spliterator<T> trySplit();
+ field public static final int CONCURRENT = 4096; // 0x1000
+ field public static final int DISTINCT = 1; // 0x1
+ field public static final int IMMUTABLE = 1024; // 0x400
+ field public static final int NONNULL = 256; // 0x100
+ field public static final int ORDERED = 16; // 0x10
+ field public static final int SIZED = 64; // 0x40
+ field public static final int SORTED = 4; // 0x4
+ field public static final int SUBSIZED = 16384; // 0x4000
+ }
+
+ public static interface Spliterator.OfDouble extends java.util.Spliterator.OfPrimitive<java.lang.Double,java.util.function.DoubleConsumer,java.util.Spliterator.OfDouble> {
+ method public default void forEachRemaining(java.util.function.DoubleConsumer);
+ method public default void forEachRemaining(java.util.function.Consumer<? super java.lang.Double>);
+ method public boolean tryAdvance(java.util.function.DoubleConsumer);
+ method public default boolean tryAdvance(java.util.function.Consumer<? super java.lang.Double>);
+ method public java.util.Spliterator.OfDouble trySplit();
+ }
+
+ public static interface Spliterator.OfInt extends java.util.Spliterator.OfPrimitive<java.lang.Integer,java.util.function.IntConsumer,java.util.Spliterator.OfInt> {
+ method public default void forEachRemaining(java.util.function.IntConsumer);
+ method public default void forEachRemaining(java.util.function.Consumer<? super java.lang.Integer>);
+ method public boolean tryAdvance(java.util.function.IntConsumer);
+ method public default boolean tryAdvance(java.util.function.Consumer<? super java.lang.Integer>);
+ method public java.util.Spliterator.OfInt trySplit();
+ }
+
+ public static interface Spliterator.OfLong extends java.util.Spliterator.OfPrimitive<java.lang.Long,java.util.function.LongConsumer,java.util.Spliterator.OfLong> {
+ method public default void forEachRemaining(java.util.function.LongConsumer);
+ method public default void forEachRemaining(java.util.function.Consumer<? super java.lang.Long>);
+ method public boolean tryAdvance(java.util.function.LongConsumer);
+ method public default boolean tryAdvance(java.util.function.Consumer<? super java.lang.Long>);
+ method public java.util.Spliterator.OfLong trySplit();
+ }
+
+ public static interface Spliterator.OfPrimitive<T, T_CONS, T_SPLITR extends java.util.Spliterator.OfPrimitive<T, T_CONS, T_SPLITR>> extends java.util.Spliterator<T> {
+ method public default void forEachRemaining(T_CONS);
+ method public boolean tryAdvance(T_CONS);
+ method public T_SPLITR trySplit();
+ }
+
+ public final class Spliterators {
+ method public static java.util.Spliterator.OfDouble emptyDoubleSpliterator();
+ method public static java.util.Spliterator.OfInt emptyIntSpliterator();
+ method public static java.util.Spliterator.OfLong emptyLongSpliterator();
+ method public static <T> java.util.Spliterator<T> emptySpliterator();
+ method public static <T> java.util.Iterator<T> iterator(java.util.Spliterator<? extends T>);
+ method public static java.util.PrimitiveIterator.OfInt iterator(java.util.Spliterator.OfInt);
+ method public static java.util.PrimitiveIterator.OfLong iterator(java.util.Spliterator.OfLong);
+ method public static java.util.PrimitiveIterator.OfDouble iterator(java.util.Spliterator.OfDouble);
+ method public static <T> java.util.Spliterator<T> spliterator(Object[], int);
+ method public static <T> java.util.Spliterator<T> spliterator(Object[], int, int, int);
+ method public static java.util.Spliterator.OfInt spliterator(int[], int);
+ method public static java.util.Spliterator.OfInt spliterator(int[], int, int, int);
+ method public static java.util.Spliterator.OfLong spliterator(long[], int);
+ method public static java.util.Spliterator.OfLong spliterator(long[], int, int, int);
+ method public static java.util.Spliterator.OfDouble spliterator(double[], int);
+ method public static java.util.Spliterator.OfDouble spliterator(double[], int, int, int);
+ method public static <T> java.util.Spliterator<T> spliterator(java.util.Collection<? extends T>, int);
+ method public static <T> java.util.Spliterator<T> spliterator(java.util.Iterator<? extends T>, long, int);
+ method public static java.util.Spliterator.OfInt spliterator(java.util.PrimitiveIterator.OfInt, long, int);
+ method public static java.util.Spliterator.OfLong spliterator(java.util.PrimitiveIterator.OfLong, long, int);
+ method public static java.util.Spliterator.OfDouble spliterator(java.util.PrimitiveIterator.OfDouble, long, int);
+ method public static <T> java.util.Spliterator<T> spliteratorUnknownSize(java.util.Iterator<? extends T>, int);
+ method public static java.util.Spliterator.OfInt spliteratorUnknownSize(java.util.PrimitiveIterator.OfInt, int);
+ method public static java.util.Spliterator.OfLong spliteratorUnknownSize(java.util.PrimitiveIterator.OfLong, int);
+ method public static java.util.Spliterator.OfDouble spliteratorUnknownSize(java.util.PrimitiveIterator.OfDouble, int);
+ }
+
+ public abstract static class Spliterators.AbstractDoubleSpliterator implements java.util.Spliterator.OfDouble {
+ ctor protected Spliterators.AbstractDoubleSpliterator(long, int);
+ method public int characteristics();
+ method public long estimateSize();
+ method public java.util.Spliterator.OfDouble trySplit();
+ }
+
+ public abstract static class Spliterators.AbstractIntSpliterator implements java.util.Spliterator.OfInt {
+ ctor protected Spliterators.AbstractIntSpliterator(long, int);
+ method public int characteristics();
+ method public long estimateSize();
+ method public java.util.Spliterator.OfInt trySplit();
+ }
+
+ public abstract static class Spliterators.AbstractLongSpliterator implements java.util.Spliterator.OfLong {
+ ctor protected Spliterators.AbstractLongSpliterator(long, int);
+ method public int characteristics();
+ method public long estimateSize();
+ method public java.util.Spliterator.OfLong trySplit();
+ }
+
+ public abstract static class Spliterators.AbstractSpliterator<T> implements java.util.Spliterator<T> {
+ ctor protected Spliterators.AbstractSpliterator(long, int);
+ method public int characteristics();
+ method public long estimateSize();
+ method public java.util.Spliterator<T> trySplit();
+ }
+
+ public final class SplittableRandom {
+ ctor public SplittableRandom(long);
+ ctor public SplittableRandom();
+ method public java.util.stream.DoubleStream doubles(long);
+ method public java.util.stream.DoubleStream doubles();
+ method public java.util.stream.DoubleStream doubles(long, double, double);
+ method public java.util.stream.DoubleStream doubles(double, double);
+ method public java.util.stream.IntStream ints(long);
+ method public java.util.stream.IntStream ints();
+ method public java.util.stream.IntStream ints(long, int, int);
+ method public java.util.stream.IntStream ints(int, int);
+ method public java.util.stream.LongStream longs(long);
+ method public java.util.stream.LongStream longs();
+ method public java.util.stream.LongStream longs(long, long, long);
+ method public java.util.stream.LongStream longs(long, long);
+ method public boolean nextBoolean();
+ method public void nextBytes(byte[]);
+ method public double nextDouble();
+ method public double nextDouble(double);
+ method public double nextDouble(double, double);
+ method public int nextInt();
+ method public int nextInt(int);
+ method public int nextInt(int, int);
+ method public long nextLong();
+ method public long nextLong(long);
+ method public long nextLong(long, long);
+ method public java.util.SplittableRandom split();
+ }
+
+ public class Stack<E> extends java.util.Vector<E> {
+ ctor public Stack();
+ method public boolean empty();
+ method public E peek();
+ method public E pop();
+ method public E push(E);
+ method public int search(Object);
+ }
+
+ public final class StringJoiner {
+ ctor public StringJoiner(CharSequence);
+ ctor public StringJoiner(CharSequence, CharSequence, CharSequence);
+ method public java.util.StringJoiner add(CharSequence);
+ method public int length();
+ method public java.util.StringJoiner merge(java.util.StringJoiner);
+ method public java.util.StringJoiner setEmptyValue(CharSequence);
+ }
+
+ public class StringTokenizer implements java.util.Enumeration<java.lang.Object> {
+ ctor public StringTokenizer(String, String, boolean);
+ ctor public StringTokenizer(String, String);
+ ctor public StringTokenizer(String);
+ method public int countTokens();
+ method public boolean hasMoreElements();
+ method public boolean hasMoreTokens();
+ method public Object nextElement();
+ method public String nextToken();
+ method public String nextToken(String);
+ }
+
+ public abstract class TimeZone implements java.lang.Cloneable java.io.Serializable {
+ ctor public TimeZone();
+ method public Object clone();
+ method public static String[] getAvailableIDs(int);
+ method public static String[] getAvailableIDs();
+ method public int getDSTSavings();
+ method public static java.util.TimeZone getDefault();
+ method public final String getDisplayName();
+ method public final String getDisplayName(java.util.Locale);
+ method public final String getDisplayName(boolean, int);
+ method public String getDisplayName(boolean, int, java.util.Locale);
+ method public String getID();
+ method public abstract int getOffset(int, int, int, int, int, int);
+ method public int getOffset(long);
+ method public abstract int getRawOffset();
+ method public static java.util.TimeZone getTimeZone(String);
+ method public static java.util.TimeZone getTimeZone(java.time.ZoneId);
+ method public boolean hasSameRules(java.util.TimeZone);
+ method public abstract boolean inDaylightTime(java.util.Date);
+ method public boolean observesDaylightTime();
+ method public static void setDefault(java.util.TimeZone);
+ method public void setID(String);
+ method public abstract void setRawOffset(int);
+ method public java.time.ZoneId toZoneId();
+ method public abstract boolean useDaylightTime();
+ field public static final int LONG = 1; // 0x1
+ field public static final int SHORT = 0; // 0x0
+ }
+
+ public class Timer {
+ ctor public Timer();
+ ctor public Timer(boolean);
+ ctor public Timer(String);
+ ctor public Timer(String, boolean);
+ method public void cancel();
+ method public int purge();
+ method public void schedule(java.util.TimerTask, long);
+ method public void schedule(java.util.TimerTask, java.util.Date);
+ method public void schedule(java.util.TimerTask, long, long);
+ method public void schedule(java.util.TimerTask, java.util.Date, long);
+ method public void scheduleAtFixedRate(java.util.TimerTask, long, long);
+ method public void scheduleAtFixedRate(java.util.TimerTask, java.util.Date, long);
+ }
+
+ public abstract class TimerTask implements java.lang.Runnable {
+ ctor protected TimerTask();
+ method public boolean cancel();
+ method public long scheduledExecutionTime();
+ }
+
+ public class TooManyListenersException extends java.lang.Exception {
+ ctor public TooManyListenersException();
+ ctor public TooManyListenersException(String);
+ }
+
+ public class TreeMap<K, V> extends java.util.AbstractMap<K,V> implements java.lang.Cloneable java.util.NavigableMap<K,V> java.io.Serializable {
+ ctor public TreeMap();
+ ctor public TreeMap(@Nullable java.util.Comparator<? super K>);
+ ctor public TreeMap(@NonNull java.util.Map<? extends K,? extends V>);
+ ctor public TreeMap(@NonNull java.util.SortedMap<K,? extends V>);
+ method @Nullable public java.util.Map.Entry<K,V> ceilingEntry(K);
+ method @Nullable public K ceilingKey(K);
+ method @NonNull public Object clone();
+ method @Nullable public java.util.Comparator<? super K> comparator();
+ method @NonNull public java.util.NavigableSet<K> descendingKeySet();
+ method @NonNull public java.util.NavigableMap<K,V> descendingMap();
+ method @NonNull public java.util.Set<java.util.Map.Entry<K,V>> entrySet();
+ method @Nullable public java.util.Map.Entry<K,V> firstEntry();
+ method public K firstKey();
+ method @Nullable public java.util.Map.Entry<K,V> floorEntry(K);
+ method @Nullable public K floorKey(K);
+ method @NonNull public java.util.NavigableMap<K,V> headMap(K, boolean);
+ method @NonNull public java.util.SortedMap<K,V> headMap(K);
+ method @Nullable public java.util.Map.Entry<K,V> higherEntry(K);
+ method @Nullable public K higherKey(K);
+ method @Nullable public java.util.Map.Entry<K,V> lastEntry();
+ method public K lastKey();
+ method @Nullable public java.util.Map.Entry<K,V> lowerEntry(K);
+ method @Nullable public K lowerKey(K);
+ method @NonNull public java.util.NavigableSet<K> navigableKeySet();
+ method @Nullable public java.util.Map.Entry<K,V> pollFirstEntry();
+ method @Nullable public java.util.Map.Entry<K,V> pollLastEntry();
+ method @NonNull public java.util.NavigableMap<K,V> subMap(K, boolean, K, boolean);
+ method @NonNull public java.util.SortedMap<K,V> subMap(K, K);
+ method @NonNull public java.util.NavigableMap<K,V> tailMap(K, boolean);
+ method @NonNull public java.util.SortedMap<K,V> tailMap(K);
+ }
+
+ public class TreeSet<E> extends java.util.AbstractSet<E> implements java.lang.Cloneable java.util.NavigableSet<E> java.io.Serializable {
+ ctor public TreeSet();
+ ctor public TreeSet(java.util.Comparator<? super E>);
+ ctor public TreeSet(java.util.Collection<? extends E>);
+ ctor public TreeSet(java.util.SortedSet<E>);
+ method public E ceiling(E);
+ method public Object clone();
+ method public java.util.Comparator<? super E> comparator();
+ method public java.util.Iterator<E> descendingIterator();
+ method public java.util.NavigableSet<E> descendingSet();
+ method public E first();
+ method public E floor(E);
+ method public java.util.NavigableSet<E> headSet(E, boolean);
+ method public java.util.SortedSet<E> headSet(E);
+ method public E higher(E);
+ method public java.util.Iterator<E> iterator();
+ method public E last();
+ method public E lower(E);
+ method public E pollFirst();
+ method public E pollLast();
+ method public int size();
+ method public java.util.NavigableSet<E> subSet(E, boolean, E, boolean);
+ method public java.util.SortedSet<E> subSet(E, E);
+ method public java.util.NavigableSet<E> tailSet(E, boolean);
+ method public java.util.SortedSet<E> tailSet(E);
+ }
+
+ public final class UUID implements java.lang.Comparable<java.util.UUID> java.io.Serializable {
+ ctor public UUID(long, long);
+ method public int clockSequence();
+ method public int compareTo(java.util.UUID);
+ method public static java.util.UUID fromString(String);
+ method public long getLeastSignificantBits();
+ method public long getMostSignificantBits();
+ method public static java.util.UUID nameUUIDFromBytes(byte[]);
+ method public long node();
+ method public static java.util.UUID randomUUID();
+ method public long timestamp();
+ method public int variant();
+ method public int version();
+ }
+
+ public class UnknownFormatConversionException extends java.util.IllegalFormatException {
+ ctor public UnknownFormatConversionException(String);
+ method public String getConversion();
+ }
+
+ public class UnknownFormatFlagsException extends java.util.IllegalFormatException {
+ ctor public UnknownFormatFlagsException(String);
+ method public String getFlags();
+ }
+
+ public class Vector<E> extends java.util.AbstractList<E> implements java.lang.Cloneable java.util.List<E> java.util.RandomAccess java.io.Serializable {
+ ctor public Vector(int, int);
+ ctor public Vector(int);
+ ctor public Vector();
+ ctor public Vector(@NonNull java.util.Collection<? extends E>);
+ method public void addElement(E);
+ method public int capacity();
+ method @NonNull public Object clone();
+ method public void copyInto(@NonNull Object[]);
+ method public E elementAt(int);
+ method @NonNull public java.util.Enumeration<E> elements();
+ method public void ensureCapacity(int);
+ method public E firstElement();
+ method public void forEach(@NonNull java.util.function.Consumer<? super E>);
+ method public E get(int);
+ method public int indexOf(@Nullable Object, int);
+ method public void insertElementAt(E, int);
+ method public E lastElement();
+ method public int lastIndexOf(@Nullable Object, int);
+ method public void removeAllElements();
+ method public boolean removeElement(@Nullable Object);
+ method public void removeElementAt(int);
+ method public void setElementAt(E, int);
+ method public void setSize(int);
+ method public int size();
+ method public void trimToSize();
+ field protected int capacityIncrement;
+ field protected int elementCount;
+ field @NonNull protected Object[] elementData;
+ }
+
+ public class WeakHashMap<K, V> extends java.util.AbstractMap<K,V> implements java.util.Map<K,V> {
+ ctor public WeakHashMap(int, float);
+ ctor public WeakHashMap(int);
+ ctor public WeakHashMap();
+ ctor public WeakHashMap(@NonNull java.util.Map<? extends K,? extends V>);
+ method @NonNull public java.util.Set<java.util.Map.Entry<K,V>> entrySet();
+ }
+
+}
+
+package java.util.concurrent {
+
+ public abstract class AbstractExecutorService implements java.util.concurrent.ExecutorService {
+ ctor public AbstractExecutorService();
+ method public <T> java.util.List<java.util.concurrent.Future<T>> invokeAll(java.util.Collection<? extends java.util.concurrent.Callable<T>>) throws java.lang.InterruptedException;
+ method public <T> java.util.List<java.util.concurrent.Future<T>> invokeAll(java.util.Collection<? extends java.util.concurrent.Callable<T>>, long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException;
+ method public <T> T invokeAny(java.util.Collection<? extends java.util.concurrent.Callable<T>>) throws java.util.concurrent.ExecutionException, java.lang.InterruptedException;
+ method public <T> T invokeAny(java.util.Collection<? extends java.util.concurrent.Callable<T>>, long, java.util.concurrent.TimeUnit) throws java.util.concurrent.ExecutionException, java.lang.InterruptedException, java.util.concurrent.TimeoutException;
+ method protected <T> java.util.concurrent.RunnableFuture<T> newTaskFor(Runnable, T);
+ method protected <T> java.util.concurrent.RunnableFuture<T> newTaskFor(java.util.concurrent.Callable<T>);
+ method public java.util.concurrent.Future<?> submit(Runnable);
+ method public <T> java.util.concurrent.Future<T> submit(Runnable, T);
+ method public <T> java.util.concurrent.Future<T> submit(java.util.concurrent.Callable<T>);
+ }
+
+ public class ArrayBlockingQueue<E> extends java.util.AbstractQueue<E> implements java.util.concurrent.BlockingQueue<E> java.io.Serializable {
+ ctor public ArrayBlockingQueue(int);
+ ctor public ArrayBlockingQueue(int, boolean);
+ ctor public ArrayBlockingQueue(int, boolean, java.util.Collection<? extends E>);
+ method public int drainTo(java.util.Collection<? super E>);
+ method public int drainTo(java.util.Collection<? super E>, int);
+ method public void forEach(java.util.function.Consumer<? super E>);
+ method public java.util.Iterator<E> iterator();
+ method public boolean offer(E);
+ method public boolean offer(E, long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException;
+ method public E peek();
+ method public E poll();
+ method public E poll(long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException;
+ method public void put(E) throws java.lang.InterruptedException;
+ method public int remainingCapacity();
+ method public int size();
+ method public E take() throws java.lang.InterruptedException;
+ }
+
+ public interface BlockingDeque<E> extends java.util.concurrent.BlockingQueue<E> java.util.Deque<E> {
+ method public boolean offerFirst(E, long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException;
+ method public boolean offerLast(E, long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException;
+ method public E pollFirst(long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException;
+ method public E pollLast(long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException;
+ method public void putFirst(E) throws java.lang.InterruptedException;
+ method public void putLast(E) throws java.lang.InterruptedException;
+ method public E takeFirst() throws java.lang.InterruptedException;
+ method public E takeLast() throws java.lang.InterruptedException;
+ }
+
+ public interface BlockingQueue<E> extends java.util.Queue<E> {
+ method public int drainTo(java.util.Collection<? super E>);
+ method public int drainTo(java.util.Collection<? super E>, int);
+ method public boolean offer(E, long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException;
+ method public E poll(long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException;
+ method public void put(E) throws java.lang.InterruptedException;
+ method public int remainingCapacity();
+ method public E take() throws java.lang.InterruptedException;
+ }
+
+ public class BrokenBarrierException extends java.lang.Exception {
+ ctor public BrokenBarrierException();
+ ctor public BrokenBarrierException(String);
+ }
+
+ @java.lang.FunctionalInterface public interface Callable<V> {
+ method public V call() throws java.lang.Exception;
+ }
+
+ public class CancellationException extends java.lang.IllegalStateException {
+ ctor public CancellationException();
+ ctor public CancellationException(String);
+ }
+
+ public class CompletableFuture<T> implements java.util.concurrent.CompletionStage<T> java.util.concurrent.Future<T> {
+ ctor public CompletableFuture();
+ method public java.util.concurrent.CompletableFuture<java.lang.Void> acceptEither(java.util.concurrent.CompletionStage<? extends T>, java.util.function.Consumer<? super T>);
+ method public java.util.concurrent.CompletableFuture<java.lang.Void> acceptEitherAsync(java.util.concurrent.CompletionStage<? extends T>, java.util.function.Consumer<? super T>);
+ method public java.util.concurrent.CompletableFuture<java.lang.Void> acceptEitherAsync(java.util.concurrent.CompletionStage<? extends T>, java.util.function.Consumer<? super T>, java.util.concurrent.Executor);
+ method public static java.util.concurrent.CompletableFuture<java.lang.Void> allOf(java.util.concurrent.CompletableFuture<?>...);
+ method public static java.util.concurrent.CompletableFuture<java.lang.Object> anyOf(java.util.concurrent.CompletableFuture<?>...);
+ method public <U> java.util.concurrent.CompletableFuture<U> applyToEither(java.util.concurrent.CompletionStage<? extends T>, java.util.function.Function<? super T,U>);
+ method public <U> java.util.concurrent.CompletableFuture<U> applyToEitherAsync(java.util.concurrent.CompletionStage<? extends T>, java.util.function.Function<? super T,U>);
+ method public <U> java.util.concurrent.CompletableFuture<U> applyToEitherAsync(java.util.concurrent.CompletionStage<? extends T>, java.util.function.Function<? super T,U>, java.util.concurrent.Executor);
+ method public boolean cancel(boolean);
+ method public boolean complete(T);
+ method public java.util.concurrent.CompletableFuture<T> completeAsync(java.util.function.Supplier<? extends T>, java.util.concurrent.Executor);
+ method public java.util.concurrent.CompletableFuture<T> completeAsync(java.util.function.Supplier<? extends T>);
+ method public boolean completeExceptionally(Throwable);
+ method public java.util.concurrent.CompletableFuture<T> completeOnTimeout(T, long, java.util.concurrent.TimeUnit);
+ method public static <U> java.util.concurrent.CompletableFuture<U> completedFuture(U);
+ method public static <U> java.util.concurrent.CompletionStage<U> completedStage(U);
+ method public java.util.concurrent.CompletableFuture<T> copy();
+ method public java.util.concurrent.Executor defaultExecutor();
+ method public static java.util.concurrent.Executor delayedExecutor(long, java.util.concurrent.TimeUnit, java.util.concurrent.Executor);
+ method public static java.util.concurrent.Executor delayedExecutor(long, java.util.concurrent.TimeUnit);
+ method public java.util.concurrent.CompletableFuture<T> exceptionally(java.util.function.Function<java.lang.Throwable,? extends T>);
+ method public static <U> java.util.concurrent.CompletableFuture<U> failedFuture(Throwable);
+ method public static <U> java.util.concurrent.CompletionStage<U> failedStage(Throwable);
+ method public T get() throws java.util.concurrent.ExecutionException, java.lang.InterruptedException;
+ method public T get(long, java.util.concurrent.TimeUnit) throws java.util.concurrent.ExecutionException, java.lang.InterruptedException, java.util.concurrent.TimeoutException;
+ method public T getNow(T);
+ method public int getNumberOfDependents();
+ method public <U> java.util.concurrent.CompletableFuture<U> handle(java.util.function.BiFunction<? super T,java.lang.Throwable,? extends U>);
+ method public <U> java.util.concurrent.CompletableFuture<U> handleAsync(java.util.function.BiFunction<? super T,java.lang.Throwable,? extends U>);
+ method public <U> java.util.concurrent.CompletableFuture<U> handleAsync(java.util.function.BiFunction<? super T,java.lang.Throwable,? extends U>, java.util.concurrent.Executor);
+ method public boolean isCancelled();
+ method public boolean isCompletedExceptionally();
+ method public boolean isDone();
+ method public T join();
+ method public java.util.concurrent.CompletionStage<T> minimalCompletionStage();
+ method public <U> java.util.concurrent.CompletableFuture<U> newIncompleteFuture();
+ method public void obtrudeException(Throwable);
+ method public void obtrudeValue(T);
+ method public java.util.concurrent.CompletableFuture<T> orTimeout(long, java.util.concurrent.TimeUnit);
+ method public java.util.concurrent.CompletableFuture<java.lang.Void> runAfterBoth(java.util.concurrent.CompletionStage<?>, Runnable);
+ method public java.util.concurrent.CompletableFuture<java.lang.Void> runAfterBothAsync(java.util.concurrent.CompletionStage<?>, Runnable);
+ method public java.util.concurrent.CompletableFuture<java.lang.Void> runAfterBothAsync(java.util.concurrent.CompletionStage<?>, Runnable, java.util.concurrent.Executor);
+ method public java.util.concurrent.CompletableFuture<java.lang.Void> runAfterEither(java.util.concurrent.CompletionStage<?>, Runnable);
+ method public java.util.concurrent.CompletableFuture<java.lang.Void> runAfterEitherAsync(java.util.concurrent.CompletionStage<?>, Runnable);
+ method public java.util.concurrent.CompletableFuture<java.lang.Void> runAfterEitherAsync(java.util.concurrent.CompletionStage<?>, Runnable, java.util.concurrent.Executor);
+ method public static java.util.concurrent.CompletableFuture<java.lang.Void> runAsync(Runnable);
+ method public static java.util.concurrent.CompletableFuture<java.lang.Void> runAsync(Runnable, java.util.concurrent.Executor);
+ method public static <U> java.util.concurrent.CompletableFuture<U> supplyAsync(java.util.function.Supplier<U>);
+ method public static <U> java.util.concurrent.CompletableFuture<U> supplyAsync(java.util.function.Supplier<U>, java.util.concurrent.Executor);
+ method public java.util.concurrent.CompletableFuture<java.lang.Void> thenAccept(java.util.function.Consumer<? super T>);
+ method public java.util.concurrent.CompletableFuture<java.lang.Void> thenAcceptAsync(java.util.function.Consumer<? super T>);
+ method public java.util.concurrent.CompletableFuture<java.lang.Void> thenAcceptAsync(java.util.function.Consumer<? super T>, java.util.concurrent.Executor);
+ method public <U> java.util.concurrent.CompletableFuture<java.lang.Void> thenAcceptBoth(java.util.concurrent.CompletionStage<? extends U>, java.util.function.BiConsumer<? super T,? super U>);
+ method public <U> java.util.concurrent.CompletableFuture<java.lang.Void> thenAcceptBothAsync(java.util.concurrent.CompletionStage<? extends U>, java.util.function.BiConsumer<? super T,? super U>);
+ method public <U> java.util.concurrent.CompletableFuture<java.lang.Void> thenAcceptBothAsync(java.util.concurrent.CompletionStage<? extends U>, java.util.function.BiConsumer<? super T,? super U>, java.util.concurrent.Executor);
+ method public <U> java.util.concurrent.CompletableFuture<U> thenApply(java.util.function.Function<? super T,? extends U>);
+ method public <U> java.util.concurrent.CompletableFuture<U> thenApplyAsync(java.util.function.Function<? super T,? extends U>);
+ method public <U> java.util.concurrent.CompletableFuture<U> thenApplyAsync(java.util.function.Function<? super T,? extends U>, java.util.concurrent.Executor);
+ method public <U, V> java.util.concurrent.CompletableFuture<V> thenCombine(java.util.concurrent.CompletionStage<? extends U>, java.util.function.BiFunction<? super T,? super U,? extends V>);
+ method public <U, V> java.util.concurrent.CompletableFuture<V> thenCombineAsync(java.util.concurrent.CompletionStage<? extends U>, java.util.function.BiFunction<? super T,? super U,? extends V>);
+ method public <U, V> java.util.concurrent.CompletableFuture<V> thenCombineAsync(java.util.concurrent.CompletionStage<? extends U>, java.util.function.BiFunction<? super T,? super U,? extends V>, java.util.concurrent.Executor);
+ method public <U> java.util.concurrent.CompletableFuture<U> thenCompose(java.util.function.Function<? super T,? extends java.util.concurrent.CompletionStage<U>>);
+ method public <U> java.util.concurrent.CompletableFuture<U> thenComposeAsync(java.util.function.Function<? super T,? extends java.util.concurrent.CompletionStage<U>>);
+ method public <U> java.util.concurrent.CompletableFuture<U> thenComposeAsync(java.util.function.Function<? super T,? extends java.util.concurrent.CompletionStage<U>>, java.util.concurrent.Executor);
+ method public java.util.concurrent.CompletableFuture<java.lang.Void> thenRun(Runnable);
+ method public java.util.concurrent.CompletableFuture<java.lang.Void> thenRunAsync(Runnable);
+ method public java.util.concurrent.CompletableFuture<java.lang.Void> thenRunAsync(Runnable, java.util.concurrent.Executor);
+ method public java.util.concurrent.CompletableFuture<T> toCompletableFuture();
+ method public java.util.concurrent.CompletableFuture<T> whenComplete(java.util.function.BiConsumer<? super T,? super java.lang.Throwable>);
+ method public java.util.concurrent.CompletableFuture<T> whenCompleteAsync(java.util.function.BiConsumer<? super T,? super java.lang.Throwable>);
+ method public java.util.concurrent.CompletableFuture<T> whenCompleteAsync(java.util.function.BiConsumer<? super T,? super java.lang.Throwable>, java.util.concurrent.Executor);
+ }
+
+ public static interface CompletableFuture.AsynchronousCompletionTask {
+ }
+
+ public class CompletionException extends java.lang.RuntimeException {
+ ctor protected CompletionException();
+ ctor protected CompletionException(String);
+ ctor public CompletionException(String, Throwable);
+ ctor public CompletionException(Throwable);
+ }
+
+ public interface CompletionService<V> {
+ method public java.util.concurrent.Future<V> poll();
+ method public java.util.concurrent.Future<V> poll(long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException;
+ method public java.util.concurrent.Future<V> submit(java.util.concurrent.Callable<V>);
+ method public java.util.concurrent.Future<V> submit(Runnable, V);
+ method public java.util.concurrent.Future<V> take() throws java.lang.InterruptedException;
+ }
+
+ public interface CompletionStage<T> {
+ method public java.util.concurrent.CompletionStage<java.lang.Void> acceptEither(java.util.concurrent.CompletionStage<? extends T>, java.util.function.Consumer<? super T>);
+ method public java.util.concurrent.CompletionStage<java.lang.Void> acceptEitherAsync(java.util.concurrent.CompletionStage<? extends T>, java.util.function.Consumer<? super T>);
+ method public java.util.concurrent.CompletionStage<java.lang.Void> acceptEitherAsync(java.util.concurrent.CompletionStage<? extends T>, java.util.function.Consumer<? super T>, java.util.concurrent.Executor);
+ method public <U> java.util.concurrent.CompletionStage<U> applyToEither(java.util.concurrent.CompletionStage<? extends T>, java.util.function.Function<? super T,U>);
+ method public <U> java.util.concurrent.CompletionStage<U> applyToEitherAsync(java.util.concurrent.CompletionStage<? extends T>, java.util.function.Function<? super T,U>);
+ method public <U> java.util.concurrent.CompletionStage<U> applyToEitherAsync(java.util.concurrent.CompletionStage<? extends T>, java.util.function.Function<? super T,U>, java.util.concurrent.Executor);
+ method public java.util.concurrent.CompletionStage<T> exceptionally(java.util.function.Function<java.lang.Throwable,? extends T>);
+ method public <U> java.util.concurrent.CompletionStage<U> handle(java.util.function.BiFunction<? super T,java.lang.Throwable,? extends U>);
+ method public <U> java.util.concurrent.CompletionStage<U> handleAsync(java.util.function.BiFunction<? super T,java.lang.Throwable,? extends U>);
+ method public <U> java.util.concurrent.CompletionStage<U> handleAsync(java.util.function.BiFunction<? super T,java.lang.Throwable,? extends U>, java.util.concurrent.Executor);
+ method public java.util.concurrent.CompletionStage<java.lang.Void> runAfterBoth(java.util.concurrent.CompletionStage<?>, Runnable);
+ method public java.util.concurrent.CompletionStage<java.lang.Void> runAfterBothAsync(java.util.concurrent.CompletionStage<?>, Runnable);
+ method public java.util.concurrent.CompletionStage<java.lang.Void> runAfterBothAsync(java.util.concurrent.CompletionStage<?>, Runnable, java.util.concurrent.Executor);
+ method public java.util.concurrent.CompletionStage<java.lang.Void> runAfterEither(java.util.concurrent.CompletionStage<?>, Runnable);
+ method public java.util.concurrent.CompletionStage<java.lang.Void> runAfterEitherAsync(java.util.concurrent.CompletionStage<?>, Runnable);
+ method public java.util.concurrent.CompletionStage<java.lang.Void> runAfterEitherAsync(java.util.concurrent.CompletionStage<?>, Runnable, java.util.concurrent.Executor);
+ method public java.util.concurrent.CompletionStage<java.lang.Void> thenAccept(java.util.function.Consumer<? super T>);
+ method public java.util.concurrent.CompletionStage<java.lang.Void> thenAcceptAsync(java.util.function.Consumer<? super T>);
+ method public java.util.concurrent.CompletionStage<java.lang.Void> thenAcceptAsync(java.util.function.Consumer<? super T>, java.util.concurrent.Executor);
+ method public <U> java.util.concurrent.CompletionStage<java.lang.Void> thenAcceptBoth(java.util.concurrent.CompletionStage<? extends U>, java.util.function.BiConsumer<? super T,? super U>);
+ method public <U> java.util.concurrent.CompletionStage<java.lang.Void> thenAcceptBothAsync(java.util.concurrent.CompletionStage<? extends U>, java.util.function.BiConsumer<? super T,? super U>);
+ method public <U> java.util.concurrent.CompletionStage<java.lang.Void> thenAcceptBothAsync(java.util.concurrent.CompletionStage<? extends U>, java.util.function.BiConsumer<? super T,? super U>, java.util.concurrent.Executor);
+ method public <U> java.util.concurrent.CompletionStage<U> thenApply(java.util.function.Function<? super T,? extends U>);
+ method public <U> java.util.concurrent.CompletionStage<U> thenApplyAsync(java.util.function.Function<? super T,? extends U>);
+ method public <U> java.util.concurrent.CompletionStage<U> thenApplyAsync(java.util.function.Function<? super T,? extends U>, java.util.concurrent.Executor);
+ method public <U, V> java.util.concurrent.CompletionStage<V> thenCombine(java.util.concurrent.CompletionStage<? extends U>, java.util.function.BiFunction<? super T,? super U,? extends V>);
+ method public <U, V> java.util.concurrent.CompletionStage<V> thenCombineAsync(java.util.concurrent.CompletionStage<? extends U>, java.util.function.BiFunction<? super T,? super U,? extends V>);
+ method public <U, V> java.util.concurrent.CompletionStage<V> thenCombineAsync(java.util.concurrent.CompletionStage<? extends U>, java.util.function.BiFunction<? super T,? super U,? extends V>, java.util.concurrent.Executor);
+ method public <U> java.util.concurrent.CompletionStage<U> thenCompose(java.util.function.Function<? super T,? extends java.util.concurrent.CompletionStage<U>>);
+ method public <U> java.util.concurrent.CompletionStage<U> thenComposeAsync(java.util.function.Function<? super T,? extends java.util.concurrent.CompletionStage<U>>);
+ method public <U> java.util.concurrent.CompletionStage<U> thenComposeAsync(java.util.function.Function<? super T,? extends java.util.concurrent.CompletionStage<U>>, java.util.concurrent.Executor);
+ method public java.util.concurrent.CompletionStage<java.lang.Void> thenRun(Runnable);
+ method public java.util.concurrent.CompletionStage<java.lang.Void> thenRunAsync(Runnable);
+ method public java.util.concurrent.CompletionStage<java.lang.Void> thenRunAsync(Runnable, java.util.concurrent.Executor);
+ method public java.util.concurrent.CompletableFuture<T> toCompletableFuture();
+ method public java.util.concurrent.CompletionStage<T> whenComplete(java.util.function.BiConsumer<? super T,? super java.lang.Throwable>);
+ method public java.util.concurrent.CompletionStage<T> whenCompleteAsync(java.util.function.BiConsumer<? super T,? super java.lang.Throwable>);
+ method public java.util.concurrent.CompletionStage<T> whenCompleteAsync(java.util.function.BiConsumer<? super T,? super java.lang.Throwable>, java.util.concurrent.Executor);
+ }
+
+ public class ConcurrentHashMap<K, V> extends java.util.AbstractMap<K,V> implements java.util.concurrent.ConcurrentMap<K,V> java.io.Serializable {
+ ctor public ConcurrentHashMap();
+ ctor public ConcurrentHashMap(int);
+ ctor public ConcurrentHashMap(@NonNull java.util.Map<? extends K,? extends V>);
+ ctor public ConcurrentHashMap(int, float);
+ ctor public ConcurrentHashMap(int, float, int);
+ method public boolean contains(@NonNull Object);
+ method @NonNull public java.util.Enumeration<V> elements();
+ method @NonNull public java.util.Set<java.util.Map.Entry<K,V>> entrySet();
+ method public void forEach(long, @NonNull java.util.function.BiConsumer<? super K,? super V>);
+ method public <U> void forEach(long, @NonNull java.util.function.BiFunction<? super K,? super V,? extends U>, @NonNull java.util.function.Consumer<? super U>);
+ method public void forEachEntry(long, @NonNull java.util.function.Consumer<? super java.util.Map.Entry<K,V>>);
+ method public <U> void forEachEntry(long, @NonNull java.util.function.Function<java.util.Map.Entry<K,V>,? extends U>, @NonNull java.util.function.Consumer<? super U>);
+ method public void forEachKey(long, @NonNull java.util.function.Consumer<? super K>);
+ method public <U> void forEachKey(long, @NonNull java.util.function.Function<? super K,? extends U>, @NonNull java.util.function.Consumer<? super U>);
+ method public void forEachValue(long, @NonNull java.util.function.Consumer<? super V>);
+ method public <U> void forEachValue(long, @NonNull java.util.function.Function<? super V,? extends U>, @NonNull java.util.function.Consumer<? super U>);
+ method @NonNull public java.util.concurrent.ConcurrentHashMap.KeySetView<K,V> keySet(@NonNull V);
+ method @NonNull public java.util.Enumeration<K> keys();
+ method public long mappingCount();
+ method @NonNull public static <K> java.util.concurrent.ConcurrentHashMap.KeySetView<K,java.lang.Boolean> newKeySet();
+ method @NonNull public static <K> java.util.concurrent.ConcurrentHashMap.KeySetView<K,java.lang.Boolean> newKeySet(int);
+ method @Nullable public <U> U reduce(long, @NonNull java.util.function.BiFunction<? super K,? super V,? extends U>, @NonNull java.util.function.BiFunction<? super U,? super U,? extends U>);
+ method @Nullable public java.util.Map.Entry<K,V> reduceEntries(long, @NonNull java.util.function.BiFunction<java.util.Map.Entry<K,V>,java.util.Map.Entry<K,V>,? extends java.util.Map.Entry<K,V>>);
+ method @Nullable public <U> U reduceEntries(long, @NonNull java.util.function.Function<java.util.Map.Entry<K,V>,? extends U>, @NonNull java.util.function.BiFunction<? super U,? super U,? extends U>);
+ method public double reduceEntriesToDouble(long, @NonNull java.util.function.ToDoubleFunction<java.util.Map.Entry<K,V>>, double, @NonNull java.util.function.DoubleBinaryOperator);
+ method public int reduceEntriesToInt(long, @NonNull java.util.function.ToIntFunction<java.util.Map.Entry<K,V>>, int, @NonNull java.util.function.IntBinaryOperator);
+ method public long reduceEntriesToLong(long, @NonNull java.util.function.ToLongFunction<java.util.Map.Entry<K,V>>, long, @NonNull java.util.function.LongBinaryOperator);
+ method @Nullable public K reduceKeys(long, @NonNull java.util.function.BiFunction<? super K,? super K,? extends K>);
+ method @Nullable public <U> U reduceKeys(long, @NonNull java.util.function.Function<? super K,? extends U>, @NonNull java.util.function.BiFunction<? super U,? super U,? extends U>);
+ method public double reduceKeysToDouble(long, @NonNull java.util.function.ToDoubleFunction<? super K>, double, @NonNull java.util.function.DoubleBinaryOperator);
+ method public int reduceKeysToInt(long, @NonNull java.util.function.ToIntFunction<? super K>, int, @NonNull java.util.function.IntBinaryOperator);
+ method public long reduceKeysToLong(long, @NonNull java.util.function.ToLongFunction<? super K>, long, @NonNull java.util.function.LongBinaryOperator);
+ method public double reduceToDouble(long, @NonNull java.util.function.ToDoubleBiFunction<? super K,? super V>, double, @NonNull java.util.function.DoubleBinaryOperator);
+ method public int reduceToInt(long, @NonNull java.util.function.ToIntBiFunction<? super K,? super V>, int, @NonNull java.util.function.IntBinaryOperator);
+ method public long reduceToLong(long, @NonNull java.util.function.ToLongBiFunction<? super K,? super V>, long, @NonNull java.util.function.LongBinaryOperator);
+ method @Nullable public V reduceValues(long, @NonNull java.util.function.BiFunction<? super V,? super V,? extends V>);
+ method @Nullable public <U> U reduceValues(long, @NonNull java.util.function.Function<? super V,? extends U>, @NonNull java.util.function.BiFunction<? super U,? super U,? extends U>);
+ method public double reduceValuesToDouble(long, @NonNull java.util.function.ToDoubleFunction<? super V>, double, @NonNull java.util.function.DoubleBinaryOperator);
+ method public int reduceValuesToInt(long, @NonNull java.util.function.ToIntFunction<? super V>, int, @NonNull java.util.function.IntBinaryOperator);
+ method public long reduceValuesToLong(long, @NonNull java.util.function.ToLongFunction<? super V>, long, @NonNull java.util.function.LongBinaryOperator);
+ method @Nullable public <U> U search(long, @NonNull java.util.function.BiFunction<? super K,? super V,? extends U>);
+ method @Nullable public <U> U searchEntries(long, @NonNull java.util.function.Function<java.util.Map.Entry<K,V>,? extends U>);
+ method @Nullable public <U> U searchKeys(long, @NonNull java.util.function.Function<? super K,? extends U>);
+ method @Nullable public <U> U searchValues(long, @NonNull java.util.function.Function<? super V,? extends U>);
+ }
+
+ public static class ConcurrentHashMap.KeySetView<K, V> implements java.util.Collection<K> java.io.Serializable java.util.Set<K> {
+ method public boolean add(@NonNull K);
+ method public boolean addAll(@NonNull java.util.Collection<? extends K>);
+ method public final void clear();
+ method public boolean contains(@NonNull Object);
+ method public final boolean containsAll(@NonNull java.util.Collection<?>);
+ method public void forEach(@NonNull java.util.function.Consumer<? super K>);
+ method @NonNull public java.util.concurrent.ConcurrentHashMap<K,V> getMap();
+ method @Nullable public V getMappedValue();
+ method public final boolean isEmpty();
+ method @NonNull public java.util.Iterator<K> iterator();
+ method public boolean remove(@NonNull Object);
+ method public boolean removeAll(@NonNull java.util.Collection<?>);
+ method public final boolean retainAll(@NonNull java.util.Collection<?>);
+ method public final int size();
+ method @NonNull public java.util.Spliterator<K> spliterator();
+ method @NonNull public final Object[] toArray();
+ method @NonNull public final <T> T[] toArray(@NonNull T[]);
+ method @NonNull public final String toString();
+ }
+
+ public class ConcurrentLinkedDeque<E> extends java.util.AbstractCollection<E> implements java.util.Deque<E> java.io.Serializable {
+ ctor public ConcurrentLinkedDeque();
+ ctor public ConcurrentLinkedDeque(java.util.Collection<? extends E>);
+ method public void addFirst(E);
+ method public void addLast(E);
+ method public java.util.Iterator<E> descendingIterator();
+ method public E element();
+ method public void forEach(java.util.function.Consumer<? super E>);
+ method public E getFirst();
+ method public E getLast();
+ method public java.util.Iterator<E> iterator();
+ method public boolean offer(E);
+ method public boolean offerFirst(E);
+ method public boolean offerLast(E);
+ method public E peek();
+ method public E peekFirst();
+ method public E peekLast();
+ method public E poll();
+ method public E pollFirst();
+ method public E pollLast();
+ method public E pop();
+ method public void push(E);
+ method public E remove();
+ method public E removeFirst();
+ method public boolean removeFirstOccurrence(Object);
+ method public E removeLast();
+ method public boolean removeLastOccurrence(Object);
+ method public int size();
+ }
+
+ public class ConcurrentLinkedQueue<E> extends java.util.AbstractQueue<E> implements java.util.Queue<E> java.io.Serializable {
+ ctor public ConcurrentLinkedQueue();
+ ctor public ConcurrentLinkedQueue(java.util.Collection<? extends E>);
+ method public void forEach(java.util.function.Consumer<? super E>);
+ method public java.util.Iterator<E> iterator();
+ method public boolean offer(E);
+ method public E peek();
+ method public E poll();
+ method public int size();
+ }
+
+ public interface ConcurrentMap<K, V> extends java.util.Map<K,V> {
+ method public V putIfAbsent(K, V);
+ method public boolean remove(Object, Object);
+ method public boolean replace(K, V, V);
+ method public V replace(K, V);
+ }
+
+ public interface ConcurrentNavigableMap<K, V> extends java.util.concurrent.ConcurrentMap<K,V> java.util.NavigableMap<K,V> {
+ method public java.util.concurrent.ConcurrentNavigableMap<K,V> descendingMap();
+ method public java.util.concurrent.ConcurrentNavigableMap<K,V> headMap(K, boolean);
+ method public java.util.concurrent.ConcurrentNavigableMap<K,V> headMap(K);
+ method public java.util.NavigableSet<K> keySet();
+ method public java.util.concurrent.ConcurrentNavigableMap<K,V> subMap(K, boolean, K, boolean);
+ method public java.util.concurrent.ConcurrentNavigableMap<K,V> subMap(K, K);
+ method public java.util.concurrent.ConcurrentNavigableMap<K,V> tailMap(K, boolean);
+ method public java.util.concurrent.ConcurrentNavigableMap<K,V> tailMap(K);
+ }
+
+ public class ConcurrentSkipListMap<K, V> extends java.util.AbstractMap<K,V> implements java.lang.Cloneable java.util.concurrent.ConcurrentNavigableMap<K,V> java.io.Serializable {
+ ctor public ConcurrentSkipListMap();
+ ctor public ConcurrentSkipListMap(java.util.Comparator<? super K>);
+ ctor public ConcurrentSkipListMap(java.util.Map<? extends K,? extends V>);
+ ctor public ConcurrentSkipListMap(java.util.SortedMap<K,? extends V>);
+ method public java.util.Map.Entry<K,V> ceilingEntry(K);
+ method public K ceilingKey(K);
+ method public java.util.concurrent.ConcurrentSkipListMap<K,V> clone();
+ method public java.util.Comparator<? super K> comparator();
+ method public java.util.NavigableSet<K> descendingKeySet();
+ method public java.util.concurrent.ConcurrentNavigableMap<K,V> descendingMap();
+ method public java.util.Set<java.util.Map.Entry<K,V>> entrySet();
+ method public java.util.Map.Entry<K,V> firstEntry();
+ method public K firstKey();
+ method public java.util.Map.Entry<K,V> floorEntry(K);
+ method public K floorKey(K);
+ method public java.util.concurrent.ConcurrentNavigableMap<K,V> headMap(K, boolean);
+ method public java.util.concurrent.ConcurrentNavigableMap<K,V> headMap(K);
+ method public java.util.Map.Entry<K,V> higherEntry(K);
+ method public K higherKey(K);
+ method public java.util.NavigableSet<K> keySet();
+ method public java.util.Map.Entry<K,V> lastEntry();
+ method public K lastKey();
+ method public java.util.Map.Entry<K,V> lowerEntry(K);
+ method public K lowerKey(K);
+ method public java.util.NavigableSet<K> navigableKeySet();
+ method public java.util.Map.Entry<K,V> pollFirstEntry();
+ method public java.util.Map.Entry<K,V> pollLastEntry();
+ method public java.util.concurrent.ConcurrentNavigableMap<K,V> subMap(K, boolean, K, boolean);
+ method public java.util.concurrent.ConcurrentNavigableMap<K,V> subMap(K, K);
+ method public java.util.concurrent.ConcurrentNavigableMap<K,V> tailMap(K, boolean);
+ method public java.util.concurrent.ConcurrentNavigableMap<K,V> tailMap(K);
+ }
+
+ public class ConcurrentSkipListSet<E> extends java.util.AbstractSet<E> implements java.lang.Cloneable java.util.NavigableSet<E> java.io.Serializable {
+ ctor public ConcurrentSkipListSet();
+ ctor public ConcurrentSkipListSet(java.util.Comparator<? super E>);
+ ctor public ConcurrentSkipListSet(java.util.Collection<? extends E>);
+ ctor public ConcurrentSkipListSet(java.util.SortedSet<E>);
+ method public E ceiling(E);
+ method public java.util.concurrent.ConcurrentSkipListSet<E> clone();
+ method public java.util.Comparator<? super E> comparator();
+ method public java.util.Iterator<E> descendingIterator();
+ method public java.util.NavigableSet<E> descendingSet();
+ method public E first();
+ method public E floor(E);
+ method public java.util.NavigableSet<E> headSet(E, boolean);
+ method public java.util.NavigableSet<E> headSet(E);
+ method public E higher(E);
+ method public java.util.Iterator<E> iterator();
+ method public E last();
+ method public E lower(E);
+ method public E pollFirst();
+ method public E pollLast();
+ method public int size();
+ method public java.util.NavigableSet<E> subSet(E, boolean, E, boolean);
+ method public java.util.NavigableSet<E> subSet(E, E);
+ method public java.util.NavigableSet<E> tailSet(E, boolean);
+ method public java.util.NavigableSet<E> tailSet(E);
+ }
+
+ public class CopyOnWriteArrayList<E> implements java.lang.Cloneable java.util.List<E> java.util.RandomAccess java.io.Serializable {
+ ctor public CopyOnWriteArrayList();
+ ctor public CopyOnWriteArrayList(@NonNull java.util.Collection<? extends E>);
+ ctor public CopyOnWriteArrayList(@NonNull E[]);
+ method public boolean add(E);
+ method public void add(int, E);
+ method public boolean addAll(@NonNull java.util.Collection<? extends E>);
+ method public boolean addAll(int, @NonNull java.util.Collection<? extends E>);
+ method public int addAllAbsent(@NonNull java.util.Collection<? extends E>);
+ method public boolean addIfAbsent(E);
+ method public void clear();
+ method @NonNull public Object clone();
+ method public boolean contains(@Nullable Object);
+ method public boolean containsAll(@NonNull java.util.Collection<?>);
+ method public void forEach(@NonNull java.util.function.Consumer<? super E>);
+ method public E get(int);
+ method public int indexOf(@Nullable Object);
+ method public int indexOf(@Nullable E, int);
+ method public boolean isEmpty();
+ method @NonNull public java.util.Iterator<E> iterator();
+ method public int lastIndexOf(@Nullable Object);
+ method public int lastIndexOf(@Nullable E, int);
+ method @NonNull public java.util.ListIterator<E> listIterator();
+ method @NonNull public java.util.ListIterator<E> listIterator(int);
+ method public E remove(int);
+ method public boolean remove(@Nullable Object);
+ method public boolean removeAll(@NonNull java.util.Collection<?>);
+ method public boolean retainAll(@NonNull java.util.Collection<?>);
+ method public E set(int, E);
+ method public int size();
+ method @NonNull public java.util.List<E> subList(int, int);
+ method @NonNull public Object[] toArray();
+ method @NonNull public <T> T[] toArray(@NonNull T[]);
+ }
+
+ public class CopyOnWriteArraySet<E> extends java.util.AbstractSet<E> implements java.io.Serializable {
+ ctor public CopyOnWriteArraySet();
+ ctor public CopyOnWriteArraySet(java.util.Collection<? extends E>);
+ method public void forEach(java.util.function.Consumer<? super E>);
+ method public java.util.Iterator<E> iterator();
+ method public int size();
+ }
+
+ public class CountDownLatch {
+ ctor public CountDownLatch(int);
+ method public void await() throws java.lang.InterruptedException;
+ method public boolean await(long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException;
+ method public void countDown();
+ method public long getCount();
+ }
+
+ public abstract class CountedCompleter<T> extends java.util.concurrent.ForkJoinTask<T> {
+ ctor protected CountedCompleter(java.util.concurrent.CountedCompleter<?>, int);
+ ctor protected CountedCompleter(java.util.concurrent.CountedCompleter<?>);
+ ctor protected CountedCompleter();
+ method public final void addToPendingCount(int);
+ method public final boolean compareAndSetPendingCount(int, int);
+ method public void complete(T);
+ method public abstract void compute();
+ method public final int decrementPendingCountUnlessZero();
+ method protected final boolean exec();
+ method public final java.util.concurrent.CountedCompleter<?> firstComplete();
+ method public final java.util.concurrent.CountedCompleter<?> getCompleter();
+ method public final int getPendingCount();
+ method public T getRawResult();
+ method public final java.util.concurrent.CountedCompleter<?> getRoot();
+ method public final void helpComplete(int);
+ method public final java.util.concurrent.CountedCompleter<?> nextComplete();
+ method public void onCompletion(java.util.concurrent.CountedCompleter<?>);
+ method public boolean onExceptionalCompletion(Throwable, java.util.concurrent.CountedCompleter<?>);
+ method public final void propagateCompletion();
+ method public final void quietlyCompleteRoot();
+ method public final void setPendingCount(int);
+ method protected void setRawResult(T);
+ method public final void tryComplete();
+ }
+
+ public class CyclicBarrier {
+ ctor public CyclicBarrier(int, Runnable);
+ ctor public CyclicBarrier(int);
+ method public int await() throws java.util.concurrent.BrokenBarrierException, java.lang.InterruptedException;
+ method public int await(long, java.util.concurrent.TimeUnit) throws java.util.concurrent.BrokenBarrierException, java.lang.InterruptedException, java.util.concurrent.TimeoutException;
+ method public int getNumberWaiting();
+ method public int getParties();
+ method public boolean isBroken();
+ method public void reset();
+ }
+
+ public class DelayQueue<E extends java.util.concurrent.Delayed> extends java.util.AbstractQueue<E> implements java.util.concurrent.BlockingQueue<E> {
+ ctor public DelayQueue();
+ ctor public DelayQueue(java.util.Collection<? extends E>);
+ method public int drainTo(java.util.Collection<? super E>);
+ method public int drainTo(java.util.Collection<? super E>, int);
+ method public java.util.Iterator<E> iterator();
+ method public boolean offer(E);
+ method public boolean offer(E, long, java.util.concurrent.TimeUnit);
+ method public E peek();
+ method public E poll();
+ method public E poll(long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException;
+ method public void put(E);
+ method public int remainingCapacity();
+ method public int size();
+ method public E take() throws java.lang.InterruptedException;
+ }
+
+ public interface Delayed extends java.lang.Comparable<java.util.concurrent.Delayed> {
+ method public long getDelay(java.util.concurrent.TimeUnit);
+ }
+
+ public class Exchanger<V> {
+ ctor public Exchanger();
+ method public V exchange(V) throws java.lang.InterruptedException;
+ method public V exchange(V, long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException, java.util.concurrent.TimeoutException;
+ }
+
+ public class ExecutionException extends java.lang.Exception {
+ ctor protected ExecutionException();
+ ctor protected ExecutionException(String);
+ ctor public ExecutionException(String, Throwable);
+ ctor public ExecutionException(Throwable);
+ }
+
+ public interface Executor {
+ method public void execute(Runnable);
+ }
+
+ public class ExecutorCompletionService<V> implements java.util.concurrent.CompletionService<V> {
+ ctor public ExecutorCompletionService(java.util.concurrent.Executor);
+ ctor public ExecutorCompletionService(java.util.concurrent.Executor, java.util.concurrent.BlockingQueue<java.util.concurrent.Future<V>>);
+ method public java.util.concurrent.Future<V> poll();
+ method public java.util.concurrent.Future<V> poll(long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException;
+ method public java.util.concurrent.Future<V> submit(java.util.concurrent.Callable<V>);
+ method public java.util.concurrent.Future<V> submit(Runnable, V);
+ method public java.util.concurrent.Future<V> take() throws java.lang.InterruptedException;
+ }
+
+ public interface ExecutorService extends java.util.concurrent.Executor {
+ method public boolean awaitTermination(long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException;
+ method public <T> java.util.List<java.util.concurrent.Future<T>> invokeAll(java.util.Collection<? extends java.util.concurrent.Callable<T>>) throws java.lang.InterruptedException;
+ method public <T> java.util.List<java.util.concurrent.Future<T>> invokeAll(java.util.Collection<? extends java.util.concurrent.Callable<T>>, long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException;
+ method public <T> T invokeAny(java.util.Collection<? extends java.util.concurrent.Callable<T>>) throws java.util.concurrent.ExecutionException, java.lang.InterruptedException;
+ method public <T> T invokeAny(java.util.Collection<? extends java.util.concurrent.Callable<T>>, long, java.util.concurrent.TimeUnit) throws java.util.concurrent.ExecutionException, java.lang.InterruptedException, java.util.concurrent.TimeoutException;
+ method public boolean isShutdown();
+ method public boolean isTerminated();
+ method public void shutdown();
+ method public java.util.List<java.lang.Runnable> shutdownNow();
+ method public <T> java.util.concurrent.Future<T> submit(java.util.concurrent.Callable<T>);
+ method public <T> java.util.concurrent.Future<T> submit(Runnable, T);
+ method public java.util.concurrent.Future<?> submit(Runnable);
+ }
+
+ public class Executors {
+ method public static <T> java.util.concurrent.Callable<T> callable(Runnable, T);
+ method public static java.util.concurrent.Callable<java.lang.Object> callable(Runnable);
+ method public static java.util.concurrent.Callable<java.lang.Object> callable(java.security.PrivilegedAction<?>);
+ method public static java.util.concurrent.Callable<java.lang.Object> callable(java.security.PrivilegedExceptionAction<?>);
+ method public static java.util.concurrent.ThreadFactory defaultThreadFactory();
+ method public static java.util.concurrent.ExecutorService newCachedThreadPool();
+ method public static java.util.concurrent.ExecutorService newCachedThreadPool(java.util.concurrent.ThreadFactory);
+ method public static java.util.concurrent.ExecutorService newFixedThreadPool(int);
+ method public static java.util.concurrent.ExecutorService newFixedThreadPool(int, java.util.concurrent.ThreadFactory);
+ method public static java.util.concurrent.ScheduledExecutorService newScheduledThreadPool(int);
+ method public static java.util.concurrent.ScheduledExecutorService newScheduledThreadPool(int, java.util.concurrent.ThreadFactory);
+ method public static java.util.concurrent.ExecutorService newSingleThreadExecutor();
+ method public static java.util.concurrent.ExecutorService newSingleThreadExecutor(java.util.concurrent.ThreadFactory);
+ method public static java.util.concurrent.ScheduledExecutorService newSingleThreadScheduledExecutor();
+ method public static java.util.concurrent.ScheduledExecutorService newSingleThreadScheduledExecutor(java.util.concurrent.ThreadFactory);
+ method public static java.util.concurrent.ExecutorService newWorkStealingPool(int);
+ method public static java.util.concurrent.ExecutorService newWorkStealingPool();
+ method public static <T> java.util.concurrent.Callable<T> privilegedCallable(java.util.concurrent.Callable<T>);
+ method public static <T> java.util.concurrent.Callable<T> privilegedCallableUsingCurrentClassLoader(java.util.concurrent.Callable<T>);
+ method public static java.util.concurrent.ThreadFactory privilegedThreadFactory();
+ method public static java.util.concurrent.ExecutorService unconfigurableExecutorService(java.util.concurrent.ExecutorService);
+ method public static java.util.concurrent.ScheduledExecutorService unconfigurableScheduledExecutorService(java.util.concurrent.ScheduledExecutorService);
+ }
+
+ public final class Flow {
+ method public static int defaultBufferSize();
+ }
+
+ public static interface Flow.Processor<T, R> extends java.util.concurrent.Flow.Subscriber<T> java.util.concurrent.Flow.Publisher<R> {
+ }
+
+ @java.lang.FunctionalInterface public static interface Flow.Publisher<T> {
+ method public void subscribe(java.util.concurrent.Flow.Subscriber<? super T>);
+ }
+
+ public static interface Flow.Subscriber<T> {
+ method public void onComplete();
+ method public void onError(Throwable);
+ method public void onNext(T);
+ method public void onSubscribe(java.util.concurrent.Flow.Subscription);
+ }
+
+ public static interface Flow.Subscription {
+ method public void cancel();
+ method public void request(long);
+ }
+
+ public class ForkJoinPool extends java.util.concurrent.AbstractExecutorService {
+ ctor public ForkJoinPool();
+ ctor public ForkJoinPool(int);
+ ctor public ForkJoinPool(int, java.util.concurrent.ForkJoinPool.ForkJoinWorkerThreadFactory, java.lang.Thread.UncaughtExceptionHandler, boolean);
+ ctor public ForkJoinPool(int, java.util.concurrent.ForkJoinPool.ForkJoinWorkerThreadFactory, java.lang.Thread.UncaughtExceptionHandler, boolean, int, int, int, java.util.function.Predicate<? super java.util.concurrent.ForkJoinPool>, long, java.util.concurrent.TimeUnit);
+ method public boolean awaitQuiescence(long, java.util.concurrent.TimeUnit);
+ method public boolean awaitTermination(long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException;
+ method public static java.util.concurrent.ForkJoinPool commonPool();
+ method protected int drainTasksTo(java.util.Collection<? super java.util.concurrent.ForkJoinTask<?>>);
+ method public void execute(java.util.concurrent.ForkJoinTask<?>);
+ method public void execute(Runnable);
+ method public int getActiveThreadCount();
+ method public boolean getAsyncMode();
+ method public static int getCommonPoolParallelism();
+ method public java.util.concurrent.ForkJoinPool.ForkJoinWorkerThreadFactory getFactory();
+ method public int getParallelism();
+ method public int getPoolSize();
+ method public int getQueuedSubmissionCount();
+ method public long getQueuedTaskCount();
+ method public int getRunningThreadCount();
+ method public long getStealCount();
+ method public java.lang.Thread.UncaughtExceptionHandler getUncaughtExceptionHandler();
+ method public boolean hasQueuedSubmissions();
+ method public <T> T invoke(java.util.concurrent.ForkJoinTask<T>);
+ method public <T> java.util.List<java.util.concurrent.Future<T>> invokeAll(java.util.Collection<? extends java.util.concurrent.Callable<T>>);
+ method public boolean isQuiescent();
+ method public boolean isShutdown();
+ method public boolean isTerminated();
+ method public boolean isTerminating();
+ method public static void managedBlock(java.util.concurrent.ForkJoinPool.ManagedBlocker) throws java.lang.InterruptedException;
+ method protected java.util.concurrent.ForkJoinTask<?> pollSubmission();
+ method public void shutdown();
+ method public java.util.List<java.lang.Runnable> shutdownNow();
+ method public <T> java.util.concurrent.ForkJoinTask<T> submit(java.util.concurrent.ForkJoinTask<T>);
+ method public <T> java.util.concurrent.ForkJoinTask<T> submit(java.util.concurrent.Callable<T>);
+ method public <T> java.util.concurrent.ForkJoinTask<T> submit(Runnable, T);
+ method public java.util.concurrent.ForkJoinTask<?> submit(Runnable);
+ field public static final java.util.concurrent.ForkJoinPool.ForkJoinWorkerThreadFactory defaultForkJoinWorkerThreadFactory;
+ }
+
+ public static interface ForkJoinPool.ForkJoinWorkerThreadFactory {
+ method public java.util.concurrent.ForkJoinWorkerThread newThread(java.util.concurrent.ForkJoinPool);
+ }
+
+ public static interface ForkJoinPool.ManagedBlocker {
+ method public boolean block() throws java.lang.InterruptedException;
+ method public boolean isReleasable();
+ }
+
+ public abstract class ForkJoinTask<V> implements java.util.concurrent.Future<V> java.io.Serializable {
+ ctor public ForkJoinTask();
+ method public static java.util.concurrent.ForkJoinTask<?> adapt(Runnable);
+ method public static <T> java.util.concurrent.ForkJoinTask<T> adapt(Runnable, T);
+ method public static <T> java.util.concurrent.ForkJoinTask<T> adapt(java.util.concurrent.Callable<? extends T>);
+ method public boolean cancel(boolean);
+ method public final boolean compareAndSetForkJoinTaskTag(short, short);
+ method public void complete(V);
+ method public void completeExceptionally(Throwable);
+ method protected abstract boolean exec();
+ method public final java.util.concurrent.ForkJoinTask<V> fork();
+ method public final V get() throws java.util.concurrent.ExecutionException, java.lang.InterruptedException;
+ method public final V get(long, java.util.concurrent.TimeUnit) throws java.util.concurrent.ExecutionException, java.lang.InterruptedException, java.util.concurrent.TimeoutException;
+ method public final Throwable getException();
+ method public final short getForkJoinTaskTag();
+ method public static java.util.concurrent.ForkJoinPool getPool();
+ method public static int getQueuedTaskCount();
+ method public abstract V getRawResult();
+ method public static int getSurplusQueuedTaskCount();
+ method public static void helpQuiesce();
+ method public static boolean inForkJoinPool();
+ method public final V invoke();
+ method public static void invokeAll(java.util.concurrent.ForkJoinTask<?>, java.util.concurrent.ForkJoinTask<?>);
+ method public static void invokeAll(java.util.concurrent.ForkJoinTask<?>...);
+ method public static <T extends java.util.concurrent.ForkJoinTask<?>> java.util.Collection<T> invokeAll(java.util.Collection<T>);
+ method public final boolean isCancelled();
+ method public final boolean isCompletedAbnormally();
+ method public final boolean isCompletedNormally();
+ method public final boolean isDone();
+ method public final V join();
+ method protected static java.util.concurrent.ForkJoinTask<?> peekNextLocalTask();
+ method protected static java.util.concurrent.ForkJoinTask<?> pollNextLocalTask();
+ method protected static java.util.concurrent.ForkJoinTask<?> pollTask();
+ method public final void quietlyComplete();
+ method public final void quietlyInvoke();
+ method public final void quietlyJoin();
+ method public void reinitialize();
+ method public final short setForkJoinTaskTag(short);
+ method protected abstract void setRawResult(V);
+ method public boolean tryUnfork();
+ }
+
+ public class ForkJoinWorkerThread extends java.lang.Thread {
+ ctor protected ForkJoinWorkerThread(java.util.concurrent.ForkJoinPool);
+ method public java.util.concurrent.ForkJoinPool getPool();
+ method public int getPoolIndex();
+ method protected void onStart();
+ method protected void onTermination(Throwable);
+ }
+
+ public interface Future<V> {
+ method public boolean cancel(boolean);
+ method public V get() throws java.util.concurrent.ExecutionException, java.lang.InterruptedException;
+ method public V get(long, java.util.concurrent.TimeUnit) throws java.util.concurrent.ExecutionException, java.lang.InterruptedException, java.util.concurrent.TimeoutException;
+ method public boolean isCancelled();
+ method public boolean isDone();
+ }
+
+ public class FutureTask<V> implements java.util.concurrent.RunnableFuture<V> {
+ ctor public FutureTask(java.util.concurrent.Callable<V>);
+ ctor public FutureTask(Runnable, V);
+ method public boolean cancel(boolean);
+ method protected void done();
+ method public V get() throws java.util.concurrent.ExecutionException, java.lang.InterruptedException;
+ method public V get(long, java.util.concurrent.TimeUnit) throws java.util.concurrent.ExecutionException, java.lang.InterruptedException, java.util.concurrent.TimeoutException;
+ method public boolean isCancelled();
+ method public boolean isDone();
+ method public void run();
+ method protected boolean runAndReset();
+ method protected void set(V);
+ method protected void setException(Throwable);
+ }
+
+ public class LinkedBlockingDeque<E> extends java.util.AbstractQueue<E> implements java.util.concurrent.BlockingDeque<E> java.io.Serializable {
+ ctor public LinkedBlockingDeque();
+ ctor public LinkedBlockingDeque(int);
+ ctor public LinkedBlockingDeque(java.util.Collection<? extends E>);
+ method public void addFirst(E);
+ method public void addLast(E);
+ method public java.util.Iterator<E> descendingIterator();
+ method public int drainTo(java.util.Collection<? super E>);
+ method public int drainTo(java.util.Collection<? super E>, int);
+ method public void forEach(java.util.function.Consumer<? super E>);
+ method public E getFirst();
+ method public E getLast();
+ method public java.util.Iterator<E> iterator();
+ method public boolean offer(E);
+ method public boolean offer(E, long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException;
+ method public boolean offerFirst(E);
+ method public boolean offerFirst(E, long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException;
+ method public boolean offerLast(E);
+ method public boolean offerLast(E, long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException;
+ method public E peek();
+ method public E peekFirst();
+ method public E peekLast();
+ method public E poll();
+ method public E poll(long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException;
+ method public E pollFirst();
+ method public E pollFirst(long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException;
+ method public E pollLast();
+ method public E pollLast(long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException;
+ method public E pop();
+ method public void push(E);
+ method public void put(E) throws java.lang.InterruptedException;
+ method public void putFirst(E) throws java.lang.InterruptedException;
+ method public void putLast(E) throws java.lang.InterruptedException;
+ method public int remainingCapacity();
+ method public E removeFirst();
+ method public boolean removeFirstOccurrence(Object);
+ method public E removeLast();
+ method public boolean removeLastOccurrence(Object);
+ method public int size();
+ method public E take() throws java.lang.InterruptedException;
+ method public E takeFirst() throws java.lang.InterruptedException;
+ method public E takeLast() throws java.lang.InterruptedException;
+ }
+
+ public class LinkedBlockingQueue<E> extends java.util.AbstractQueue<E> implements java.util.concurrent.BlockingQueue<E> java.io.Serializable {
+ ctor public LinkedBlockingQueue();
+ ctor public LinkedBlockingQueue(int);
+ ctor public LinkedBlockingQueue(java.util.Collection<? extends E>);
+ method public int drainTo(java.util.Collection<? super E>);
+ method public int drainTo(java.util.Collection<? super E>, int);
+ method public void forEach(java.util.function.Consumer<? super E>);
+ method public java.util.Iterator<E> iterator();
+ method public boolean offer(E, long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException;
+ method public boolean offer(E);
+ method public E peek();
+ method public E poll(long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException;
+ method public E poll();
+ method public void put(E) throws java.lang.InterruptedException;
+ method public int remainingCapacity();
+ method public int size();
+ method public E take() throws java.lang.InterruptedException;
+ }
+
+ public class LinkedTransferQueue<E> extends java.util.AbstractQueue<E> implements java.io.Serializable java.util.concurrent.TransferQueue<E> {
+ ctor public LinkedTransferQueue();
+ ctor public LinkedTransferQueue(java.util.Collection<? extends E>);
+ method public int drainTo(java.util.Collection<? super E>);
+ method public int drainTo(java.util.Collection<? super E>, int);
+ method public void forEach(java.util.function.Consumer<? super E>);
+ method public int getWaitingConsumerCount();
+ method public boolean hasWaitingConsumer();
+ method public java.util.Iterator<E> iterator();
+ method public boolean offer(E, long, java.util.concurrent.TimeUnit);
+ method public boolean offer(E);
+ method public E peek();
+ method public E poll(long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException;
+ method public E poll();
+ method public void put(E);
+ method public int remainingCapacity();
+ method public int size();
+ method public E take() throws java.lang.InterruptedException;
+ method public void transfer(E) throws java.lang.InterruptedException;
+ method public boolean tryTransfer(E);
+ method public boolean tryTransfer(E, long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException;
+ }
+
+ public class Phaser {
+ ctor public Phaser();
+ ctor public Phaser(int);
+ ctor public Phaser(java.util.concurrent.Phaser);
+ ctor public Phaser(java.util.concurrent.Phaser, int);
+ method public int arrive();
+ method public int arriveAndAwaitAdvance();
+ method public int arriveAndDeregister();
+ method public int awaitAdvance(int);
+ method public int awaitAdvanceInterruptibly(int) throws java.lang.InterruptedException;
+ method public int awaitAdvanceInterruptibly(int, long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException, java.util.concurrent.TimeoutException;
+ method public int bulkRegister(int);
+ method public void forceTermination();
+ method public int getArrivedParties();
+ method public java.util.concurrent.Phaser getParent();
+ method public final int getPhase();
+ method public int getRegisteredParties();
+ method public java.util.concurrent.Phaser getRoot();
+ method public int getUnarrivedParties();
+ method public boolean isTerminated();
+ method protected boolean onAdvance(int, int);
+ method public int register();
+ }
+
+ public class PriorityBlockingQueue<E> extends java.util.AbstractQueue<E> implements java.util.concurrent.BlockingQueue<E> java.io.Serializable {
+ ctor public PriorityBlockingQueue();
+ ctor public PriorityBlockingQueue(int);
+ ctor public PriorityBlockingQueue(int, java.util.Comparator<? super E>);
+ ctor public PriorityBlockingQueue(java.util.Collection<? extends E>);
+ method public java.util.Comparator<? super E> comparator();
+ method public int drainTo(java.util.Collection<? super E>);
+ method public int drainTo(java.util.Collection<? super E>, int);
+ method public void forEach(java.util.function.Consumer<? super E>);
+ method public java.util.Iterator<E> iterator();
+ method public boolean offer(E);
+ method public boolean offer(E, long, java.util.concurrent.TimeUnit);
+ method public E peek();
+ method public E poll();
+ method public E poll(long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException;
+ method public void put(E);
+ method public int remainingCapacity();
+ method public int size();
+ method public E take() throws java.lang.InterruptedException;
+ }
+
+ public abstract class RecursiveAction extends java.util.concurrent.ForkJoinTask<java.lang.Void> {
+ ctor public RecursiveAction();
+ method protected abstract void compute();
+ method protected final boolean exec();
+ method public final Void getRawResult();
+ method protected final void setRawResult(Void);
+ }
+
+ public abstract class RecursiveTask<V> extends java.util.concurrent.ForkJoinTask<V> {
+ ctor public RecursiveTask();
+ method protected abstract V compute();
+ method protected final boolean exec();
+ method public final V getRawResult();
+ method protected final void setRawResult(V);
+ }
+
+ public class RejectedExecutionException extends java.lang.RuntimeException {
+ ctor public RejectedExecutionException();
+ ctor public RejectedExecutionException(String);
+ ctor public RejectedExecutionException(String, Throwable);
+ ctor public RejectedExecutionException(Throwable);
+ }
+
+ public interface RejectedExecutionHandler {
+ method public void rejectedExecution(Runnable, java.util.concurrent.ThreadPoolExecutor);
+ }
+
+ public interface RunnableFuture<V> extends java.lang.Runnable java.util.concurrent.Future<V> {
+ }
+
+ public interface RunnableScheduledFuture<V> extends java.util.concurrent.RunnableFuture<V> java.util.concurrent.ScheduledFuture<V> {
+ method public boolean isPeriodic();
+ }
+
+ public interface ScheduledExecutorService extends java.util.concurrent.ExecutorService {
+ method public java.util.concurrent.ScheduledFuture<?> schedule(Runnable, long, java.util.concurrent.TimeUnit);
+ method public <V> java.util.concurrent.ScheduledFuture<V> schedule(java.util.concurrent.Callable<V>, long, java.util.concurrent.TimeUnit);
+ method public java.util.concurrent.ScheduledFuture<?> scheduleAtFixedRate(Runnable, long, long, java.util.concurrent.TimeUnit);
+ method public java.util.concurrent.ScheduledFuture<?> scheduleWithFixedDelay(Runnable, long, long, java.util.concurrent.TimeUnit);
+ }
+
+ public interface ScheduledFuture<V> extends java.util.concurrent.Delayed java.util.concurrent.Future<V> {
+ }
+
+ public class ScheduledThreadPoolExecutor extends java.util.concurrent.ThreadPoolExecutor implements java.util.concurrent.ScheduledExecutorService {
+ ctor public ScheduledThreadPoolExecutor(int);
+ ctor public ScheduledThreadPoolExecutor(int, java.util.concurrent.ThreadFactory);
+ ctor public ScheduledThreadPoolExecutor(int, java.util.concurrent.RejectedExecutionHandler);
+ ctor public ScheduledThreadPoolExecutor(int, java.util.concurrent.ThreadFactory, java.util.concurrent.RejectedExecutionHandler);
+ method protected <V> java.util.concurrent.RunnableScheduledFuture<V> decorateTask(Runnable, java.util.concurrent.RunnableScheduledFuture<V>);
+ method protected <V> java.util.concurrent.RunnableScheduledFuture<V> decorateTask(java.util.concurrent.Callable<V>, java.util.concurrent.RunnableScheduledFuture<V>);
+ method public boolean getContinueExistingPeriodicTasksAfterShutdownPolicy();
+ method public boolean getExecuteExistingDelayedTasksAfterShutdownPolicy();
+ method public boolean getRemoveOnCancelPolicy();
+ method public java.util.concurrent.ScheduledFuture<?> schedule(Runnable, long, java.util.concurrent.TimeUnit);
+ method public <V> java.util.concurrent.ScheduledFuture<V> schedule(java.util.concurrent.Callable<V>, long, java.util.concurrent.TimeUnit);
+ method public java.util.concurrent.ScheduledFuture<?> scheduleAtFixedRate(Runnable, long, long, java.util.concurrent.TimeUnit);
+ method public java.util.concurrent.ScheduledFuture<?> scheduleWithFixedDelay(Runnable, long, long, java.util.concurrent.TimeUnit);
+ method public void setContinueExistingPeriodicTasksAfterShutdownPolicy(boolean);
+ method public void setExecuteExistingDelayedTasksAfterShutdownPolicy(boolean);
+ method public void setRemoveOnCancelPolicy(boolean);
+ }
+
+ public class Semaphore implements java.io.Serializable {
+ ctor public Semaphore(int);
+ ctor public Semaphore(int, boolean);
+ method public void acquire() throws java.lang.InterruptedException;
+ method public void acquire(int) throws java.lang.InterruptedException;
+ method public void acquireUninterruptibly();
+ method public void acquireUninterruptibly(int);
+ method public int availablePermits();
+ method public int drainPermits();
+ method public final int getQueueLength();
+ method protected java.util.Collection<java.lang.Thread> getQueuedThreads();
+ method public final boolean hasQueuedThreads();
+ method public boolean isFair();
+ method protected void reducePermits(int);
+ method public void release();
+ method public void release(int);
+ method public boolean tryAcquire();
+ method public boolean tryAcquire(long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException;
+ method public boolean tryAcquire(int);
+ method public boolean tryAcquire(int, long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException;
+ }
+
+ public class SubmissionPublisher<T> implements java.lang.AutoCloseable java.util.concurrent.Flow.Publisher<T> {
+ ctor public SubmissionPublisher(java.util.concurrent.Executor, int, java.util.function.BiConsumer<? super java.util.concurrent.Flow.Subscriber<? super T>,? super java.lang.Throwable>);
+ ctor public SubmissionPublisher(java.util.concurrent.Executor, int);
+ ctor public SubmissionPublisher();
+ method public void close();
+ method public void closeExceptionally(Throwable);
+ method public java.util.concurrent.CompletableFuture<java.lang.Void> consume(java.util.function.Consumer<? super T>);
+ method public int estimateMaximumLag();
+ method public long estimateMinimumDemand();
+ method public Throwable getClosedException();
+ method public java.util.concurrent.Executor getExecutor();
+ method public int getMaxBufferCapacity();
+ method public int getNumberOfSubscribers();
+ method public java.util.List<java.util.concurrent.Flow.Subscriber<? super T>> getSubscribers();
+ method public boolean hasSubscribers();
+ method public boolean isClosed();
+ method public boolean isSubscribed(java.util.concurrent.Flow.Subscriber<? super T>);
+ method public int offer(T, java.util.function.BiPredicate<java.util.concurrent.Flow.Subscriber<? super T>,? super T>);
+ method public int offer(T, long, java.util.concurrent.TimeUnit, java.util.function.BiPredicate<java.util.concurrent.Flow.Subscriber<? super T>,? super T>);
+ method public int submit(T);
+ method public void subscribe(java.util.concurrent.Flow.Subscriber<? super T>);
+ }
+
+ public class SynchronousQueue<E> extends java.util.AbstractQueue<E> implements java.util.concurrent.BlockingQueue<E> java.io.Serializable {
+ ctor public SynchronousQueue();
+ ctor public SynchronousQueue(boolean);
+ method public int drainTo(java.util.Collection<? super E>);
+ method public int drainTo(java.util.Collection<? super E>, int);
+ method public java.util.Iterator<E> iterator();
+ method public boolean offer(E, long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException;
+ method public boolean offer(E);
+ method public E peek();
+ method public E poll(long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException;
+ method public E poll();
+ method public void put(E) throws java.lang.InterruptedException;
+ method public int remainingCapacity();
+ method public int size();
+ method public E take() throws java.lang.InterruptedException;
+ }
+
+ public interface ThreadFactory {
+ method public Thread newThread(Runnable);
+ }
+
+ public class ThreadLocalRandom extends java.util.Random {
+ method public static java.util.concurrent.ThreadLocalRandom current();
+ method public double nextDouble(double);
+ method public double nextDouble(double, double);
+ method public int nextInt(int, int);
+ method public long nextLong(long);
+ method public long nextLong(long, long);
+ }
+
+ public class ThreadPoolExecutor extends java.util.concurrent.AbstractExecutorService {
+ ctor public ThreadPoolExecutor(int, int, long, java.util.concurrent.TimeUnit, java.util.concurrent.BlockingQueue<java.lang.Runnable>);
+ ctor public ThreadPoolExecutor(int, int, long, java.util.concurrent.TimeUnit, java.util.concurrent.BlockingQueue<java.lang.Runnable>, java.util.concurrent.ThreadFactory);
+ ctor public ThreadPoolExecutor(int, int, long, java.util.concurrent.TimeUnit, java.util.concurrent.BlockingQueue<java.lang.Runnable>, java.util.concurrent.RejectedExecutionHandler);
+ ctor public ThreadPoolExecutor(int, int, long, java.util.concurrent.TimeUnit, java.util.concurrent.BlockingQueue<java.lang.Runnable>, java.util.concurrent.ThreadFactory, java.util.concurrent.RejectedExecutionHandler);
+ method protected void afterExecute(Runnable, Throwable);
+ method public void allowCoreThreadTimeOut(boolean);
+ method public boolean allowsCoreThreadTimeOut();
+ method public boolean awaitTermination(long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException;
+ method protected void beforeExecute(Thread, Runnable);
+ method public void execute(Runnable);
+ method @Deprecated protected void finalize();
+ method public int getActiveCount();
+ method public long getCompletedTaskCount();
+ method public int getCorePoolSize();
+ method public long getKeepAliveTime(java.util.concurrent.TimeUnit);
+ method public int getLargestPoolSize();
+ method public int getMaximumPoolSize();
+ method public int getPoolSize();
+ method public java.util.concurrent.BlockingQueue<java.lang.Runnable> getQueue();
+ method public java.util.concurrent.RejectedExecutionHandler getRejectedExecutionHandler();
+ method public long getTaskCount();
+ method public java.util.concurrent.ThreadFactory getThreadFactory();
+ method public boolean isShutdown();
+ method public boolean isTerminated();
+ method public boolean isTerminating();
+ method public int prestartAllCoreThreads();
+ method public boolean prestartCoreThread();
+ method public void purge();
+ method public boolean remove(Runnable);
+ method public void setCorePoolSize(int);
+ method public void setKeepAliveTime(long, java.util.concurrent.TimeUnit);
+ method public void setMaximumPoolSize(int);
+ method public void setRejectedExecutionHandler(java.util.concurrent.RejectedExecutionHandler);
+ method public void setThreadFactory(java.util.concurrent.ThreadFactory);
+ method public void shutdown();
+ method public java.util.List<java.lang.Runnable> shutdownNow();
+ method protected void terminated();
+ }
+
+ public static class ThreadPoolExecutor.AbortPolicy implements java.util.concurrent.RejectedExecutionHandler {
+ ctor public ThreadPoolExecutor.AbortPolicy();
+ method public void rejectedExecution(Runnable, java.util.concurrent.ThreadPoolExecutor);
+ }
+
+ public static class ThreadPoolExecutor.CallerRunsPolicy implements java.util.concurrent.RejectedExecutionHandler {
+ ctor public ThreadPoolExecutor.CallerRunsPolicy();
+ method public void rejectedExecution(Runnable, java.util.concurrent.ThreadPoolExecutor);
+ }
+
+ public static class ThreadPoolExecutor.DiscardOldestPolicy implements java.util.concurrent.RejectedExecutionHandler {
+ ctor public ThreadPoolExecutor.DiscardOldestPolicy();
+ method public void rejectedExecution(Runnable, java.util.concurrent.ThreadPoolExecutor);
+ }
+
+ public static class ThreadPoolExecutor.DiscardPolicy implements java.util.concurrent.RejectedExecutionHandler {
+ ctor public ThreadPoolExecutor.DiscardPolicy();
+ method public void rejectedExecution(Runnable, java.util.concurrent.ThreadPoolExecutor);
+ }
+
+ public enum TimeUnit {
+ method public long convert(long, java.util.concurrent.TimeUnit);
+ method public long convert(java.time.Duration);
+ method public static java.util.concurrent.TimeUnit of(java.time.temporal.ChronoUnit);
+ method public void sleep(long) throws java.lang.InterruptedException;
+ method public void timedJoin(Thread, long) throws java.lang.InterruptedException;
+ method public void timedWait(Object, long) throws java.lang.InterruptedException;
+ method public java.time.temporal.ChronoUnit toChronoUnit();
+ method public long toDays(long);
+ method public long toHours(long);
+ method public long toMicros(long);
+ method public long toMillis(long);
+ method public long toMinutes(long);
+ method public long toNanos(long);
+ method public long toSeconds(long);
+ enum_constant public static final java.util.concurrent.TimeUnit DAYS;
+ enum_constant public static final java.util.concurrent.TimeUnit HOURS;
+ enum_constant public static final java.util.concurrent.TimeUnit MICROSECONDS;
+ enum_constant public static final java.util.concurrent.TimeUnit MILLISECONDS;
+ enum_constant public static final java.util.concurrent.TimeUnit MINUTES;
+ enum_constant public static final java.util.concurrent.TimeUnit NANOSECONDS;
+ enum_constant public static final java.util.concurrent.TimeUnit SECONDS;
+ }
+
+ public class TimeoutException extends java.lang.Exception {
+ ctor public TimeoutException();
+ ctor public TimeoutException(String);
+ }
+
+ public interface TransferQueue<E> extends java.util.concurrent.BlockingQueue<E> {
+ method public int getWaitingConsumerCount();
+ method public boolean hasWaitingConsumer();
+ method public void transfer(E) throws java.lang.InterruptedException;
+ method public boolean tryTransfer(E);
+ method public boolean tryTransfer(E, long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException;
+ }
+
+}
+
+package java.util.concurrent.atomic {
+
+ public class AtomicBoolean implements java.io.Serializable {
+ ctor public AtomicBoolean(boolean);
+ ctor public AtomicBoolean();
+ method public final boolean compareAndExchange(boolean, boolean);
+ method public final boolean compareAndExchangeAcquire(boolean, boolean);
+ method public final boolean compareAndExchangeRelease(boolean, boolean);
+ method public final boolean compareAndSet(boolean, boolean);
+ method public final boolean get();
+ method public final boolean getAcquire();
+ method public final boolean getAndSet(boolean);
+ method public final boolean getOpaque();
+ method public final boolean getPlain();
+ method public final void lazySet(boolean);
+ method public final void set(boolean);
+ method public final void setOpaque(boolean);
+ method public final void setPlain(boolean);
+ method public final void setRelease(boolean);
+ method @Deprecated public boolean weakCompareAndSet(boolean, boolean);
+ method public final boolean weakCompareAndSetAcquire(boolean, boolean);
+ method public boolean weakCompareAndSetPlain(boolean, boolean);
+ method public final boolean weakCompareAndSetRelease(boolean, boolean);
+ method public final boolean weakCompareAndSetVolatile(boolean, boolean);
+ }
+
+ public class AtomicInteger extends java.lang.Number implements java.io.Serializable {
+ ctor public AtomicInteger(int);
+ ctor public AtomicInteger();
+ method public final int accumulateAndGet(int, java.util.function.IntBinaryOperator);
+ method public final int addAndGet(int);
+ method public final int compareAndExchange(int, int);
+ method public final int compareAndExchangeAcquire(int, int);
+ method public final int compareAndExchangeRelease(int, int);
+ method public final boolean compareAndSet(int, int);
+ method public final int decrementAndGet();
+ method public double doubleValue();
+ method public float floatValue();
+ method public final int get();
+ method public final int getAcquire();
+ method public final int getAndAccumulate(int, java.util.function.IntBinaryOperator);
+ method public final int getAndAdd(int);
+ method public final int getAndDecrement();
+ method public final int getAndIncrement();
+ method public final int getAndSet(int);
+ method public final int getAndUpdate(java.util.function.IntUnaryOperator);
+ method public final int getOpaque();
+ method public final int getPlain();
+ method public final int incrementAndGet();
+ method public int intValue();
+ method public final void lazySet(int);
+ method public long longValue();
+ method public final void set(int);
+ method public final void setOpaque(int);
+ method public final void setPlain(int);
+ method public final void setRelease(int);
+ method public final int updateAndGet(java.util.function.IntUnaryOperator);
+ method @Deprecated public final boolean weakCompareAndSet(int, int);
+ method public final boolean weakCompareAndSetAcquire(int, int);
+ method public final boolean weakCompareAndSetPlain(int, int);
+ method public final boolean weakCompareAndSetRelease(int, int);
+ method public final boolean weakCompareAndSetVolatile(int, int);
+ }
+
+ public class AtomicIntegerArray implements java.io.Serializable {
+ ctor public AtomicIntegerArray(int);
+ ctor public AtomicIntegerArray(int[]);
+ method public final int accumulateAndGet(int, int, java.util.function.IntBinaryOperator);
+ method public final int addAndGet(int, int);
+ method public final int compareAndExchange(int, int, int);
+ method public final int compareAndExchangeAcquire(int, int, int);
+ method public final int compareAndExchangeRelease(int, int, int);
+ method public final boolean compareAndSet(int, int, int);
+ method public final int decrementAndGet(int);
+ method public final int get(int);
+ method public final int getAcquire(int);
+ method public final int getAndAccumulate(int, int, java.util.function.IntBinaryOperator);
+ method public final int getAndAdd(int, int);
+ method public final int getAndDecrement(int);
+ method public final int getAndIncrement(int);
+ method public final int getAndSet(int, int);
+ method public final int getAndUpdate(int, java.util.function.IntUnaryOperator);
+ method public final int getOpaque(int);
+ method public final int getPlain(int);
+ method public final int incrementAndGet(int);
+ method public final void lazySet(int, int);
+ method public final int length();
+ method public final void set(int, int);
+ method public final void setOpaque(int, int);
+ method public final void setPlain(int, int);
+ method public final void setRelease(int, int);
+ method public final int updateAndGet(int, java.util.function.IntUnaryOperator);
+ method @Deprecated public final boolean weakCompareAndSet(int, int, int);
+ method public final boolean weakCompareAndSetAcquire(int, int, int);
+ method public final boolean weakCompareAndSetPlain(int, int, int);
+ method public final boolean weakCompareAndSetRelease(int, int, int);
+ method public final boolean weakCompareAndSetVolatile(int, int, int);
+ }
+
+ public abstract class AtomicIntegerFieldUpdater<T> {
+ ctor protected AtomicIntegerFieldUpdater();
+ method public final int accumulateAndGet(T, int, java.util.function.IntBinaryOperator);
+ method public int addAndGet(T, int);
+ method public abstract boolean compareAndSet(T, int, int);
+ method public int decrementAndGet(T);
+ method public abstract int get(T);
+ method public final int getAndAccumulate(T, int, java.util.function.IntBinaryOperator);
+ method public int getAndAdd(T, int);
+ method public int getAndDecrement(T);
+ method public int getAndIncrement(T);
+ method public int getAndSet(T, int);
+ method public final int getAndUpdate(T, java.util.function.IntUnaryOperator);
+ method public int incrementAndGet(T);
+ method public abstract void lazySet(T, int);
+ method public static <U> java.util.concurrent.atomic.AtomicIntegerFieldUpdater<U> newUpdater(Class<U>, String);
+ method public abstract void set(T, int);
+ method public final int updateAndGet(T, java.util.function.IntUnaryOperator);
+ method public abstract boolean weakCompareAndSet(T, int, int);
+ }
+
+ public class AtomicLong extends java.lang.Number implements java.io.Serializable {
+ ctor public AtomicLong(long);
+ ctor public AtomicLong();
+ method public final long accumulateAndGet(long, java.util.function.LongBinaryOperator);
+ method public final long addAndGet(long);
+ method public final long compareAndExchange(long, long);
+ method public final long compareAndExchangeAcquire(long, long);
+ method public final long compareAndExchangeRelease(long, long);
+ method public final boolean compareAndSet(long, long);
+ method public final long decrementAndGet();
+ method public double doubleValue();
+ method public float floatValue();
+ method public final long get();
+ method public final long getAcquire();
+ method public final long getAndAccumulate(long, java.util.function.LongBinaryOperator);
+ method public final long getAndAdd(long);
+ method public final long getAndDecrement();
+ method public final long getAndIncrement();
+ method public final long getAndSet(long);
+ method public final long getAndUpdate(java.util.function.LongUnaryOperator);
+ method public final long getOpaque();
+ method public final long getPlain();
+ method public final long incrementAndGet();
+ method public int intValue();
+ method public final void lazySet(long);
+ method public long longValue();
+ method public final void set(long);
+ method public final void setOpaque(long);
+ method public final void setPlain(long);
+ method public final void setRelease(long);
+ method public final long updateAndGet(java.util.function.LongUnaryOperator);
+ method @Deprecated public final boolean weakCompareAndSet(long, long);
+ method public final boolean weakCompareAndSetAcquire(long, long);
+ method public final boolean weakCompareAndSetPlain(long, long);
+ method public final boolean weakCompareAndSetRelease(long, long);
+ method public final boolean weakCompareAndSetVolatile(long, long);
+ }
+
+ public class AtomicLongArray implements java.io.Serializable {
+ ctor public AtomicLongArray(int);
+ ctor public AtomicLongArray(long[]);
+ method public final long accumulateAndGet(int, long, java.util.function.LongBinaryOperator);
+ method public long addAndGet(int, long);
+ method public final long compareAndExchange(int, long, long);
+ method public final long compareAndExchangeAcquire(int, long, long);
+ method public final long compareAndExchangeRelease(int, long, long);
+ method public final boolean compareAndSet(int, long, long);
+ method public final long decrementAndGet(int);
+ method public final long get(int);
+ method public final long getAcquire(int);
+ method public final long getAndAccumulate(int, long, java.util.function.LongBinaryOperator);
+ method public final long getAndAdd(int, long);
+ method public final long getAndDecrement(int);
+ method public final long getAndIncrement(int);
+ method public final long getAndSet(int, long);
+ method public final long getAndUpdate(int, java.util.function.LongUnaryOperator);
+ method public final long getOpaque(int);
+ method public final long getPlain(int);
+ method public final long incrementAndGet(int);
+ method public final void lazySet(int, long);
+ method public final int length();
+ method public final void set(int, long);
+ method public final void setOpaque(int, long);
+ method public final void setPlain(int, long);
+ method public final void setRelease(int, long);
+ method public final long updateAndGet(int, java.util.function.LongUnaryOperator);
+ method @Deprecated public final boolean weakCompareAndSet(int, long, long);
+ method public final boolean weakCompareAndSetAcquire(int, long, long);
+ method public final boolean weakCompareAndSetPlain(int, long, long);
+ method public final boolean weakCompareAndSetRelease(int, long, long);
+ method public final boolean weakCompareAndSetVolatile(int, long, long);
+ }
+
+ public abstract class AtomicLongFieldUpdater<T> {
+ ctor protected AtomicLongFieldUpdater();
+ method public final long accumulateAndGet(T, long, java.util.function.LongBinaryOperator);
+ method public long addAndGet(T, long);
+ method public abstract boolean compareAndSet(T, long, long);
+ method public long decrementAndGet(T);
+ method public abstract long get(T);
+ method public final long getAndAccumulate(T, long, java.util.function.LongBinaryOperator);
+ method public long getAndAdd(T, long);
+ method public long getAndDecrement(T);
+ method public long getAndIncrement(T);
+ method public long getAndSet(T, long);
+ method public final long getAndUpdate(T, java.util.function.LongUnaryOperator);
+ method public long incrementAndGet(T);
+ method public abstract void lazySet(T, long);
+ method public static <U> java.util.concurrent.atomic.AtomicLongFieldUpdater<U> newUpdater(Class<U>, String);
+ method public abstract void set(T, long);
+ method public final long updateAndGet(T, java.util.function.LongUnaryOperator);
+ method public abstract boolean weakCompareAndSet(T, long, long);
+ }
+
+ public class AtomicMarkableReference<V> {
+ ctor public AtomicMarkableReference(V, boolean);
+ method public boolean attemptMark(V, boolean);
+ method public boolean compareAndSet(V, V, boolean, boolean);
+ method public V get(boolean[]);
+ method public V getReference();
+ method public boolean isMarked();
+ method public void set(V, boolean);
+ method public boolean weakCompareAndSet(V, V, boolean, boolean);
+ }
+
+ public class AtomicReference<V> implements java.io.Serializable {
+ ctor public AtomicReference(V);
+ ctor public AtomicReference();
+ method public final V accumulateAndGet(V, java.util.function.BinaryOperator<V>);
+ method public final V compareAndExchange(V, V);
+ method public final V compareAndExchangeAcquire(V, V);
+ method public final V compareAndExchangeRelease(V, V);
+ method public final boolean compareAndSet(V, V);
+ method public final V get();
+ method public final V getAcquire();
+ method public final V getAndAccumulate(V, java.util.function.BinaryOperator<V>);
+ method public final V getAndSet(V);
+ method public final V getAndUpdate(java.util.function.UnaryOperator<V>);
+ method public final V getOpaque();
+ method public final V getPlain();
+ method public final void lazySet(V);
+ method public final void set(V);
+ method public final void setOpaque(V);
+ method public final void setPlain(V);
+ method public final void setRelease(V);
+ method public final V updateAndGet(java.util.function.UnaryOperator<V>);
+ method @Deprecated public final boolean weakCompareAndSet(V, V);
+ method public final boolean weakCompareAndSetAcquire(V, V);
+ method public final boolean weakCompareAndSetPlain(V, V);
+ method public final boolean weakCompareAndSetRelease(V, V);
+ method public final boolean weakCompareAndSetVolatile(V, V);
+ }
+
+ public class AtomicReferenceArray<E> implements java.io.Serializable {
+ ctor public AtomicReferenceArray(int);
+ ctor public AtomicReferenceArray(E[]);
+ method public final E accumulateAndGet(int, E, java.util.function.BinaryOperator<E>);
+ method public final E compareAndExchange(int, E, E);
+ method public final E compareAndExchangeAcquire(int, E, E);
+ method public final E compareAndExchangeRelease(int, E, E);
+ method public final boolean compareAndSet(int, E, E);
+ method public final E get(int);
+ method public final E getAcquire(int);
+ method public final E getAndAccumulate(int, E, java.util.function.BinaryOperator<E>);
+ method public final E getAndSet(int, E);
+ method public final E getAndUpdate(int, java.util.function.UnaryOperator<E>);
+ method public final E getOpaque(int);
+ method public final E getPlain(int);
+ method public final void lazySet(int, E);
+ method public final int length();
+ method public final void set(int, E);
+ method public final void setOpaque(int, E);
+ method public final void setPlain(int, E);
+ method public final void setRelease(int, E);
+ method public final E updateAndGet(int, java.util.function.UnaryOperator<E>);
+ method @Deprecated public final boolean weakCompareAndSet(int, E, E);
+ method public final boolean weakCompareAndSetAcquire(int, E, E);
+ method public final boolean weakCompareAndSetPlain(int, E, E);
+ method public final boolean weakCompareAndSetRelease(int, E, E);
+ method public final boolean weakCompareAndSetVolatile(int, E, E);
+ }
+
+ public abstract class AtomicReferenceFieldUpdater<T, V> {
+ ctor protected AtomicReferenceFieldUpdater();
+ method public final V accumulateAndGet(T, V, java.util.function.BinaryOperator<V>);
+ method public abstract boolean compareAndSet(T, V, V);
+ method public abstract V get(T);
+ method public final V getAndAccumulate(T, V, java.util.function.BinaryOperator<V>);
+ method public V getAndSet(T, V);
+ method public final V getAndUpdate(T, java.util.function.UnaryOperator<V>);
+ method public abstract void lazySet(T, V);
+ method public static <U, W> java.util.concurrent.atomic.AtomicReferenceFieldUpdater<U,W> newUpdater(Class<U>, Class<W>, String);
+ method public abstract void set(T, V);
+ method public final V updateAndGet(T, java.util.function.UnaryOperator<V>);
+ method public abstract boolean weakCompareAndSet(T, V, V);
+ }
+
+ public class AtomicStampedReference<V> {
+ ctor public AtomicStampedReference(V, int);
+ method public boolean attemptStamp(V, int);
+ method public boolean compareAndSet(V, V, int, int);
+ method public V get(int[]);
+ method public V getReference();
+ method public int getStamp();
+ method public void set(V, int);
+ method public boolean weakCompareAndSet(V, V, int, int);
+ }
+
+ public class DoubleAccumulator extends java.lang.Number implements java.io.Serializable {
+ ctor public DoubleAccumulator(java.util.function.DoubleBinaryOperator, double);
+ method public void accumulate(double);
+ method public double doubleValue();
+ method public float floatValue();
+ method public double get();
+ method public double getThenReset();
+ method public int intValue();
+ method public long longValue();
+ method public void reset();
+ }
+
+ public class DoubleAdder extends java.lang.Number implements java.io.Serializable {
+ ctor public DoubleAdder();
+ method public void add(double);
+ method public double doubleValue();
+ method public float floatValue();
+ method public int intValue();
+ method public long longValue();
+ method public void reset();
+ method public double sum();
+ method public double sumThenReset();
+ }
+
+ public class LongAccumulator extends java.lang.Number implements java.io.Serializable {
+ ctor public LongAccumulator(java.util.function.LongBinaryOperator, long);
+ method public void accumulate(long);
+ method public double doubleValue();
+ method public float floatValue();
+ method public long get();
+ method public long getThenReset();
+ method public int intValue();
+ method public long longValue();
+ method public void reset();
+ }
+
+ public class LongAdder extends java.lang.Number implements java.io.Serializable {
+ ctor public LongAdder();
+ method public void add(long);
+ method public void decrement();
+ method public double doubleValue();
+ method public float floatValue();
+ method public void increment();
+ method public int intValue();
+ method public long longValue();
+ method public void reset();
+ method public long sum();
+ method public long sumThenReset();
+ }
+
+}
+
+package java.util.concurrent.locks {
+
+ public abstract class AbstractOwnableSynchronizer implements java.io.Serializable {
+ ctor protected AbstractOwnableSynchronizer();
+ method protected final Thread getExclusiveOwnerThread();
+ method protected final void setExclusiveOwnerThread(Thread);
+ }
+
+ public abstract class AbstractQueuedLongSynchronizer extends java.util.concurrent.locks.AbstractOwnableSynchronizer implements java.io.Serializable {
+ ctor protected AbstractQueuedLongSynchronizer();
+ method public final void acquire(long);
+ method public final void acquireInterruptibly(long) throws java.lang.InterruptedException;
+ method public final void acquireShared(long);
+ method public final void acquireSharedInterruptibly(long) throws java.lang.InterruptedException;
+ method protected final boolean compareAndSetState(long, long);
+ method public final java.util.Collection<java.lang.Thread> getExclusiveQueuedThreads();
+ method public final Thread getFirstQueuedThread();
+ method public final int getQueueLength();
+ method public final java.util.Collection<java.lang.Thread> getQueuedThreads();
+ method public final java.util.Collection<java.lang.Thread> getSharedQueuedThreads();
+ method protected final long getState();
+ method public final int getWaitQueueLength(java.util.concurrent.locks.AbstractQueuedLongSynchronizer.ConditionObject);
+ method public final java.util.Collection<java.lang.Thread> getWaitingThreads(java.util.concurrent.locks.AbstractQueuedLongSynchronizer.ConditionObject);
+ method public final boolean hasContended();
+ method public final boolean hasQueuedPredecessors();
+ method public final boolean hasQueuedThreads();
+ method public final boolean hasWaiters(java.util.concurrent.locks.AbstractQueuedLongSynchronizer.ConditionObject);
+ method protected boolean isHeldExclusively();
+ method public final boolean isQueued(Thread);
+ method public final boolean owns(java.util.concurrent.locks.AbstractQueuedLongSynchronizer.ConditionObject);
+ method public final boolean release(long);
+ method public final boolean releaseShared(long);
+ method protected final void setState(long);
+ method protected boolean tryAcquire(long);
+ method public final boolean tryAcquireNanos(long, long) throws java.lang.InterruptedException;
+ method protected long tryAcquireShared(long);
+ method public final boolean tryAcquireSharedNanos(long, long) throws java.lang.InterruptedException;
+ method protected boolean tryRelease(long);
+ method protected boolean tryReleaseShared(long);
+ }
+
+ public class AbstractQueuedLongSynchronizer.ConditionObject implements java.util.concurrent.locks.Condition java.io.Serializable {
+ ctor public AbstractQueuedLongSynchronizer.ConditionObject();
+ method public final void await() throws java.lang.InterruptedException;
+ method public final boolean await(long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException;
+ method public final long awaitNanos(long) throws java.lang.InterruptedException;
+ method public final void awaitUninterruptibly();
+ method public final boolean awaitUntil(java.util.Date) throws java.lang.InterruptedException;
+ method protected final int getWaitQueueLength();
+ method protected final java.util.Collection<java.lang.Thread> getWaitingThreads();
+ method protected final boolean hasWaiters();
+ method public final void signal();
+ method public final void signalAll();
+ }
+
+ public abstract class AbstractQueuedSynchronizer extends java.util.concurrent.locks.AbstractOwnableSynchronizer implements java.io.Serializable {
+ ctor protected AbstractQueuedSynchronizer();
+ method public final void acquire(int);
+ method public final void acquireInterruptibly(int) throws java.lang.InterruptedException;
+ method public final void acquireShared(int);
+ method public final void acquireSharedInterruptibly(int) throws java.lang.InterruptedException;
+ method protected final boolean compareAndSetState(int, int);
+ method public final java.util.Collection<java.lang.Thread> getExclusiveQueuedThreads();
+ method public final Thread getFirstQueuedThread();
+ method public final int getQueueLength();
+ method public final java.util.Collection<java.lang.Thread> getQueuedThreads();
+ method public final java.util.Collection<java.lang.Thread> getSharedQueuedThreads();
+ method protected final int getState();
+ method public final int getWaitQueueLength(java.util.concurrent.locks.AbstractQueuedSynchronizer.ConditionObject);
+ method public final java.util.Collection<java.lang.Thread> getWaitingThreads(java.util.concurrent.locks.AbstractQueuedSynchronizer.ConditionObject);
+ method public final boolean hasContended();
+ method public final boolean hasQueuedPredecessors();
+ method public final boolean hasQueuedThreads();
+ method public final boolean hasWaiters(java.util.concurrent.locks.AbstractQueuedSynchronizer.ConditionObject);
+ method protected boolean isHeldExclusively();
+ method public final boolean isQueued(Thread);
+ method public final boolean owns(java.util.concurrent.locks.AbstractQueuedSynchronizer.ConditionObject);
+ method public final boolean release(int);
+ method public final boolean releaseShared(int);
+ method protected final void setState(int);
+ method protected boolean tryAcquire(int);
+ method public final boolean tryAcquireNanos(int, long) throws java.lang.InterruptedException;
+ method protected int tryAcquireShared(int);
+ method public final boolean tryAcquireSharedNanos(int, long) throws java.lang.InterruptedException;
+ method protected boolean tryRelease(int);
+ method protected boolean tryReleaseShared(int);
+ }
+
+ public class AbstractQueuedSynchronizer.ConditionObject implements java.util.concurrent.locks.Condition java.io.Serializable {
+ ctor public AbstractQueuedSynchronizer.ConditionObject();
+ method public final void await() throws java.lang.InterruptedException;
+ method public final boolean await(long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException;
+ method public final long awaitNanos(long) throws java.lang.InterruptedException;
+ method public final void awaitUninterruptibly();
+ method public final boolean awaitUntil(java.util.Date) throws java.lang.InterruptedException;
+ method protected final int getWaitQueueLength();
+ method protected final java.util.Collection<java.lang.Thread> getWaitingThreads();
+ method protected final boolean hasWaiters();
+ method public final void signal();
+ method public final void signalAll();
+ }
+
+ public interface Condition {
+ method public void await() throws java.lang.InterruptedException;
+ method public boolean await(long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException;
+ method public long awaitNanos(long) throws java.lang.InterruptedException;
+ method public void awaitUninterruptibly();
+ method public boolean awaitUntil(java.util.Date) throws java.lang.InterruptedException;
+ method public void signal();
+ method public void signalAll();
+ }
+
+ public interface Lock {
+ method public void lock();
+ method public void lockInterruptibly() throws java.lang.InterruptedException;
+ method public java.util.concurrent.locks.Condition newCondition();
+ method public boolean tryLock();
+ method public boolean tryLock(long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException;
+ method public void unlock();
+ }
+
+ public class LockSupport {
+ method public static Object getBlocker(Thread);
+ method public static void park(Object);
+ method public static void park();
+ method public static void parkNanos(Object, long);
+ method public static void parkNanos(long);
+ method public static void parkUntil(Object, long);
+ method public static void parkUntil(long);
+ method public static void unpark(Thread);
+ }
+
+ public interface ReadWriteLock {
+ method public java.util.concurrent.locks.Lock readLock();
+ method public java.util.concurrent.locks.Lock writeLock();
+ }
+
+ public class ReentrantLock implements java.util.concurrent.locks.Lock java.io.Serializable {
+ ctor public ReentrantLock();
+ ctor public ReentrantLock(boolean);
+ method public int getHoldCount();
+ method protected Thread getOwner();
+ method public final int getQueueLength();
+ method protected java.util.Collection<java.lang.Thread> getQueuedThreads();
+ method public int getWaitQueueLength(java.util.concurrent.locks.Condition);
+ method protected java.util.Collection<java.lang.Thread> getWaitingThreads(java.util.concurrent.locks.Condition);
+ method public final boolean hasQueuedThread(Thread);
+ method public final boolean hasQueuedThreads();
+ method public boolean hasWaiters(java.util.concurrent.locks.Condition);
+ method public final boolean isFair();
+ method public boolean isHeldByCurrentThread();
+ method public boolean isLocked();
+ method public void lock();
+ method public void lockInterruptibly() throws java.lang.InterruptedException;
+ method public java.util.concurrent.locks.Condition newCondition();
+ method public boolean tryLock();
+ method public boolean tryLock(long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException;
+ method public void unlock();
+ }
+
+ public class ReentrantReadWriteLock implements java.util.concurrent.locks.ReadWriteLock java.io.Serializable {
+ ctor public ReentrantReadWriteLock();
+ ctor public ReentrantReadWriteLock(boolean);
+ method protected Thread getOwner();
+ method public final int getQueueLength();
+ method protected java.util.Collection<java.lang.Thread> getQueuedReaderThreads();
+ method protected java.util.Collection<java.lang.Thread> getQueuedThreads();
+ method protected java.util.Collection<java.lang.Thread> getQueuedWriterThreads();
+ method public int getReadHoldCount();
+ method public int getReadLockCount();
+ method public int getWaitQueueLength(java.util.concurrent.locks.Condition);
+ method protected java.util.Collection<java.lang.Thread> getWaitingThreads(java.util.concurrent.locks.Condition);
+ method public int getWriteHoldCount();
+ method public final boolean hasQueuedThread(Thread);
+ method public final boolean hasQueuedThreads();
+ method public boolean hasWaiters(java.util.concurrent.locks.Condition);
+ method public final boolean isFair();
+ method public boolean isWriteLocked();
+ method public boolean isWriteLockedByCurrentThread();
+ method public java.util.concurrent.locks.ReentrantReadWriteLock.ReadLock readLock();
+ method public java.util.concurrent.locks.ReentrantReadWriteLock.WriteLock writeLock();
+ }
+
+ public static class ReentrantReadWriteLock.ReadLock implements java.util.concurrent.locks.Lock java.io.Serializable {
+ ctor protected ReentrantReadWriteLock.ReadLock(java.util.concurrent.locks.ReentrantReadWriteLock);
+ method public void lock();
+ method public void lockInterruptibly() throws java.lang.InterruptedException;
+ method public java.util.concurrent.locks.Condition newCondition();
+ method public boolean tryLock();
+ method public boolean tryLock(long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException;
+ method public void unlock();
+ }
+
+ public static class ReentrantReadWriteLock.WriteLock implements java.util.concurrent.locks.Lock java.io.Serializable {
+ ctor protected ReentrantReadWriteLock.WriteLock(java.util.concurrent.locks.ReentrantReadWriteLock);
+ method public int getHoldCount();
+ method public boolean isHeldByCurrentThread();
+ method public void lock();
+ method public void lockInterruptibly() throws java.lang.InterruptedException;
+ method public java.util.concurrent.locks.Condition newCondition();
+ method public boolean tryLock();
+ method public boolean tryLock(long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException;
+ method public void unlock();
+ }
+
+ public class StampedLock implements java.io.Serializable {
+ ctor public StampedLock();
+ method public java.util.concurrent.locks.Lock asReadLock();
+ method public java.util.concurrent.locks.ReadWriteLock asReadWriteLock();
+ method public java.util.concurrent.locks.Lock asWriteLock();
+ method public int getReadLockCount();
+ method public static boolean isLockStamp(long);
+ method public static boolean isOptimisticReadStamp(long);
+ method public static boolean isReadLockStamp(long);
+ method public boolean isReadLocked();
+ method public static boolean isWriteLockStamp(long);
+ method public boolean isWriteLocked();
+ method public long readLock();
+ method public long readLockInterruptibly() throws java.lang.InterruptedException;
+ method public long tryConvertToOptimisticRead(long);
+ method public long tryConvertToReadLock(long);
+ method public long tryConvertToWriteLock(long);
+ method public long tryOptimisticRead();
+ method public long tryReadLock();
+ method public long tryReadLock(long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException;
+ method public boolean tryUnlockRead();
+ method public boolean tryUnlockWrite();
+ method public long tryWriteLock();
+ method public long tryWriteLock(long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException;
+ method public void unlock(long);
+ method public void unlockRead(long);
+ method public void unlockWrite(long);
+ method public boolean validate(long);
+ method public long writeLock();
+ method public long writeLockInterruptibly() throws java.lang.InterruptedException;
+ }
+
+}
+
+package java.util.function {
+
+ @java.lang.FunctionalInterface public interface BiConsumer<T, U> {
+ method public void accept(T, U);
+ method public default java.util.function.BiConsumer<T,U> andThen(java.util.function.BiConsumer<? super T,? super U>);
+ }
+
+ @java.lang.FunctionalInterface public interface BiFunction<T, U, R> {
+ method public default <V> java.util.function.BiFunction<T,U,V> andThen(java.util.function.Function<? super R,? extends V>);
+ method public R apply(T, U);
+ }
+
+ @java.lang.FunctionalInterface public interface BiPredicate<T, U> {
+ method public default java.util.function.BiPredicate<T,U> and(java.util.function.BiPredicate<? super T,? super U>);
+ method public default java.util.function.BiPredicate<T,U> negate();
+ method public default java.util.function.BiPredicate<T,U> or(java.util.function.BiPredicate<? super T,? super U>);
+ method public boolean test(T, U);
+ }
+
+ @java.lang.FunctionalInterface public interface BinaryOperator<T> extends java.util.function.BiFunction<T,T,T> {
+ method public static <T> java.util.function.BinaryOperator<T> maxBy(java.util.Comparator<? super T>);
+ method public static <T> java.util.function.BinaryOperator<T> minBy(java.util.Comparator<? super T>);
+ }
+
+ @java.lang.FunctionalInterface public interface BooleanSupplier {
+ method public boolean getAsBoolean();
+ }
+
+ @java.lang.FunctionalInterface public interface Consumer<T> {
+ method public void accept(T);
+ method public default java.util.function.Consumer<T> andThen(java.util.function.Consumer<? super T>);
+ }
+
+ @java.lang.FunctionalInterface public interface DoubleBinaryOperator {
+ method public double applyAsDouble(double, double);
+ }
+
+ @java.lang.FunctionalInterface public interface DoubleConsumer {
+ method public void accept(double);
+ method public default java.util.function.DoubleConsumer andThen(java.util.function.DoubleConsumer);
+ }
+
+ @java.lang.FunctionalInterface public interface DoubleFunction<R> {
+ method public R apply(double);
+ }
+
+ @java.lang.FunctionalInterface public interface DoublePredicate {
+ method public default java.util.function.DoublePredicate and(java.util.function.DoublePredicate);
+ method public default java.util.function.DoublePredicate negate();
+ method public default java.util.function.DoublePredicate or(java.util.function.DoublePredicate);
+ method public boolean test(double);
+ }
+
+ @java.lang.FunctionalInterface public interface DoubleSupplier {
+ method public double getAsDouble();
+ }
+
+ @java.lang.FunctionalInterface public interface DoubleToIntFunction {
+ method public int applyAsInt(double);
+ }
+
+ @java.lang.FunctionalInterface public interface DoubleToLongFunction {
+ method public long applyAsLong(double);
+ }
+
+ @java.lang.FunctionalInterface public interface DoubleUnaryOperator {
+ method public default java.util.function.DoubleUnaryOperator andThen(java.util.function.DoubleUnaryOperator);
+ method public double applyAsDouble(double);
+ method public default java.util.function.DoubleUnaryOperator compose(java.util.function.DoubleUnaryOperator);
+ method public static java.util.function.DoubleUnaryOperator identity();
+ }
+
+ @java.lang.FunctionalInterface public interface Function<T, R> {
+ method public default <V> java.util.function.Function<T,V> andThen(java.util.function.Function<? super R,? extends V>);
+ method public R apply(T);
+ method public default <V> java.util.function.Function<V,R> compose(java.util.function.Function<? super V,? extends T>);
+ method public static <T> java.util.function.Function<T,T> identity();
+ }
+
+ @java.lang.FunctionalInterface public interface IntBinaryOperator {
+ method public int applyAsInt(int, int);
+ }
+
+ @java.lang.FunctionalInterface public interface IntConsumer {
+ method public void accept(int);
+ method public default java.util.function.IntConsumer andThen(java.util.function.IntConsumer);
+ }
+
+ @java.lang.FunctionalInterface public interface IntFunction<R> {
+ method public R apply(int);
+ }
+
+ @java.lang.FunctionalInterface public interface IntPredicate {
+ method public default java.util.function.IntPredicate and(java.util.function.IntPredicate);
+ method public default java.util.function.IntPredicate negate();
+ method public default java.util.function.IntPredicate or(java.util.function.IntPredicate);
+ method public boolean test(int);
+ }
+
+ @java.lang.FunctionalInterface public interface IntSupplier {
+ method public int getAsInt();
+ }
+
+ @java.lang.FunctionalInterface public interface IntToDoubleFunction {
+ method public double applyAsDouble(int);
+ }
+
+ @java.lang.FunctionalInterface public interface IntToLongFunction {
+ method public long applyAsLong(int);
+ }
+
+ @java.lang.FunctionalInterface public interface IntUnaryOperator {
+ method public default java.util.function.IntUnaryOperator andThen(java.util.function.IntUnaryOperator);
+ method public int applyAsInt(int);
+ method public default java.util.function.IntUnaryOperator compose(java.util.function.IntUnaryOperator);
+ method public static java.util.function.IntUnaryOperator identity();
+ }
+
+ @java.lang.FunctionalInterface public interface LongBinaryOperator {
+ method public long applyAsLong(long, long);
+ }
+
+ @java.lang.FunctionalInterface public interface LongConsumer {
+ method public void accept(long);
+ method public default java.util.function.LongConsumer andThen(java.util.function.LongConsumer);
+ }
+
+ @java.lang.FunctionalInterface public interface LongFunction<R> {
+ method public R apply(long);
+ }
+
+ @java.lang.FunctionalInterface public interface LongPredicate {
+ method public default java.util.function.LongPredicate and(java.util.function.LongPredicate);
+ method public default java.util.function.LongPredicate negate();
+ method public default java.util.function.LongPredicate or(java.util.function.LongPredicate);
+ method public boolean test(long);
+ }
+
+ @java.lang.FunctionalInterface public interface LongSupplier {
+ method public long getAsLong();
+ }
+
+ @java.lang.FunctionalInterface public interface LongToDoubleFunction {
+ method public double applyAsDouble(long);
+ }
+
+ @java.lang.FunctionalInterface public interface LongToIntFunction {
+ method public int applyAsInt(long);
+ }
+
+ @java.lang.FunctionalInterface public interface LongUnaryOperator {
+ method public default java.util.function.LongUnaryOperator andThen(java.util.function.LongUnaryOperator);
+ method public long applyAsLong(long);
+ method public default java.util.function.LongUnaryOperator compose(java.util.function.LongUnaryOperator);
+ method public static java.util.function.LongUnaryOperator identity();
+ }
+
+ @java.lang.FunctionalInterface public interface ObjDoubleConsumer<T> {
+ method public void accept(T, double);
+ }
+
+ @java.lang.FunctionalInterface public interface ObjIntConsumer<T> {
+ method public void accept(T, int);
+ }
+
+ @java.lang.FunctionalInterface public interface ObjLongConsumer<T> {
+ method public void accept(T, long);
+ }
+
+ @java.lang.FunctionalInterface public interface Predicate<T> {
+ method public default java.util.function.Predicate<T> and(java.util.function.Predicate<? super T>);
+ method public static <T> java.util.function.Predicate<T> isEqual(Object);
+ method public default java.util.function.Predicate<T> negate();
+ method public static <T> java.util.function.Predicate<T> not(java.util.function.Predicate<? super T>);
+ method public default java.util.function.Predicate<T> or(java.util.function.Predicate<? super T>);
+ method public boolean test(T);
+ }
+
+ @java.lang.FunctionalInterface public interface Supplier<T> {
+ method public T get();
+ }
+
+ @java.lang.FunctionalInterface public interface ToDoubleBiFunction<T, U> {
+ method public double applyAsDouble(T, U);
+ }
+
+ @java.lang.FunctionalInterface public interface ToDoubleFunction<T> {
+ method public double applyAsDouble(T);
+ }
+
+ @java.lang.FunctionalInterface public interface ToIntBiFunction<T, U> {
+ method public int applyAsInt(T, U);
+ }
+
+ @java.lang.FunctionalInterface public interface ToIntFunction<T> {
+ method public int applyAsInt(T);
+ }
+
+ @java.lang.FunctionalInterface public interface ToLongBiFunction<T, U> {
+ method public long applyAsLong(T, U);
+ }
+
+ @java.lang.FunctionalInterface public interface ToLongFunction<T> {
+ method public long applyAsLong(T);
+ }
+
+ @java.lang.FunctionalInterface public interface UnaryOperator<T> extends java.util.function.Function<T,T> {
+ method public static <T> java.util.function.UnaryOperator<T> identity();
+ }
+
+}
+
+package java.util.jar {
+
+ public class Attributes implements java.lang.Cloneable java.util.Map<java.lang.Object,java.lang.Object> {
+ ctor public Attributes();
+ ctor public Attributes(int);
+ ctor public Attributes(java.util.jar.Attributes);
+ method public void clear();
+ method public Object clone();
+ method public boolean containsKey(Object);
+ method public boolean containsValue(Object);
+ method public java.util.Set<java.util.Map.Entry<java.lang.Object,java.lang.Object>> entrySet();
+ method public Object get(Object);
+ method public String getValue(String);
+ method public String getValue(java.util.jar.Attributes.Name);
+ method public boolean isEmpty();
+ method public java.util.Set<java.lang.Object> keySet();
+ method public Object put(Object, Object);
+ method public void putAll(java.util.Map<?,?>);
+ method public String putValue(String, String);
+ method public Object remove(Object);
+ method public int size();
+ method public java.util.Collection<java.lang.Object> values();
+ field protected java.util.Map<java.lang.Object,java.lang.Object> map;
+ }
+
+ public static class Attributes.Name {
+ ctor public Attributes.Name(String);
+ field public static final java.util.jar.Attributes.Name CLASS_PATH;
+ field public static final java.util.jar.Attributes.Name CONTENT_TYPE;
+ field @Deprecated public static final java.util.jar.Attributes.Name EXTENSION_INSTALLATION;
+ field public static final java.util.jar.Attributes.Name EXTENSION_LIST;
+ field public static final java.util.jar.Attributes.Name EXTENSION_NAME;
+ field public static final java.util.jar.Attributes.Name IMPLEMENTATION_TITLE;
+ field @Deprecated public static final java.util.jar.Attributes.Name IMPLEMENTATION_URL;
+ field public static final java.util.jar.Attributes.Name IMPLEMENTATION_VENDOR;
+ field @Deprecated public static final java.util.jar.Attributes.Name IMPLEMENTATION_VENDOR_ID;
+ field public static final java.util.jar.Attributes.Name IMPLEMENTATION_VERSION;
+ field public static final java.util.jar.Attributes.Name MAIN_CLASS;
+ field public static final java.util.jar.Attributes.Name MANIFEST_VERSION;
+ field public static final java.util.jar.Attributes.Name SEALED;
+ field public static final java.util.jar.Attributes.Name SIGNATURE_VERSION;
+ field public static final java.util.jar.Attributes.Name SPECIFICATION_TITLE;
+ field public static final java.util.jar.Attributes.Name SPECIFICATION_VENDOR;
+ field public static final java.util.jar.Attributes.Name SPECIFICATION_VERSION;
+ }
+
+ public class JarEntry extends java.util.zip.ZipEntry {
+ ctor public JarEntry(String);
+ ctor public JarEntry(java.util.zip.ZipEntry);
+ ctor public JarEntry(java.util.jar.JarEntry);
+ method public java.util.jar.Attributes getAttributes() throws java.io.IOException;
+ method public java.security.cert.Certificate[] getCertificates();
+ method public java.security.CodeSigner[] getCodeSigners();
+ method public String getRealName();
+ field public static final int CENATT = 36; // 0x24
+ field public static final int CENATX = 38; // 0x26
+ field public static final int CENCOM = 32; // 0x20
+ field public static final int CENCRC = 16; // 0x10
+ field public static final int CENDSK = 34; // 0x22
+ field public static final int CENEXT = 30; // 0x1e
+ field public static final int CENFLG = 8; // 0x8
+ field public static final int CENHDR = 46; // 0x2e
+ field public static final int CENHOW = 10; // 0xa
+ field public static final int CENLEN = 24; // 0x18
+ field public static final int CENNAM = 28; // 0x1c
+ field public static final int CENOFF = 42; // 0x2a
+ field public static final long CENSIG = 33639248L; // 0x2014b50L
+ field public static final int CENSIZ = 20; // 0x14
+ field public static final int CENTIM = 12; // 0xc
+ field public static final int CENVEM = 4; // 0x4
+ field public static final int CENVER = 6; // 0x6
+ field public static final int ENDCOM = 20; // 0x14
+ field public static final int ENDHDR = 22; // 0x16
+ field public static final int ENDOFF = 16; // 0x10
+ field public static final long ENDSIG = 101010256L; // 0x6054b50L
+ field public static final int ENDSIZ = 12; // 0xc
+ field public static final int ENDSUB = 8; // 0x8
+ field public static final int ENDTOT = 10; // 0xa
+ field public static final int EXTCRC = 4; // 0x4
+ field public static final int EXTHDR = 16; // 0x10
+ field public static final int EXTLEN = 12; // 0xc
+ field public static final long EXTSIG = 134695760L; // 0x8074b50L
+ field public static final int EXTSIZ = 8; // 0x8
+ field public static final int LOCCRC = 14; // 0xe
+ field public static final int LOCEXT = 28; // 0x1c
+ field public static final int LOCFLG = 6; // 0x6
+ field public static final int LOCHDR = 30; // 0x1e
+ field public static final int LOCHOW = 8; // 0x8
+ field public static final int LOCLEN = 22; // 0x16
+ field public static final int LOCNAM = 26; // 0x1a
+ field public static final long LOCSIG = 67324752L; // 0x4034b50L
+ field public static final int LOCSIZ = 18; // 0x12
+ field public static final int LOCTIM = 10; // 0xa
+ field public static final int LOCVER = 4; // 0x4
+ }
+
+ public class JarException extends java.util.zip.ZipException {
+ ctor public JarException();
+ ctor public JarException(String);
+ }
+
+ public class JarFile extends java.util.zip.ZipFile {
+ ctor public JarFile(String) throws java.io.IOException;
+ ctor public JarFile(String, boolean) throws java.io.IOException;
+ ctor public JarFile(java.io.File) throws java.io.IOException;
+ ctor public JarFile(java.io.File, boolean) throws java.io.IOException;
+ ctor public JarFile(java.io.File, boolean, int) throws java.io.IOException;
+ method public java.util.Enumeration<java.util.jar.JarEntry> entries();
+ method public java.util.jar.JarEntry getJarEntry(String);
+ method public java.util.jar.Manifest getManifest() throws java.io.IOException;
+ method public java.util.stream.Stream<java.util.jar.JarEntry> stream();
+ field public static final int CENATT = 36; // 0x24
+ field public static final int CENATX = 38; // 0x26
+ field public static final int CENCOM = 32; // 0x20
+ field public static final int CENCRC = 16; // 0x10
+ field public static final int CENDSK = 34; // 0x22
+ field public static final int CENEXT = 30; // 0x1e
+ field public static final int CENFLG = 8; // 0x8
+ field public static final int CENHDR = 46; // 0x2e
+ field public static final int CENHOW = 10; // 0xa
+ field public static final int CENLEN = 24; // 0x18
+ field public static final int CENNAM = 28; // 0x1c
+ field public static final int CENOFF = 42; // 0x2a
+ field public static final long CENSIG = 33639248L; // 0x2014b50L
+ field public static final int CENSIZ = 20; // 0x14
+ field public static final int CENTIM = 12; // 0xc
+ field public static final int CENVEM = 4; // 0x4
+ field public static final int CENVER = 6; // 0x6
+ field public static final int ENDCOM = 20; // 0x14
+ field public static final int ENDHDR = 22; // 0x16
+ field public static final int ENDOFF = 16; // 0x10
+ field public static final long ENDSIG = 101010256L; // 0x6054b50L
+ field public static final int ENDSIZ = 12; // 0xc
+ field public static final int ENDSUB = 8; // 0x8
+ field public static final int ENDTOT = 10; // 0xa
+ field public static final int EXTCRC = 4; // 0x4
+ field public static final int EXTHDR = 16; // 0x10
+ field public static final int EXTLEN = 12; // 0xc
+ field public static final long EXTSIG = 134695760L; // 0x8074b50L
+ field public static final int EXTSIZ = 8; // 0x8
+ field public static final int LOCCRC = 14; // 0xe
+ field public static final int LOCEXT = 28; // 0x1c
+ field public static final int LOCFLG = 6; // 0x6
+ field public static final int LOCHDR = 30; // 0x1e
+ field public static final int LOCHOW = 8; // 0x8
+ field public static final int LOCLEN = 22; // 0x16
+ field public static final int LOCNAM = 26; // 0x1a
+ field public static final long LOCSIG = 67324752L; // 0x4034b50L
+ field public static final int LOCSIZ = 18; // 0x12
+ field public static final int LOCTIM = 10; // 0xa
+ field public static final int LOCVER = 4; // 0x4
+ field public static final String MANIFEST_NAME = "META-INF/MANIFEST.MF";
+ }
+
+ public class JarInputStream extends java.util.zip.ZipInputStream {
+ ctor public JarInputStream(java.io.InputStream) throws java.io.IOException;
+ ctor public JarInputStream(java.io.InputStream, boolean) throws java.io.IOException;
+ method public java.util.jar.Manifest getManifest();
+ method public java.util.jar.JarEntry getNextJarEntry() throws java.io.IOException;
+ field public static final int CENATT = 36; // 0x24
+ field public static final int CENATX = 38; // 0x26
+ field public static final int CENCOM = 32; // 0x20
+ field public static final int CENCRC = 16; // 0x10
+ field public static final int CENDSK = 34; // 0x22
+ field public static final int CENEXT = 30; // 0x1e
+ field public static final int CENFLG = 8; // 0x8
+ field public static final int CENHDR = 46; // 0x2e
+ field public static final int CENHOW = 10; // 0xa
+ field public static final int CENLEN = 24; // 0x18
+ field public static final int CENNAM = 28; // 0x1c
+ field public static final int CENOFF = 42; // 0x2a
+ field public static final long CENSIG = 33639248L; // 0x2014b50L
+ field public static final int CENSIZ = 20; // 0x14
+ field public static final int CENTIM = 12; // 0xc
+ field public static final int CENVEM = 4; // 0x4
+ field public static final int CENVER = 6; // 0x6
+ field public static final int ENDCOM = 20; // 0x14
+ field public static final int ENDHDR = 22; // 0x16
+ field public static final int ENDOFF = 16; // 0x10
+ field public static final long ENDSIG = 101010256L; // 0x6054b50L
+ field public static final int ENDSIZ = 12; // 0xc
+ field public static final int ENDSUB = 8; // 0x8
+ field public static final int ENDTOT = 10; // 0xa
+ field public static final int EXTCRC = 4; // 0x4
+ field public static final int EXTHDR = 16; // 0x10
+ field public static final int EXTLEN = 12; // 0xc
+ field public static final long EXTSIG = 134695760L; // 0x8074b50L
+ field public static final int EXTSIZ = 8; // 0x8
+ field public static final int LOCCRC = 14; // 0xe
+ field public static final int LOCEXT = 28; // 0x1c
+ field public static final int LOCFLG = 6; // 0x6
+ field public static final int LOCHDR = 30; // 0x1e
+ field public static final int LOCHOW = 8; // 0x8
+ field public static final int LOCLEN = 22; // 0x16
+ field public static final int LOCNAM = 26; // 0x1a
+ field public static final long LOCSIG = 67324752L; // 0x4034b50L
+ field public static final int LOCSIZ = 18; // 0x12
+ field public static final int LOCTIM = 10; // 0xa
+ field public static final int LOCVER = 4; // 0x4
+ }
+
+ public class JarOutputStream extends java.util.zip.ZipOutputStream {
+ ctor public JarOutputStream(java.io.OutputStream, java.util.jar.Manifest) throws java.io.IOException;
+ ctor public JarOutputStream(java.io.OutputStream) throws java.io.IOException;
+ field public static final int CENATT = 36; // 0x24
+ field public static final int CENATX = 38; // 0x26
+ field public static final int CENCOM = 32; // 0x20
+ field public static final int CENCRC = 16; // 0x10
+ field public static final int CENDSK = 34; // 0x22
+ field public static final int CENEXT = 30; // 0x1e
+ field public static final int CENFLG = 8; // 0x8
+ field public static final int CENHDR = 46; // 0x2e
+ field public static final int CENHOW = 10; // 0xa
+ field public static final int CENLEN = 24; // 0x18
+ field public static final int CENNAM = 28; // 0x1c
+ field public static final int CENOFF = 42; // 0x2a
+ field public static final long CENSIG = 33639248L; // 0x2014b50L
+ field public static final int CENSIZ = 20; // 0x14
+ field public static final int CENTIM = 12; // 0xc
+ field public static final int CENVEM = 4; // 0x4
+ field public static final int CENVER = 6; // 0x6
+ field public static final int ENDCOM = 20; // 0x14
+ field public static final int ENDHDR = 22; // 0x16
+ field public static final int ENDOFF = 16; // 0x10
+ field public static final long ENDSIG = 101010256L; // 0x6054b50L
+ field public static final int ENDSIZ = 12; // 0xc
+ field public static final int ENDSUB = 8; // 0x8
+ field public static final int ENDTOT = 10; // 0xa
+ field public static final int EXTCRC = 4; // 0x4
+ field public static final int EXTHDR = 16; // 0x10
+ field public static final int EXTLEN = 12; // 0xc
+ field public static final long EXTSIG = 134695760L; // 0x8074b50L
+ field public static final int EXTSIZ = 8; // 0x8
+ field public static final int LOCCRC = 14; // 0xe
+ field public static final int LOCEXT = 28; // 0x1c
+ field public static final int LOCFLG = 6; // 0x6
+ field public static final int LOCHDR = 30; // 0x1e
+ field public static final int LOCHOW = 8; // 0x8
+ field public static final int LOCLEN = 22; // 0x16
+ field public static final int LOCNAM = 26; // 0x1a
+ field public static final long LOCSIG = 67324752L; // 0x4034b50L
+ field public static final int LOCSIZ = 18; // 0x12
+ field public static final int LOCTIM = 10; // 0xa
+ field public static final int LOCVER = 4; // 0x4
+ }
+
+ public class Manifest implements java.lang.Cloneable {
+ ctor public Manifest();
+ ctor public Manifest(java.io.InputStream) throws java.io.IOException;
+ ctor public Manifest(java.util.jar.Manifest);
+ method public void clear();
+ method public Object clone();
+ method public java.util.jar.Attributes getAttributes(String);
+ method public java.util.Map<java.lang.String,java.util.jar.Attributes> getEntries();
+ method public java.util.jar.Attributes getMainAttributes();
+ method public void read(java.io.InputStream) throws java.io.IOException;
+ method public void write(java.io.OutputStream) throws java.io.IOException;
+ }
+
+ public abstract class Pack200 {
+ method public static java.util.jar.Pack200.Packer newPacker();
+ method public static java.util.jar.Pack200.Unpacker newUnpacker();
+ }
+
+ public static interface Pack200.Packer {
+ method @Deprecated public default void addPropertyChangeListener(java.beans.PropertyChangeListener);
+ method public void pack(java.util.jar.JarFile, java.io.OutputStream) throws java.io.IOException;
+ method public void pack(java.util.jar.JarInputStream, java.io.OutputStream) throws java.io.IOException;
+ method public java.util.SortedMap<java.lang.String,java.lang.String> properties();
+ method @Deprecated public default void removePropertyChangeListener(java.beans.PropertyChangeListener);
+ field public static final String CLASS_ATTRIBUTE_PFX = "pack.class.attribute.";
+ field public static final String CODE_ATTRIBUTE_PFX = "pack.code.attribute.";
+ field public static final String DEFLATE_HINT = "pack.deflate.hint";
+ field public static final String EFFORT = "pack.effort";
+ field public static final String ERROR = "error";
+ field public static final String FALSE = "false";
+ field public static final String FIELD_ATTRIBUTE_PFX = "pack.field.attribute.";
+ field public static final String KEEP = "keep";
+ field public static final String KEEP_FILE_ORDER = "pack.keep.file.order";
+ field public static final String LATEST = "latest";
+ field public static final String METHOD_ATTRIBUTE_PFX = "pack.method.attribute.";
+ field public static final String MODIFICATION_TIME = "pack.modification.time";
+ field public static final String PASS = "pass";
+ field public static final String PASS_FILE_PFX = "pack.pass.file.";
+ field public static final String PROGRESS = "pack.progress";
+ field public static final String SEGMENT_LIMIT = "pack.segment.limit";
+ field public static final String STRIP = "strip";
+ field public static final String TRUE = "true";
+ field public static final String UNKNOWN_ATTRIBUTE = "pack.unknown.attribute";
+ }
+
+ public static interface Pack200.Unpacker {
+ method @Deprecated public default void addPropertyChangeListener(java.beans.PropertyChangeListener);
+ method public java.util.SortedMap<java.lang.String,java.lang.String> properties();
+ method @Deprecated public default void removePropertyChangeListener(java.beans.PropertyChangeListener);
+ method public void unpack(java.io.InputStream, java.util.jar.JarOutputStream) throws java.io.IOException;
+ method public void unpack(java.io.File, java.util.jar.JarOutputStream) throws java.io.IOException;
+ field public static final String DEFLATE_HINT = "unpack.deflate.hint";
+ field public static final String FALSE = "false";
+ field public static final String KEEP = "keep";
+ field public static final String PROGRESS = "unpack.progress";
+ field public static final String TRUE = "true";
+ }
+
+}
+
+package java.util.logging {
+
+ public class ConsoleHandler extends java.util.logging.StreamHandler {
+ ctor public ConsoleHandler();
+ method public void close();
+ }
+
+ public class ErrorManager {
+ ctor public ErrorManager();
+ method public void error(String, Exception, int);
+ field public static final int CLOSE_FAILURE = 3; // 0x3
+ field public static final int FLUSH_FAILURE = 2; // 0x2
+ field public static final int FORMAT_FAILURE = 5; // 0x5
+ field public static final int GENERIC_FAILURE = 0; // 0x0
+ field public static final int OPEN_FAILURE = 4; // 0x4
+ field public static final int WRITE_FAILURE = 1; // 0x1
+ }
+
+ public class FileHandler extends java.util.logging.StreamHandler {
+ ctor public FileHandler() throws java.io.IOException, java.lang.SecurityException;
+ ctor public FileHandler(String) throws java.io.IOException, java.lang.SecurityException;
+ ctor public FileHandler(String, boolean) throws java.io.IOException, java.lang.SecurityException;
+ ctor public FileHandler(String, int, int) throws java.io.IOException, java.lang.SecurityException;
+ ctor public FileHandler(String, int, int, boolean) throws java.io.IOException, java.lang.SecurityException;
+ }
+
+ @java.lang.FunctionalInterface public interface Filter {
+ method public boolean isLoggable(java.util.logging.LogRecord);
+ }
+
+ public abstract class Formatter {
+ ctor protected Formatter();
+ method public abstract String format(java.util.logging.LogRecord);
+ method public String formatMessage(java.util.logging.LogRecord);
+ method public String getHead(java.util.logging.Handler);
+ method public String getTail(java.util.logging.Handler);
+ }
+
+ public abstract class Handler {
+ ctor protected Handler();
+ method public abstract void close() throws java.lang.SecurityException;
+ method public abstract void flush();
+ method public String getEncoding();
+ method public java.util.logging.ErrorManager getErrorManager();
+ method public java.util.logging.Filter getFilter();
+ method public java.util.logging.Formatter getFormatter();
+ method public java.util.logging.Level getLevel();
+ method public boolean isLoggable(java.util.logging.LogRecord);
+ method public abstract void publish(java.util.logging.LogRecord);
+ method protected void reportError(String, Exception, int);
+ method public void setEncoding(String) throws java.lang.SecurityException, java.io.UnsupportedEncodingException;
+ method public void setErrorManager(java.util.logging.ErrorManager);
+ method public void setFilter(java.util.logging.Filter) throws java.lang.SecurityException;
+ method public void setFormatter(java.util.logging.Formatter) throws java.lang.SecurityException;
+ method public void setLevel(java.util.logging.Level) throws java.lang.SecurityException;
+ }
+
+ public class Level implements java.io.Serializable {
+ ctor protected Level(@NonNull String, int);
+ ctor protected Level(@NonNull String, int, @Nullable String);
+ method @NonNull public String getLocalizedName();
+ method @NonNull public String getName();
+ method @Nullable public String getResourceBundleName();
+ method public final int intValue();
+ method @NonNull public static java.util.logging.Level parse(@NonNull String) throws java.lang.IllegalArgumentException;
+ method @NonNull public final String toString();
+ field @NonNull public static final java.util.logging.Level ALL;
+ field @NonNull public static final java.util.logging.Level CONFIG;
+ field @NonNull public static final java.util.logging.Level FINE;
+ field @NonNull public static final java.util.logging.Level FINER;
+ field @NonNull public static final java.util.logging.Level FINEST;
+ field @NonNull public static final java.util.logging.Level INFO;
+ field @NonNull public static final java.util.logging.Level OFF;
+ field @NonNull public static final java.util.logging.Level SEVERE;
+ field @NonNull public static final java.util.logging.Level WARNING;
+ }
+
+ public class LogManager {
+ ctor protected LogManager();
+ method public boolean addLogger(java.util.logging.Logger);
+ method @Deprecated public void addPropertyChangeListener(java.beans.PropertyChangeListener) throws java.lang.SecurityException;
+ method public void checkAccess() throws java.lang.SecurityException;
+ method public static java.util.logging.LogManager getLogManager();
+ method public java.util.logging.Logger getLogger(String);
+ method public java.util.Enumeration<java.lang.String> getLoggerNames();
+ method public static java.util.logging.LoggingMXBean getLoggingMXBean();
+ method public String getProperty(String);
+ method public void readConfiguration() throws java.io.IOException, java.lang.SecurityException;
+ method public void readConfiguration(java.io.InputStream) throws java.io.IOException, java.lang.SecurityException;
+ method @Deprecated public void removePropertyChangeListener(java.beans.PropertyChangeListener) throws java.lang.SecurityException;
+ method public void reset() throws java.lang.SecurityException;
+ field public static final String LOGGING_MXBEAN_NAME = "java.util.logging:type=Logging";
+ }
+
+ public class LogRecord implements java.io.Serializable {
+ ctor public LogRecord(java.util.logging.Level, String);
+ method public java.util.logging.Level getLevel();
+ method public String getLoggerName();
+ method public String getMessage();
+ method public long getMillis();
+ method public Object[] getParameters();
+ method public java.util.ResourceBundle getResourceBundle();
+ method public String getResourceBundleName();
+ method public long getSequenceNumber();
+ method public String getSourceClassName();
+ method public String getSourceMethodName();
+ method public int getThreadID();
+ method public Throwable getThrown();
+ method public void setLevel(java.util.logging.Level);
+ method public void setLoggerName(String);
+ method public void setMessage(String);
+ method public void setMillis(long);
+ method public void setParameters(Object[]);
+ method public void setResourceBundle(java.util.ResourceBundle);
+ method public void setResourceBundleName(String);
+ method public void setSequenceNumber(long);
+ method public void setSourceClassName(String);
+ method public void setSourceMethodName(String);
+ method public void setThreadID(int);
+ method public void setThrown(Throwable);
+ }
+
+ public class Logger {
+ ctor protected Logger(@Nullable String, @Nullable String);
+ method public void addHandler(@NonNull java.util.logging.Handler) throws java.lang.SecurityException;
+ method public void config(@Nullable String);
+ method public void config(@NonNull java.util.function.Supplier<java.lang.String>);
+ method public void entering(@Nullable String, @Nullable String);
+ method public void entering(@Nullable String, @Nullable String, @Nullable Object);
+ method public void entering(@Nullable String, @Nullable String, @Nullable Object[]);
+ method public void exiting(@Nullable String, @Nullable String);
+ method public void exiting(@Nullable String, @Nullable String, @Nullable Object);
+ method public void fine(@Nullable String);
+ method public void fine(@NonNull java.util.function.Supplier<java.lang.String>);
+ method public void finer(@Nullable String);
+ method public void finer(@NonNull java.util.function.Supplier<java.lang.String>);
+ method public void finest(@Nullable String);
+ method public void finest(@NonNull java.util.function.Supplier<java.lang.String>);
+ method @NonNull public static java.util.logging.Logger getAnonymousLogger();
+ method @NonNull public static java.util.logging.Logger getAnonymousLogger(@Nullable String);
+ method @Nullable public java.util.logging.Filter getFilter();
+ method @NonNull public static final java.util.logging.Logger getGlobal();
+ method @NonNull public java.util.logging.Handler[] getHandlers();
+ method @Nullable public java.util.logging.Level getLevel();
+ method @NonNull public static java.util.logging.Logger getLogger(@NonNull String);
+ method @NonNull public static java.util.logging.Logger getLogger(@NonNull String, @Nullable String);
+ method @Nullable public String getName();
+ method @Nullable public java.util.logging.Logger getParent();
+ method @Nullable public java.util.ResourceBundle getResourceBundle();
+ method @Nullable public String getResourceBundleName();
+ method public boolean getUseParentHandlers();
+ method public void info(@Nullable String);
+ method public void info(@NonNull java.util.function.Supplier<java.lang.String>);
+ method public boolean isLoggable(@NonNull java.util.logging.Level);
+ method public void log(@NonNull java.util.logging.LogRecord);
+ method public void log(@NonNull java.util.logging.Level, @Nullable String);
+ method public void log(@NonNull java.util.logging.Level, @NonNull java.util.function.Supplier<java.lang.String>);
+ method public void log(@NonNull java.util.logging.Level, @Nullable String, @Nullable Object);
+ method public void log(@NonNull java.util.logging.Level, @Nullable String, @Nullable Object[]);
+ method public void log(@NonNull java.util.logging.Level, @Nullable String, @Nullable Throwable);
+ method public void log(@NonNull java.util.logging.Level, @Nullable Throwable, @NonNull java.util.function.Supplier<java.lang.String>);
+ method public void logp(@NonNull java.util.logging.Level, @Nullable String, @Nullable String, @Nullable String);
+ method public void logp(@NonNull java.util.logging.Level, @Nullable String, @Nullable String, @NonNull java.util.function.Supplier<java.lang.String>);
+ method public void logp(@NonNull java.util.logging.Level, @Nullable String, @Nullable String, @Nullable String, @Nullable Object);
+ method public void logp(@NonNull java.util.logging.Level, @Nullable String, @Nullable String, @Nullable String, @Nullable Object[]);
+ method public void logp(@NonNull java.util.logging.Level, @Nullable String, @Nullable String, @Nullable String, @Nullable Throwable);
+ method public void logp(@NonNull java.util.logging.Level, @Nullable String, @Nullable String, @Nullable Throwable, @NonNull java.util.function.Supplier<java.lang.String>);
+ method @Deprecated public void logrb(@NonNull java.util.logging.Level, @Nullable String, @Nullable String, @Nullable String, @Nullable String);
+ method @Deprecated public void logrb(@NonNull java.util.logging.Level, @Nullable String, @Nullable String, @Nullable String, @Nullable String, @Nullable Object);
+ method @Deprecated public void logrb(@NonNull java.util.logging.Level, @Nullable String, @Nullable String, @Nullable String, @Nullable String, @Nullable Object[]);
+ method public void logrb(@NonNull java.util.logging.Level, @Nullable String, @Nullable String, @Nullable java.util.ResourceBundle, @Nullable String, @Nullable java.lang.Object...);
+ method @Deprecated public void logrb(@NonNull java.util.logging.Level, @Nullable String, @Nullable String, @Nullable String, @Nullable String, @Nullable Throwable);
+ method public void logrb(@NonNull java.util.logging.Level, @Nullable String, @Nullable String, @Nullable java.util.ResourceBundle, @Nullable String, @Nullable Throwable);
+ method public void removeHandler(@Nullable java.util.logging.Handler) throws java.lang.SecurityException;
+ method public void setFilter(@Nullable java.util.logging.Filter) throws java.lang.SecurityException;
+ method public void setLevel(@Nullable java.util.logging.Level) throws java.lang.SecurityException;
+ method public void setParent(@NonNull java.util.logging.Logger);
+ method public void setResourceBundle(@NonNull java.util.ResourceBundle);
+ method public void setUseParentHandlers(boolean);
+ method public void severe(@Nullable String);
+ method public void severe(@NonNull java.util.function.Supplier<java.lang.String>);
+ method public void throwing(@Nullable String, @Nullable String, @Nullable Throwable);
+ method public void warning(@Nullable String);
+ method public void warning(@NonNull java.util.function.Supplier<java.lang.String>);
+ field @NonNull public static final String GLOBAL_LOGGER_NAME = "global";
+ field @Deprecated @NonNull public static final java.util.logging.Logger global;
+ }
+
+ public interface LoggingMXBean {
+ method public String getLoggerLevel(String);
+ method public java.util.List<java.lang.String> getLoggerNames();
+ method public String getParentLoggerName(String);
+ method public void setLoggerLevel(String, String);
+ }
+
+ public final class LoggingPermission extends java.security.BasicPermission {
+ ctor public LoggingPermission(String, String) throws java.lang.IllegalArgumentException;
+ }
+
+ public class MemoryHandler extends java.util.logging.Handler {
+ ctor public MemoryHandler();
+ ctor public MemoryHandler(java.util.logging.Handler, int, java.util.logging.Level);
+ method public void close() throws java.lang.SecurityException;
+ method public void flush();
+ method public java.util.logging.Level getPushLevel();
+ method public void publish(java.util.logging.LogRecord);
+ method public void push();
+ method public void setPushLevel(java.util.logging.Level) throws java.lang.SecurityException;
+ }
+
+ public class SimpleFormatter extends java.util.logging.Formatter {
+ ctor public SimpleFormatter();
+ method public String format(java.util.logging.LogRecord);
+ }
+
+ public class SocketHandler extends java.util.logging.StreamHandler {
+ ctor public SocketHandler() throws java.io.IOException;
+ ctor public SocketHandler(String, int) throws java.io.IOException;
+ }
+
+ public class StreamHandler extends java.util.logging.Handler {
+ ctor public StreamHandler();
+ ctor public StreamHandler(java.io.OutputStream, java.util.logging.Formatter);
+ method public void close() throws java.lang.SecurityException;
+ method public void flush();
+ method public void publish(java.util.logging.LogRecord);
+ method protected void setOutputStream(java.io.OutputStream) throws java.lang.SecurityException;
+ }
+
+ public class XMLFormatter extends java.util.logging.Formatter {
+ ctor public XMLFormatter();
+ method public String format(java.util.logging.LogRecord);
+ }
+
+}
+
+package java.util.prefs {
+
+ public abstract class AbstractPreferences extends java.util.prefs.Preferences {
+ ctor protected AbstractPreferences(java.util.prefs.AbstractPreferences, String);
+ method public String absolutePath();
+ method public void addNodeChangeListener(java.util.prefs.NodeChangeListener);
+ method public void addPreferenceChangeListener(java.util.prefs.PreferenceChangeListener);
+ method protected final java.util.prefs.AbstractPreferences[] cachedChildren();
+ method protected abstract java.util.prefs.AbstractPreferences childSpi(String);
+ method public String[] childrenNames() throws java.util.prefs.BackingStoreException;
+ method protected abstract String[] childrenNamesSpi() throws java.util.prefs.BackingStoreException;
+ method public void clear() throws java.util.prefs.BackingStoreException;
+ method public void exportNode(java.io.OutputStream) throws java.util.prefs.BackingStoreException, java.io.IOException;
+ method public void exportSubtree(java.io.OutputStream) throws java.util.prefs.BackingStoreException, java.io.IOException;
+ method public void flush() throws java.util.prefs.BackingStoreException;
+ method protected abstract void flushSpi() throws java.util.prefs.BackingStoreException;
+ method public String get(String, String);
+ method public boolean getBoolean(String, boolean);
+ method public byte[] getByteArray(String, byte[]);
+ method protected java.util.prefs.AbstractPreferences getChild(String) throws java.util.prefs.BackingStoreException;
+ method public double getDouble(String, double);
+ method public float getFloat(String, float);
+ method public int getInt(String, int);
+ method public long getLong(String, long);
+ method protected abstract String getSpi(String);
+ method protected boolean isRemoved();
+ method public boolean isUserNode();
+ method public String[] keys() throws java.util.prefs.BackingStoreException;
+ method protected abstract String[] keysSpi() throws java.util.prefs.BackingStoreException;
+ method public String name();
+ method public java.util.prefs.Preferences node(String);
+ method public boolean nodeExists(String) throws java.util.prefs.BackingStoreException;
+ method public java.util.prefs.Preferences parent();
+ method public void put(String, String);
+ method public void putBoolean(String, boolean);
+ method public void putByteArray(String, byte[]);
+ method public void putDouble(String, double);
+ method public void putFloat(String, float);
+ method public void putInt(String, int);
+ method public void putLong(String, long);
+ method protected abstract void putSpi(String, String);
+ method public void remove(String);
+ method public void removeNode() throws java.util.prefs.BackingStoreException;
+ method public void removeNodeChangeListener(java.util.prefs.NodeChangeListener);
+ method protected abstract void removeNodeSpi() throws java.util.prefs.BackingStoreException;
+ method public void removePreferenceChangeListener(java.util.prefs.PreferenceChangeListener);
+ method protected abstract void removeSpi(String);
+ method public void sync() throws java.util.prefs.BackingStoreException;
+ method protected abstract void syncSpi() throws java.util.prefs.BackingStoreException;
+ field protected final Object lock;
+ field protected boolean newNode;
+ }
+
+ public class BackingStoreException extends java.lang.Exception {
+ ctor public BackingStoreException(String);
+ ctor public BackingStoreException(Throwable);
+ }
+
+ public class InvalidPreferencesFormatException extends java.lang.Exception {
+ ctor public InvalidPreferencesFormatException(Throwable);
+ ctor public InvalidPreferencesFormatException(String);
+ ctor public InvalidPreferencesFormatException(String, Throwable);
+ }
+
+ public class NodeChangeEvent extends java.util.EventObject {
+ ctor public NodeChangeEvent(java.util.prefs.Preferences, java.util.prefs.Preferences);
+ method public java.util.prefs.Preferences getChild();
+ method public java.util.prefs.Preferences getParent();
+ }
+
+ public interface NodeChangeListener extends java.util.EventListener {
+ method public void childAdded(java.util.prefs.NodeChangeEvent);
+ method public void childRemoved(java.util.prefs.NodeChangeEvent);
+ }
+
+ public class PreferenceChangeEvent extends java.util.EventObject {
+ ctor public PreferenceChangeEvent(java.util.prefs.Preferences, String, String);
+ method public String getKey();
+ method public String getNewValue();
+ method public java.util.prefs.Preferences getNode();
+ }
+
+ @java.lang.FunctionalInterface public interface PreferenceChangeListener extends java.util.EventListener {
+ method public void preferenceChange(java.util.prefs.PreferenceChangeEvent);
+ }
+
+ public abstract class Preferences {
+ ctor protected Preferences();
+ method public abstract String absolutePath();
+ method public abstract void addNodeChangeListener(java.util.prefs.NodeChangeListener);
+ method public abstract void addPreferenceChangeListener(java.util.prefs.PreferenceChangeListener);
+ method public abstract String[] childrenNames() throws java.util.prefs.BackingStoreException;
+ method public abstract void clear() throws java.util.prefs.BackingStoreException;
+ method public abstract void exportNode(java.io.OutputStream) throws java.util.prefs.BackingStoreException, java.io.IOException;
+ method public abstract void exportSubtree(java.io.OutputStream) throws java.util.prefs.BackingStoreException, java.io.IOException;
+ method public abstract void flush() throws java.util.prefs.BackingStoreException;
+ method public abstract String get(String, String);
+ method public abstract boolean getBoolean(String, boolean);
+ method public abstract byte[] getByteArray(String, byte[]);
+ method public abstract double getDouble(String, double);
+ method public abstract float getFloat(String, float);
+ method public abstract int getInt(String, int);
+ method public abstract long getLong(String, long);
+ method public static void importPreferences(java.io.InputStream) throws java.io.IOException, java.util.prefs.InvalidPreferencesFormatException;
+ method public abstract boolean isUserNode();
+ method public abstract String[] keys() throws java.util.prefs.BackingStoreException;
+ method public abstract String name();
+ method public abstract java.util.prefs.Preferences node(String);
+ method public abstract boolean nodeExists(String) throws java.util.prefs.BackingStoreException;
+ method public abstract java.util.prefs.Preferences parent();
+ method public abstract void put(String, String);
+ method public abstract void putBoolean(String, boolean);
+ method public abstract void putByteArray(String, byte[]);
+ method public abstract void putDouble(String, double);
+ method public abstract void putFloat(String, float);
+ method public abstract void putInt(String, int);
+ method public abstract void putLong(String, long);
+ method public abstract void remove(String);
+ method public abstract void removeNode() throws java.util.prefs.BackingStoreException;
+ method public abstract void removeNodeChangeListener(java.util.prefs.NodeChangeListener);
+ method public abstract void removePreferenceChangeListener(java.util.prefs.PreferenceChangeListener);
+ method public abstract void sync() throws java.util.prefs.BackingStoreException;
+ method public static java.util.prefs.Preferences systemNodeForPackage(Class<?>);
+ method public static java.util.prefs.Preferences systemRoot();
+ method public abstract String toString();
+ method public static java.util.prefs.Preferences userNodeForPackage(Class<?>);
+ method public static java.util.prefs.Preferences userRoot();
+ field public static final int MAX_KEY_LENGTH = 80; // 0x50
+ field public static final int MAX_NAME_LENGTH = 80; // 0x50
+ field public static final int MAX_VALUE_LENGTH = 8192; // 0x2000
+ }
+
+ public interface PreferencesFactory {
+ method public java.util.prefs.Preferences systemRoot();
+ method public java.util.prefs.Preferences userRoot();
+ }
+
+}
+
+package java.util.regex {
+
+ public interface MatchResult {
+ method public int end();
+ method public int end(int);
+ method public String group();
+ method public String group(int);
+ method public int groupCount();
+ method public int start();
+ method public int start(int);
+ }
+
+ public final class Matcher implements java.util.regex.MatchResult {
+ method @NonNull public java.util.regex.Matcher appendReplacement(@NonNull StringBuffer, @NonNull String);
+ method @NonNull public StringBuffer appendTail(@NonNull StringBuffer);
+ method public int end();
+ method public int end(int);
+ method public int end(@NonNull String);
+ method public boolean find();
+ method public boolean find(int);
+ method @NonNull public String group();
+ method @Nullable public String group(int);
+ method @Nullable public String group(@NonNull String);
+ method public int groupCount();
+ method public boolean hasAnchoringBounds();
+ method public boolean hasTransparentBounds();
+ method public boolean hitEnd();
+ method public boolean lookingAt();
+ method public boolean matches();
+ method @NonNull public java.util.regex.Pattern pattern();
+ method @NonNull public static String quoteReplacement(@NonNull String);
+ method @NonNull public java.util.regex.Matcher region(int, int);
+ method public int regionEnd();
+ method public int regionStart();
+ method @NonNull public String replaceAll(@NonNull String);
+ method @NonNull public String replaceFirst(@NonNull String);
+ method public boolean requireEnd();
+ method @NonNull public java.util.regex.Matcher reset();
+ method @NonNull public java.util.regex.Matcher reset(@NonNull CharSequence);
+ method public int start();
+ method public int start(int);
+ method public int start(@NonNull String);
+ method @NonNull public java.util.regex.MatchResult toMatchResult();
+ method @NonNull public java.util.regex.Matcher useAnchoringBounds(boolean);
+ method @NonNull public java.util.regex.Matcher usePattern(@NonNull java.util.regex.Pattern);
+ method @NonNull public java.util.regex.Matcher useTransparentBounds(boolean);
+ }
+
+ public final class Pattern implements java.io.Serializable {
+ method @NonNull public java.util.function.Predicate<java.lang.String> asPredicate();
+ method @NonNull public static java.util.regex.Pattern compile(@NonNull String);
+ method @NonNull public static java.util.regex.Pattern compile(@NonNull String, int);
+ method public int flags();
+ method @NonNull public java.util.regex.Matcher matcher(@NonNull CharSequence);
+ method public static boolean matches(@NonNull String, @NonNull CharSequence);
+ method @NonNull public String pattern();
+ method @NonNull public static String quote(@NonNull String);
+ method @NonNull public String[] split(@NonNull CharSequence, int);
+ method @NonNull public String[] split(@NonNull CharSequence);
+ method @NonNull public java.util.stream.Stream<java.lang.String> splitAsStream(@NonNull CharSequence);
+ field public static final int CANON_EQ = 128; // 0x80
+ field public static final int CASE_INSENSITIVE = 2; // 0x2
+ field public static final int COMMENTS = 4; // 0x4
+ field public static final int DOTALL = 32; // 0x20
+ field public static final int LITERAL = 16; // 0x10
+ field public static final int MULTILINE = 8; // 0x8
+ field public static final int UNICODE_CASE = 64; // 0x40
+ field public static final int UNICODE_CHARACTER_CLASS = 256; // 0x100
+ field public static final int UNIX_LINES = 1; // 0x1
+ }
+
+ public class PatternSyntaxException extends java.lang.IllegalArgumentException {
+ ctor public PatternSyntaxException(String, String, int);
+ method public String getDescription();
+ method public int getIndex();
+ method public String getPattern();
+ }
+
+}
+
+package java.util.stream {
+
+ public interface BaseStream<T, S extends java.util.stream.BaseStream<T, S>> extends java.lang.AutoCloseable {
+ method public void close();
+ method public boolean isParallel();
+ method public java.util.Iterator<T> iterator();
+ method public S onClose(Runnable);
+ method public S parallel();
+ method public S sequential();
+ method public java.util.Spliterator<T> spliterator();
+ method public S unordered();
+ }
+
+ public interface Collector<T, A, R> {
+ method public java.util.function.BiConsumer<A,T> accumulator();
+ method public java.util.Set<java.util.stream.Collector.Characteristics> characteristics();
+ method public java.util.function.BinaryOperator<A> combiner();
+ method public java.util.function.Function<A,R> finisher();
+ method public static <T, R> java.util.stream.Collector<T,R,R> of(java.util.function.Supplier<R>, java.util.function.BiConsumer<R,T>, java.util.function.BinaryOperator<R>, java.util.stream.Collector.Characteristics...);
+ method public static <T, A, R> java.util.stream.Collector<T,A,R> of(java.util.function.Supplier<A>, java.util.function.BiConsumer<A,T>, java.util.function.BinaryOperator<A>, java.util.function.Function<A,R>, java.util.stream.Collector.Characteristics...);
+ method public java.util.function.Supplier<A> supplier();
+ }
+
+ public enum Collector.Characteristics {
+ enum_constant public static final java.util.stream.Collector.Characteristics CONCURRENT;
+ enum_constant public static final java.util.stream.Collector.Characteristics IDENTITY_FINISH;
+ enum_constant public static final java.util.stream.Collector.Characteristics UNORDERED;
+ }
+
+ public final class Collectors {
+ method public static <T> java.util.stream.Collector<T,?,java.lang.Double> averagingDouble(java.util.function.ToDoubleFunction<? super T>);
+ method public static <T> java.util.stream.Collector<T,?,java.lang.Double> averagingInt(java.util.function.ToIntFunction<? super T>);
+ method public static <T> java.util.stream.Collector<T,?,java.lang.Double> averagingLong(java.util.function.ToLongFunction<? super T>);
+ method public static <T, A, R, RR> java.util.stream.Collector<T,A,RR> collectingAndThen(java.util.stream.Collector<T,A,R>, java.util.function.Function<R,RR>);
+ method public static <T> java.util.stream.Collector<T,?,java.lang.Long> counting();
+ method public static <T, A, R> java.util.stream.Collector<T,?,R> filtering(java.util.function.Predicate<? super T>, java.util.stream.Collector<? super T,A,R>);
+ method public static <T, U, A, R> java.util.stream.Collector<T,?,R> flatMapping(java.util.function.Function<? super T,? extends java.util.stream.Stream<? extends U>>, java.util.stream.Collector<? super U,A,R>);
+ method public static <T, K> java.util.stream.Collector<T,?,java.util.Map<K,java.util.List<T>>> groupingBy(java.util.function.Function<? super T,? extends K>);
+ method public static <T, K, A, D> java.util.stream.Collector<T,?,java.util.Map<K,D>> groupingBy(java.util.function.Function<? super T,? extends K>, java.util.stream.Collector<? super T,A,D>);
+ method public static <T, K, D, A, M extends java.util.Map<K, D>> java.util.stream.Collector<T,?,M> groupingBy(java.util.function.Function<? super T,? extends K>, java.util.function.Supplier<M>, java.util.stream.Collector<? super T,A,D>);
+ method public static <T, K> java.util.stream.Collector<T,?,java.util.concurrent.ConcurrentMap<K,java.util.List<T>>> groupingByConcurrent(java.util.function.Function<? super T,? extends K>);
+ method public static <T, K, A, D> java.util.stream.Collector<T,?,java.util.concurrent.ConcurrentMap<K,D>> groupingByConcurrent(java.util.function.Function<? super T,? extends K>, java.util.stream.Collector<? super T,A,D>);
+ method public static <T, K, A, D, M extends java.util.concurrent.ConcurrentMap<K, D>> java.util.stream.Collector<T,?,M> groupingByConcurrent(java.util.function.Function<? super T,? extends K>, java.util.function.Supplier<M>, java.util.stream.Collector<? super T,A,D>);
+ method public static java.util.stream.Collector<java.lang.CharSequence,?,java.lang.String> joining();
+ method public static java.util.stream.Collector<java.lang.CharSequence,?,java.lang.String> joining(CharSequence);
+ method public static java.util.stream.Collector<java.lang.CharSequence,?,java.lang.String> joining(CharSequence, CharSequence, CharSequence);
+ method public static <T, U, A, R> java.util.stream.Collector<T,?,R> mapping(java.util.function.Function<? super T,? extends U>, java.util.stream.Collector<? super U,A,R>);
+ method public static <T> java.util.stream.Collector<T,?,java.util.Optional<T>> maxBy(java.util.Comparator<? super T>);
+ method public static <T> java.util.stream.Collector<T,?,java.util.Optional<T>> minBy(java.util.Comparator<? super T>);
+ method public static <T> java.util.stream.Collector<T,?,java.util.Map<java.lang.Boolean,java.util.List<T>>> partitioningBy(java.util.function.Predicate<? super T>);
+ method public static <T, D, A> java.util.stream.Collector<T,?,java.util.Map<java.lang.Boolean,D>> partitioningBy(java.util.function.Predicate<? super T>, java.util.stream.Collector<? super T,A,D>);
+ method public static <T> java.util.stream.Collector<T,?,T> reducing(T, java.util.function.BinaryOperator<T>);
+ method public static <T> java.util.stream.Collector<T,?,java.util.Optional<T>> reducing(java.util.function.BinaryOperator<T>);
+ method public static <T, U> java.util.stream.Collector<T,?,U> reducing(U, java.util.function.Function<? super T,? extends U>, java.util.function.BinaryOperator<U>);
+ method public static <T> java.util.stream.Collector<T,?,java.util.DoubleSummaryStatistics> summarizingDouble(java.util.function.ToDoubleFunction<? super T>);
+ method public static <T> java.util.stream.Collector<T,?,java.util.IntSummaryStatistics> summarizingInt(java.util.function.ToIntFunction<? super T>);
+ method public static <T> java.util.stream.Collector<T,?,java.util.LongSummaryStatistics> summarizingLong(java.util.function.ToLongFunction<? super T>);
+ method public static <T> java.util.stream.Collector<T,?,java.lang.Double> summingDouble(java.util.function.ToDoubleFunction<? super T>);
+ method public static <T> java.util.stream.Collector<T,?,java.lang.Integer> summingInt(java.util.function.ToIntFunction<? super T>);
+ method public static <T> java.util.stream.Collector<T,?,java.lang.Long> summingLong(java.util.function.ToLongFunction<? super T>);
+ method public static <T, C extends java.util.Collection<T>> java.util.stream.Collector<T,?,C> toCollection(java.util.function.Supplier<C>);
+ method public static <T, K, U> java.util.stream.Collector<T,?,java.util.concurrent.ConcurrentMap<K,U>> toConcurrentMap(java.util.function.Function<? super T,? extends K>, java.util.function.Function<? super T,? extends U>);
+ method public static <T, K, U> java.util.stream.Collector<T,?,java.util.concurrent.ConcurrentMap<K,U>> toConcurrentMap(java.util.function.Function<? super T,? extends K>, java.util.function.Function<? super T,? extends U>, java.util.function.BinaryOperator<U>);
+ method public static <T, K, U, M extends java.util.concurrent.ConcurrentMap<K, U>> java.util.stream.Collector<T,?,M> toConcurrentMap(java.util.function.Function<? super T,? extends K>, java.util.function.Function<? super T,? extends U>, java.util.function.BinaryOperator<U>, java.util.function.Supplier<M>);
+ method public static <T> java.util.stream.Collector<T,?,java.util.List<T>> toList();
+ method public static <T, K, U> java.util.stream.Collector<T,?,java.util.Map<K,U>> toMap(java.util.function.Function<? super T,? extends K>, java.util.function.Function<? super T,? extends U>);
+ method public static <T, K, U> java.util.stream.Collector<T,?,java.util.Map<K,U>> toMap(java.util.function.Function<? super T,? extends K>, java.util.function.Function<? super T,? extends U>, java.util.function.BinaryOperator<U>);
+ method public static <T, K, U, M extends java.util.Map<K, U>> java.util.stream.Collector<T,?,M> toMap(java.util.function.Function<? super T,? extends K>, java.util.function.Function<? super T,? extends U>, java.util.function.BinaryOperator<U>, java.util.function.Supplier<M>);
+ method public static <T> java.util.stream.Collector<T,?,java.util.Set<T>> toSet();
+ method public static <T> java.util.stream.Collector<T,?,java.util.List<T>> toUnmodifiableList();
+ method public static <T, K, U> java.util.stream.Collector<T,?,java.util.Map<K,U>> toUnmodifiableMap(java.util.function.Function<? super T,? extends K>, java.util.function.Function<? super T,? extends U>);
+ method public static <T, K, U> java.util.stream.Collector<T,?,java.util.Map<K,U>> toUnmodifiableMap(java.util.function.Function<? super T,? extends K>, java.util.function.Function<? super T,? extends U>, java.util.function.BinaryOperator<U>);
+ method public static <T> java.util.stream.Collector<T,?,java.util.Set<T>> toUnmodifiableSet();
+ }
+
+ public interface DoubleStream extends java.util.stream.BaseStream<java.lang.Double,java.util.stream.DoubleStream> {
+ method public boolean allMatch(java.util.function.DoublePredicate);
+ method public boolean anyMatch(java.util.function.DoublePredicate);
+ method public java.util.OptionalDouble average();
+ method public java.util.stream.Stream<java.lang.Double> boxed();
+ method public static java.util.stream.DoubleStream.Builder builder();
+ method public <R> R collect(java.util.function.Supplier<R>, java.util.function.ObjDoubleConsumer<R>, java.util.function.BiConsumer<R,R>);
+ method public static java.util.stream.DoubleStream concat(java.util.stream.DoubleStream, java.util.stream.DoubleStream);
+ method public long count();
+ method public java.util.stream.DoubleStream distinct();
+ method public static java.util.stream.DoubleStream empty();
+ method public java.util.stream.DoubleStream filter(java.util.function.DoublePredicate);
+ method public java.util.OptionalDouble findAny();
+ method public java.util.OptionalDouble findFirst();
+ method public java.util.stream.DoubleStream flatMap(java.util.function.DoubleFunction<? extends java.util.stream.DoubleStream>);
+ method public void forEach(java.util.function.DoubleConsumer);
+ method public void forEachOrdered(java.util.function.DoubleConsumer);
+ method public static java.util.stream.DoubleStream generate(java.util.function.DoubleSupplier);
+ method public static java.util.stream.DoubleStream iterate(double, java.util.function.DoubleUnaryOperator);
+ method public java.util.PrimitiveIterator.OfDouble iterator();
+ method public java.util.stream.DoubleStream limit(long);
+ method public java.util.stream.DoubleStream map(java.util.function.DoubleUnaryOperator);
+ method public java.util.stream.IntStream mapToInt(java.util.function.DoubleToIntFunction);
+ method public java.util.stream.LongStream mapToLong(java.util.function.DoubleToLongFunction);
+ method public <U> java.util.stream.Stream<U> mapToObj(java.util.function.DoubleFunction<? extends U>);
+ method public java.util.OptionalDouble max();
+ method public java.util.OptionalDouble min();
+ method public boolean noneMatch(java.util.function.DoublePredicate);
+ method public static java.util.stream.DoubleStream of(double);
+ method public static java.util.stream.DoubleStream of(double...);
+ method public java.util.stream.DoubleStream parallel();
+ method public java.util.stream.DoubleStream peek(java.util.function.DoubleConsumer);
+ method public double reduce(double, java.util.function.DoubleBinaryOperator);
+ method public java.util.OptionalDouble reduce(java.util.function.DoubleBinaryOperator);
+ method public java.util.stream.DoubleStream sequential();
+ method public java.util.stream.DoubleStream skip(long);
+ method public java.util.stream.DoubleStream sorted();
+ method public java.util.Spliterator.OfDouble spliterator();
+ method public double sum();
+ method public java.util.DoubleSummaryStatistics summaryStatistics();
+ method public double[] toArray();
+ }
+
+ public static interface DoubleStream.Builder extends java.util.function.DoubleConsumer {
+ method public default java.util.stream.DoubleStream.Builder add(double);
+ method public java.util.stream.DoubleStream build();
+ }
+
+ public interface IntStream extends java.util.stream.BaseStream<java.lang.Integer,java.util.stream.IntStream> {
+ method public boolean allMatch(java.util.function.IntPredicate);
+ method public boolean anyMatch(java.util.function.IntPredicate);
+ method public java.util.stream.DoubleStream asDoubleStream();
+ method public java.util.stream.LongStream asLongStream();
+ method public java.util.OptionalDouble average();
+ method public java.util.stream.Stream<java.lang.Integer> boxed();
+ method public static java.util.stream.IntStream.Builder builder();
+ method public <R> R collect(java.util.function.Supplier<R>, java.util.function.ObjIntConsumer<R>, java.util.function.BiConsumer<R,R>);
+ method public static java.util.stream.IntStream concat(java.util.stream.IntStream, java.util.stream.IntStream);
+ method public long count();
+ method public java.util.stream.IntStream distinct();
+ method public static java.util.stream.IntStream empty();
+ method public java.util.stream.IntStream filter(java.util.function.IntPredicate);
+ method public java.util.OptionalInt findAny();
+ method public java.util.OptionalInt findFirst();
+ method public java.util.stream.IntStream flatMap(java.util.function.IntFunction<? extends java.util.stream.IntStream>);
+ method public void forEach(java.util.function.IntConsumer);
+ method public void forEachOrdered(java.util.function.IntConsumer);
+ method public static java.util.stream.IntStream generate(java.util.function.IntSupplier);
+ method public static java.util.stream.IntStream iterate(int, java.util.function.IntUnaryOperator);
+ method public java.util.PrimitiveIterator.OfInt iterator();
+ method public java.util.stream.IntStream limit(long);
+ method public java.util.stream.IntStream map(java.util.function.IntUnaryOperator);
+ method public java.util.stream.DoubleStream mapToDouble(java.util.function.IntToDoubleFunction);
+ method public java.util.stream.LongStream mapToLong(java.util.function.IntToLongFunction);
+ method public <U> java.util.stream.Stream<U> mapToObj(java.util.function.IntFunction<? extends U>);
+ method public java.util.OptionalInt max();
+ method public java.util.OptionalInt min();
+ method public boolean noneMatch(java.util.function.IntPredicate);
+ method public static java.util.stream.IntStream of(int);
+ method public static java.util.stream.IntStream of(int...);
+ method public java.util.stream.IntStream parallel();
+ method public java.util.stream.IntStream peek(java.util.function.IntConsumer);
+ method public static java.util.stream.IntStream range(int, int);
+ method public static java.util.stream.IntStream rangeClosed(int, int);
+ method public int reduce(int, java.util.function.IntBinaryOperator);
+ method public java.util.OptionalInt reduce(java.util.function.IntBinaryOperator);
+ method public java.util.stream.IntStream sequential();
+ method public java.util.stream.IntStream skip(long);
+ method public java.util.stream.IntStream sorted();
+ method public java.util.Spliterator.OfInt spliterator();
+ method public int sum();
+ method public java.util.IntSummaryStatistics summaryStatistics();
+ method public int[] toArray();
+ }
+
+ public static interface IntStream.Builder extends java.util.function.IntConsumer {
+ method public default java.util.stream.IntStream.Builder add(int);
+ method public java.util.stream.IntStream build();
+ }
+
+ public interface LongStream extends java.util.stream.BaseStream<java.lang.Long,java.util.stream.LongStream> {
+ method public boolean allMatch(java.util.function.LongPredicate);
+ method public boolean anyMatch(java.util.function.LongPredicate);
+ method public java.util.stream.DoubleStream asDoubleStream();
+ method public java.util.OptionalDouble average();
+ method public java.util.stream.Stream<java.lang.Long> boxed();
+ method public static java.util.stream.LongStream.Builder builder();
+ method public <R> R collect(java.util.function.Supplier<R>, java.util.function.ObjLongConsumer<R>, java.util.function.BiConsumer<R,R>);
+ method public static java.util.stream.LongStream concat(java.util.stream.LongStream, java.util.stream.LongStream);
+ method public long count();
+ method public java.util.stream.LongStream distinct();
+ method public static java.util.stream.LongStream empty();
+ method public java.util.stream.LongStream filter(java.util.function.LongPredicate);
+ method public java.util.OptionalLong findAny();
+ method public java.util.OptionalLong findFirst();
+ method public java.util.stream.LongStream flatMap(java.util.function.LongFunction<? extends java.util.stream.LongStream>);
+ method public void forEach(java.util.function.LongConsumer);
+ method public void forEachOrdered(java.util.function.LongConsumer);
+ method public static java.util.stream.LongStream generate(java.util.function.LongSupplier);
+ method public static java.util.stream.LongStream iterate(long, java.util.function.LongUnaryOperator);
+ method public java.util.PrimitiveIterator.OfLong iterator();
+ method public java.util.stream.LongStream limit(long);
+ method public java.util.stream.LongStream map(java.util.function.LongUnaryOperator);
+ method public java.util.stream.DoubleStream mapToDouble(java.util.function.LongToDoubleFunction);
+ method public java.util.stream.IntStream mapToInt(java.util.function.LongToIntFunction);
+ method public <U> java.util.stream.Stream<U> mapToObj(java.util.function.LongFunction<? extends U>);
+ method public java.util.OptionalLong max();
+ method public java.util.OptionalLong min();
+ method public boolean noneMatch(java.util.function.LongPredicate);
+ method public static java.util.stream.LongStream of(long);
+ method public static java.util.stream.LongStream of(long...);
+ method public java.util.stream.LongStream parallel();
+ method public java.util.stream.LongStream peek(java.util.function.LongConsumer);
+ method public static java.util.stream.LongStream range(long, long);
+ method public static java.util.stream.LongStream rangeClosed(long, long);
+ method public long reduce(long, java.util.function.LongBinaryOperator);
+ method public java.util.OptionalLong reduce(java.util.function.LongBinaryOperator);
+ method public java.util.stream.LongStream sequential();
+ method public java.util.stream.LongStream skip(long);
+ method public java.util.stream.LongStream sorted();
+ method public java.util.Spliterator.OfLong spliterator();
+ method public long sum();
+ method public java.util.LongSummaryStatistics summaryStatistics();
+ method public long[] toArray();
+ }
+
+ public static interface LongStream.Builder extends java.util.function.LongConsumer {
+ method public default java.util.stream.LongStream.Builder add(long);
+ method public java.util.stream.LongStream build();
+ }
+
+ public interface Stream<T> extends java.util.stream.BaseStream<T,java.util.stream.Stream<T>> {
+ method public boolean allMatch(java.util.function.Predicate<? super T>);
+ method public boolean anyMatch(java.util.function.Predicate<? super T>);
+ method public static <T> java.util.stream.Stream.Builder<T> builder();
+ method public <R> R collect(java.util.function.Supplier<R>, java.util.function.BiConsumer<R,? super T>, java.util.function.BiConsumer<R,R>);
+ method public <R, A> R collect(java.util.stream.Collector<? super T,A,R>);
+ method public static <T> java.util.stream.Stream<T> concat(java.util.stream.Stream<? extends T>, java.util.stream.Stream<? extends T>);
+ method public long count();
+ method public java.util.stream.Stream<T> distinct();
+ method public static <T> java.util.stream.Stream<T> empty();
+ method public java.util.stream.Stream<T> filter(java.util.function.Predicate<? super T>);
+ method public java.util.Optional<T> findAny();
+ method public java.util.Optional<T> findFirst();
+ method public <R> java.util.stream.Stream<R> flatMap(java.util.function.Function<? super T,? extends java.util.stream.Stream<? extends R>>);
+ method public java.util.stream.DoubleStream flatMapToDouble(java.util.function.Function<? super T,? extends java.util.stream.DoubleStream>);
+ method public java.util.stream.IntStream flatMapToInt(java.util.function.Function<? super T,? extends java.util.stream.IntStream>);
+ method public java.util.stream.LongStream flatMapToLong(java.util.function.Function<? super T,? extends java.util.stream.LongStream>);
+ method public void forEach(java.util.function.Consumer<? super T>);
+ method public void forEachOrdered(java.util.function.Consumer<? super T>);
+ method public static <T> java.util.stream.Stream<T> generate(java.util.function.Supplier<T>);
+ method public static <T> java.util.stream.Stream<T> iterate(T, java.util.function.UnaryOperator<T>);
+ method public java.util.stream.Stream<T> limit(long);
+ method public <R> java.util.stream.Stream<R> map(java.util.function.Function<? super T,? extends R>);
+ method public java.util.stream.DoubleStream mapToDouble(java.util.function.ToDoubleFunction<? super T>);
+ method public java.util.stream.IntStream mapToInt(java.util.function.ToIntFunction<? super T>);
+ method public java.util.stream.LongStream mapToLong(java.util.function.ToLongFunction<? super T>);
+ method public java.util.Optional<T> max(java.util.Comparator<? super T>);
+ method public java.util.Optional<T> min(java.util.Comparator<? super T>);
+ method public boolean noneMatch(java.util.function.Predicate<? super T>);
+ method public static <T> java.util.stream.Stream<T> of(T);
+ method @java.lang.SafeVarargs public static <T> java.util.stream.Stream<T> of(T...);
+ method public java.util.stream.Stream<T> peek(java.util.function.Consumer<? super T>);
+ method public T reduce(T, java.util.function.BinaryOperator<T>);
+ method public java.util.Optional<T> reduce(java.util.function.BinaryOperator<T>);
+ method public <U> U reduce(U, java.util.function.BiFunction<U,? super T,U>, java.util.function.BinaryOperator<U>);
+ method public java.util.stream.Stream<T> skip(long);
+ method public java.util.stream.Stream<T> sorted();
+ method public java.util.stream.Stream<T> sorted(java.util.Comparator<? super T>);
+ method public Object[] toArray();
+ method public <A> A[] toArray(java.util.function.IntFunction<A[]>);
+ }
+
+ public static interface Stream.Builder<T> extends java.util.function.Consumer<T> {
+ method public default java.util.stream.Stream.Builder<T> add(T);
+ method public java.util.stream.Stream<T> build();
+ }
+
+ public final class StreamSupport {
+ method public static java.util.stream.DoubleStream doubleStream(java.util.Spliterator.OfDouble, boolean);
+ method public static java.util.stream.DoubleStream doubleStream(java.util.function.Supplier<? extends java.util.Spliterator.OfDouble>, int, boolean);
+ method public static java.util.stream.IntStream intStream(java.util.Spliterator.OfInt, boolean);
+ method public static java.util.stream.IntStream intStream(java.util.function.Supplier<? extends java.util.Spliterator.OfInt>, int, boolean);
+ method public static java.util.stream.LongStream longStream(java.util.Spliterator.OfLong, boolean);
+ method public static java.util.stream.LongStream longStream(java.util.function.Supplier<? extends java.util.Spliterator.OfLong>, int, boolean);
+ method public static <T> java.util.stream.Stream<T> stream(java.util.Spliterator<T>, boolean);
+ method public static <T> java.util.stream.Stream<T> stream(java.util.function.Supplier<? extends java.util.Spliterator<T>>, int, boolean);
+ }
+
+}
+
+package java.util.zip {
+
+ public class Adler32 implements java.util.zip.Checksum {
+ ctor public Adler32();
+ method public long getValue();
+ method public void reset();
+ method public void update(int);
+ method public void update(byte[], int, int);
+ method public void update(byte[]);
+ method public void update(java.nio.ByteBuffer);
+ }
+
+ public class CRC32 implements java.util.zip.Checksum {
+ ctor public CRC32();
+ method public long getValue();
+ method public void reset();
+ method public void update(int);
+ method public void update(byte[], int, int);
+ method public void update(byte[]);
+ method public void update(java.nio.ByteBuffer);
+ }
+
+ public class CheckedInputStream extends java.io.FilterInputStream {
+ ctor public CheckedInputStream(java.io.InputStream, java.util.zip.Checksum);
+ method public java.util.zip.Checksum getChecksum();
+ }
+
+ public class CheckedOutputStream extends java.io.FilterOutputStream {
+ ctor public CheckedOutputStream(java.io.OutputStream, java.util.zip.Checksum);
+ method public java.util.zip.Checksum getChecksum();
+ }
+
+ public interface Checksum {
+ method public long getValue();
+ method public void reset();
+ method public void update(int);
+ method public void update(byte[], int, int);
+ }
+
+ public class DataFormatException extends java.lang.Exception {
+ ctor public DataFormatException();
+ ctor public DataFormatException(String);
+ }
+
+ public class Deflater {
+ ctor public Deflater(int, boolean);
+ ctor public Deflater(int);
+ ctor public Deflater();
+ method public int deflate(byte[], int, int);
+ method public int deflate(byte[]);
+ method public int deflate(byte[], int, int, int);
+ method public void end();
+ method protected void finalize();
+ method public void finish();
+ method public boolean finished();
+ method public int getAdler();
+ method public long getBytesRead();
+ method public long getBytesWritten();
+ method public int getTotalIn();
+ method public int getTotalOut();
+ method public boolean needsInput();
+ method public void reset();
+ method public void setDictionary(byte[], int, int);
+ method public void setDictionary(byte[]);
+ method public void setInput(byte[], int, int);
+ method public void setInput(byte[]);
+ method public void setLevel(int);
+ method public void setStrategy(int);
+ field public static final int BEST_COMPRESSION = 9; // 0x9
+ field public static final int BEST_SPEED = 1; // 0x1
+ field public static final int DEFAULT_COMPRESSION = -1; // 0xffffffff
+ field public static final int DEFAULT_STRATEGY = 0; // 0x0
+ field public static final int DEFLATED = 8; // 0x8
+ field public static final int FILTERED = 1; // 0x1
+ field public static final int FULL_FLUSH = 3; // 0x3
+ field public static final int HUFFMAN_ONLY = 2; // 0x2
+ field public static final int NO_COMPRESSION = 0; // 0x0
+ field public static final int NO_FLUSH = 0; // 0x0
+ field public static final int SYNC_FLUSH = 2; // 0x2
+ }
+
+ public class DeflaterInputStream extends java.io.FilterInputStream {
+ ctor public DeflaterInputStream(java.io.InputStream);
+ ctor public DeflaterInputStream(java.io.InputStream, java.util.zip.Deflater);
+ ctor public DeflaterInputStream(java.io.InputStream, java.util.zip.Deflater, int);
+ field protected final byte[] buf;
+ field protected final java.util.zip.Deflater def;
+ }
+
+ public class DeflaterOutputStream extends java.io.FilterOutputStream {
+ ctor public DeflaterOutputStream(java.io.OutputStream, java.util.zip.Deflater, int, boolean);
+ ctor public DeflaterOutputStream(java.io.OutputStream, java.util.zip.Deflater, int);
+ ctor public DeflaterOutputStream(java.io.OutputStream, java.util.zip.Deflater, boolean);
+ ctor public DeflaterOutputStream(java.io.OutputStream, java.util.zip.Deflater);
+ ctor public DeflaterOutputStream(java.io.OutputStream, boolean);
+ ctor public DeflaterOutputStream(java.io.OutputStream);
+ method protected void deflate() throws java.io.IOException;
+ method public void finish() throws java.io.IOException;
+ field protected byte[] buf;
+ field protected java.util.zip.Deflater def;
+ }
+
+ public class GZIPInputStream extends java.util.zip.InflaterInputStream {
+ ctor public GZIPInputStream(java.io.InputStream, int) throws java.io.IOException;
+ ctor public GZIPInputStream(java.io.InputStream) throws java.io.IOException;
+ field public static final int GZIP_MAGIC = 35615; // 0x8b1f
+ field protected java.util.zip.CRC32 crc;
+ field protected boolean eos;
+ }
+
+ public class GZIPOutputStream extends java.util.zip.DeflaterOutputStream {
+ ctor public GZIPOutputStream(java.io.OutputStream, int) throws java.io.IOException;
+ ctor public GZIPOutputStream(java.io.OutputStream, int, boolean) throws java.io.IOException;
+ ctor public GZIPOutputStream(java.io.OutputStream) throws java.io.IOException;
+ ctor public GZIPOutputStream(java.io.OutputStream, boolean) throws java.io.IOException;
+ field protected java.util.zip.CRC32 crc;
+ }
+
+ public class Inflater {
+ ctor public Inflater(boolean);
+ ctor public Inflater();
+ method public void end();
+ method protected void finalize();
+ method public boolean finished();
+ method public int getAdler();
+ method public long getBytesRead();
+ method public long getBytesWritten();
+ method public int getRemaining();
+ method public int getTotalIn();
+ method public int getTotalOut();
+ method public int inflate(byte[], int, int) throws java.util.zip.DataFormatException;
+ method public int inflate(byte[]) throws java.util.zip.DataFormatException;
+ method public boolean needsDictionary();
+ method public boolean needsInput();
+ method public void reset();
+ method public void setDictionary(byte[], int, int);
+ method public void setDictionary(byte[]);
+ method public void setInput(byte[], int, int);
+ method public void setInput(byte[]);
+ }
+
+ public class InflaterInputStream extends java.io.FilterInputStream {
+ ctor public InflaterInputStream(java.io.InputStream, java.util.zip.Inflater, int);
+ ctor public InflaterInputStream(java.io.InputStream, java.util.zip.Inflater);
+ ctor public InflaterInputStream(java.io.InputStream);
+ method protected void fill() throws java.io.IOException;
+ field protected byte[] buf;
+ field @Deprecated protected boolean closed;
+ field protected java.util.zip.Inflater inf;
+ field protected int len;
+ }
+
+ public class InflaterOutputStream extends java.io.FilterOutputStream {
+ ctor public InflaterOutputStream(java.io.OutputStream);
+ ctor public InflaterOutputStream(java.io.OutputStream, java.util.zip.Inflater);
+ ctor public InflaterOutputStream(java.io.OutputStream, java.util.zip.Inflater, int);
+ method public void finish() throws java.io.IOException;
+ field protected final byte[] buf;
+ field protected final java.util.zip.Inflater inf;
+ }
+
+ public class ZipEntry implements java.lang.Cloneable {
+ ctor public ZipEntry(String);
+ ctor public ZipEntry(java.util.zip.ZipEntry);
+ method public Object clone();
+ method public String getComment();
+ method public long getCompressedSize();
+ method public long getCrc();
+ method public java.nio.file.attribute.FileTime getCreationTime();
+ method public byte[] getExtra();
+ method public java.nio.file.attribute.FileTime getLastAccessTime();
+ method public java.nio.file.attribute.FileTime getLastModifiedTime();
+ method public int getMethod();
+ method public String getName();
+ method public long getSize();
+ method public long getTime();
+ method public boolean isDirectory();
+ method public void setComment(String);
+ method public void setCompressedSize(long);
+ method public void setCrc(long);
+ method public java.util.zip.ZipEntry setCreationTime(java.nio.file.attribute.FileTime);
+ method public void setExtra(byte[]);
+ method public java.util.zip.ZipEntry setLastAccessTime(java.nio.file.attribute.FileTime);
+ method public java.util.zip.ZipEntry setLastModifiedTime(java.nio.file.attribute.FileTime);
+ method public void setMethod(int);
+ method public void setSize(long);
+ method public void setTime(long);
+ field public static final int CENATT = 36; // 0x24
+ field public static final int CENATX = 38; // 0x26
+ field public static final int CENCOM = 32; // 0x20
+ field public static final int CENCRC = 16; // 0x10
+ field public static final int CENDSK = 34; // 0x22
+ field public static final int CENEXT = 30; // 0x1e
+ field public static final int CENFLG = 8; // 0x8
+ field public static final int CENHDR = 46; // 0x2e
+ field public static final int CENHOW = 10; // 0xa
+ field public static final int CENLEN = 24; // 0x18
+ field public static final int CENNAM = 28; // 0x1c
+ field public static final int CENOFF = 42; // 0x2a
+ field public static final long CENSIG = 33639248L; // 0x2014b50L
+ field public static final int CENSIZ = 20; // 0x14
+ field public static final int CENTIM = 12; // 0xc
+ field public static final int CENVEM = 4; // 0x4
+ field public static final int CENVER = 6; // 0x6
+ field public static final int DEFLATED = 8; // 0x8
+ field public static final int ENDCOM = 20; // 0x14
+ field public static final int ENDHDR = 22; // 0x16
+ field public static final int ENDOFF = 16; // 0x10
+ field public static final long ENDSIG = 101010256L; // 0x6054b50L
+ field public static final int ENDSIZ = 12; // 0xc
+ field public static final int ENDSUB = 8; // 0x8
+ field public static final int ENDTOT = 10; // 0xa
+ field public static final int EXTCRC = 4; // 0x4
+ field public static final int EXTHDR = 16; // 0x10
+ field public static final int EXTLEN = 12; // 0xc
+ field public static final long EXTSIG = 134695760L; // 0x8074b50L
+ field public static final int EXTSIZ = 8; // 0x8
+ field public static final int LOCCRC = 14; // 0xe
+ field public static final int LOCEXT = 28; // 0x1c
+ field public static final int LOCFLG = 6; // 0x6
+ field public static final int LOCHDR = 30; // 0x1e
+ field public static final int LOCHOW = 8; // 0x8
+ field public static final int LOCLEN = 22; // 0x16
+ field public static final int LOCNAM = 26; // 0x1a
+ field public static final long LOCSIG = 67324752L; // 0x4034b50L
+ field public static final int LOCSIZ = 18; // 0x12
+ field public static final int LOCTIM = 10; // 0xa
+ field public static final int LOCVER = 4; // 0x4
+ field public static final int STORED = 0; // 0x0
+ }
+
+ public class ZipError extends java.lang.InternalError {
+ ctor public ZipError(String);
+ }
+
+ public class ZipException extends java.io.IOException {
+ ctor public ZipException();
+ ctor public ZipException(String);
+ }
+
+ public class ZipFile implements java.io.Closeable {
+ ctor public ZipFile(String) throws java.io.IOException;
+ ctor public ZipFile(java.io.File, int) throws java.io.IOException;
+ ctor public ZipFile(java.io.File) throws java.io.IOException, java.util.zip.ZipException;
+ ctor public ZipFile(java.io.File, int, java.nio.charset.Charset) throws java.io.IOException;
+ ctor public ZipFile(String, java.nio.charset.Charset) throws java.io.IOException;
+ ctor public ZipFile(java.io.File, java.nio.charset.Charset) throws java.io.IOException;
+ method public void close() throws java.io.IOException;
+ method public java.util.Enumeration<? extends java.util.zip.ZipEntry> entries();
+ method protected void finalize() throws java.io.IOException;
+ method public String getComment();
+ method public java.util.zip.ZipEntry getEntry(String);
+ method public java.io.InputStream getInputStream(java.util.zip.ZipEntry) throws java.io.IOException;
+ method public String getName();
+ method public int size();
+ method public java.util.stream.Stream<? extends java.util.zip.ZipEntry> stream();
+ field public static final int CENATT = 36; // 0x24
+ field public static final int CENATX = 38; // 0x26
+ field public static final int CENCOM = 32; // 0x20
+ field public static final int CENCRC = 16; // 0x10
+ field public static final int CENDSK = 34; // 0x22
+ field public static final int CENEXT = 30; // 0x1e
+ field public static final int CENFLG = 8; // 0x8
+ field public static final int CENHDR = 46; // 0x2e
+ field public static final int CENHOW = 10; // 0xa
+ field public static final int CENLEN = 24; // 0x18
+ field public static final int CENNAM = 28; // 0x1c
+ field public static final int CENOFF = 42; // 0x2a
+ field public static final long CENSIG = 33639248L; // 0x2014b50L
+ field public static final int CENSIZ = 20; // 0x14
+ field public static final int CENTIM = 12; // 0xc
+ field public static final int CENVEM = 4; // 0x4
+ field public static final int CENVER = 6; // 0x6
+ field public static final int ENDCOM = 20; // 0x14
+ field public static final int ENDHDR = 22; // 0x16
+ field public static final int ENDOFF = 16; // 0x10
+ field public static final long ENDSIG = 101010256L; // 0x6054b50L
+ field public static final int ENDSIZ = 12; // 0xc
+ field public static final int ENDSUB = 8; // 0x8
+ field public static final int ENDTOT = 10; // 0xa
+ field public static final int EXTCRC = 4; // 0x4
+ field public static final int EXTHDR = 16; // 0x10
+ field public static final int EXTLEN = 12; // 0xc
+ field public static final long EXTSIG = 134695760L; // 0x8074b50L
+ field public static final int EXTSIZ = 8; // 0x8
+ field public static final int LOCCRC = 14; // 0xe
+ field public static final int LOCEXT = 28; // 0x1c
+ field public static final int LOCFLG = 6; // 0x6
+ field public static final int LOCHDR = 30; // 0x1e
+ field public static final int LOCHOW = 8; // 0x8
+ field public static final int LOCLEN = 22; // 0x16
+ field public static final int LOCNAM = 26; // 0x1a
+ field public static final long LOCSIG = 67324752L; // 0x4034b50L
+ field public static final int LOCSIZ = 18; // 0x12
+ field public static final int LOCTIM = 10; // 0xa
+ field public static final int LOCVER = 4; // 0x4
+ field public static final int OPEN_DELETE = 4; // 0x4
+ field public static final int OPEN_READ = 1; // 0x1
+ }
+
+ public class ZipInputStream extends java.util.zip.InflaterInputStream {
+ ctor public ZipInputStream(java.io.InputStream);
+ ctor public ZipInputStream(java.io.InputStream, java.nio.charset.Charset);
+ method public void closeEntry() throws java.io.IOException;
+ method protected java.util.zip.ZipEntry createZipEntry(String);
+ method public java.util.zip.ZipEntry getNextEntry() throws java.io.IOException;
+ field public static final int CENATT = 36; // 0x24
+ field public static final int CENATX = 38; // 0x26
+ field public static final int CENCOM = 32; // 0x20
+ field public static final int CENCRC = 16; // 0x10
+ field public static final int CENDSK = 34; // 0x22
+ field public static final int CENEXT = 30; // 0x1e
+ field public static final int CENFLG = 8; // 0x8
+ field public static final int CENHDR = 46; // 0x2e
+ field public static final int CENHOW = 10; // 0xa
+ field public static final int CENLEN = 24; // 0x18
+ field public static final int CENNAM = 28; // 0x1c
+ field public static final int CENOFF = 42; // 0x2a
+ field public static final long CENSIG = 33639248L; // 0x2014b50L
+ field public static final int CENSIZ = 20; // 0x14
+ field public static final int CENTIM = 12; // 0xc
+ field public static final int CENVEM = 4; // 0x4
+ field public static final int CENVER = 6; // 0x6
+ field public static final int ENDCOM = 20; // 0x14
+ field public static final int ENDHDR = 22; // 0x16
+ field public static final int ENDOFF = 16; // 0x10
+ field public static final long ENDSIG = 101010256L; // 0x6054b50L
+ field public static final int ENDSIZ = 12; // 0xc
+ field public static final int ENDSUB = 8; // 0x8
+ field public static final int ENDTOT = 10; // 0xa
+ field public static final int EXTCRC = 4; // 0x4
+ field public static final int EXTHDR = 16; // 0x10
+ field public static final int EXTLEN = 12; // 0xc
+ field public static final long EXTSIG = 134695760L; // 0x8074b50L
+ field public static final int EXTSIZ = 8; // 0x8
+ field public static final int LOCCRC = 14; // 0xe
+ field public static final int LOCEXT = 28; // 0x1c
+ field public static final int LOCFLG = 6; // 0x6
+ field public static final int LOCHDR = 30; // 0x1e
+ field public static final int LOCHOW = 8; // 0x8
+ field public static final int LOCLEN = 22; // 0x16
+ field public static final int LOCNAM = 26; // 0x1a
+ field public static final long LOCSIG = 67324752L; // 0x4034b50L
+ field public static final int LOCSIZ = 18; // 0x12
+ field public static final int LOCTIM = 10; // 0xa
+ field public static final int LOCVER = 4; // 0x4
+ }
+
+ public class ZipOutputStream extends java.util.zip.DeflaterOutputStream {
+ ctor public ZipOutputStream(java.io.OutputStream);
+ ctor public ZipOutputStream(java.io.OutputStream, java.nio.charset.Charset);
+ method public void closeEntry() throws java.io.IOException;
+ method public void putNextEntry(java.util.zip.ZipEntry) throws java.io.IOException;
+ method public void setComment(String);
+ method public void setLevel(int);
+ method public void setMethod(int);
+ field public static final int CENATT = 36; // 0x24
+ field public static final int CENATX = 38; // 0x26
+ field public static final int CENCOM = 32; // 0x20
+ field public static final int CENCRC = 16; // 0x10
+ field public static final int CENDSK = 34; // 0x22
+ field public static final int CENEXT = 30; // 0x1e
+ field public static final int CENFLG = 8; // 0x8
+ field public static final int CENHDR = 46; // 0x2e
+ field public static final int CENHOW = 10; // 0xa
+ field public static final int CENLEN = 24; // 0x18
+ field public static final int CENNAM = 28; // 0x1c
+ field public static final int CENOFF = 42; // 0x2a
+ field public static final long CENSIG = 33639248L; // 0x2014b50L
+ field public static final int CENSIZ = 20; // 0x14
+ field public static final int CENTIM = 12; // 0xc
+ field public static final int CENVEM = 4; // 0x4
+ field public static final int CENVER = 6; // 0x6
+ field public static final int DEFLATED = 8; // 0x8
+ field public static final int ENDCOM = 20; // 0x14
+ field public static final int ENDHDR = 22; // 0x16
+ field public static final int ENDOFF = 16; // 0x10
+ field public static final long ENDSIG = 101010256L; // 0x6054b50L
+ field public static final int ENDSIZ = 12; // 0xc
+ field public static final int ENDSUB = 8; // 0x8
+ field public static final int ENDTOT = 10; // 0xa
+ field public static final int EXTCRC = 4; // 0x4
+ field public static final int EXTHDR = 16; // 0x10
+ field public static final int EXTLEN = 12; // 0xc
+ field public static final long EXTSIG = 134695760L; // 0x8074b50L
+ field public static final int EXTSIZ = 8; // 0x8
+ field public static final int LOCCRC = 14; // 0xe
+ field public static final int LOCEXT = 28; // 0x1c
+ field public static final int LOCFLG = 6; // 0x6
+ field public static final int LOCHDR = 30; // 0x1e
+ field public static final int LOCHOW = 8; // 0x8
+ field public static final int LOCLEN = 22; // 0x16
+ field public static final int LOCNAM = 26; // 0x1a
+ field public static final long LOCSIG = 67324752L; // 0x4034b50L
+ field public static final int LOCSIZ = 18; // 0x12
+ field public static final int LOCTIM = 10; // 0xa
+ field public static final int LOCVER = 4; // 0x4
+ field public static final int STORED = 0; // 0x0
+ }
+
+}
+
+package javax.crypto {
+
+ public class AEADBadTagException extends javax.crypto.BadPaddingException {
+ ctor public AEADBadTagException();
+ ctor public AEADBadTagException(String);
+ }
+
+ public class BadPaddingException extends java.security.GeneralSecurityException {
+ ctor public BadPaddingException();
+ ctor public BadPaddingException(String);
+ }
+
+ public class Cipher {
+ ctor protected Cipher(javax.crypto.CipherSpi, java.security.Provider, String);
+ method public final byte[] doFinal() throws javax.crypto.BadPaddingException, javax.crypto.IllegalBlockSizeException;
+ method public final int doFinal(byte[], int) throws javax.crypto.BadPaddingException, javax.crypto.IllegalBlockSizeException, javax.crypto.ShortBufferException;
+ method public final byte[] doFinal(byte[]) throws javax.crypto.BadPaddingException, javax.crypto.IllegalBlockSizeException;
+ method public final byte[] doFinal(byte[], int, int) throws javax.crypto.BadPaddingException, javax.crypto.IllegalBlockSizeException;
+ method public final int doFinal(byte[], int, int, byte[]) throws javax.crypto.BadPaddingException, javax.crypto.IllegalBlockSizeException, javax.crypto.ShortBufferException;
+ method public final int doFinal(byte[], int, int, byte[], int) throws javax.crypto.BadPaddingException, javax.crypto.IllegalBlockSizeException, javax.crypto.ShortBufferException;
+ method public final int doFinal(java.nio.ByteBuffer, java.nio.ByteBuffer) throws javax.crypto.BadPaddingException, javax.crypto.IllegalBlockSizeException, javax.crypto.ShortBufferException;
+ method public final String getAlgorithm();
+ method public final int getBlockSize();
+ method public final javax.crypto.ExemptionMechanism getExemptionMechanism();
+ method public final byte[] getIV();
+ method public static final javax.crypto.Cipher getInstance(String) throws java.security.NoSuchAlgorithmException, javax.crypto.NoSuchPaddingException;
+ method public static final javax.crypto.Cipher getInstance(String, String) throws java.security.NoSuchAlgorithmException, javax.crypto.NoSuchPaddingException, java.security.NoSuchProviderException;
+ method public static final javax.crypto.Cipher getInstance(String, java.security.Provider) throws java.security.NoSuchAlgorithmException, javax.crypto.NoSuchPaddingException;
+ method public static final int getMaxAllowedKeyLength(String) throws java.security.NoSuchAlgorithmException;
+ method public static final java.security.spec.AlgorithmParameterSpec getMaxAllowedParameterSpec(String) throws java.security.NoSuchAlgorithmException;
+ method public final int getOutputSize(int);
+ method public final java.security.AlgorithmParameters getParameters();
+ method public final java.security.Provider getProvider();
+ method public final void init(int, java.security.Key) throws java.security.InvalidKeyException;
+ method public final void init(int, java.security.Key, java.security.SecureRandom) throws java.security.InvalidKeyException;
+ method public final void init(int, java.security.Key, java.security.spec.AlgorithmParameterSpec) throws java.security.InvalidAlgorithmParameterException, java.security.InvalidKeyException;
+ method public final void init(int, java.security.Key, java.security.spec.AlgorithmParameterSpec, java.security.SecureRandom) throws java.security.InvalidAlgorithmParameterException, java.security.InvalidKeyException;
+ method public final void init(int, java.security.Key, java.security.AlgorithmParameters) throws java.security.InvalidAlgorithmParameterException, java.security.InvalidKeyException;
+ method public final void init(int, java.security.Key, java.security.AlgorithmParameters, java.security.SecureRandom) throws java.security.InvalidAlgorithmParameterException, java.security.InvalidKeyException;
+ method public final void init(int, java.security.cert.Certificate) throws java.security.InvalidKeyException;
+ method public final void init(int, java.security.cert.Certificate, java.security.SecureRandom) throws java.security.InvalidKeyException;
+ method public final java.security.Key unwrap(byte[], String, int) throws java.security.InvalidKeyException, java.security.NoSuchAlgorithmException;
+ method public final byte[] update(byte[]);
+ method public final byte[] update(byte[], int, int);
+ method public final int update(byte[], int, int, byte[]) throws javax.crypto.ShortBufferException;
+ method public final int update(byte[], int, int, byte[], int) throws javax.crypto.ShortBufferException;
+ method public final int update(java.nio.ByteBuffer, java.nio.ByteBuffer) throws javax.crypto.ShortBufferException;
+ method public final void updateAAD(byte[]);
+ method public final void updateAAD(byte[], int, int);
+ method public final void updateAAD(java.nio.ByteBuffer);
+ method public final byte[] wrap(java.security.Key) throws javax.crypto.IllegalBlockSizeException, java.security.InvalidKeyException;
+ field public static final int DECRYPT_MODE = 2; // 0x2
+ field public static final int ENCRYPT_MODE = 1; // 0x1
+ field public static final int PRIVATE_KEY = 2; // 0x2
+ field public static final int PUBLIC_KEY = 1; // 0x1
+ field public static final int SECRET_KEY = 3; // 0x3
+ field public static final int UNWRAP_MODE = 4; // 0x4
+ field public static final int WRAP_MODE = 3; // 0x3
+ }
+
+ public class CipherInputStream extends java.io.FilterInputStream {
+ ctor public CipherInputStream(java.io.InputStream, javax.crypto.Cipher);
+ ctor protected CipherInputStream(java.io.InputStream);
+ }
+
+ public class CipherOutputStream extends java.io.FilterOutputStream {
+ ctor public CipherOutputStream(java.io.OutputStream, javax.crypto.Cipher);
+ ctor protected CipherOutputStream(java.io.OutputStream);
+ }
+
+ public abstract class CipherSpi {
+ ctor public CipherSpi();
+ method protected abstract byte[] engineDoFinal(byte[], int, int) throws javax.crypto.BadPaddingException, javax.crypto.IllegalBlockSizeException;
+ method protected abstract int engineDoFinal(byte[], int, int, byte[], int) throws javax.crypto.BadPaddingException, javax.crypto.IllegalBlockSizeException, javax.crypto.ShortBufferException;
+ method protected int engineDoFinal(java.nio.ByteBuffer, java.nio.ByteBuffer) throws javax.crypto.BadPaddingException, javax.crypto.IllegalBlockSizeException, javax.crypto.ShortBufferException;
+ method protected abstract int engineGetBlockSize();
+ method protected abstract byte[] engineGetIV();
+ method protected int engineGetKeySize(java.security.Key) throws java.security.InvalidKeyException;
+ method protected abstract int engineGetOutputSize(int);
+ method protected abstract java.security.AlgorithmParameters engineGetParameters();
+ method protected abstract void engineInit(int, java.security.Key, java.security.SecureRandom) throws java.security.InvalidKeyException;
+ method protected abstract void engineInit(int, java.security.Key, java.security.spec.AlgorithmParameterSpec, java.security.SecureRandom) throws java.security.InvalidAlgorithmParameterException, java.security.InvalidKeyException;
+ method protected abstract void engineInit(int, java.security.Key, java.security.AlgorithmParameters, java.security.SecureRandom) throws java.security.InvalidAlgorithmParameterException, java.security.InvalidKeyException;
+ method protected abstract void engineSetMode(String) throws java.security.NoSuchAlgorithmException;
+ method protected abstract void engineSetPadding(String) throws javax.crypto.NoSuchPaddingException;
+ method protected java.security.Key engineUnwrap(byte[], String, int) throws java.security.InvalidKeyException, java.security.NoSuchAlgorithmException;
+ method protected abstract byte[] engineUpdate(byte[], int, int);
+ method protected abstract int engineUpdate(byte[], int, int, byte[], int) throws javax.crypto.ShortBufferException;
+ method protected int engineUpdate(java.nio.ByteBuffer, java.nio.ByteBuffer) throws javax.crypto.ShortBufferException;
+ method protected void engineUpdateAAD(byte[], int, int);
+ method protected void engineUpdateAAD(java.nio.ByteBuffer);
+ method protected byte[] engineWrap(java.security.Key) throws javax.crypto.IllegalBlockSizeException, java.security.InvalidKeyException;
+ }
+
+ public class EncryptedPrivateKeyInfo {
+ ctor public EncryptedPrivateKeyInfo(byte[]) throws java.io.IOException;
+ ctor public EncryptedPrivateKeyInfo(String, byte[]) throws java.security.NoSuchAlgorithmException;
+ ctor public EncryptedPrivateKeyInfo(java.security.AlgorithmParameters, byte[]) throws java.security.NoSuchAlgorithmException;
+ method public String getAlgName();
+ method public java.security.AlgorithmParameters getAlgParameters();
+ method public byte[] getEncoded() throws java.io.IOException;
+ method public byte[] getEncryptedData();
+ method public java.security.spec.PKCS8EncodedKeySpec getKeySpec(javax.crypto.Cipher) throws java.security.spec.InvalidKeySpecException;
+ method public java.security.spec.PKCS8EncodedKeySpec getKeySpec(java.security.Key) throws java.security.InvalidKeyException, java.security.NoSuchAlgorithmException;
+ method public java.security.spec.PKCS8EncodedKeySpec getKeySpec(java.security.Key, String) throws java.security.InvalidKeyException, java.security.NoSuchAlgorithmException, java.security.NoSuchProviderException;
+ method public java.security.spec.PKCS8EncodedKeySpec getKeySpec(java.security.Key, java.security.Provider) throws java.security.InvalidKeyException, java.security.NoSuchAlgorithmException;
+ }
+
+ public class ExemptionMechanism {
+ ctor protected ExemptionMechanism(javax.crypto.ExemptionMechanismSpi, java.security.Provider, String);
+ method public final byte[] genExemptionBlob() throws javax.crypto.ExemptionMechanismException, java.lang.IllegalStateException;
+ method public final int genExemptionBlob(byte[]) throws javax.crypto.ExemptionMechanismException, java.lang.IllegalStateException, javax.crypto.ShortBufferException;
+ method public final int genExemptionBlob(byte[], int) throws javax.crypto.ExemptionMechanismException, java.lang.IllegalStateException, javax.crypto.ShortBufferException;
+ method public static final javax.crypto.ExemptionMechanism getInstance(String) throws java.security.NoSuchAlgorithmException;
+ method public static final javax.crypto.ExemptionMechanism getInstance(String, String) throws java.security.NoSuchAlgorithmException, java.security.NoSuchProviderException;
+ method public static final javax.crypto.ExemptionMechanism getInstance(String, java.security.Provider) throws java.security.NoSuchAlgorithmException;
+ method public final String getName();
+ method public final int getOutputSize(int) throws java.lang.IllegalStateException;
+ method public final java.security.Provider getProvider();
+ method public final void init(java.security.Key) throws javax.crypto.ExemptionMechanismException, java.security.InvalidKeyException;
+ method public final void init(java.security.Key, java.security.spec.AlgorithmParameterSpec) throws javax.crypto.ExemptionMechanismException, java.security.InvalidAlgorithmParameterException, java.security.InvalidKeyException;
+ method public final void init(java.security.Key, java.security.AlgorithmParameters) throws javax.crypto.ExemptionMechanismException, java.security.InvalidAlgorithmParameterException, java.security.InvalidKeyException;
+ method public final boolean isCryptoAllowed(java.security.Key) throws javax.crypto.ExemptionMechanismException;
+ }
+
+ public class ExemptionMechanismException extends java.security.GeneralSecurityException {
+ ctor public ExemptionMechanismException();
+ ctor public ExemptionMechanismException(String);
+ }
+
+ public abstract class ExemptionMechanismSpi {
+ ctor public ExemptionMechanismSpi();
+ method protected abstract byte[] engineGenExemptionBlob() throws javax.crypto.ExemptionMechanismException;
+ method protected abstract int engineGenExemptionBlob(byte[], int) throws javax.crypto.ExemptionMechanismException, javax.crypto.ShortBufferException;
+ method protected abstract int engineGetOutputSize(int);
+ method protected abstract void engineInit(java.security.Key) throws javax.crypto.ExemptionMechanismException, java.security.InvalidKeyException;
+ method protected abstract void engineInit(java.security.Key, java.security.spec.AlgorithmParameterSpec) throws javax.crypto.ExemptionMechanismException, java.security.InvalidAlgorithmParameterException, java.security.InvalidKeyException;
+ method protected abstract void engineInit(java.security.Key, java.security.AlgorithmParameters) throws javax.crypto.ExemptionMechanismException, java.security.InvalidAlgorithmParameterException, java.security.InvalidKeyException;
+ }
+
+ public class IllegalBlockSizeException extends java.security.GeneralSecurityException {
+ ctor public IllegalBlockSizeException();
+ ctor public IllegalBlockSizeException(String);
+ }
+
+ public class KeyAgreement {
+ ctor protected KeyAgreement(javax.crypto.KeyAgreementSpi, java.security.Provider, String);
+ method public final java.security.Key doPhase(java.security.Key, boolean) throws java.lang.IllegalStateException, java.security.InvalidKeyException;
+ method public final byte[] generateSecret() throws java.lang.IllegalStateException;
+ method public final int generateSecret(byte[], int) throws java.lang.IllegalStateException, javax.crypto.ShortBufferException;
+ method public final javax.crypto.SecretKey generateSecret(String) throws java.lang.IllegalStateException, java.security.InvalidKeyException, java.security.NoSuchAlgorithmException;
+ method public final String getAlgorithm();
+ method public static final javax.crypto.KeyAgreement getInstance(String) throws java.security.NoSuchAlgorithmException;
+ method public static final javax.crypto.KeyAgreement getInstance(String, String) throws java.security.NoSuchAlgorithmException, java.security.NoSuchProviderException;
+ method public static final javax.crypto.KeyAgreement getInstance(String, java.security.Provider) throws java.security.NoSuchAlgorithmException;
+ method public final java.security.Provider getProvider();
+ method public final void init(java.security.Key) throws java.security.InvalidKeyException;
+ method public final void init(java.security.Key, java.security.SecureRandom) throws java.security.InvalidKeyException;
+ method public final void init(java.security.Key, java.security.spec.AlgorithmParameterSpec) throws java.security.InvalidAlgorithmParameterException, java.security.InvalidKeyException;
+ method public final void init(java.security.Key, java.security.spec.AlgorithmParameterSpec, java.security.SecureRandom) throws java.security.InvalidAlgorithmParameterException, java.security.InvalidKeyException;
+ }
+
+ public abstract class KeyAgreementSpi {
+ ctor public KeyAgreementSpi();
+ method protected abstract java.security.Key engineDoPhase(java.security.Key, boolean) throws java.lang.IllegalStateException, java.security.InvalidKeyException;
+ method protected abstract byte[] engineGenerateSecret() throws java.lang.IllegalStateException;
+ method protected abstract int engineGenerateSecret(byte[], int) throws java.lang.IllegalStateException, javax.crypto.ShortBufferException;
+ method protected abstract javax.crypto.SecretKey engineGenerateSecret(String) throws java.lang.IllegalStateException, java.security.InvalidKeyException, java.security.NoSuchAlgorithmException;
+ method protected abstract void engineInit(java.security.Key, java.security.SecureRandom) throws java.security.InvalidKeyException;
+ method protected abstract void engineInit(java.security.Key, java.security.spec.AlgorithmParameterSpec, java.security.SecureRandom) throws java.security.InvalidAlgorithmParameterException, java.security.InvalidKeyException;
+ }
+
+ public class KeyGenerator {
+ ctor protected KeyGenerator(javax.crypto.KeyGeneratorSpi, java.security.Provider, String);
+ method public final javax.crypto.SecretKey generateKey();
+ method public final String getAlgorithm();
+ method public static final javax.crypto.KeyGenerator getInstance(String) throws java.security.NoSuchAlgorithmException;
+ method public static final javax.crypto.KeyGenerator getInstance(String, String) throws java.security.NoSuchAlgorithmException, java.security.NoSuchProviderException;
+ method public static final javax.crypto.KeyGenerator getInstance(String, java.security.Provider) throws java.security.NoSuchAlgorithmException;
+ method public final java.security.Provider getProvider();
+ method public final void init(java.security.SecureRandom);
+ method public final void init(java.security.spec.AlgorithmParameterSpec) throws java.security.InvalidAlgorithmParameterException;
+ method public final void init(java.security.spec.AlgorithmParameterSpec, java.security.SecureRandom) throws java.security.InvalidAlgorithmParameterException;
+ method public final void init(int);
+ method public final void init(int, java.security.SecureRandom);
+ }
+
+ public abstract class KeyGeneratorSpi {
+ ctor public KeyGeneratorSpi();
+ method protected abstract javax.crypto.SecretKey engineGenerateKey();
+ method protected abstract void engineInit(java.security.SecureRandom);
+ method protected abstract void engineInit(java.security.spec.AlgorithmParameterSpec, java.security.SecureRandom) throws java.security.InvalidAlgorithmParameterException;
+ method protected abstract void engineInit(int, java.security.SecureRandom);
+ }
+
+ public class Mac implements java.lang.Cloneable {
+ ctor protected Mac(javax.crypto.MacSpi, java.security.Provider, String);
+ method public final Object clone() throws java.lang.CloneNotSupportedException;
+ method public final byte[] doFinal() throws java.lang.IllegalStateException;
+ method public final void doFinal(byte[], int) throws java.lang.IllegalStateException, javax.crypto.ShortBufferException;
+ method public final byte[] doFinal(byte[]) throws java.lang.IllegalStateException;
+ method public final String getAlgorithm();
+ method public static final javax.crypto.Mac getInstance(String) throws java.security.NoSuchAlgorithmException;
+ method public static final javax.crypto.Mac getInstance(String, String) throws java.security.NoSuchAlgorithmException, java.security.NoSuchProviderException;
+ method public static final javax.crypto.Mac getInstance(String, java.security.Provider) throws java.security.NoSuchAlgorithmException;
+ method public final int getMacLength();
+ method public final java.security.Provider getProvider();
+ method public final void init(java.security.Key) throws java.security.InvalidKeyException;
+ method public final void init(java.security.Key, java.security.spec.AlgorithmParameterSpec) throws java.security.InvalidAlgorithmParameterException, java.security.InvalidKeyException;
+ method public final void reset();
+ method public final void update(byte) throws java.lang.IllegalStateException;
+ method public final void update(byte[]) throws java.lang.IllegalStateException;
+ method public final void update(byte[], int, int) throws java.lang.IllegalStateException;
+ method public final void update(java.nio.ByteBuffer);
+ }
+
+ public abstract class MacSpi {
+ ctor public MacSpi();
+ method public Object clone() throws java.lang.CloneNotSupportedException;
+ method protected abstract byte[] engineDoFinal();
+ method protected abstract int engineGetMacLength();
+ method protected abstract void engineInit(java.security.Key, java.security.spec.AlgorithmParameterSpec) throws java.security.InvalidAlgorithmParameterException, java.security.InvalidKeyException;
+ method protected abstract void engineReset();
+ method protected abstract void engineUpdate(byte);
+ method protected abstract void engineUpdate(byte[], int, int);
+ method protected void engineUpdate(java.nio.ByteBuffer);
+ }
+
+ public class NoSuchPaddingException extends java.security.GeneralSecurityException {
+ ctor public NoSuchPaddingException();
+ ctor public NoSuchPaddingException(String);
+ }
+
+ public class NullCipher extends javax.crypto.Cipher {
+ ctor public NullCipher();
+ }
+
+ public class SealedObject implements java.io.Serializable {
+ ctor public SealedObject(java.io.Serializable, javax.crypto.Cipher) throws java.io.IOException, javax.crypto.IllegalBlockSizeException;
+ ctor protected SealedObject(javax.crypto.SealedObject);
+ method public final String getAlgorithm();
+ method public final Object getObject(java.security.Key) throws java.lang.ClassNotFoundException, java.io.IOException, java.security.InvalidKeyException, java.security.NoSuchAlgorithmException;
+ method public final Object getObject(javax.crypto.Cipher) throws javax.crypto.BadPaddingException, java.lang.ClassNotFoundException, java.io.IOException, javax.crypto.IllegalBlockSizeException;
+ method public final Object getObject(java.security.Key, String) throws java.lang.ClassNotFoundException, java.io.IOException, java.security.InvalidKeyException, java.security.NoSuchAlgorithmException, java.security.NoSuchProviderException;
+ field protected byte[] encodedParams;
+ }
+
+ public interface SecretKey extends java.security.Key javax.security.auth.Destroyable {
+ field public static final long serialVersionUID = -4795878709595146952L; // 0xbd719db928b8f538L
+ }
+
+ public class SecretKeyFactory {
+ ctor protected SecretKeyFactory(javax.crypto.SecretKeyFactorySpi, java.security.Provider, String);
+ method public final javax.crypto.SecretKey generateSecret(java.security.spec.KeySpec) throws java.security.spec.InvalidKeySpecException;
+ method public final String getAlgorithm();
+ method public static final javax.crypto.SecretKeyFactory getInstance(String) throws java.security.NoSuchAlgorithmException;
+ method public static final javax.crypto.SecretKeyFactory getInstance(String, String) throws java.security.NoSuchAlgorithmException, java.security.NoSuchProviderException;
+ method public static final javax.crypto.SecretKeyFactory getInstance(String, java.security.Provider) throws java.security.NoSuchAlgorithmException;
+ method public final java.security.spec.KeySpec getKeySpec(javax.crypto.SecretKey, Class<?>) throws java.security.spec.InvalidKeySpecException;
+ method public final java.security.Provider getProvider();
+ method public final javax.crypto.SecretKey translateKey(javax.crypto.SecretKey) throws java.security.InvalidKeyException;
+ }
+
+ public abstract class SecretKeyFactorySpi {
+ ctor public SecretKeyFactorySpi();
+ method protected abstract javax.crypto.SecretKey engineGenerateSecret(java.security.spec.KeySpec) throws java.security.spec.InvalidKeySpecException;
+ method protected abstract java.security.spec.KeySpec engineGetKeySpec(javax.crypto.SecretKey, Class<?>) throws java.security.spec.InvalidKeySpecException;
+ method protected abstract javax.crypto.SecretKey engineTranslateKey(javax.crypto.SecretKey) throws java.security.InvalidKeyException;
+ }
+
+ public class ShortBufferException extends java.security.GeneralSecurityException {
+ ctor public ShortBufferException();
+ ctor public ShortBufferException(String);
+ }
+
+}
+
+package javax.crypto.interfaces {
+
+ public interface DHKey {
+ method public javax.crypto.spec.DHParameterSpec getParams();
+ }
+
+ public interface DHPrivateKey extends javax.crypto.interfaces.DHKey java.security.PrivateKey {
+ method public java.math.BigInteger getX();
+ field public static final long serialVersionUID = 2211791113380396553L; // 0x1eb1dc4c8e677e09L
+ }
+
+ public interface DHPublicKey extends javax.crypto.interfaces.DHKey java.security.PublicKey {
+ method public java.math.BigInteger getY();
+ field public static final long serialVersionUID = -6628103563352519193L; // 0xa4043eed23df4de7L
+ }
+
+ public interface PBEKey extends javax.crypto.SecretKey {
+ method public int getIterationCount();
+ method public char[] getPassword();
+ method public byte[] getSalt();
+ field public static final long serialVersionUID = -1430015993304333921L; // 0xec279007d7f7c19fL
+ }
+
+}
+
+package javax.crypto.spec {
+
+ public class DESKeySpec implements java.security.spec.KeySpec {
+ ctor public DESKeySpec(byte[]) throws java.security.InvalidKeyException;
+ ctor public DESKeySpec(byte[], int) throws java.security.InvalidKeyException;
+ method public byte[] getKey();
+ method public static boolean isParityAdjusted(byte[], int) throws java.security.InvalidKeyException;
+ method public static boolean isWeak(byte[], int) throws java.security.InvalidKeyException;
+ field public static final int DES_KEY_LEN = 8; // 0x8
+ }
+
+ public class DESedeKeySpec implements java.security.spec.KeySpec {
+ ctor public DESedeKeySpec(byte[]) throws java.security.InvalidKeyException;
+ ctor public DESedeKeySpec(byte[], int) throws java.security.InvalidKeyException;
+ method public byte[] getKey();
+ method public static boolean isParityAdjusted(byte[], int) throws java.security.InvalidKeyException;
+ field public static final int DES_EDE_KEY_LEN = 24; // 0x18
+ }
+
+ public class DHGenParameterSpec implements java.security.spec.AlgorithmParameterSpec {
+ ctor public DHGenParameterSpec(int, int);
+ method public int getExponentSize();
+ method public int getPrimeSize();
+ }
+
+ public class DHParameterSpec implements java.security.spec.AlgorithmParameterSpec {
+ ctor public DHParameterSpec(java.math.BigInteger, java.math.BigInteger);
+ ctor public DHParameterSpec(java.math.BigInteger, java.math.BigInteger, int);
+ method public java.math.BigInteger getG();
+ method public int getL();
+ method public java.math.BigInteger getP();
+ }
+
+ public class DHPrivateKeySpec implements java.security.spec.KeySpec {
+ ctor public DHPrivateKeySpec(java.math.BigInteger, java.math.BigInteger, java.math.BigInteger);
+ method public java.math.BigInteger getG();
+ method public java.math.BigInteger getP();
+ method public java.math.BigInteger getX();
+ }
+
+ public class DHPublicKeySpec implements java.security.spec.KeySpec {
+ ctor public DHPublicKeySpec(java.math.BigInteger, java.math.BigInteger, java.math.BigInteger);
+ method public java.math.BigInteger getG();
+ method public java.math.BigInteger getP();
+ method public java.math.BigInteger getY();
+ }
+
+ public class GCMParameterSpec implements java.security.spec.AlgorithmParameterSpec {
+ ctor public GCMParameterSpec(int, byte[]);
+ ctor public GCMParameterSpec(int, byte[], int, int);
+ method public byte[] getIV();
+ method public int getTLen();
+ }
+
+ public class IvParameterSpec implements java.security.spec.AlgorithmParameterSpec {
+ ctor public IvParameterSpec(byte[]);
+ ctor public IvParameterSpec(byte[], int, int);
+ method public byte[] getIV();
+ }
+
+ public class OAEPParameterSpec implements java.security.spec.AlgorithmParameterSpec {
+ ctor public OAEPParameterSpec(String, String, java.security.spec.AlgorithmParameterSpec, javax.crypto.spec.PSource);
+ method public String getDigestAlgorithm();
+ method public String getMGFAlgorithm();
+ method public java.security.spec.AlgorithmParameterSpec getMGFParameters();
+ method public javax.crypto.spec.PSource getPSource();
+ field public static final javax.crypto.spec.OAEPParameterSpec DEFAULT;
+ }
+
+ public class PBEKeySpec implements java.security.spec.KeySpec {
+ ctor public PBEKeySpec(char[]);
+ ctor public PBEKeySpec(char[], byte[], int, int);
+ ctor public PBEKeySpec(char[], byte[], int);
+ method public final void clearPassword();
+ method public final int getIterationCount();
+ method public final int getKeyLength();
+ method public final char[] getPassword();
+ method public final byte[] getSalt();
+ }
+
+ public class PBEParameterSpec implements java.security.spec.AlgorithmParameterSpec {
+ ctor public PBEParameterSpec(byte[], int);
+ ctor public PBEParameterSpec(byte[], int, java.security.spec.AlgorithmParameterSpec);
+ method public int getIterationCount();
+ method public java.security.spec.AlgorithmParameterSpec getParameterSpec();
+ method public byte[] getSalt();
+ }
+
+ public class PSource {
+ ctor protected PSource(String);
+ method public String getAlgorithm();
+ }
+
+ public static final class PSource.PSpecified extends javax.crypto.spec.PSource {
+ ctor public PSource.PSpecified(byte[]);
+ method public byte[] getValue();
+ field public static final javax.crypto.spec.PSource.PSpecified DEFAULT;
+ }
+
+ public class RC2ParameterSpec implements java.security.spec.AlgorithmParameterSpec {
+ ctor public RC2ParameterSpec(int);
+ ctor public RC2ParameterSpec(int, byte[]);
+ ctor public RC2ParameterSpec(int, byte[], int);
+ method public int getEffectiveKeyBits();
+ method public byte[] getIV();
+ }
+
+ public class RC5ParameterSpec implements java.security.spec.AlgorithmParameterSpec {
+ ctor public RC5ParameterSpec(int, int, int);
+ ctor public RC5ParameterSpec(int, int, int, byte[]);
+ ctor public RC5ParameterSpec(int, int, int, byte[], int);
+ method public byte[] getIV();
+ method public int getRounds();
+ method public int getVersion();
+ method public int getWordSize();
+ }
+
+ public class SecretKeySpec implements java.security.spec.KeySpec javax.crypto.SecretKey {
+ ctor public SecretKeySpec(byte[], String);
+ ctor public SecretKeySpec(byte[], int, int, String);
+ method public String getAlgorithm();
+ method public byte[] getEncoded();
+ method public String getFormat();
+ }
+
+}
+
+package javax.net {
+
+ public abstract class ServerSocketFactory {
+ ctor protected ServerSocketFactory();
+ method public java.net.ServerSocket createServerSocket() throws java.io.IOException;
+ method public abstract java.net.ServerSocket createServerSocket(int) throws java.io.IOException;
+ method public abstract java.net.ServerSocket createServerSocket(int, int) throws java.io.IOException;
+ method public abstract java.net.ServerSocket createServerSocket(int, int, java.net.InetAddress) throws java.io.IOException;
+ method public static javax.net.ServerSocketFactory getDefault();
+ }
+
+ public abstract class SocketFactory {
+ ctor protected SocketFactory();
+ method public java.net.Socket createSocket() throws java.io.IOException;
+ method public abstract java.net.Socket createSocket(String, int) throws java.io.IOException, java.net.UnknownHostException;
+ method public abstract java.net.Socket createSocket(String, int, java.net.InetAddress, int) throws java.io.IOException, java.net.UnknownHostException;
+ method public abstract java.net.Socket createSocket(java.net.InetAddress, int) throws java.io.IOException;
+ method public abstract java.net.Socket createSocket(java.net.InetAddress, int, java.net.InetAddress, int) throws java.io.IOException;
+ method public static javax.net.SocketFactory getDefault();
+ }
+
+}
+
+package javax.net.ssl {
+
+ public class CertPathTrustManagerParameters implements javax.net.ssl.ManagerFactoryParameters {
+ ctor public CertPathTrustManagerParameters(java.security.cert.CertPathParameters);
+ method public java.security.cert.CertPathParameters getParameters();
+ }
+
+ public abstract class ExtendedSSLSession implements javax.net.ssl.SSLSession {
+ ctor public ExtendedSSLSession();
+ method public abstract String[] getLocalSupportedSignatureAlgorithms();
+ method public abstract String[] getPeerSupportedSignatureAlgorithms();
+ method public java.util.List<javax.net.ssl.SNIServerName> getRequestedServerNames();
+ }
+
+ public class HandshakeCompletedEvent extends java.util.EventObject {
+ ctor public HandshakeCompletedEvent(javax.net.ssl.SSLSocket, javax.net.ssl.SSLSession);
+ method public String getCipherSuite();
+ method public java.security.cert.Certificate[] getLocalCertificates();
+ method public java.security.Principal getLocalPrincipal();
+ method public javax.security.cert.X509Certificate[] getPeerCertificateChain() throws javax.net.ssl.SSLPeerUnverifiedException;
+ method public java.security.cert.Certificate[] getPeerCertificates() throws javax.net.ssl.SSLPeerUnverifiedException;
+ method public java.security.Principal getPeerPrincipal() throws javax.net.ssl.SSLPeerUnverifiedException;
+ method public javax.net.ssl.SSLSession getSession();
+ method public javax.net.ssl.SSLSocket getSocket();
+ }
+
+ public interface HandshakeCompletedListener extends java.util.EventListener {
+ method public void handshakeCompleted(javax.net.ssl.HandshakeCompletedEvent);
+ }
+
+ public interface HostnameVerifier {
+ method public boolean verify(String, javax.net.ssl.SSLSession);
+ }
+
+ public abstract class HttpsURLConnection extends java.net.HttpURLConnection {
+ ctor protected HttpsURLConnection(java.net.URL);
+ method public abstract String getCipherSuite();
+ method public static javax.net.ssl.HostnameVerifier getDefaultHostnameVerifier();
+ method public static javax.net.ssl.SSLSocketFactory getDefaultSSLSocketFactory();
+ method public javax.net.ssl.HostnameVerifier getHostnameVerifier();
+ method public abstract java.security.cert.Certificate[] getLocalCertificates();
+ method public java.security.Principal getLocalPrincipal();
+ method public java.security.Principal getPeerPrincipal() throws javax.net.ssl.SSLPeerUnverifiedException;
+ method public javax.net.ssl.SSLSocketFactory getSSLSocketFactory();
+ method public abstract java.security.cert.Certificate[] getServerCertificates() throws javax.net.ssl.SSLPeerUnverifiedException;
+ method public static void setDefaultHostnameVerifier(javax.net.ssl.HostnameVerifier);
+ method public static void setDefaultSSLSocketFactory(javax.net.ssl.SSLSocketFactory);
+ method public void setHostnameVerifier(javax.net.ssl.HostnameVerifier);
+ method public void setSSLSocketFactory(javax.net.ssl.SSLSocketFactory);
+ field protected javax.net.ssl.HostnameVerifier hostnameVerifier;
+ }
+
+ public interface KeyManager {
+ }
+
+ public class KeyManagerFactory {
+ ctor protected KeyManagerFactory(javax.net.ssl.KeyManagerFactorySpi, java.security.Provider, String);
+ method public final String getAlgorithm();
+ method public static final String getDefaultAlgorithm();
+ method public static final javax.net.ssl.KeyManagerFactory getInstance(String) throws java.security.NoSuchAlgorithmException;
+ method public static final javax.net.ssl.KeyManagerFactory getInstance(String, String) throws java.security.NoSuchAlgorithmException, java.security.NoSuchProviderException;
+ method public static final javax.net.ssl.KeyManagerFactory getInstance(String, java.security.Provider) throws java.security.NoSuchAlgorithmException;
+ method public final javax.net.ssl.KeyManager[] getKeyManagers();
+ method public final java.security.Provider getProvider();
+ method public final void init(java.security.KeyStore, char[]) throws java.security.KeyStoreException, java.security.NoSuchAlgorithmException, java.security.UnrecoverableKeyException;
+ method public final void init(javax.net.ssl.ManagerFactoryParameters) throws java.security.InvalidAlgorithmParameterException;
+ }
+
+ public abstract class KeyManagerFactorySpi {
+ ctor public KeyManagerFactorySpi();
+ method protected abstract javax.net.ssl.KeyManager[] engineGetKeyManagers();
+ method protected abstract void engineInit(java.security.KeyStore, char[]) throws java.security.KeyStoreException, java.security.NoSuchAlgorithmException, java.security.UnrecoverableKeyException;
+ method protected abstract void engineInit(javax.net.ssl.ManagerFactoryParameters) throws java.security.InvalidAlgorithmParameterException;
+ }
+
+ public class KeyStoreBuilderParameters implements javax.net.ssl.ManagerFactoryParameters {
+ ctor public KeyStoreBuilderParameters(java.security.KeyStore.Builder);
+ ctor public KeyStoreBuilderParameters(java.util.List<java.security.KeyStore.Builder>);
+ method public java.util.List<java.security.KeyStore.Builder> getParameters();
+ }
+
+ public interface ManagerFactoryParameters {
+ }
+
+ public final class SNIHostName extends javax.net.ssl.SNIServerName {
+ ctor public SNIHostName(String);
+ ctor public SNIHostName(byte[]);
+ method public static javax.net.ssl.SNIMatcher createSNIMatcher(String);
+ method public String getAsciiName();
+ }
+
+ public abstract class SNIMatcher {
+ ctor protected SNIMatcher(int);
+ method public final int getType();
+ method public abstract boolean matches(javax.net.ssl.SNIServerName);
+ }
+
+ public abstract class SNIServerName {
+ ctor protected SNIServerName(int, byte[]);
+ method public final byte[] getEncoded();
+ method public final int getType();
+ }
+
+ public class SSLContext {
+ ctor protected SSLContext(javax.net.ssl.SSLContextSpi, java.security.Provider, String);
+ method public final javax.net.ssl.SSLEngine createSSLEngine();
+ method public final javax.net.ssl.SSLEngine createSSLEngine(String, int);
+ method public final javax.net.ssl.SSLSessionContext getClientSessionContext();
+ method public static javax.net.ssl.SSLContext getDefault() throws java.security.NoSuchAlgorithmException;
+ method public final javax.net.ssl.SSLParameters getDefaultSSLParameters();
+ method public static javax.net.ssl.SSLContext getInstance(String) throws java.security.NoSuchAlgorithmException;
+ method public static javax.net.ssl.SSLContext getInstance(String, String) throws java.security.NoSuchAlgorithmException, java.security.NoSuchProviderException;
+ method public static javax.net.ssl.SSLContext getInstance(String, java.security.Provider) throws java.security.NoSuchAlgorithmException;
+ method public final String getProtocol();
+ method public final java.security.Provider getProvider();
+ method public final javax.net.ssl.SSLSessionContext getServerSessionContext();
+ method public final javax.net.ssl.SSLServerSocketFactory getServerSocketFactory();
+ method public final javax.net.ssl.SSLSocketFactory getSocketFactory();
+ method public final javax.net.ssl.SSLParameters getSupportedSSLParameters();
+ method public final void init(javax.net.ssl.KeyManager[], javax.net.ssl.TrustManager[], java.security.SecureRandom) throws java.security.KeyManagementException;
+ method public static void setDefault(javax.net.ssl.SSLContext);
+ }
+
+ public abstract class SSLContextSpi {
+ ctor public SSLContextSpi();
+ method protected abstract javax.net.ssl.SSLEngine engineCreateSSLEngine();
+ method protected abstract javax.net.ssl.SSLEngine engineCreateSSLEngine(String, int);
+ method protected abstract javax.net.ssl.SSLSessionContext engineGetClientSessionContext();
+ method protected javax.net.ssl.SSLParameters engineGetDefaultSSLParameters();
+ method protected abstract javax.net.ssl.SSLSessionContext engineGetServerSessionContext();
+ method protected abstract javax.net.ssl.SSLServerSocketFactory engineGetServerSocketFactory();
+ method protected abstract javax.net.ssl.SSLSocketFactory engineGetSocketFactory();
+ method protected javax.net.ssl.SSLParameters engineGetSupportedSSLParameters();
+ method protected abstract void engineInit(javax.net.ssl.KeyManager[], javax.net.ssl.TrustManager[], java.security.SecureRandom) throws java.security.KeyManagementException;
+ }
+
+ public abstract class SSLEngine {
+ ctor protected SSLEngine();
+ ctor protected SSLEngine(String, int);
+ method public abstract void beginHandshake() throws javax.net.ssl.SSLException;
+ method public abstract void closeInbound() throws javax.net.ssl.SSLException;
+ method public abstract void closeOutbound();
+ method public String getApplicationProtocol();
+ method public abstract Runnable getDelegatedTask();
+ method public abstract boolean getEnableSessionCreation();
+ method public abstract String[] getEnabledCipherSuites();
+ method public abstract String[] getEnabledProtocols();
+ method public String getHandshakeApplicationProtocol();
+ method public java.util.function.BiFunction<javax.net.ssl.SSLEngine,java.util.List<java.lang.String>,java.lang.String> getHandshakeApplicationProtocolSelector();
+ method public javax.net.ssl.SSLSession getHandshakeSession();
+ method public abstract javax.net.ssl.SSLEngineResult.HandshakeStatus getHandshakeStatus();
+ method public abstract boolean getNeedClientAuth();
+ method public String getPeerHost();
+ method public int getPeerPort();
+ method public javax.net.ssl.SSLParameters getSSLParameters();
+ method public abstract javax.net.ssl.SSLSession getSession();
+ method public abstract String[] getSupportedCipherSuites();
+ method public abstract String[] getSupportedProtocols();
+ method public abstract boolean getUseClientMode();
+ method public abstract boolean getWantClientAuth();
+ method public abstract boolean isInboundDone();
+ method public abstract boolean isOutboundDone();
+ method public abstract void setEnableSessionCreation(boolean);
+ method public abstract void setEnabledCipherSuites(String[]);
+ method public abstract void setEnabledProtocols(String[]);
+ method public void setHandshakeApplicationProtocolSelector(java.util.function.BiFunction<javax.net.ssl.SSLEngine,java.util.List<java.lang.String>,java.lang.String>);
+ method public abstract void setNeedClientAuth(boolean);
+ method public void setSSLParameters(javax.net.ssl.SSLParameters);
+ method public abstract void setUseClientMode(boolean);
+ method public abstract void setWantClientAuth(boolean);
+ method public javax.net.ssl.SSLEngineResult unwrap(java.nio.ByteBuffer, java.nio.ByteBuffer) throws javax.net.ssl.SSLException;
+ method public javax.net.ssl.SSLEngineResult unwrap(java.nio.ByteBuffer, java.nio.ByteBuffer[]) throws javax.net.ssl.SSLException;
+ method public abstract javax.net.ssl.SSLEngineResult unwrap(java.nio.ByteBuffer, java.nio.ByteBuffer[], int, int) throws javax.net.ssl.SSLException;
+ method public javax.net.ssl.SSLEngineResult wrap(java.nio.ByteBuffer, java.nio.ByteBuffer) throws javax.net.ssl.SSLException;
+ method public javax.net.ssl.SSLEngineResult wrap(java.nio.ByteBuffer[], java.nio.ByteBuffer) throws javax.net.ssl.SSLException;
+ method public abstract javax.net.ssl.SSLEngineResult wrap(java.nio.ByteBuffer[], int, int, java.nio.ByteBuffer) throws javax.net.ssl.SSLException;
+ }
+
+ public class SSLEngineResult {
+ ctor public SSLEngineResult(javax.net.ssl.SSLEngineResult.Status, javax.net.ssl.SSLEngineResult.HandshakeStatus, int, int);
+ method public final int bytesConsumed();
+ method public final int bytesProduced();
+ method public final javax.net.ssl.SSLEngineResult.HandshakeStatus getHandshakeStatus();
+ method public final javax.net.ssl.SSLEngineResult.Status getStatus();
+ }
+
+ public enum SSLEngineResult.HandshakeStatus {
+ enum_constant public static final javax.net.ssl.SSLEngineResult.HandshakeStatus FINISHED;
+ enum_constant public static final javax.net.ssl.SSLEngineResult.HandshakeStatus NEED_TASK;
+ enum_constant public static final javax.net.ssl.SSLEngineResult.HandshakeStatus NEED_UNWRAP;
+ enum_constant public static final javax.net.ssl.SSLEngineResult.HandshakeStatus NEED_WRAP;
+ enum_constant public static final javax.net.ssl.SSLEngineResult.HandshakeStatus NOT_HANDSHAKING;
+ }
+
+ public enum SSLEngineResult.Status {
+ enum_constant public static final javax.net.ssl.SSLEngineResult.Status BUFFER_OVERFLOW;
+ enum_constant public static final javax.net.ssl.SSLEngineResult.Status BUFFER_UNDERFLOW;
+ enum_constant public static final javax.net.ssl.SSLEngineResult.Status CLOSED;
+ enum_constant public static final javax.net.ssl.SSLEngineResult.Status OK;
+ }
+
+ public class SSLException extends java.io.IOException {
+ ctor public SSLException(String);
+ ctor public SSLException(String, Throwable);
+ ctor public SSLException(Throwable);
+ }
+
+ public class SSLHandshakeException extends javax.net.ssl.SSLException {
+ ctor public SSLHandshakeException(String);
+ }
+
+ public class SSLKeyException extends javax.net.ssl.SSLException {
+ ctor public SSLKeyException(String);
+ }
+
+ public class SSLParameters {
+ ctor public SSLParameters();
+ ctor public SSLParameters(String[]);
+ ctor public SSLParameters(String[], String[]);
+ method public java.security.AlgorithmConstraints getAlgorithmConstraints();
+ method public String[] getApplicationProtocols();
+ method public String[] getCipherSuites();
+ method public String getEndpointIdentificationAlgorithm();
+ method public boolean getNeedClientAuth();
+ method public String[] getProtocols();
+ method public final java.util.Collection<javax.net.ssl.SNIMatcher> getSNIMatchers();
+ method public final java.util.List<javax.net.ssl.SNIServerName> getServerNames();
+ method public final boolean getUseCipherSuitesOrder();
+ method public boolean getWantClientAuth();
+ method public void setAlgorithmConstraints(java.security.AlgorithmConstraints);
+ method public void setApplicationProtocols(String[]);
+ method public void setCipherSuites(String[]);
+ method public void setEndpointIdentificationAlgorithm(String);
+ method public void setNeedClientAuth(boolean);
+ method public void setProtocols(String[]);
+ method public final void setSNIMatchers(java.util.Collection<javax.net.ssl.SNIMatcher>);
+ method public final void setServerNames(java.util.List<javax.net.ssl.SNIServerName>);
+ method public final void setUseCipherSuitesOrder(boolean);
+ method public void setWantClientAuth(boolean);
+ }
+
+ public class SSLPeerUnverifiedException extends javax.net.ssl.SSLException {
+ ctor public SSLPeerUnverifiedException(String);
+ }
+
+ public final class SSLPermission extends java.security.BasicPermission {
+ ctor public SSLPermission(String);
+ ctor public SSLPermission(String, String);
+ }
+
+ public class SSLProtocolException extends javax.net.ssl.SSLException {
+ ctor public SSLProtocolException(String);
+ }
+
+ public abstract class SSLServerSocket extends java.net.ServerSocket {
+ ctor protected SSLServerSocket() throws java.io.IOException;
+ ctor protected SSLServerSocket(int) throws java.io.IOException;
+ ctor protected SSLServerSocket(int, int) throws java.io.IOException;
+ ctor protected SSLServerSocket(int, int, java.net.InetAddress) throws java.io.IOException;
+ method public abstract boolean getEnableSessionCreation();
+ method public abstract String[] getEnabledCipherSuites();
+ method public abstract String[] getEnabledProtocols();
+ method public abstract boolean getNeedClientAuth();
+ method public javax.net.ssl.SSLParameters getSSLParameters();
+ method public abstract String[] getSupportedCipherSuites();
+ method public abstract String[] getSupportedProtocols();
+ method public abstract boolean getUseClientMode();
+ method public abstract boolean getWantClientAuth();
+ method public abstract void setEnableSessionCreation(boolean);
+ method public abstract void setEnabledCipherSuites(String[]);
+ method public abstract void setEnabledProtocols(String[]);
+ method public abstract void setNeedClientAuth(boolean);
+ method public void setSSLParameters(javax.net.ssl.SSLParameters);
+ method public abstract void setUseClientMode(boolean);
+ method public abstract void setWantClientAuth(boolean);
+ }
+
+ public abstract class SSLServerSocketFactory extends javax.net.ServerSocketFactory {
+ ctor protected SSLServerSocketFactory();
+ method public static javax.net.ServerSocketFactory getDefault();
+ method public abstract String[] getDefaultCipherSuites();
+ method public abstract String[] getSupportedCipherSuites();
+ }
+
+ public interface SSLSession {
+ method public int getApplicationBufferSize();
+ method public String getCipherSuite();
+ method public long getCreationTime();
+ method public byte[] getId();
+ method public long getLastAccessedTime();
+ method public java.security.cert.Certificate[] getLocalCertificates();
+ method public java.security.Principal getLocalPrincipal();
+ method public int getPacketBufferSize();
+ method public javax.security.cert.X509Certificate[] getPeerCertificateChain() throws javax.net.ssl.SSLPeerUnverifiedException;
+ method public java.security.cert.Certificate[] getPeerCertificates() throws javax.net.ssl.SSLPeerUnverifiedException;
+ method public String getPeerHost();
+ method public int getPeerPort();
+ method public java.security.Principal getPeerPrincipal() throws javax.net.ssl.SSLPeerUnverifiedException;
+ method public String getProtocol();
+ method public javax.net.ssl.SSLSessionContext getSessionContext();
+ method public Object getValue(String);
+ method public String[] getValueNames();
+ method public void invalidate();
+ method public boolean isValid();
+ method public void putValue(String, Object);
+ method public void removeValue(String);
+ }
+
+ public class SSLSessionBindingEvent extends java.util.EventObject {
+ ctor public SSLSessionBindingEvent(javax.net.ssl.SSLSession, String);
+ method public String getName();
+ method public javax.net.ssl.SSLSession getSession();
+ }
+
+ public interface SSLSessionBindingListener extends java.util.EventListener {
+ method public void valueBound(javax.net.ssl.SSLSessionBindingEvent);
+ method public void valueUnbound(javax.net.ssl.SSLSessionBindingEvent);
+ }
+
+ public interface SSLSessionContext {
+ method public java.util.Enumeration<byte[]> getIds();
+ method public javax.net.ssl.SSLSession getSession(byte[]);
+ method public int getSessionCacheSize();
+ method public int getSessionTimeout();
+ method public void setSessionCacheSize(int) throws java.lang.IllegalArgumentException;
+ method public void setSessionTimeout(int) throws java.lang.IllegalArgumentException;
+ }
+
+ public abstract class SSLSocket extends java.net.Socket {
+ ctor protected SSLSocket();
+ ctor protected SSLSocket(String, int) throws java.io.IOException, java.net.UnknownHostException;
+ ctor protected SSLSocket(java.net.InetAddress, int) throws java.io.IOException;
+ ctor protected SSLSocket(String, int, java.net.InetAddress, int) throws java.io.IOException, java.net.UnknownHostException;
+ ctor protected SSLSocket(java.net.InetAddress, int, java.net.InetAddress, int) throws java.io.IOException;
+ method public abstract void addHandshakeCompletedListener(javax.net.ssl.HandshakeCompletedListener);
+ method public String getApplicationProtocol();
+ method public abstract boolean getEnableSessionCreation();
+ method public abstract String[] getEnabledCipherSuites();
+ method public abstract String[] getEnabledProtocols();
+ method public String getHandshakeApplicationProtocol();
+ method public java.util.function.BiFunction<javax.net.ssl.SSLSocket,java.util.List<java.lang.String>,java.lang.String> getHandshakeApplicationProtocolSelector();
+ method public javax.net.ssl.SSLSession getHandshakeSession();
+ method public abstract boolean getNeedClientAuth();
+ method public javax.net.ssl.SSLParameters getSSLParameters();
+ method public abstract javax.net.ssl.SSLSession getSession();
+ method public abstract String[] getSupportedCipherSuites();
+ method public abstract String[] getSupportedProtocols();
+ method public abstract boolean getUseClientMode();
+ method public abstract boolean getWantClientAuth();
+ method public abstract void removeHandshakeCompletedListener(javax.net.ssl.HandshakeCompletedListener);
+ method public abstract void setEnableSessionCreation(boolean);
+ method public abstract void setEnabledCipherSuites(String[]);
+ method public abstract void setEnabledProtocols(String[]);
+ method public void setHandshakeApplicationProtocolSelector(java.util.function.BiFunction<javax.net.ssl.SSLSocket,java.util.List<java.lang.String>,java.lang.String>);
+ method public abstract void setNeedClientAuth(boolean);
+ method public void setSSLParameters(javax.net.ssl.SSLParameters);
+ method public abstract void setUseClientMode(boolean);
+ method public abstract void setWantClientAuth(boolean);
+ method public abstract void startHandshake() throws java.io.IOException;
+ }
+
+ public abstract class SSLSocketFactory extends javax.net.SocketFactory {
+ ctor public SSLSocketFactory();
+ method public abstract java.net.Socket createSocket(java.net.Socket, String, int, boolean) throws java.io.IOException;
+ method public static javax.net.SocketFactory getDefault();
+ method public abstract String[] getDefaultCipherSuites();
+ method public abstract String[] getSupportedCipherSuites();
+ }
+
+ public final class StandardConstants {
+ field public static final int SNI_HOST_NAME = 0; // 0x0
+ }
+
+ public interface TrustManager {
+ }
+
+ public class TrustManagerFactory {
+ ctor protected TrustManagerFactory(javax.net.ssl.TrustManagerFactorySpi, java.security.Provider, String);
+ method public final String getAlgorithm();
+ method public static final String getDefaultAlgorithm();
+ method public static final javax.net.ssl.TrustManagerFactory getInstance(String) throws java.security.NoSuchAlgorithmException;
+ method public static final javax.net.ssl.TrustManagerFactory getInstance(String, String) throws java.security.NoSuchAlgorithmException, java.security.NoSuchProviderException;
+ method public static final javax.net.ssl.TrustManagerFactory getInstance(String, java.security.Provider) throws java.security.NoSuchAlgorithmException;
+ method public final java.security.Provider getProvider();
+ method public final javax.net.ssl.TrustManager[] getTrustManagers();
+ method public final void init(java.security.KeyStore) throws java.security.KeyStoreException;
+ method public final void init(javax.net.ssl.ManagerFactoryParameters) throws java.security.InvalidAlgorithmParameterException;
+ }
+
+ public abstract class TrustManagerFactorySpi {
+ ctor public TrustManagerFactorySpi();
+ method protected abstract javax.net.ssl.TrustManager[] engineGetTrustManagers();
+ method protected abstract void engineInit(java.security.KeyStore) throws java.security.KeyStoreException;
+ method protected abstract void engineInit(javax.net.ssl.ManagerFactoryParameters) throws java.security.InvalidAlgorithmParameterException;
+ }
+
+ public abstract class X509ExtendedKeyManager implements javax.net.ssl.X509KeyManager {
+ ctor protected X509ExtendedKeyManager();
+ method public String chooseEngineClientAlias(String[], java.security.Principal[], javax.net.ssl.SSLEngine);
+ method public String chooseEngineServerAlias(String, java.security.Principal[], javax.net.ssl.SSLEngine);
+ }
+
+ public abstract class X509ExtendedTrustManager implements javax.net.ssl.X509TrustManager {
+ ctor public X509ExtendedTrustManager();
+ method public abstract void checkClientTrusted(java.security.cert.X509Certificate[], String, java.net.Socket) throws java.security.cert.CertificateException;
+ method public abstract void checkClientTrusted(java.security.cert.X509Certificate[], String, javax.net.ssl.SSLEngine) throws java.security.cert.CertificateException;
+ method public abstract void checkServerTrusted(java.security.cert.X509Certificate[], String, java.net.Socket) throws java.security.cert.CertificateException;
+ method public abstract void checkServerTrusted(java.security.cert.X509Certificate[], String, javax.net.ssl.SSLEngine) throws java.security.cert.CertificateException;
+ }
+
+ public interface X509KeyManager extends javax.net.ssl.KeyManager {
+ method public String chooseClientAlias(String[], java.security.Principal[], java.net.Socket);
+ method public String chooseServerAlias(String, java.security.Principal[], java.net.Socket);
+ method public java.security.cert.X509Certificate[] getCertificateChain(String);
+ method public String[] getClientAliases(String, java.security.Principal[]);
+ method public java.security.PrivateKey getPrivateKey(String);
+ method public String[] getServerAliases(String, java.security.Principal[]);
+ }
+
+ public interface X509TrustManager extends javax.net.ssl.TrustManager {
+ method public void checkClientTrusted(java.security.cert.X509Certificate[], String) throws java.security.cert.CertificateException;
+ method public void checkServerTrusted(java.security.cert.X509Certificate[], String) throws java.security.cert.CertificateException;
+ method public java.security.cert.X509Certificate[] getAcceptedIssuers();
+ }
+
+}
+
+package javax.security.auth {
+
+ public final class AuthPermission extends java.security.BasicPermission {
+ ctor public AuthPermission(String);
+ ctor public AuthPermission(String, String);
+ }
+
+ public class DestroyFailedException extends java.lang.Exception {
+ ctor public DestroyFailedException();
+ ctor public DestroyFailedException(String);
+ }
+
+ public interface Destroyable {
+ method public default void destroy() throws javax.security.auth.DestroyFailedException;
+ method public default boolean isDestroyed();
+ }
+
+ public final class PrivateCredentialPermission extends java.security.Permission {
+ ctor public PrivateCredentialPermission(String, String);
+ method public String getActions();
+ method public String getCredentialClass();
+ method public String[][] getPrincipals();
+ method public boolean implies(java.security.Permission);
+ }
+
+ public final class Subject implements java.io.Serializable {
+ ctor public Subject();
+ ctor public Subject(boolean, java.util.Set<? extends java.security.Principal>, java.util.Set<?>, java.util.Set<?>);
+ method public static <T> T doAs(javax.security.auth.Subject, java.security.PrivilegedAction<T>);
+ method public static <T> T doAs(javax.security.auth.Subject, java.security.PrivilegedExceptionAction<T>) throws java.security.PrivilegedActionException;
+ method public static <T> T doAsPrivileged(javax.security.auth.Subject, java.security.PrivilegedAction<T>, java.security.AccessControlContext);
+ method public static <T> T doAsPrivileged(javax.security.auth.Subject, java.security.PrivilegedExceptionAction<T>, java.security.AccessControlContext) throws java.security.PrivilegedActionException;
+ method public java.util.Set<java.security.Principal> getPrincipals();
+ method public <T extends java.security.Principal> java.util.Set<T> getPrincipals(Class<T>);
+ method public java.util.Set<java.lang.Object> getPrivateCredentials();
+ method public <T> java.util.Set<T> getPrivateCredentials(Class<T>);
+ method public java.util.Set<java.lang.Object> getPublicCredentials();
+ method public <T> java.util.Set<T> getPublicCredentials(Class<T>);
+ method public static javax.security.auth.Subject getSubject(java.security.AccessControlContext);
+ method public boolean isReadOnly();
+ method public void setReadOnly();
+ }
+
+ public class SubjectDomainCombiner implements java.security.DomainCombiner {
+ ctor public SubjectDomainCombiner(javax.security.auth.Subject);
+ method public java.security.ProtectionDomain[] combine(java.security.ProtectionDomain[], java.security.ProtectionDomain[]);
+ method public javax.security.auth.Subject getSubject();
+ }
+
+}
+
+package javax.security.auth.callback {
+
+ public interface Callback {
+ }
+
+ public interface CallbackHandler {
+ method public void handle(javax.security.auth.callback.Callback[]) throws java.io.IOException, javax.security.auth.callback.UnsupportedCallbackException;
+ }
+
+ public class PasswordCallback implements javax.security.auth.callback.Callback java.io.Serializable {
+ ctor public PasswordCallback(String, boolean);
+ method public void clearPassword();
+ method public char[] getPassword();
+ method public String getPrompt();
+ method public boolean isEchoOn();
+ method public void setPassword(char[]);
+ }
+
+ public class UnsupportedCallbackException extends java.lang.Exception {
+ ctor public UnsupportedCallbackException(javax.security.auth.callback.Callback);
+ ctor public UnsupportedCallbackException(javax.security.auth.callback.Callback, String);
+ method public javax.security.auth.callback.Callback getCallback();
+ }
+
+}
+
+package javax.security.auth.login {
+
+ public class LoginException extends java.security.GeneralSecurityException {
+ ctor public LoginException();
+ ctor public LoginException(String);
+ }
+
+}
+
+package javax.security.auth.x500 {
+
+ public final class X500Principal implements java.security.Principal java.io.Serializable {
+ ctor public X500Principal(String);
+ ctor public X500Principal(String, java.util.Map<java.lang.String,java.lang.String>);
+ ctor public X500Principal(byte[]);
+ ctor public X500Principal(java.io.InputStream);
+ method public byte[] getEncoded();
+ method public String getName();
+ method public String getName(String);
+ method public String getName(String, java.util.Map<java.lang.String,java.lang.String>);
+ field public static final String CANONICAL = "CANONICAL";
+ field public static final String RFC1779 = "RFC1779";
+ field public static final String RFC2253 = "RFC2253";
+ }
+
+}
+
+package javax.security.cert {
+
+ public abstract class Certificate {
+ ctor public Certificate();
+ method public abstract byte[] getEncoded() throws javax.security.cert.CertificateEncodingException;
+ method public abstract java.security.PublicKey getPublicKey();
+ method public abstract String toString();
+ method public abstract void verify(java.security.PublicKey) throws javax.security.cert.CertificateException, java.security.InvalidKeyException, java.security.NoSuchAlgorithmException, java.security.NoSuchProviderException, java.security.SignatureException;
+ method public abstract void verify(java.security.PublicKey, String) throws javax.security.cert.CertificateException, java.security.InvalidKeyException, java.security.NoSuchAlgorithmException, java.security.NoSuchProviderException, java.security.SignatureException;
+ }
+
+ public class CertificateEncodingException extends javax.security.cert.CertificateException {
+ ctor public CertificateEncodingException();
+ ctor public CertificateEncodingException(String);
+ }
+
+ public class CertificateException extends java.lang.Exception {
+ ctor public CertificateException();
+ ctor public CertificateException(String);
+ }
+
+ public class CertificateExpiredException extends javax.security.cert.CertificateException {
+ ctor public CertificateExpiredException();
+ ctor public CertificateExpiredException(String);
+ }
+
+ public class CertificateNotYetValidException extends javax.security.cert.CertificateException {
+ ctor public CertificateNotYetValidException();
+ ctor public CertificateNotYetValidException(String);
+ }
+
+ public class CertificateParsingException extends javax.security.cert.CertificateException {
+ ctor public CertificateParsingException();
+ ctor public CertificateParsingException(String);
+ }
+
+ public abstract class X509Certificate extends javax.security.cert.Certificate {
+ ctor public X509Certificate();
+ method public abstract void checkValidity() throws javax.security.cert.CertificateExpiredException, javax.security.cert.CertificateNotYetValidException;
+ method public abstract void checkValidity(java.util.Date) throws javax.security.cert.CertificateExpiredException, javax.security.cert.CertificateNotYetValidException;
+ method public static final javax.security.cert.X509Certificate getInstance(java.io.InputStream) throws javax.security.cert.CertificateException;
+ method public static final javax.security.cert.X509Certificate getInstance(byte[]) throws javax.security.cert.CertificateException;
+ method public abstract java.security.Principal getIssuerDN();
+ method public abstract java.util.Date getNotAfter();
+ method public abstract java.util.Date getNotBefore();
+ method public abstract java.math.BigInteger getSerialNumber();
+ method public abstract String getSigAlgName();
+ method public abstract String getSigAlgOID();
+ method public abstract byte[] getSigAlgParams();
+ method public abstract java.security.Principal getSubjectDN();
+ method public abstract int getVersion();
+ }
+
+}
+
+package javax.sql {
+
+ public interface CommonDataSource {
+ method public java.io.PrintWriter getLogWriter() throws java.sql.SQLException;
+ method public int getLoginTimeout() throws java.sql.SQLException;
+ method public java.util.logging.Logger getParentLogger() throws java.sql.SQLFeatureNotSupportedException;
+ method public void setLogWriter(java.io.PrintWriter) throws java.sql.SQLException;
+ method public void setLoginTimeout(int) throws java.sql.SQLException;
+ }
+
+ public class ConnectionEvent extends java.util.EventObject {
+ ctor public ConnectionEvent(javax.sql.PooledConnection);
+ ctor public ConnectionEvent(javax.sql.PooledConnection, java.sql.SQLException);
+ method public java.sql.SQLException getSQLException();
+ }
+
+ public interface ConnectionEventListener extends java.util.EventListener {
+ method public void connectionClosed(javax.sql.ConnectionEvent);
+ method public void connectionErrorOccurred(javax.sql.ConnectionEvent);
+ }
+
+ public interface ConnectionPoolDataSource extends javax.sql.CommonDataSource {
+ method public javax.sql.PooledConnection getPooledConnection() throws java.sql.SQLException;
+ method public javax.sql.PooledConnection getPooledConnection(String, String) throws java.sql.SQLException;
+ }
+
+ public interface DataSource extends javax.sql.CommonDataSource java.sql.Wrapper {
+ method public java.sql.Connection getConnection() throws java.sql.SQLException;
+ method public java.sql.Connection getConnection(String, String) throws java.sql.SQLException;
+ }
+
+ public interface PooledConnection {
+ method public void addConnectionEventListener(javax.sql.ConnectionEventListener);
+ method public void addStatementEventListener(javax.sql.StatementEventListener);
+ method public void close() throws java.sql.SQLException;
+ method public java.sql.Connection getConnection() throws java.sql.SQLException;
+ method public void removeConnectionEventListener(javax.sql.ConnectionEventListener);
+ method public void removeStatementEventListener(javax.sql.StatementEventListener);
+ }
+
+ public interface RowSet extends java.sql.ResultSet {
+ method public void addRowSetListener(javax.sql.RowSetListener);
+ method public void clearParameters() throws java.sql.SQLException;
+ method public void execute() throws java.sql.SQLException;
+ method public String getCommand();
+ method public String getDataSourceName();
+ method public boolean getEscapeProcessing() throws java.sql.SQLException;
+ method public int getMaxFieldSize() throws java.sql.SQLException;
+ method public int getMaxRows() throws java.sql.SQLException;
+ method public String getPassword();
+ method public int getQueryTimeout() throws java.sql.SQLException;
+ method public int getTransactionIsolation();
+ method public java.util.Map<java.lang.String,java.lang.Class<?>> getTypeMap() throws java.sql.SQLException;
+ method public String getUrl() throws java.sql.SQLException;
+ method public String getUsername();
+ method public boolean isReadOnly();
+ method public void removeRowSetListener(javax.sql.RowSetListener);
+ method public void setArray(int, java.sql.Array) throws java.sql.SQLException;
+ method public void setAsciiStream(int, java.io.InputStream, int) throws java.sql.SQLException;
+ method public void setAsciiStream(String, java.io.InputStream, int) throws java.sql.SQLException;
+ method public void setAsciiStream(int, java.io.InputStream) throws java.sql.SQLException;
+ method public void setAsciiStream(String, java.io.InputStream) throws java.sql.SQLException;
+ method public void setBigDecimal(int, java.math.BigDecimal) throws java.sql.SQLException;
+ method public void setBigDecimal(String, java.math.BigDecimal) throws java.sql.SQLException;
+ method public void setBinaryStream(int, java.io.InputStream, int) throws java.sql.SQLException;
+ method public void setBinaryStream(String, java.io.InputStream, int) throws java.sql.SQLException;
+ method public void setBinaryStream(int, java.io.InputStream) throws java.sql.SQLException;
+ method public void setBinaryStream(String, java.io.InputStream) throws java.sql.SQLException;
+ method public void setBlob(int, java.sql.Blob) throws java.sql.SQLException;
+ method public void setBlob(int, java.io.InputStream, long) throws java.sql.SQLException;
+ method public void setBlob(int, java.io.InputStream) throws java.sql.SQLException;
+ method public void setBlob(String, java.io.InputStream, long) throws java.sql.SQLException;
+ method public void setBlob(String, java.sql.Blob) throws java.sql.SQLException;
+ method public void setBlob(String, java.io.InputStream) throws java.sql.SQLException;
+ method public void setBoolean(int, boolean) throws java.sql.SQLException;
+ method public void setBoolean(String, boolean) throws java.sql.SQLException;
+ method public void setByte(int, byte) throws java.sql.SQLException;
+ method public void setByte(String, byte) throws java.sql.SQLException;
+ method public void setBytes(int, byte[]) throws java.sql.SQLException;
+ method public void setBytes(String, byte[]) throws java.sql.SQLException;
+ method public void setCharacterStream(int, java.io.Reader, int) throws java.sql.SQLException;
+ method public void setCharacterStream(String, java.io.Reader, int) throws java.sql.SQLException;
+ method public void setCharacterStream(int, java.io.Reader) throws java.sql.SQLException;
+ method public void setCharacterStream(String, java.io.Reader) throws java.sql.SQLException;
+ method public void setClob(int, java.sql.Clob) throws java.sql.SQLException;
+ method public void setClob(int, java.io.Reader, long) throws java.sql.SQLException;
+ method public void setClob(int, java.io.Reader) throws java.sql.SQLException;
+ method public void setClob(String, java.io.Reader, long) throws java.sql.SQLException;
+ method public void setClob(String, java.sql.Clob) throws java.sql.SQLException;
+ method public void setClob(String, java.io.Reader) throws java.sql.SQLException;
+ method public void setCommand(String) throws java.sql.SQLException;
+ method public void setConcurrency(int) throws java.sql.SQLException;
+ method public void setDataSourceName(String) throws java.sql.SQLException;
+ method public void setDate(int, java.sql.Date) throws java.sql.SQLException;
+ method public void setDate(int, java.sql.Date, java.util.Calendar) throws java.sql.SQLException;
+ method public void setDate(String, java.sql.Date) throws java.sql.SQLException;
+ method public void setDate(String, java.sql.Date, java.util.Calendar) throws java.sql.SQLException;
+ method public void setDouble(int, double) throws java.sql.SQLException;
+ method public void setDouble(String, double) throws java.sql.SQLException;
+ method public void setEscapeProcessing(boolean) throws java.sql.SQLException;
+ method public void setFloat(int, float) throws java.sql.SQLException;
+ method public void setFloat(String, float) throws java.sql.SQLException;
+ method public void setInt(int, int) throws java.sql.SQLException;
+ method public void setInt(String, int) throws java.sql.SQLException;
+ method public void setLong(int, long) throws java.sql.SQLException;
+ method public void setLong(String, long) throws java.sql.SQLException;
+ method public void setMaxFieldSize(int) throws java.sql.SQLException;
+ method public void setMaxRows(int) throws java.sql.SQLException;
+ method public void setNCharacterStream(int, java.io.Reader) throws java.sql.SQLException;
+ method public void setNCharacterStream(int, java.io.Reader, long) throws java.sql.SQLException;
+ method public void setNCharacterStream(String, java.io.Reader, long) throws java.sql.SQLException;
+ method public void setNCharacterStream(String, java.io.Reader) throws java.sql.SQLException;
+ method public void setNClob(String, java.sql.NClob) throws java.sql.SQLException;
+ method public void setNClob(String, java.io.Reader, long) throws java.sql.SQLException;
+ method public void setNClob(String, java.io.Reader) throws java.sql.SQLException;
+ method public void setNClob(int, java.io.Reader, long) throws java.sql.SQLException;
+ method public void setNClob(int, java.sql.NClob) throws java.sql.SQLException;
+ method public void setNClob(int, java.io.Reader) throws java.sql.SQLException;
+ method public void setNString(int, String) throws java.sql.SQLException;
+ method public void setNString(String, String) throws java.sql.SQLException;
+ method public void setNull(int, int) throws java.sql.SQLException;
+ method public void setNull(String, int) throws java.sql.SQLException;
+ method public void setNull(int, int, String) throws java.sql.SQLException;
+ method public void setNull(String, int, String) throws java.sql.SQLException;
+ method public void setObject(int, Object, int, int) throws java.sql.SQLException;
+ method public void setObject(String, Object, int, int) throws java.sql.SQLException;
+ method public void setObject(int, Object, int) throws java.sql.SQLException;
+ method public void setObject(String, Object, int) throws java.sql.SQLException;
+ method public void setObject(String, Object) throws java.sql.SQLException;
+ method public void setObject(int, Object) throws java.sql.SQLException;
+ method public void setPassword(String) throws java.sql.SQLException;
+ method public void setQueryTimeout(int) throws java.sql.SQLException;
+ method public void setReadOnly(boolean) throws java.sql.SQLException;
+ method public void setRef(int, java.sql.Ref) throws java.sql.SQLException;
+ method public void setRowId(int, java.sql.RowId) throws java.sql.SQLException;
+ method public void setRowId(String, java.sql.RowId) throws java.sql.SQLException;
+ method public void setSQLXML(int, java.sql.SQLXML) throws java.sql.SQLException;
+ method public void setSQLXML(String, java.sql.SQLXML) throws java.sql.SQLException;
+ method public void setShort(int, short) throws java.sql.SQLException;
+ method public void setShort(String, short) throws java.sql.SQLException;
+ method public void setString(int, String) throws java.sql.SQLException;
+ method public void setString(String, String) throws java.sql.SQLException;
+ method public void setTime(int, java.sql.Time) throws java.sql.SQLException;
+ method public void setTime(int, java.sql.Time, java.util.Calendar) throws java.sql.SQLException;
+ method public void setTime(String, java.sql.Time) throws java.sql.SQLException;
+ method public void setTime(String, java.sql.Time, java.util.Calendar) throws java.sql.SQLException;
+ method public void setTimestamp(int, java.sql.Timestamp) throws java.sql.SQLException;
+ method public void setTimestamp(String, java.sql.Timestamp) throws java.sql.SQLException;
+ method public void setTimestamp(int, java.sql.Timestamp, java.util.Calendar) throws java.sql.SQLException;
+ method public void setTimestamp(String, java.sql.Timestamp, java.util.Calendar) throws java.sql.SQLException;
+ method public void setTransactionIsolation(int) throws java.sql.SQLException;
+ method public void setType(int) throws java.sql.SQLException;
+ method public void setTypeMap(java.util.Map<java.lang.String,java.lang.Class<?>>) throws java.sql.SQLException;
+ method public void setURL(int, java.net.URL) throws java.sql.SQLException;
+ method public void setUrl(String) throws java.sql.SQLException;
+ method public void setUsername(String) throws java.sql.SQLException;
+ }
+
+ public class RowSetEvent extends java.util.EventObject {
+ ctor public RowSetEvent(javax.sql.RowSet);
+ }
+
+ public interface RowSetInternal {
+ method public java.sql.Connection getConnection() throws java.sql.SQLException;
+ method public java.sql.ResultSet getOriginal() throws java.sql.SQLException;
+ method public java.sql.ResultSet getOriginalRow() throws java.sql.SQLException;
+ method public Object[] getParams() throws java.sql.SQLException;
+ method public void setMetaData(javax.sql.RowSetMetaData) throws java.sql.SQLException;
+ }
+
+ public interface RowSetListener extends java.util.EventListener {
+ method public void cursorMoved(javax.sql.RowSetEvent);
+ method public void rowChanged(javax.sql.RowSetEvent);
+ method public void rowSetChanged(javax.sql.RowSetEvent);
+ }
+
+ public interface RowSetMetaData extends java.sql.ResultSetMetaData {
+ method public void setAutoIncrement(int, boolean) throws java.sql.SQLException;
+ method public void setCaseSensitive(int, boolean) throws java.sql.SQLException;
+ method public void setCatalogName(int, String) throws java.sql.SQLException;
+ method public void setColumnCount(int) throws java.sql.SQLException;
+ method public void setColumnDisplaySize(int, int) throws java.sql.SQLException;
+ method public void setColumnLabel(int, String) throws java.sql.SQLException;
+ method public void setColumnName(int, String) throws java.sql.SQLException;
+ method public void setColumnType(int, int) throws java.sql.SQLException;
+ method public void setColumnTypeName(int, String) throws java.sql.SQLException;
+ method public void setCurrency(int, boolean) throws java.sql.SQLException;
+ method public void setNullable(int, int) throws java.sql.SQLException;
+ method public void setPrecision(int, int) throws java.sql.SQLException;
+ method public void setScale(int, int) throws java.sql.SQLException;
+ method public void setSchemaName(int, String) throws java.sql.SQLException;
+ method public void setSearchable(int, boolean) throws java.sql.SQLException;
+ method public void setSigned(int, boolean) throws java.sql.SQLException;
+ method public void setTableName(int, String) throws java.sql.SQLException;
+ }
+
+ public interface RowSetReader {
+ method public void readData(javax.sql.RowSetInternal) throws java.sql.SQLException;
+ }
+
+ public interface RowSetWriter {
+ method public boolean writeData(javax.sql.RowSetInternal) throws java.sql.SQLException;
+ }
+
+ public class StatementEvent extends java.util.EventObject {
+ ctor public StatementEvent(javax.sql.PooledConnection, java.sql.PreparedStatement);
+ ctor public StatementEvent(javax.sql.PooledConnection, java.sql.PreparedStatement, java.sql.SQLException);
+ method public java.sql.SQLException getSQLException();
+ method public java.sql.PreparedStatement getStatement();
+ }
+
+ public interface StatementEventListener extends java.util.EventListener {
+ method public void statementClosed(javax.sql.StatementEvent);
+ method public void statementErrorOccurred(javax.sql.StatementEvent);
+ }
+
+}
+
+package javax.xml {
+
+ public final class XMLConstants {
+ field public static final String DEFAULT_NS_PREFIX = "";
+ field public static final String FEATURE_SECURE_PROCESSING = "http://javax.xml.XMLConstants/feature/secure-processing";
+ field public static final String NULL_NS_URI = "";
+ field public static final String RELAXNG_NS_URI = "http://relaxng.org/ns/structure/1.0";
+ field public static final String W3C_XML_SCHEMA_INSTANCE_NS_URI = "http://www.w3.org/2001/XMLSchema-instance";
+ field public static final String W3C_XML_SCHEMA_NS_URI = "http://www.w3.org/2001/XMLSchema";
+ field public static final String W3C_XPATH_DATATYPE_NS_URI = "http://www.w3.org/2003/11/xpath-datatypes";
+ field public static final String XMLNS_ATTRIBUTE = "xmlns";
+ field public static final String XMLNS_ATTRIBUTE_NS_URI = "http://www.w3.org/2000/xmlns/";
+ field public static final String XML_DTD_NS_URI = "http://www.w3.org/TR/REC-xml";
+ field public static final String XML_NS_PREFIX = "xml";
+ field public static final String XML_NS_URI = "http://www.w3.org/XML/1998/namespace";
+ }
+
+}
+
+package javax.xml.datatype {
+
+ public class DatatypeConfigurationException extends java.lang.Exception {
+ ctor public DatatypeConfigurationException();
+ ctor public DatatypeConfigurationException(String);
+ ctor public DatatypeConfigurationException(String, Throwable);
+ ctor public DatatypeConfigurationException(Throwable);
+ }
+
+ public final class DatatypeConstants {
+ field public static final int APRIL = 4; // 0x4
+ field public static final int AUGUST = 8; // 0x8
+ field public static final javax.xml.namespace.QName DATE;
+ field public static final javax.xml.namespace.QName DATETIME;
+ field public static final javax.xml.datatype.DatatypeConstants.Field DAYS;
+ field public static final int DECEMBER = 12; // 0xc
+ field public static final javax.xml.namespace.QName DURATION;
+ field public static final javax.xml.namespace.QName DURATION_DAYTIME;
+ field public static final javax.xml.namespace.QName DURATION_YEARMONTH;
+ field public static final int EQUAL = 0; // 0x0
+ field public static final int FEBRUARY = 2; // 0x2
+ field public static final int FIELD_UNDEFINED = -2147483648; // 0x80000000
+ field public static final javax.xml.namespace.QName GDAY;
+ field public static final javax.xml.namespace.QName GMONTH;
+ field public static final javax.xml.namespace.QName GMONTHDAY;
+ field public static final int GREATER = 1; // 0x1
+ field public static final javax.xml.namespace.QName GYEAR;
+ field public static final javax.xml.namespace.QName GYEARMONTH;
+ field public static final javax.xml.datatype.DatatypeConstants.Field HOURS;
+ field public static final int INDETERMINATE = 2; // 0x2
+ field public static final int JANUARY = 1; // 0x1
+ field public static final int JULY = 7; // 0x7
+ field public static final int JUNE = 6; // 0x6
+ field public static final int LESSER = -1; // 0xffffffff
+ field public static final int MARCH = 3; // 0x3
+ field public static final int MAX_TIMEZONE_OFFSET = -840; // 0xfffffcb8
+ field public static final int MAY = 5; // 0x5
+ field public static final javax.xml.datatype.DatatypeConstants.Field MINUTES;
+ field public static final int MIN_TIMEZONE_OFFSET = 840; // 0x348
+ field public static final javax.xml.datatype.DatatypeConstants.Field MONTHS;
+ field public static final int NOVEMBER = 11; // 0xb
+ field public static final int OCTOBER = 10; // 0xa
+ field public static final javax.xml.datatype.DatatypeConstants.Field SECONDS;
+ field public static final int SEPTEMBER = 9; // 0x9
+ field public static final javax.xml.namespace.QName TIME;
+ field public static final javax.xml.datatype.DatatypeConstants.Field YEARS;
+ }
+
+ public static final class DatatypeConstants.Field {
+ method public int getId();
+ }
+
+ public abstract class DatatypeFactory {
+ ctor protected DatatypeFactory();
+ method public abstract javax.xml.datatype.Duration newDuration(String);
+ method public abstract javax.xml.datatype.Duration newDuration(long);
+ method public abstract javax.xml.datatype.Duration newDuration(boolean, java.math.BigInteger, java.math.BigInteger, java.math.BigInteger, java.math.BigInteger, java.math.BigInteger, java.math.BigDecimal);
+ method public javax.xml.datatype.Duration newDuration(boolean, int, int, int, int, int, int);
+ method public javax.xml.datatype.Duration newDurationDayTime(String);
+ method public javax.xml.datatype.Duration newDurationDayTime(long);
+ method public javax.xml.datatype.Duration newDurationDayTime(boolean, java.math.BigInteger, java.math.BigInteger, java.math.BigInteger, java.math.BigInteger);
+ method public javax.xml.datatype.Duration newDurationDayTime(boolean, int, int, int, int);
+ method public javax.xml.datatype.Duration newDurationYearMonth(String);
+ method public javax.xml.datatype.Duration newDurationYearMonth(long);
+ method public javax.xml.datatype.Duration newDurationYearMonth(boolean, java.math.BigInteger, java.math.BigInteger);
+ method public javax.xml.datatype.Duration newDurationYearMonth(boolean, int, int);
+ method public static javax.xml.datatype.DatatypeFactory newInstance() throws javax.xml.datatype.DatatypeConfigurationException;
+ method public static javax.xml.datatype.DatatypeFactory newInstance(String, ClassLoader) throws javax.xml.datatype.DatatypeConfigurationException;
+ method public abstract javax.xml.datatype.XMLGregorianCalendar newXMLGregorianCalendar();
+ method public abstract javax.xml.datatype.XMLGregorianCalendar newXMLGregorianCalendar(String);
+ method public abstract javax.xml.datatype.XMLGregorianCalendar newXMLGregorianCalendar(java.util.GregorianCalendar);
+ method public abstract javax.xml.datatype.XMLGregorianCalendar newXMLGregorianCalendar(java.math.BigInteger, int, int, int, int, int, java.math.BigDecimal, int);
+ method public javax.xml.datatype.XMLGregorianCalendar newXMLGregorianCalendar(int, int, int, int, int, int, int, int);
+ method public javax.xml.datatype.XMLGregorianCalendar newXMLGregorianCalendarDate(int, int, int, int);
+ method public javax.xml.datatype.XMLGregorianCalendar newXMLGregorianCalendarTime(int, int, int, int);
+ method public javax.xml.datatype.XMLGregorianCalendar newXMLGregorianCalendarTime(int, int, int, java.math.BigDecimal, int);
+ method public javax.xml.datatype.XMLGregorianCalendar newXMLGregorianCalendarTime(int, int, int, int, int);
+ field public static final String DATATYPEFACTORY_IMPLEMENTATION_CLASS;
+ field public static final String DATATYPEFACTORY_PROPERTY = "javax.xml.datatype.DatatypeFactory";
+ }
+
+ public abstract class Duration {
+ ctor public Duration();
+ method public abstract javax.xml.datatype.Duration add(javax.xml.datatype.Duration);
+ method public abstract void addTo(java.util.Calendar);
+ method public void addTo(java.util.Date);
+ method public abstract int compare(javax.xml.datatype.Duration);
+ method public int getDays();
+ method public abstract Number getField(javax.xml.datatype.DatatypeConstants.Field);
+ method public int getHours();
+ method public int getMinutes();
+ method public int getMonths();
+ method public int getSeconds();
+ method public abstract int getSign();
+ method public long getTimeInMillis(java.util.Calendar);
+ method public long getTimeInMillis(java.util.Date);
+ method public javax.xml.namespace.QName getXMLSchemaType();
+ method public int getYears();
+ method public abstract int hashCode();
+ method public boolean isLongerThan(javax.xml.datatype.Duration);
+ method public abstract boolean isSet(javax.xml.datatype.DatatypeConstants.Field);
+ method public boolean isShorterThan(javax.xml.datatype.Duration);
+ method public javax.xml.datatype.Duration multiply(int);
+ method public abstract javax.xml.datatype.Duration multiply(java.math.BigDecimal);
+ method public abstract javax.xml.datatype.Duration negate();
+ method public abstract javax.xml.datatype.Duration normalizeWith(java.util.Calendar);
+ method public javax.xml.datatype.Duration subtract(javax.xml.datatype.Duration);
+ }
+
+ public abstract class XMLGregorianCalendar implements java.lang.Cloneable {
+ ctor public XMLGregorianCalendar();
+ method public abstract void add(javax.xml.datatype.Duration);
+ method public abstract void clear();
+ method public abstract Object clone();
+ method public abstract int compare(javax.xml.datatype.XMLGregorianCalendar);
+ method public abstract int getDay();
+ method public abstract java.math.BigInteger getEon();
+ method public abstract java.math.BigInteger getEonAndYear();
+ method public abstract java.math.BigDecimal getFractionalSecond();
+ method public abstract int getHour();
+ method public int getMillisecond();
+ method public abstract int getMinute();
+ method public abstract int getMonth();
+ method public abstract int getSecond();
+ method public abstract java.util.TimeZone getTimeZone(int);
+ method public abstract int getTimezone();
+ method public abstract javax.xml.namespace.QName getXMLSchemaType();
+ method public abstract int getYear();
+ method public abstract boolean isValid();
+ method public abstract javax.xml.datatype.XMLGregorianCalendar normalize();
+ method public abstract void reset();
+ method public abstract void setDay(int);
+ method public abstract void setFractionalSecond(java.math.BigDecimal);
+ method public abstract void setHour(int);
+ method public abstract void setMillisecond(int);
+ method public abstract void setMinute(int);
+ method public abstract void setMonth(int);
+ method public abstract void setSecond(int);
+ method public void setTime(int, int, int);
+ method public void setTime(int, int, int, java.math.BigDecimal);
+ method public void setTime(int, int, int, int);
+ method public abstract void setTimezone(int);
+ method public abstract void setYear(java.math.BigInteger);
+ method public abstract void setYear(int);
+ method public abstract java.util.GregorianCalendar toGregorianCalendar();
+ method public abstract java.util.GregorianCalendar toGregorianCalendar(java.util.TimeZone, java.util.Locale, javax.xml.datatype.XMLGregorianCalendar);
+ method public abstract String toXMLFormat();
+ }
+
+}
+
+package javax.xml.namespace {
+
+ public interface NamespaceContext {
+ method public String getNamespaceURI(String);
+ method public String getPrefix(String);
+ method public java.util.Iterator getPrefixes(String);
+ }
+
+ public class QName implements java.io.Serializable {
+ ctor public QName(String, String);
+ ctor public QName(String, String, String);
+ ctor public QName(String);
+ method public final boolean equals(Object);
+ method public String getLocalPart();
+ method public String getNamespaceURI();
+ method public String getPrefix();
+ method public final int hashCode();
+ method public static javax.xml.namespace.QName valueOf(String);
+ }
+
+}
+
+package javax.xml.parsers {
+
+ public abstract class DocumentBuilder {
+ ctor protected DocumentBuilder();
+ method public abstract org.w3c.dom.DOMImplementation getDOMImplementation();
+ method public javax.xml.validation.Schema getSchema();
+ method public abstract boolean isNamespaceAware();
+ method public abstract boolean isValidating();
+ method public boolean isXIncludeAware();
+ method public abstract org.w3c.dom.Document newDocument();
+ method public org.w3c.dom.Document parse(java.io.InputStream) throws java.io.IOException, org.xml.sax.SAXException;
+ method public org.w3c.dom.Document parse(java.io.InputStream, String) throws java.io.IOException, org.xml.sax.SAXException;
+ method public org.w3c.dom.Document parse(String) throws java.io.IOException, org.xml.sax.SAXException;
+ method public org.w3c.dom.Document parse(java.io.File) throws java.io.IOException, org.xml.sax.SAXException;
+ method public abstract org.w3c.dom.Document parse(org.xml.sax.InputSource) throws java.io.IOException, org.xml.sax.SAXException;
+ method public void reset();
+ method public abstract void setEntityResolver(org.xml.sax.EntityResolver);
+ method public abstract void setErrorHandler(org.xml.sax.ErrorHandler);
+ }
+
+ public abstract class DocumentBuilderFactory {
+ ctor protected DocumentBuilderFactory();
+ method public abstract Object getAttribute(String) throws java.lang.IllegalArgumentException;
+ method public abstract boolean getFeature(String) throws javax.xml.parsers.ParserConfigurationException;
+ method public javax.xml.validation.Schema getSchema();
+ method public boolean isCoalescing();
+ method public boolean isExpandEntityReferences();
+ method public boolean isIgnoringComments();
+ method public boolean isIgnoringElementContentWhitespace();
+ method public boolean isNamespaceAware();
+ method public boolean isValidating();
+ method public boolean isXIncludeAware();
+ method public abstract javax.xml.parsers.DocumentBuilder newDocumentBuilder() throws javax.xml.parsers.ParserConfigurationException;
+ method public static javax.xml.parsers.DocumentBuilderFactory newInstance();
+ method public static javax.xml.parsers.DocumentBuilderFactory newInstance(String, ClassLoader);
+ method public abstract void setAttribute(String, Object) throws java.lang.IllegalArgumentException;
+ method public void setCoalescing(boolean);
+ method public void setExpandEntityReferences(boolean);
+ method public abstract void setFeature(String, boolean) throws javax.xml.parsers.ParserConfigurationException;
+ method public void setIgnoringComments(boolean);
+ method public void setIgnoringElementContentWhitespace(boolean);
+ method public void setNamespaceAware(boolean);
+ method public void setSchema(javax.xml.validation.Schema);
+ method public void setValidating(boolean);
+ method public void setXIncludeAware(boolean);
+ }
+
+ public class FactoryConfigurationError extends java.lang.Error {
+ ctor public FactoryConfigurationError();
+ ctor public FactoryConfigurationError(String);
+ ctor public FactoryConfigurationError(Exception);
+ ctor public FactoryConfigurationError(Exception, String);
+ method public Exception getException();
+ }
+
+ public class ParserConfigurationException extends java.lang.Exception {
+ ctor public ParserConfigurationException();
+ ctor public ParserConfigurationException(String);
+ }
+
+ public abstract class SAXParser {
+ ctor protected SAXParser();
+ method public abstract org.xml.sax.Parser getParser() throws org.xml.sax.SAXException;
+ method public abstract Object getProperty(String) throws org.xml.sax.SAXNotRecognizedException, org.xml.sax.SAXNotSupportedException;
+ method public javax.xml.validation.Schema getSchema();
+ method public abstract org.xml.sax.XMLReader getXMLReader() throws org.xml.sax.SAXException;
+ method public abstract boolean isNamespaceAware();
+ method public abstract boolean isValidating();
+ method public boolean isXIncludeAware();
+ method public void parse(java.io.InputStream, org.xml.sax.HandlerBase) throws java.io.IOException, org.xml.sax.SAXException;
+ method public void parse(java.io.InputStream, org.xml.sax.HandlerBase, String) throws java.io.IOException, org.xml.sax.SAXException;
+ method public void parse(java.io.InputStream, org.xml.sax.helpers.DefaultHandler) throws java.io.IOException, org.xml.sax.SAXException;
+ method public void parse(java.io.InputStream, org.xml.sax.helpers.DefaultHandler, String) throws java.io.IOException, org.xml.sax.SAXException;
+ method public void parse(String, org.xml.sax.HandlerBase) throws java.io.IOException, org.xml.sax.SAXException;
+ method public void parse(String, org.xml.sax.helpers.DefaultHandler) throws java.io.IOException, org.xml.sax.SAXException;
+ method public void parse(java.io.File, org.xml.sax.HandlerBase) throws java.io.IOException, org.xml.sax.SAXException;
+ method public void parse(java.io.File, org.xml.sax.helpers.DefaultHandler) throws java.io.IOException, org.xml.sax.SAXException;
+ method public void parse(org.xml.sax.InputSource, org.xml.sax.HandlerBase) throws java.io.IOException, org.xml.sax.SAXException;
+ method public void parse(org.xml.sax.InputSource, org.xml.sax.helpers.DefaultHandler) throws java.io.IOException, org.xml.sax.SAXException;
+ method public void reset();
+ method public abstract void setProperty(String, Object) throws org.xml.sax.SAXNotRecognizedException, org.xml.sax.SAXNotSupportedException;
+ }
+
+ public abstract class SAXParserFactory {
+ ctor protected SAXParserFactory();
+ method public abstract boolean getFeature(String) throws javax.xml.parsers.ParserConfigurationException, org.xml.sax.SAXNotRecognizedException, org.xml.sax.SAXNotSupportedException;
+ method public javax.xml.validation.Schema getSchema();
+ method public boolean isNamespaceAware();
+ method public boolean isValidating();
+ method public boolean isXIncludeAware();
+ method public static javax.xml.parsers.SAXParserFactory newInstance();
+ method public static javax.xml.parsers.SAXParserFactory newInstance(String, ClassLoader);
+ method public abstract javax.xml.parsers.SAXParser newSAXParser() throws javax.xml.parsers.ParserConfigurationException, org.xml.sax.SAXException;
+ method public abstract void setFeature(String, boolean) throws javax.xml.parsers.ParserConfigurationException, org.xml.sax.SAXNotRecognizedException, org.xml.sax.SAXNotSupportedException;
+ method public void setNamespaceAware(boolean);
+ method public void setSchema(javax.xml.validation.Schema);
+ method public void setValidating(boolean);
+ method public void setXIncludeAware(boolean);
+ }
+
+}
+
+package javax.xml.transform {
+
+ public interface ErrorListener {
+ method public void error(javax.xml.transform.TransformerException) throws javax.xml.transform.TransformerException;
+ method public void fatalError(javax.xml.transform.TransformerException) throws javax.xml.transform.TransformerException;
+ method public void warning(javax.xml.transform.TransformerException) throws javax.xml.transform.TransformerException;
+ }
+
+ public class OutputKeys {
+ field public static final String CDATA_SECTION_ELEMENTS = "cdata-section-elements";
+ field public static final String DOCTYPE_PUBLIC = "doctype-public";
+ field public static final String DOCTYPE_SYSTEM = "doctype-system";
+ field public static final String ENCODING = "encoding";
+ field public static final String INDENT = "indent";
+ field public static final String MEDIA_TYPE = "media-type";
+ field public static final String METHOD = "method";
+ field public static final String OMIT_XML_DECLARATION = "omit-xml-declaration";
+ field public static final String STANDALONE = "standalone";
+ field public static final String VERSION = "version";
+ }
+
+ public interface Result {
+ method public String getSystemId();
+ method public void setSystemId(String);
+ field public static final String PI_DISABLE_OUTPUT_ESCAPING = "javax.xml.transform.disable-output-escaping";
+ field public static final String PI_ENABLE_OUTPUT_ESCAPING = "javax.xml.transform.enable-output-escaping";
+ }
+
+ public interface Source {
+ method public String getSystemId();
+ method public void setSystemId(String);
+ }
+
+ public interface SourceLocator {
+ method public int getColumnNumber();
+ method public int getLineNumber();
+ method public String getPublicId();
+ method public String getSystemId();
+ }
+
+ public interface Templates {
+ method public java.util.Properties getOutputProperties();
+ method public javax.xml.transform.Transformer newTransformer() throws javax.xml.transform.TransformerConfigurationException;
+ }
+
+ public abstract class Transformer {
+ ctor protected Transformer();
+ method public abstract void clearParameters();
+ method public abstract javax.xml.transform.ErrorListener getErrorListener();
+ method public abstract java.util.Properties getOutputProperties();
+ method public abstract String getOutputProperty(String) throws java.lang.IllegalArgumentException;
+ method public abstract Object getParameter(String);
+ method public abstract javax.xml.transform.URIResolver getURIResolver();
+ method public void reset();
+ method public abstract void setErrorListener(javax.xml.transform.ErrorListener) throws java.lang.IllegalArgumentException;
+ method public abstract void setOutputProperties(java.util.Properties);
+ method public abstract void setOutputProperty(String, String) throws java.lang.IllegalArgumentException;
+ method public abstract void setParameter(String, Object);
+ method public abstract void setURIResolver(javax.xml.transform.URIResolver);
+ method public abstract void transform(javax.xml.transform.Source, javax.xml.transform.Result) throws javax.xml.transform.TransformerException;
+ }
+
+ public class TransformerConfigurationException extends javax.xml.transform.TransformerException {
+ ctor public TransformerConfigurationException();
+ ctor public TransformerConfigurationException(String);
+ ctor public TransformerConfigurationException(Throwable);
+ ctor public TransformerConfigurationException(String, Throwable);
+ ctor public TransformerConfigurationException(String, javax.xml.transform.SourceLocator);
+ ctor public TransformerConfigurationException(String, javax.xml.transform.SourceLocator, Throwable);
+ }
+
+ public class TransformerException extends java.lang.Exception {
+ ctor public TransformerException(String);
+ ctor public TransformerException(Throwable);
+ ctor public TransformerException(String, Throwable);
+ ctor public TransformerException(String, javax.xml.transform.SourceLocator);
+ ctor public TransformerException(String, javax.xml.transform.SourceLocator, Throwable);
+ method public Throwable getException();
+ method public String getLocationAsString();
+ method public javax.xml.transform.SourceLocator getLocator();
+ method public String getMessageAndLocation();
+ method public void setLocator(javax.xml.transform.SourceLocator);
+ }
+
+ public abstract class TransformerFactory {
+ ctor protected TransformerFactory();
+ method public abstract javax.xml.transform.Source getAssociatedStylesheet(javax.xml.transform.Source, String, String, String) throws javax.xml.transform.TransformerConfigurationException;
+ method public abstract Object getAttribute(String);
+ method public abstract javax.xml.transform.ErrorListener getErrorListener();
+ method public abstract boolean getFeature(String);
+ method public abstract javax.xml.transform.URIResolver getURIResolver();
+ method public static javax.xml.transform.TransformerFactory newInstance() throws javax.xml.transform.TransformerFactoryConfigurationError;
+ method public static javax.xml.transform.TransformerFactory newInstance(String, ClassLoader) throws javax.xml.transform.TransformerFactoryConfigurationError;
+ method public abstract javax.xml.transform.Templates newTemplates(javax.xml.transform.Source) throws javax.xml.transform.TransformerConfigurationException;
+ method public abstract javax.xml.transform.Transformer newTransformer(javax.xml.transform.Source) throws javax.xml.transform.TransformerConfigurationException;
+ method public abstract javax.xml.transform.Transformer newTransformer() throws javax.xml.transform.TransformerConfigurationException;
+ method public abstract void setAttribute(String, Object);
+ method public abstract void setErrorListener(javax.xml.transform.ErrorListener);
+ method public abstract void setFeature(String, boolean) throws javax.xml.transform.TransformerConfigurationException;
+ method public abstract void setURIResolver(javax.xml.transform.URIResolver);
+ }
+
+ public class TransformerFactoryConfigurationError extends java.lang.Error {
+ ctor public TransformerFactoryConfigurationError();
+ ctor public TransformerFactoryConfigurationError(String);
+ ctor public TransformerFactoryConfigurationError(Exception);
+ ctor public TransformerFactoryConfigurationError(Exception, String);
+ method public Exception getException();
+ }
+
+ public interface URIResolver {
+ method public javax.xml.transform.Source resolve(String, String) throws javax.xml.transform.TransformerException;
+ }
+
+}
+
+package javax.xml.transform.dom {
+
+ public interface DOMLocator extends javax.xml.transform.SourceLocator {
+ method public org.w3c.dom.Node getOriginatingNode();
+ }
+
+ public class DOMResult implements javax.xml.transform.Result {
+ ctor public DOMResult();
+ ctor public DOMResult(org.w3c.dom.Node);
+ ctor public DOMResult(org.w3c.dom.Node, String);
+ ctor public DOMResult(org.w3c.dom.Node, org.w3c.dom.Node);
+ ctor public DOMResult(org.w3c.dom.Node, org.w3c.dom.Node, String);
+ method public org.w3c.dom.Node getNextSibling();
+ method public org.w3c.dom.Node getNode();
+ method public String getSystemId();
+ method public void setNextSibling(org.w3c.dom.Node);
+ method public void setNode(org.w3c.dom.Node);
+ method public void setSystemId(String);
+ field public static final String FEATURE = "http://javax.xml.transform.dom.DOMResult/feature";
+ }
+
+ public class DOMSource implements javax.xml.transform.Source {
+ ctor public DOMSource();
+ ctor public DOMSource(org.w3c.dom.Node);
+ ctor public DOMSource(org.w3c.dom.Node, String);
+ method public org.w3c.dom.Node getNode();
+ method public String getSystemId();
+ method public void setNode(org.w3c.dom.Node);
+ method public void setSystemId(String);
+ field public static final String FEATURE = "http://javax.xml.transform.dom.DOMSource/feature";
+ }
+
+}
+
+package javax.xml.transform.sax {
+
+ public class SAXResult implements javax.xml.transform.Result {
+ ctor public SAXResult();
+ ctor public SAXResult(org.xml.sax.ContentHandler);
+ method public org.xml.sax.ContentHandler getHandler();
+ method public org.xml.sax.ext.LexicalHandler getLexicalHandler();
+ method public String getSystemId();
+ method public void setHandler(org.xml.sax.ContentHandler);
+ method public void setLexicalHandler(org.xml.sax.ext.LexicalHandler);
+ method public void setSystemId(String);
+ field public static final String FEATURE = "http://javax.xml.transform.sax.SAXResult/feature";
+ }
+
+ public class SAXSource implements javax.xml.transform.Source {
+ ctor public SAXSource();
+ ctor public SAXSource(org.xml.sax.XMLReader, org.xml.sax.InputSource);
+ ctor public SAXSource(org.xml.sax.InputSource);
+ method public org.xml.sax.InputSource getInputSource();
+ method public String getSystemId();
+ method public org.xml.sax.XMLReader getXMLReader();
+ method public void setInputSource(org.xml.sax.InputSource);
+ method public void setSystemId(String);
+ method public void setXMLReader(org.xml.sax.XMLReader);
+ method public static org.xml.sax.InputSource sourceToInputSource(javax.xml.transform.Source);
+ field public static final String FEATURE = "http://javax.xml.transform.sax.SAXSource/feature";
+ }
+
+ public abstract class SAXTransformerFactory extends javax.xml.transform.TransformerFactory {
+ ctor protected SAXTransformerFactory();
+ method public abstract javax.xml.transform.sax.TemplatesHandler newTemplatesHandler() throws javax.xml.transform.TransformerConfigurationException;
+ method public abstract javax.xml.transform.sax.TransformerHandler newTransformerHandler(javax.xml.transform.Source) throws javax.xml.transform.TransformerConfigurationException;
+ method public abstract javax.xml.transform.sax.TransformerHandler newTransformerHandler(javax.xml.transform.Templates) throws javax.xml.transform.TransformerConfigurationException;
+ method public abstract javax.xml.transform.sax.TransformerHandler newTransformerHandler() throws javax.xml.transform.TransformerConfigurationException;
+ method public abstract org.xml.sax.XMLFilter newXMLFilter(javax.xml.transform.Source) throws javax.xml.transform.TransformerConfigurationException;
+ method public abstract org.xml.sax.XMLFilter newXMLFilter(javax.xml.transform.Templates) throws javax.xml.transform.TransformerConfigurationException;
+ field public static final String FEATURE = "http://javax.xml.transform.sax.SAXTransformerFactory/feature";
+ field public static final String FEATURE_XMLFILTER = "http://javax.xml.transform.sax.SAXTransformerFactory/feature/xmlfilter";
+ }
+
+ public interface TemplatesHandler extends org.xml.sax.ContentHandler {
+ method public String getSystemId();
+ method public javax.xml.transform.Templates getTemplates();
+ method public void setSystemId(String);
+ }
+
+ public interface TransformerHandler extends org.xml.sax.ContentHandler org.xml.sax.DTDHandler org.xml.sax.ext.LexicalHandler {
+ method public String getSystemId();
+ method public javax.xml.transform.Transformer getTransformer();
+ method public void setResult(javax.xml.transform.Result) throws java.lang.IllegalArgumentException;
+ method public void setSystemId(String);
+ }
+
+}
+
+package javax.xml.transform.stream {
+
+ public class StreamResult implements javax.xml.transform.Result {
+ ctor public StreamResult();
+ ctor public StreamResult(java.io.OutputStream);
+ ctor public StreamResult(java.io.Writer);
+ ctor public StreamResult(String);
+ ctor public StreamResult(java.io.File);
+ method public java.io.OutputStream getOutputStream();
+ method public String getSystemId();
+ method public java.io.Writer getWriter();
+ method public void setOutputStream(java.io.OutputStream);
+ method public void setSystemId(String);
+ method public void setSystemId(java.io.File);
+ method public void setWriter(java.io.Writer);
+ field public static final String FEATURE = "http://javax.xml.transform.stream.StreamResult/feature";
+ }
+
+ public class StreamSource implements javax.xml.transform.Source {
+ ctor public StreamSource();
+ ctor public StreamSource(java.io.InputStream);
+ ctor public StreamSource(java.io.InputStream, String);
+ ctor public StreamSource(java.io.Reader);
+ ctor public StreamSource(java.io.Reader, String);
+ ctor public StreamSource(String);
+ ctor public StreamSource(java.io.File);
+ method public java.io.InputStream getInputStream();
+ method public String getPublicId();
+ method public java.io.Reader getReader();
+ method public String getSystemId();
+ method public void setInputStream(java.io.InputStream);
+ method public void setPublicId(String);
+ method public void setReader(java.io.Reader);
+ method public void setSystemId(String);
+ method public void setSystemId(java.io.File);
+ field public static final String FEATURE = "http://javax.xml.transform.stream.StreamSource/feature";
+ }
+
+}
+
+package javax.xml.validation {
+
+ public abstract class Schema {
+ ctor protected Schema();
+ method public abstract javax.xml.validation.Validator newValidator();
+ method public abstract javax.xml.validation.ValidatorHandler newValidatorHandler();
+ }
+
+ public abstract class SchemaFactory {
+ ctor protected SchemaFactory();
+ method public abstract org.xml.sax.ErrorHandler getErrorHandler();
+ method public boolean getFeature(String) throws org.xml.sax.SAXNotRecognizedException, org.xml.sax.SAXNotSupportedException;
+ method public Object getProperty(String) throws org.xml.sax.SAXNotRecognizedException, org.xml.sax.SAXNotSupportedException;
+ method public abstract org.w3c.dom.ls.LSResourceResolver getResourceResolver();
+ method public abstract boolean isSchemaLanguageSupported(String);
+ method public static javax.xml.validation.SchemaFactory newInstance(String);
+ method public static javax.xml.validation.SchemaFactory newInstance(String, String, ClassLoader);
+ method public javax.xml.validation.Schema newSchema(javax.xml.transform.Source) throws org.xml.sax.SAXException;
+ method public javax.xml.validation.Schema newSchema(java.io.File) throws org.xml.sax.SAXException;
+ method public javax.xml.validation.Schema newSchema(java.net.URL) throws org.xml.sax.SAXException;
+ method public abstract javax.xml.validation.Schema newSchema(javax.xml.transform.Source[]) throws org.xml.sax.SAXException;
+ method public abstract javax.xml.validation.Schema newSchema() throws org.xml.sax.SAXException;
+ method public abstract void setErrorHandler(org.xml.sax.ErrorHandler);
+ method public void setFeature(String, boolean) throws org.xml.sax.SAXNotRecognizedException, org.xml.sax.SAXNotSupportedException;
+ method public void setProperty(String, Object) throws org.xml.sax.SAXNotRecognizedException, org.xml.sax.SAXNotSupportedException;
+ method public abstract void setResourceResolver(org.w3c.dom.ls.LSResourceResolver);
+ }
+
+ public abstract class SchemaFactoryLoader {
+ ctor protected SchemaFactoryLoader();
+ method public abstract javax.xml.validation.SchemaFactory newFactory(String);
+ }
+
+ public abstract class TypeInfoProvider {
+ ctor protected TypeInfoProvider();
+ method public abstract org.w3c.dom.TypeInfo getAttributeTypeInfo(int);
+ method public abstract org.w3c.dom.TypeInfo getElementTypeInfo();
+ method public abstract boolean isIdAttribute(int);
+ method public abstract boolean isSpecified(int);
+ }
+
+ public abstract class Validator {
+ ctor protected Validator();
+ method public abstract org.xml.sax.ErrorHandler getErrorHandler();
+ method public boolean getFeature(String) throws org.xml.sax.SAXNotRecognizedException, org.xml.sax.SAXNotSupportedException;
+ method public Object getProperty(String) throws org.xml.sax.SAXNotRecognizedException, org.xml.sax.SAXNotSupportedException;
+ method public abstract org.w3c.dom.ls.LSResourceResolver getResourceResolver();
+ method public abstract void reset();
+ method public abstract void setErrorHandler(org.xml.sax.ErrorHandler);
+ method public void setFeature(String, boolean) throws org.xml.sax.SAXNotRecognizedException, org.xml.sax.SAXNotSupportedException;
+ method public void setProperty(String, Object) throws org.xml.sax.SAXNotRecognizedException, org.xml.sax.SAXNotSupportedException;
+ method public abstract void setResourceResolver(org.w3c.dom.ls.LSResourceResolver);
+ method public void validate(javax.xml.transform.Source) throws java.io.IOException, org.xml.sax.SAXException;
+ method public abstract void validate(javax.xml.transform.Source, javax.xml.transform.Result) throws java.io.IOException, org.xml.sax.SAXException;
+ }
+
+ public abstract class ValidatorHandler implements org.xml.sax.ContentHandler {
+ ctor protected ValidatorHandler();
+ method public abstract org.xml.sax.ContentHandler getContentHandler();
+ method public abstract org.xml.sax.ErrorHandler getErrorHandler();
+ method public boolean getFeature(String) throws org.xml.sax.SAXNotRecognizedException, org.xml.sax.SAXNotSupportedException;
+ method public Object getProperty(String) throws org.xml.sax.SAXNotRecognizedException, org.xml.sax.SAXNotSupportedException;
+ method public abstract org.w3c.dom.ls.LSResourceResolver getResourceResolver();
+ method public abstract javax.xml.validation.TypeInfoProvider getTypeInfoProvider();
+ method public abstract void setContentHandler(org.xml.sax.ContentHandler);
+ method public abstract void setErrorHandler(org.xml.sax.ErrorHandler);
+ method public void setFeature(String, boolean) throws org.xml.sax.SAXNotRecognizedException, org.xml.sax.SAXNotSupportedException;
+ method public void setProperty(String, Object) throws org.xml.sax.SAXNotRecognizedException, org.xml.sax.SAXNotSupportedException;
+ method public abstract void setResourceResolver(org.w3c.dom.ls.LSResourceResolver);
+ }
+
+}
+
+package javax.xml.xpath {
+
+ public interface XPath {
+ method public javax.xml.xpath.XPathExpression compile(String) throws javax.xml.xpath.XPathExpressionException;
+ method public Object evaluate(String, Object, javax.xml.namespace.QName) throws javax.xml.xpath.XPathExpressionException;
+ method public String evaluate(String, Object) throws javax.xml.xpath.XPathExpressionException;
+ method public Object evaluate(String, org.xml.sax.InputSource, javax.xml.namespace.QName) throws javax.xml.xpath.XPathExpressionException;
+ method public String evaluate(String, org.xml.sax.InputSource) throws javax.xml.xpath.XPathExpressionException;
+ method public javax.xml.namespace.NamespaceContext getNamespaceContext();
+ method public javax.xml.xpath.XPathFunctionResolver getXPathFunctionResolver();
+ method public javax.xml.xpath.XPathVariableResolver getXPathVariableResolver();
+ method public void reset();
+ method public void setNamespaceContext(javax.xml.namespace.NamespaceContext);
+ method public void setXPathFunctionResolver(javax.xml.xpath.XPathFunctionResolver);
+ method public void setXPathVariableResolver(javax.xml.xpath.XPathVariableResolver);
+ }
+
+ public class XPathConstants {
+ field public static final javax.xml.namespace.QName BOOLEAN;
+ field public static final String DOM_OBJECT_MODEL = "http://java.sun.com/jaxp/xpath/dom";
+ field public static final javax.xml.namespace.QName NODE;
+ field public static final javax.xml.namespace.QName NODESET;
+ field public static final javax.xml.namespace.QName NUMBER;
+ field public static final javax.xml.namespace.QName STRING;
+ }
+
+ public class XPathException extends java.lang.Exception {
+ ctor public XPathException(String);
+ ctor public XPathException(Throwable);
+ }
+
+ public interface XPathExpression {
+ method public Object evaluate(Object, javax.xml.namespace.QName) throws javax.xml.xpath.XPathExpressionException;
+ method public String evaluate(Object) throws javax.xml.xpath.XPathExpressionException;
+ method public Object evaluate(org.xml.sax.InputSource, javax.xml.namespace.QName) throws javax.xml.xpath.XPathExpressionException;
+ method public String evaluate(org.xml.sax.InputSource) throws javax.xml.xpath.XPathExpressionException;
+ }
+
+ public class XPathExpressionException extends javax.xml.xpath.XPathException {
+ ctor public XPathExpressionException(String);
+ ctor public XPathExpressionException(Throwable);
+ }
+
+ public abstract class XPathFactory {
+ ctor protected XPathFactory();
+ method public abstract boolean getFeature(String) throws javax.xml.xpath.XPathFactoryConfigurationException;
+ method public abstract boolean isObjectModelSupported(String);
+ method public static final javax.xml.xpath.XPathFactory newInstance();
+ method public static final javax.xml.xpath.XPathFactory newInstance(String) throws javax.xml.xpath.XPathFactoryConfigurationException;
+ method public static javax.xml.xpath.XPathFactory newInstance(String, String, ClassLoader) throws javax.xml.xpath.XPathFactoryConfigurationException;
+ method public abstract javax.xml.xpath.XPath newXPath();
+ method public abstract void setFeature(String, boolean) throws javax.xml.xpath.XPathFactoryConfigurationException;
+ method public abstract void setXPathFunctionResolver(javax.xml.xpath.XPathFunctionResolver);
+ method public abstract void setXPathVariableResolver(javax.xml.xpath.XPathVariableResolver);
+ field public static final String DEFAULT_OBJECT_MODEL_URI = "http://java.sun.com/jaxp/xpath/dom";
+ field public static final String DEFAULT_PROPERTY_NAME = "javax.xml.xpath.XPathFactory";
+ }
+
+ public class XPathFactoryConfigurationException extends javax.xml.xpath.XPathException {
+ ctor public XPathFactoryConfigurationException(String);
+ ctor public XPathFactoryConfigurationException(Throwable);
+ }
+
+ public interface XPathFunction {
+ method public Object evaluate(java.util.List) throws javax.xml.xpath.XPathFunctionException;
+ }
+
+ public class XPathFunctionException extends javax.xml.xpath.XPathExpressionException {
+ ctor public XPathFunctionException(String);
+ ctor public XPathFunctionException(Throwable);
+ }
+
+ public interface XPathFunctionResolver {
+ method public javax.xml.xpath.XPathFunction resolveFunction(javax.xml.namespace.QName, int);
+ }
+
+ public interface XPathVariableResolver {
+ method public Object resolveVariable(javax.xml.namespace.QName);
+ }
+
+}
+
+package org.json {
+
+ public class JSONArray {
+ ctor public JSONArray();
+ ctor public JSONArray(java.util.Collection);
+ ctor public JSONArray(org.json.JSONTokener) throws org.json.JSONException;
+ ctor public JSONArray(String) throws org.json.JSONException;
+ ctor public JSONArray(Object) throws org.json.JSONException;
+ method public Object get(int) throws org.json.JSONException;
+ method public boolean getBoolean(int) throws org.json.JSONException;
+ method public double getDouble(int) throws org.json.JSONException;
+ method public int getInt(int) throws org.json.JSONException;
+ method public org.json.JSONArray getJSONArray(int) throws org.json.JSONException;
+ method public org.json.JSONObject getJSONObject(int) throws org.json.JSONException;
+ method public long getLong(int) throws org.json.JSONException;
+ method public String getString(int) throws org.json.JSONException;
+ method public boolean isNull(int);
+ method public String join(String) throws org.json.JSONException;
+ method public int length();
+ method public Object opt(int);
+ method public boolean optBoolean(int);
+ method public boolean optBoolean(int, boolean);
+ method public double optDouble(int);
+ method public double optDouble(int, double);
+ method public int optInt(int);
+ method public int optInt(int, int);
+ method public org.json.JSONArray optJSONArray(int);
+ method public org.json.JSONObject optJSONObject(int);
+ method public long optLong(int);
+ method public long optLong(int, long);
+ method public String optString(int);
+ method public String optString(int, String);
+ method public org.json.JSONArray put(boolean);
+ method public org.json.JSONArray put(double) throws org.json.JSONException;
+ method public org.json.JSONArray put(int);
+ method public org.json.JSONArray put(long);
+ method public org.json.JSONArray put(Object);
+ method public org.json.JSONArray put(int, boolean) throws org.json.JSONException;
+ method public org.json.JSONArray put(int, double) throws org.json.JSONException;
+ method public org.json.JSONArray put(int, int) throws org.json.JSONException;
+ method public org.json.JSONArray put(int, long) throws org.json.JSONException;
+ method public org.json.JSONArray put(int, Object) throws org.json.JSONException;
+ method public Object remove(int);
+ method public org.json.JSONObject toJSONObject(org.json.JSONArray) throws org.json.JSONException;
+ method public String toString(int) throws org.json.JSONException;
+ }
+
+ public class JSONException extends java.lang.Exception {
+ ctor public JSONException(String);
+ ctor public JSONException(String, Throwable);
+ ctor public JSONException(Throwable);
+ }
+
+ public class JSONObject {
+ ctor public JSONObject();
+ ctor public JSONObject(@NonNull java.util.Map);
+ ctor public JSONObject(@NonNull org.json.JSONTokener) throws org.json.JSONException;
+ ctor public JSONObject(@NonNull String) throws org.json.JSONException;
+ ctor public JSONObject(@NonNull org.json.JSONObject, @NonNull String[]) throws org.json.JSONException;
+ method @NonNull public org.json.JSONObject accumulate(@NonNull String, @Nullable Object) throws org.json.JSONException;
+ method @NonNull public org.json.JSONObject append(@NonNull String, @Nullable Object) throws org.json.JSONException;
+ method @NonNull public Object get(@NonNull String) throws org.json.JSONException;
+ method public boolean getBoolean(@NonNull String) throws org.json.JSONException;
+ method public double getDouble(@NonNull String) throws org.json.JSONException;
+ method public int getInt(@NonNull String) throws org.json.JSONException;
+ method @NonNull public org.json.JSONArray getJSONArray(@NonNull String) throws org.json.JSONException;
+ method @NonNull public org.json.JSONObject getJSONObject(@NonNull String) throws org.json.JSONException;
+ method public long getLong(@NonNull String) throws org.json.JSONException;
+ method @NonNull public String getString(@NonNull String) throws org.json.JSONException;
+ method public boolean has(@Nullable String);
+ method public boolean isNull(@Nullable String);
+ method @NonNull public java.util.Iterator<java.lang.String> keys();
+ method public int length();
+ method @Nullable public org.json.JSONArray names();
+ method @NonNull public static String numberToString(@NonNull Number) throws org.json.JSONException;
+ method @Nullable public Object opt(@Nullable String);
+ method public boolean optBoolean(@Nullable String);
+ method public boolean optBoolean(@Nullable String, boolean);
+ method public double optDouble(@Nullable String);
+ method public double optDouble(@Nullable String, double);
+ method public int optInt(@Nullable String);
+ method public int optInt(@Nullable String, int);
+ method @Nullable public org.json.JSONArray optJSONArray(@Nullable String);
+ method @Nullable public org.json.JSONObject optJSONObject(@Nullable String);
+ method public long optLong(@Nullable String);
+ method public long optLong(@Nullable String, long);
+ method @NonNull public String optString(@Nullable String);
+ method @NonNull public String optString(@Nullable String, @NonNull String);
+ method @NonNull public org.json.JSONObject put(@NonNull String, boolean) throws org.json.JSONException;
+ method @NonNull public org.json.JSONObject put(@NonNull String, double) throws org.json.JSONException;
+ method @NonNull public org.json.JSONObject put(@NonNull String, int) throws org.json.JSONException;
+ method @NonNull public org.json.JSONObject put(@NonNull String, long) throws org.json.JSONException;
+ method @NonNull public org.json.JSONObject put(@NonNull String, @Nullable Object) throws org.json.JSONException;
+ method @NonNull public org.json.JSONObject putOpt(@Nullable String, @Nullable Object) throws org.json.JSONException;
+ method @NonNull public static String quote(@Nullable String);
+ method @Nullable public Object remove(@Nullable String);
+ method @Nullable public org.json.JSONArray toJSONArray(@Nullable org.json.JSONArray) throws org.json.JSONException;
+ method @NonNull public String toString(int) throws org.json.JSONException;
+ method @Nullable public static Object wrap(@Nullable Object);
+ field @NonNull public static final Object NULL;
+ }
+
+ public class JSONStringer {
+ ctor public JSONStringer();
+ method public org.json.JSONStringer array() throws org.json.JSONException;
+ method public org.json.JSONStringer endArray() throws org.json.JSONException;
+ method public org.json.JSONStringer endObject() throws org.json.JSONException;
+ method public org.json.JSONStringer key(String) throws org.json.JSONException;
+ method public org.json.JSONStringer object() throws org.json.JSONException;
+ method public org.json.JSONStringer value(Object) throws org.json.JSONException;
+ method public org.json.JSONStringer value(boolean) throws org.json.JSONException;
+ method public org.json.JSONStringer value(double) throws org.json.JSONException;
+ method public org.json.JSONStringer value(long) throws org.json.JSONException;
+ }
+
+ public class JSONTokener {
+ ctor public JSONTokener(String);
+ method public void back();
+ method public static int dehexchar(char);
+ method public boolean more();
+ method public char next();
+ method public char next(char) throws org.json.JSONException;
+ method public String next(int) throws org.json.JSONException;
+ method public char nextClean() throws org.json.JSONException;
+ method public String nextString(char) throws org.json.JSONException;
+ method public String nextTo(String);
+ method public String nextTo(char);
+ method public Object nextValue() throws org.json.JSONException;
+ method public void skipPast(String);
+ method public char skipTo(char);
+ method public org.json.JSONException syntaxError(String);
+ }
+
+}
+
+package org.w3c.dom {
+
+ public interface Attr extends org.w3c.dom.Node {
+ method public String getName();
+ method public org.w3c.dom.Element getOwnerElement();
+ method public org.w3c.dom.TypeInfo getSchemaTypeInfo();
+ method public boolean getSpecified();
+ method public String getValue();
+ method public boolean isId();
+ method public void setValue(String) throws org.w3c.dom.DOMException;
+ }
+
+ public interface CDATASection extends org.w3c.dom.Text {
+ }
+
+ public interface CharacterData extends org.w3c.dom.Node {
+ method public void appendData(String) throws org.w3c.dom.DOMException;
+ method public void deleteData(int, int) throws org.w3c.dom.DOMException;
+ method public String getData() throws org.w3c.dom.DOMException;
+ method public int getLength();
+ method public void insertData(int, String) throws org.w3c.dom.DOMException;
+ method public void replaceData(int, int, String) throws org.w3c.dom.DOMException;
+ method public void setData(String) throws org.w3c.dom.DOMException;
+ method public String substringData(int, int) throws org.w3c.dom.DOMException;
+ }
+
+ public interface Comment extends org.w3c.dom.CharacterData {
+ }
+
+ public interface DOMConfiguration {
+ method public boolean canSetParameter(String, Object);
+ method public Object getParameter(String) throws org.w3c.dom.DOMException;
+ method public org.w3c.dom.DOMStringList getParameterNames();
+ method public void setParameter(String, Object) throws org.w3c.dom.DOMException;
+ }
+
+ public interface DOMError {
+ method public org.w3c.dom.DOMLocator getLocation();
+ method public String getMessage();
+ method public Object getRelatedData();
+ method public Object getRelatedException();
+ method public short getSeverity();
+ method public String getType();
+ field public static final short SEVERITY_ERROR = 2; // 0x2
+ field public static final short SEVERITY_FATAL_ERROR = 3; // 0x3
+ field public static final short SEVERITY_WARNING = 1; // 0x1
+ }
+
+ public interface DOMErrorHandler {
+ method public boolean handleError(org.w3c.dom.DOMError);
+ }
+
+ public class DOMException extends java.lang.RuntimeException {
+ ctor public DOMException(short, String);
+ field public static final short DOMSTRING_SIZE_ERR = 2; // 0x2
+ field public static final short HIERARCHY_REQUEST_ERR = 3; // 0x3
+ field public static final short INDEX_SIZE_ERR = 1; // 0x1
+ field public static final short INUSE_ATTRIBUTE_ERR = 10; // 0xa
+ field public static final short INVALID_ACCESS_ERR = 15; // 0xf
+ field public static final short INVALID_CHARACTER_ERR = 5; // 0x5
+ field public static final short INVALID_MODIFICATION_ERR = 13; // 0xd
+ field public static final short INVALID_STATE_ERR = 11; // 0xb
+ field public static final short NAMESPACE_ERR = 14; // 0xe
+ field public static final short NOT_FOUND_ERR = 8; // 0x8
+ field public static final short NOT_SUPPORTED_ERR = 9; // 0x9
+ field public static final short NO_DATA_ALLOWED_ERR = 6; // 0x6
+ field public static final short NO_MODIFICATION_ALLOWED_ERR = 7; // 0x7
+ field public static final short SYNTAX_ERR = 12; // 0xc
+ field public static final short TYPE_MISMATCH_ERR = 17; // 0x11
+ field public static final short VALIDATION_ERR = 16; // 0x10
+ field public static final short WRONG_DOCUMENT_ERR = 4; // 0x4
+ field public short code;
+ }
+
+ public interface DOMImplementation {
+ method public org.w3c.dom.Document createDocument(String, String, org.w3c.dom.DocumentType) throws org.w3c.dom.DOMException;
+ method public org.w3c.dom.DocumentType createDocumentType(String, String, String) throws org.w3c.dom.DOMException;
+ method public Object getFeature(String, String);
+ method public boolean hasFeature(String, String);
+ }
+
+ public interface DOMImplementationList {
+ method public int getLength();
+ method public org.w3c.dom.DOMImplementation item(int);
+ }
+
+ public interface DOMImplementationSource {
+ method public org.w3c.dom.DOMImplementation getDOMImplementation(String);
+ method public org.w3c.dom.DOMImplementationList getDOMImplementationList(String);
+ }
+
+ public interface DOMLocator {
+ method public int getByteOffset();
+ method public int getColumnNumber();
+ method public int getLineNumber();
+ method public org.w3c.dom.Node getRelatedNode();
+ method public String getUri();
+ method public int getUtf16Offset();
+ }
+
+ public interface DOMStringList {
+ method public boolean contains(String);
+ method public int getLength();
+ method public String item(int);
+ }
+
+ public interface Document extends org.w3c.dom.Node {
+ method public org.w3c.dom.Node adoptNode(org.w3c.dom.Node) throws org.w3c.dom.DOMException;
+ method public org.w3c.dom.Attr createAttribute(String) throws org.w3c.dom.DOMException;
+ method public org.w3c.dom.Attr createAttributeNS(String, String) throws org.w3c.dom.DOMException;
+ method public org.w3c.dom.CDATASection createCDATASection(String) throws org.w3c.dom.DOMException;
+ method public org.w3c.dom.Comment createComment(String);
+ method public org.w3c.dom.DocumentFragment createDocumentFragment();
+ method public org.w3c.dom.Element createElement(String) throws org.w3c.dom.DOMException;
+ method public org.w3c.dom.Element createElementNS(String, String) throws org.w3c.dom.DOMException;
+ method public org.w3c.dom.EntityReference createEntityReference(String) throws org.w3c.dom.DOMException;
+ method public org.w3c.dom.ProcessingInstruction createProcessingInstruction(String, String) throws org.w3c.dom.DOMException;
+ method public org.w3c.dom.Text createTextNode(String);
+ method public org.w3c.dom.DocumentType getDoctype();
+ method public org.w3c.dom.Element getDocumentElement();
+ method public String getDocumentURI();
+ method public org.w3c.dom.DOMConfiguration getDomConfig();
+ method public org.w3c.dom.Element getElementById(String);
+ method public org.w3c.dom.NodeList getElementsByTagName(String);
+ method public org.w3c.dom.NodeList getElementsByTagNameNS(String, String);
+ method public org.w3c.dom.DOMImplementation getImplementation();
+ method public String getInputEncoding();
+ method public boolean getStrictErrorChecking();
+ method public String getXmlEncoding();
+ method public boolean getXmlStandalone();
+ method public String getXmlVersion();
+ method public org.w3c.dom.Node importNode(org.w3c.dom.Node, boolean) throws org.w3c.dom.DOMException;
+ method public void normalizeDocument();
+ method public org.w3c.dom.Node renameNode(org.w3c.dom.Node, String, String) throws org.w3c.dom.DOMException;
+ method public void setDocumentURI(String);
+ method public void setStrictErrorChecking(boolean);
+ method public void setXmlStandalone(boolean) throws org.w3c.dom.DOMException;
+ method public void setXmlVersion(String) throws org.w3c.dom.DOMException;
+ }
+
+ public interface DocumentFragment extends org.w3c.dom.Node {
+ }
+
+ public interface DocumentType extends org.w3c.dom.Node {
+ method public org.w3c.dom.NamedNodeMap getEntities();
+ method public String getInternalSubset();
+ method public String getName();
+ method public org.w3c.dom.NamedNodeMap getNotations();
+ method public String getPublicId();
+ method public String getSystemId();
+ }
+
+ public interface Element extends org.w3c.dom.Node {
+ method public String getAttribute(String);
+ method public String getAttributeNS(String, String) throws org.w3c.dom.DOMException;
+ method public org.w3c.dom.Attr getAttributeNode(String);
+ method public org.w3c.dom.Attr getAttributeNodeNS(String, String) throws org.w3c.dom.DOMException;
+ method public org.w3c.dom.NodeList getElementsByTagName(String);
+ method public org.w3c.dom.NodeList getElementsByTagNameNS(String, String) throws org.w3c.dom.DOMException;
+ method public org.w3c.dom.TypeInfo getSchemaTypeInfo();
+ method public String getTagName();
+ method public boolean hasAttribute(String);
+ method public boolean hasAttributeNS(String, String) throws org.w3c.dom.DOMException;
+ method public void removeAttribute(String) throws org.w3c.dom.DOMException;
+ method public void removeAttributeNS(String, String) throws org.w3c.dom.DOMException;
+ method public org.w3c.dom.Attr removeAttributeNode(org.w3c.dom.Attr) throws org.w3c.dom.DOMException;
+ method public void setAttribute(String, String) throws org.w3c.dom.DOMException;
+ method public void setAttributeNS(String, String, String) throws org.w3c.dom.DOMException;
+ method public org.w3c.dom.Attr setAttributeNode(org.w3c.dom.Attr) throws org.w3c.dom.DOMException;
+ method public org.w3c.dom.Attr setAttributeNodeNS(org.w3c.dom.Attr) throws org.w3c.dom.DOMException;
+ method public void setIdAttribute(String, boolean) throws org.w3c.dom.DOMException;
+ method public void setIdAttributeNS(String, String, boolean) throws org.w3c.dom.DOMException;
+ method public void setIdAttributeNode(org.w3c.dom.Attr, boolean) throws org.w3c.dom.DOMException;
+ }
+
+ public interface Entity extends org.w3c.dom.Node {
+ method public String getInputEncoding();
+ method public String getNotationName();
+ method public String getPublicId();
+ method public String getSystemId();
+ method public String getXmlEncoding();
+ method public String getXmlVersion();
+ }
+
+ public interface EntityReference extends org.w3c.dom.Node {
+ }
+
+ public interface NameList {
+ method public boolean contains(String);
+ method public boolean containsNS(String, String);
+ method public int getLength();
+ method public String getName(int);
+ method public String getNamespaceURI(int);
+ }
+
+ public interface NamedNodeMap {
+ method public int getLength();
+ method public org.w3c.dom.Node getNamedItem(String);
+ method public org.w3c.dom.Node getNamedItemNS(String, String) throws org.w3c.dom.DOMException;
+ method public org.w3c.dom.Node item(int);
+ method public org.w3c.dom.Node removeNamedItem(String) throws org.w3c.dom.DOMException;
+ method public org.w3c.dom.Node removeNamedItemNS(String, String) throws org.w3c.dom.DOMException;
+ method public org.w3c.dom.Node setNamedItem(org.w3c.dom.Node) throws org.w3c.dom.DOMException;
+ method public org.w3c.dom.Node setNamedItemNS(org.w3c.dom.Node) throws org.w3c.dom.DOMException;
+ }
+
+ public interface Node {
+ method public org.w3c.dom.Node appendChild(org.w3c.dom.Node) throws org.w3c.dom.DOMException;
+ method public org.w3c.dom.Node cloneNode(boolean);
+ method public short compareDocumentPosition(org.w3c.dom.Node) throws org.w3c.dom.DOMException;
+ method public org.w3c.dom.NamedNodeMap getAttributes();
+ method public String getBaseURI();
+ method public org.w3c.dom.NodeList getChildNodes();
+ method public Object getFeature(String, String);
+ method public org.w3c.dom.Node getFirstChild();
+ method public org.w3c.dom.Node getLastChild();
+ method public String getLocalName();
+ method public String getNamespaceURI();
+ method public org.w3c.dom.Node getNextSibling();
+ method public String getNodeName();
+ method public short getNodeType();
+ method public String getNodeValue() throws org.w3c.dom.DOMException;
+ method public org.w3c.dom.Document getOwnerDocument();
+ method public org.w3c.dom.Node getParentNode();
+ method public String getPrefix();
+ method public org.w3c.dom.Node getPreviousSibling();
+ method public String getTextContent() throws org.w3c.dom.DOMException;
+ method public Object getUserData(String);
+ method public boolean hasAttributes();
+ method public boolean hasChildNodes();
+ method public org.w3c.dom.Node insertBefore(org.w3c.dom.Node, org.w3c.dom.Node) throws org.w3c.dom.DOMException;
+ method public boolean isDefaultNamespace(String);
+ method public boolean isEqualNode(org.w3c.dom.Node);
+ method public boolean isSameNode(org.w3c.dom.Node);
+ method public boolean isSupported(String, String);
+ method public String lookupNamespaceURI(String);
+ method public String lookupPrefix(String);
+ method public void normalize();
+ method public org.w3c.dom.Node removeChild(org.w3c.dom.Node) throws org.w3c.dom.DOMException;
+ method public org.w3c.dom.Node replaceChild(org.w3c.dom.Node, org.w3c.dom.Node) throws org.w3c.dom.DOMException;
+ method public void setNodeValue(String) throws org.w3c.dom.DOMException;
+ method public void setPrefix(String) throws org.w3c.dom.DOMException;
+ method public void setTextContent(String) throws org.w3c.dom.DOMException;
+ method public Object setUserData(String, Object, org.w3c.dom.UserDataHandler);
+ field public static final short ATTRIBUTE_NODE = 2; // 0x2
+ field public static final short CDATA_SECTION_NODE = 4; // 0x4
+ field public static final short COMMENT_NODE = 8; // 0x8
+ field public static final short DOCUMENT_FRAGMENT_NODE = 11; // 0xb
+ field public static final short DOCUMENT_NODE = 9; // 0x9
+ field public static final short DOCUMENT_POSITION_CONTAINED_BY = 16; // 0x10
+ field public static final short DOCUMENT_POSITION_CONTAINS = 8; // 0x8
+ field public static final short DOCUMENT_POSITION_DISCONNECTED = 1; // 0x1
+ field public static final short DOCUMENT_POSITION_FOLLOWING = 4; // 0x4
+ field public static final short DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC = 32; // 0x20
+ field public static final short DOCUMENT_POSITION_PRECEDING = 2; // 0x2
+ field public static final short DOCUMENT_TYPE_NODE = 10; // 0xa
+ field public static final short ELEMENT_NODE = 1; // 0x1
+ field public static final short ENTITY_NODE = 6; // 0x6
+ field public static final short ENTITY_REFERENCE_NODE = 5; // 0x5
+ field public static final short NOTATION_NODE = 12; // 0xc
+ field public static final short PROCESSING_INSTRUCTION_NODE = 7; // 0x7
+ field public static final short TEXT_NODE = 3; // 0x3
+ }
+
+ public interface NodeList {
+ method public int getLength();
+ method public org.w3c.dom.Node item(int);
+ }
+
+ public interface Notation extends org.w3c.dom.Node {
+ method public String getPublicId();
+ method public String getSystemId();
+ }
+
+ public interface ProcessingInstruction extends org.w3c.dom.Node {
+ method public String getData();
+ method public String getTarget();
+ method public void setData(String) throws org.w3c.dom.DOMException;
+ }
+
+ public interface Text extends org.w3c.dom.CharacterData {
+ method public String getWholeText();
+ method public boolean isElementContentWhitespace();
+ method public org.w3c.dom.Text replaceWholeText(String) throws org.w3c.dom.DOMException;
+ method public org.w3c.dom.Text splitText(int) throws org.w3c.dom.DOMException;
+ }
+
+ public interface TypeInfo {
+ method public String getTypeName();
+ method public String getTypeNamespace();
+ method public boolean isDerivedFrom(String, String, int);
+ field public static final int DERIVATION_EXTENSION = 2; // 0x2
+ field public static final int DERIVATION_LIST = 8; // 0x8
+ field public static final int DERIVATION_RESTRICTION = 1; // 0x1
+ field public static final int DERIVATION_UNION = 4; // 0x4
+ }
+
+ public interface UserDataHandler {
+ method public void handle(short, String, Object, org.w3c.dom.Node, org.w3c.dom.Node);
+ field public static final short NODE_ADOPTED = 5; // 0x5
+ field public static final short NODE_CLONED = 1; // 0x1
+ field public static final short NODE_DELETED = 3; // 0x3
+ field public static final short NODE_IMPORTED = 2; // 0x2
+ field public static final short NODE_RENAMED = 4; // 0x4
+ }
+
+}
+
+package org.w3c.dom.ls {
+
+ public interface DOMImplementationLS {
+ method public org.w3c.dom.ls.LSInput createLSInput();
+ method public org.w3c.dom.ls.LSOutput createLSOutput();
+ method public org.w3c.dom.ls.LSParser createLSParser(short, String) throws org.w3c.dom.DOMException;
+ method public org.w3c.dom.ls.LSSerializer createLSSerializer();
+ field public static final short MODE_ASYNCHRONOUS = 2; // 0x2
+ field public static final short MODE_SYNCHRONOUS = 1; // 0x1
+ }
+
+ public class LSException extends java.lang.RuntimeException {
+ ctor public LSException(short, String);
+ field public static final short PARSE_ERR = 81; // 0x51
+ field public static final short SERIALIZE_ERR = 82; // 0x52
+ field public short code;
+ }
+
+ public interface LSInput {
+ method public String getBaseURI();
+ method public java.io.InputStream getByteStream();
+ method public boolean getCertifiedText();
+ method public java.io.Reader getCharacterStream();
+ method public String getEncoding();
+ method public String getPublicId();
+ method public String getStringData();
+ method public String getSystemId();
+ method public void setBaseURI(String);
+ method public void setByteStream(java.io.InputStream);
+ method public void setCertifiedText(boolean);
+ method public void setCharacterStream(java.io.Reader);
+ method public void setEncoding(String);
+ method public void setPublicId(String);
+ method public void setStringData(String);
+ method public void setSystemId(String);
+ }
+
+ public interface LSOutput {
+ method public java.io.OutputStream getByteStream();
+ method public java.io.Writer getCharacterStream();
+ method public String getEncoding();
+ method public String getSystemId();
+ method public void setByteStream(java.io.OutputStream);
+ method public void setCharacterStream(java.io.Writer);
+ method public void setEncoding(String);
+ method public void setSystemId(String);
+ }
+
+ public interface LSParser {
+ method public void abort();
+ method public boolean getAsync();
+ method public boolean getBusy();
+ method public org.w3c.dom.DOMConfiguration getDomConfig();
+ method public org.w3c.dom.ls.LSParserFilter getFilter();
+ method public org.w3c.dom.Document parse(org.w3c.dom.ls.LSInput) throws org.w3c.dom.DOMException, org.w3c.dom.ls.LSException;
+ method public org.w3c.dom.Document parseURI(String) throws org.w3c.dom.DOMException, org.w3c.dom.ls.LSException;
+ method public org.w3c.dom.Node parseWithContext(org.w3c.dom.ls.LSInput, org.w3c.dom.Node, short) throws org.w3c.dom.DOMException, org.w3c.dom.ls.LSException;
+ method public void setFilter(org.w3c.dom.ls.LSParserFilter);
+ field public static final short ACTION_APPEND_AS_CHILDREN = 1; // 0x1
+ field public static final short ACTION_INSERT_AFTER = 4; // 0x4
+ field public static final short ACTION_INSERT_BEFORE = 3; // 0x3
+ field public static final short ACTION_REPLACE = 5; // 0x5
+ field public static final short ACTION_REPLACE_CHILDREN = 2; // 0x2
+ }
+
+ public interface LSParserFilter {
+ method public short acceptNode(org.w3c.dom.Node);
+ method public int getWhatToShow();
+ method public short startElement(org.w3c.dom.Element);
+ field public static final short FILTER_ACCEPT = 1; // 0x1
+ field public static final short FILTER_INTERRUPT = 4; // 0x4
+ field public static final short FILTER_REJECT = 2; // 0x2
+ field public static final short FILTER_SKIP = 3; // 0x3
+ }
+
+ public interface LSResourceResolver {
+ method public org.w3c.dom.ls.LSInput resolveResource(String, String, String, String, String);
+ }
+
+ public interface LSSerializer {
+ method public org.w3c.dom.DOMConfiguration getDomConfig();
+ method public String getNewLine();
+ method public void setNewLine(String);
+ method public boolean write(org.w3c.dom.Node, org.w3c.dom.ls.LSOutput) throws org.w3c.dom.ls.LSException;
+ method public String writeToString(org.w3c.dom.Node) throws org.w3c.dom.DOMException, org.w3c.dom.ls.LSException;
+ method public boolean writeToURI(org.w3c.dom.Node, String) throws org.w3c.dom.ls.LSException;
+ }
+
+}
+
+package org.xml.sax {
+
+ @Deprecated public interface AttributeList {
+ method @Deprecated public int getLength();
+ method @Deprecated public String getName(int);
+ method @Deprecated public String getType(int);
+ method @Deprecated public String getType(String);
+ method @Deprecated public String getValue(int);
+ method @Deprecated public String getValue(String);
+ }
+
+ public interface Attributes {
+ method public int getIndex(String, String);
+ method public int getIndex(String);
+ method public int getLength();
+ method public String getLocalName(int);
+ method public String getQName(int);
+ method public String getType(int);
+ method public String getType(String, String);
+ method public String getType(String);
+ method public String getURI(int);
+ method public String getValue(int);
+ method public String getValue(String, String);
+ method public String getValue(String);
+ }
+
+ public interface ContentHandler {
+ method public void characters(char[], int, int) throws org.xml.sax.SAXException;
+ method public void endDocument() throws org.xml.sax.SAXException;
+ method public void endElement(String, String, String) throws org.xml.sax.SAXException;
+ method public void endPrefixMapping(String) throws org.xml.sax.SAXException;
+ method public void ignorableWhitespace(char[], int, int) throws org.xml.sax.SAXException;
+ method public void processingInstruction(String, String) throws org.xml.sax.SAXException;
+ method public void setDocumentLocator(org.xml.sax.Locator);
+ method public void skippedEntity(String) throws org.xml.sax.SAXException;
+ method public void startDocument() throws org.xml.sax.SAXException;
+ method public void startElement(String, String, String, org.xml.sax.Attributes) throws org.xml.sax.SAXException;
+ method public void startPrefixMapping(String, String) throws org.xml.sax.SAXException;
+ }
+
+ public interface DTDHandler {
+ method public void notationDecl(String, String, String) throws org.xml.sax.SAXException;
+ method public void unparsedEntityDecl(String, String, String, String) throws org.xml.sax.SAXException;
+ }
+
+ @Deprecated public interface DocumentHandler {
+ method @Deprecated public void characters(char[], int, int) throws org.xml.sax.SAXException;
+ method @Deprecated public void endDocument() throws org.xml.sax.SAXException;
+ method @Deprecated public void endElement(String) throws org.xml.sax.SAXException;
+ method @Deprecated public void ignorableWhitespace(char[], int, int) throws org.xml.sax.SAXException;
+ method @Deprecated public void processingInstruction(String, String) throws org.xml.sax.SAXException;
+ method @Deprecated public void setDocumentLocator(org.xml.sax.Locator);
+ method @Deprecated public void startDocument() throws org.xml.sax.SAXException;
+ method @Deprecated public void startElement(String, org.xml.sax.AttributeList) throws org.xml.sax.SAXException;
+ }
+
+ public interface EntityResolver {
+ method public org.xml.sax.InputSource resolveEntity(String, String) throws java.io.IOException, org.xml.sax.SAXException;
+ }
+
+ public interface ErrorHandler {
+ method public void error(org.xml.sax.SAXParseException) throws org.xml.sax.SAXException;
+ method public void fatalError(org.xml.sax.SAXParseException) throws org.xml.sax.SAXException;
+ method public void warning(org.xml.sax.SAXParseException) throws org.xml.sax.SAXException;
+ }
+
+ @Deprecated public class HandlerBase implements org.xml.sax.DTDHandler org.xml.sax.DocumentHandler org.xml.sax.EntityResolver org.xml.sax.ErrorHandler {
+ ctor @Deprecated public HandlerBase();
+ method @Deprecated public void characters(char[], int, int) throws org.xml.sax.SAXException;
+ method @Deprecated public void endDocument() throws org.xml.sax.SAXException;
+ method @Deprecated public void endElement(String) throws org.xml.sax.SAXException;
+ method @Deprecated public void error(org.xml.sax.SAXParseException) throws org.xml.sax.SAXException;
+ method @Deprecated public void fatalError(org.xml.sax.SAXParseException) throws org.xml.sax.SAXException;
+ method @Deprecated public void ignorableWhitespace(char[], int, int) throws org.xml.sax.SAXException;
+ method @Deprecated public void notationDecl(String, String, String);
+ method @Deprecated public void processingInstruction(String, String) throws org.xml.sax.SAXException;
+ method @Deprecated public org.xml.sax.InputSource resolveEntity(String, String) throws org.xml.sax.SAXException;
+ method @Deprecated public void setDocumentLocator(org.xml.sax.Locator);
+ method @Deprecated public void startDocument() throws org.xml.sax.SAXException;
+ method @Deprecated public void startElement(String, org.xml.sax.AttributeList) throws org.xml.sax.SAXException;
+ method @Deprecated public void unparsedEntityDecl(String, String, String, String);
+ method @Deprecated public void warning(org.xml.sax.SAXParseException) throws org.xml.sax.SAXException;
+ }
+
+ public class InputSource {
+ ctor public InputSource();
+ ctor public InputSource(String);
+ ctor public InputSource(java.io.InputStream);
+ ctor public InputSource(java.io.Reader);
+ method public java.io.InputStream getByteStream();
+ method public java.io.Reader getCharacterStream();
+ method public String getEncoding();
+ method public String getPublicId();
+ method public String getSystemId();
+ method public void setByteStream(java.io.InputStream);
+ method public void setCharacterStream(java.io.Reader);
+ method public void setEncoding(String);
+ method public void setPublicId(String);
+ method public void setSystemId(String);
+ }
+
+ public interface Locator {
+ method public int getColumnNumber();
+ method public int getLineNumber();
+ method public String getPublicId();
+ method public String getSystemId();
+ }
+
+ @Deprecated public interface Parser {
+ method @Deprecated public void parse(org.xml.sax.InputSource) throws java.io.IOException, org.xml.sax.SAXException;
+ method @Deprecated public void parse(String) throws java.io.IOException, org.xml.sax.SAXException;
+ method @Deprecated public void setDTDHandler(org.xml.sax.DTDHandler);
+ method @Deprecated public void setDocumentHandler(org.xml.sax.DocumentHandler);
+ method @Deprecated public void setEntityResolver(org.xml.sax.EntityResolver);
+ method @Deprecated public void setErrorHandler(org.xml.sax.ErrorHandler);
+ method @Deprecated public void setLocale(java.util.Locale) throws org.xml.sax.SAXException;
+ }
+
+ public class SAXException extends java.lang.Exception {
+ ctor public SAXException();
+ ctor public SAXException(String);
+ ctor public SAXException(Exception);
+ ctor public SAXException(String, Exception);
+ method public Exception getException();
+ }
+
+ public class SAXNotRecognizedException extends org.xml.sax.SAXException {
+ ctor public SAXNotRecognizedException();
+ ctor public SAXNotRecognizedException(String);
+ }
+
+ public class SAXNotSupportedException extends org.xml.sax.SAXException {
+ ctor public SAXNotSupportedException();
+ ctor public SAXNotSupportedException(String);
+ }
+
+ public class SAXParseException extends org.xml.sax.SAXException {
+ ctor public SAXParseException(String, org.xml.sax.Locator);
+ ctor public SAXParseException(String, org.xml.sax.Locator, Exception);
+ ctor public SAXParseException(String, String, String, int, int);
+ ctor public SAXParseException(String, String, String, int, int, Exception);
+ method public int getColumnNumber();
+ method public int getLineNumber();
+ method public String getPublicId();
+ method public String getSystemId();
+ }
+
+ public interface XMLFilter extends org.xml.sax.XMLReader {
+ method public org.xml.sax.XMLReader getParent();
+ method public void setParent(org.xml.sax.XMLReader);
+ }
+
+ public interface XMLReader {
+ method public org.xml.sax.ContentHandler getContentHandler();
+ method public org.xml.sax.DTDHandler getDTDHandler();
+ method public org.xml.sax.EntityResolver getEntityResolver();
+ method public org.xml.sax.ErrorHandler getErrorHandler();
+ method public boolean getFeature(String) throws org.xml.sax.SAXNotRecognizedException, org.xml.sax.SAXNotSupportedException;
+ method public Object getProperty(String) throws org.xml.sax.SAXNotRecognizedException, org.xml.sax.SAXNotSupportedException;
+ method public void parse(org.xml.sax.InputSource) throws java.io.IOException, org.xml.sax.SAXException;
+ method public void parse(String) throws java.io.IOException, org.xml.sax.SAXException;
+ method public void setContentHandler(org.xml.sax.ContentHandler);
+ method public void setDTDHandler(org.xml.sax.DTDHandler);
+ method public void setEntityResolver(org.xml.sax.EntityResolver);
+ method public void setErrorHandler(org.xml.sax.ErrorHandler);
+ method public void setFeature(String, boolean) throws org.xml.sax.SAXNotRecognizedException, org.xml.sax.SAXNotSupportedException;
+ method public void setProperty(String, Object) throws org.xml.sax.SAXNotRecognizedException, org.xml.sax.SAXNotSupportedException;
+ }
+
+}
+
+package org.xml.sax.ext {
+
+ public interface Attributes2 extends org.xml.sax.Attributes {
+ method public boolean isDeclared(int);
+ method public boolean isDeclared(String);
+ method public boolean isDeclared(String, String);
+ method public boolean isSpecified(int);
+ method public boolean isSpecified(String, String);
+ method public boolean isSpecified(String);
+ }
+
+ public class Attributes2Impl extends org.xml.sax.helpers.AttributesImpl implements org.xml.sax.ext.Attributes2 {
+ ctor public Attributes2Impl();
+ ctor public Attributes2Impl(org.xml.sax.Attributes);
+ method public boolean isDeclared(int);
+ method public boolean isDeclared(String, String);
+ method public boolean isDeclared(String);
+ method public boolean isSpecified(int);
+ method public boolean isSpecified(String, String);
+ method public boolean isSpecified(String);
+ method public void setDeclared(int, boolean);
+ method public void setSpecified(int, boolean);
+ }
+
+ public interface DeclHandler {
+ method public void attributeDecl(String, String, String, String, String) throws org.xml.sax.SAXException;
+ method public void elementDecl(String, String) throws org.xml.sax.SAXException;
+ method public void externalEntityDecl(String, String, String) throws org.xml.sax.SAXException;
+ method public void internalEntityDecl(String, String) throws org.xml.sax.SAXException;
+ }
+
+ public class DefaultHandler2 extends org.xml.sax.helpers.DefaultHandler implements org.xml.sax.ext.DeclHandler org.xml.sax.ext.EntityResolver2 org.xml.sax.ext.LexicalHandler {
+ ctor public DefaultHandler2();
+ method public void attributeDecl(String, String, String, String, String) throws org.xml.sax.SAXException;
+ method public void comment(char[], int, int) throws org.xml.sax.SAXException;
+ method public void elementDecl(String, String) throws org.xml.sax.SAXException;
+ method public void endCDATA() throws org.xml.sax.SAXException;
+ method public void endDTD() throws org.xml.sax.SAXException;
+ method public void endEntity(String) throws org.xml.sax.SAXException;
+ method public void externalEntityDecl(String, String, String) throws org.xml.sax.SAXException;
+ method public org.xml.sax.InputSource getExternalSubset(String, String) throws java.io.IOException, org.xml.sax.SAXException;
+ method public void internalEntityDecl(String, String) throws org.xml.sax.SAXException;
+ method public org.xml.sax.InputSource resolveEntity(String, String, String, String) throws java.io.IOException, org.xml.sax.SAXException;
+ method public void startCDATA() throws org.xml.sax.SAXException;
+ method public void startDTD(String, String, String) throws org.xml.sax.SAXException;
+ method public void startEntity(String) throws org.xml.sax.SAXException;
+ }
+
+ public interface EntityResolver2 extends org.xml.sax.EntityResolver {
+ method public org.xml.sax.InputSource getExternalSubset(String, String) throws java.io.IOException, org.xml.sax.SAXException;
+ method public org.xml.sax.InputSource resolveEntity(String, String, String, String) throws java.io.IOException, org.xml.sax.SAXException;
+ }
+
+ public interface LexicalHandler {
+ method public void comment(char[], int, int) throws org.xml.sax.SAXException;
+ method public void endCDATA() throws org.xml.sax.SAXException;
+ method public void endDTD() throws org.xml.sax.SAXException;
+ method public void endEntity(String) throws org.xml.sax.SAXException;
+ method public void startCDATA() throws org.xml.sax.SAXException;
+ method public void startDTD(String, String, String) throws org.xml.sax.SAXException;
+ method public void startEntity(String) throws org.xml.sax.SAXException;
+ }
+
+ public interface Locator2 extends org.xml.sax.Locator {
+ method public String getEncoding();
+ method public String getXMLVersion();
+ }
+
+ public class Locator2Impl extends org.xml.sax.helpers.LocatorImpl implements org.xml.sax.ext.Locator2 {
+ ctor public Locator2Impl();
+ ctor public Locator2Impl(org.xml.sax.Locator);
+ method public String getEncoding();
+ method public String getXMLVersion();
+ method public void setEncoding(String);
+ method public void setXMLVersion(String);
+ }
+
+}
+
+package org.xml.sax.helpers {
+
+ @Deprecated public class AttributeListImpl implements org.xml.sax.AttributeList {
+ ctor @Deprecated public AttributeListImpl();
+ ctor @Deprecated public AttributeListImpl(org.xml.sax.AttributeList);
+ method @Deprecated public void addAttribute(String, String, String);
+ method @Deprecated public void clear();
+ method @Deprecated public int getLength();
+ method @Deprecated public String getName(int);
+ method @Deprecated public String getType(int);
+ method @Deprecated public String getType(String);
+ method @Deprecated public String getValue(int);
+ method @Deprecated public String getValue(String);
+ method @Deprecated public void removeAttribute(String);
+ method @Deprecated public void setAttributeList(org.xml.sax.AttributeList);
+ }
+
+ public class AttributesImpl implements org.xml.sax.Attributes {
+ ctor public AttributesImpl();
+ ctor public AttributesImpl(org.xml.sax.Attributes);
+ method public void addAttribute(String, String, String, String, String);
+ method public void clear();
+ method public int getIndex(String, String);
+ method public int getIndex(String);
+ method public int getLength();
+ method public String getLocalName(int);
+ method public String getQName(int);
+ method public String getType(int);
+ method public String getType(String, String);
+ method public String getType(String);
+ method public String getURI(int);
+ method public String getValue(int);
+ method public String getValue(String, String);
+ method public String getValue(String);
+ method public void removeAttribute(int);
+ method public void setAttribute(int, String, String, String, String, String);
+ method public void setAttributes(org.xml.sax.Attributes);
+ method public void setLocalName(int, String);
+ method public void setQName(int, String);
+ method public void setType(int, String);
+ method public void setURI(int, String);
+ method public void setValue(int, String);
+ }
+
+ public class DefaultHandler implements org.xml.sax.ContentHandler org.xml.sax.DTDHandler org.xml.sax.EntityResolver org.xml.sax.ErrorHandler {
+ ctor public DefaultHandler();
+ method public void characters(char[], int, int) throws org.xml.sax.SAXException;
+ method public void endDocument() throws org.xml.sax.SAXException;
+ method public void endElement(String, String, String) throws org.xml.sax.SAXException;
+ method public void endPrefixMapping(String) throws org.xml.sax.SAXException;
+ method public void error(org.xml.sax.SAXParseException) throws org.xml.sax.SAXException;
+ method public void fatalError(org.xml.sax.SAXParseException) throws org.xml.sax.SAXException;
+ method public void ignorableWhitespace(char[], int, int) throws org.xml.sax.SAXException;
+ method public void notationDecl(String, String, String) throws org.xml.sax.SAXException;
+ method public void processingInstruction(String, String) throws org.xml.sax.SAXException;
+ method public org.xml.sax.InputSource resolveEntity(String, String) throws java.io.IOException, org.xml.sax.SAXException;
+ method public void setDocumentLocator(org.xml.sax.Locator);
+ method public void skippedEntity(String) throws org.xml.sax.SAXException;
+ method public void startDocument() throws org.xml.sax.SAXException;
+ method public void startElement(String, String, String, org.xml.sax.Attributes) throws org.xml.sax.SAXException;
+ method public void startPrefixMapping(String, String) throws org.xml.sax.SAXException;
+ method public void unparsedEntityDecl(String, String, String, String) throws org.xml.sax.SAXException;
+ method public void warning(org.xml.sax.SAXParseException) throws org.xml.sax.SAXException;
+ }
+
+ public class LocatorImpl implements org.xml.sax.Locator {
+ ctor public LocatorImpl();
+ ctor public LocatorImpl(org.xml.sax.Locator);
+ method public int getColumnNumber();
+ method public int getLineNumber();
+ method public String getPublicId();
+ method public String getSystemId();
+ method public void setColumnNumber(int);
+ method public void setLineNumber(int);
+ method public void setPublicId(String);
+ method public void setSystemId(String);
+ }
+
+ public class NamespaceSupport {
+ ctor public NamespaceSupport();
+ method public boolean declarePrefix(String, String);
+ method public java.util.Enumeration getDeclaredPrefixes();
+ method public String getPrefix(String);
+ method public java.util.Enumeration getPrefixes();
+ method public java.util.Enumeration getPrefixes(String);
+ method public String getURI(String);
+ method public boolean isNamespaceDeclUris();
+ method public void popContext();
+ method public String[] processName(String, String[], boolean);
+ method public void pushContext();
+ method public void reset();
+ method public void setNamespaceDeclUris(boolean);
+ field public static final String NSDECL = "http://www.w3.org/xmlns/2000/";
+ field public static final String XMLNS = "http://www.w3.org/XML/1998/namespace";
+ }
+
+ public class ParserAdapter implements org.xml.sax.DocumentHandler org.xml.sax.XMLReader {
+ ctor public ParserAdapter() throws org.xml.sax.SAXException;
+ ctor public ParserAdapter(org.xml.sax.Parser);
+ method public void characters(char[], int, int) throws org.xml.sax.SAXException;
+ method public void endDocument() throws org.xml.sax.SAXException;
+ method public void endElement(String) throws org.xml.sax.SAXException;
+ method public org.xml.sax.ContentHandler getContentHandler();
+ method public org.xml.sax.DTDHandler getDTDHandler();
+ method public org.xml.sax.EntityResolver getEntityResolver();
+ method public org.xml.sax.ErrorHandler getErrorHandler();
+ method public boolean getFeature(String) throws org.xml.sax.SAXNotRecognizedException, org.xml.sax.SAXNotSupportedException;
+ method public Object getProperty(String) throws org.xml.sax.SAXNotRecognizedException, org.xml.sax.SAXNotSupportedException;
+ method public void ignorableWhitespace(char[], int, int) throws org.xml.sax.SAXException;
+ method public void parse(String) throws java.io.IOException, org.xml.sax.SAXException;
+ method public void parse(org.xml.sax.InputSource) throws java.io.IOException, org.xml.sax.SAXException;
+ method public void processingInstruction(String, String) throws org.xml.sax.SAXException;
+ method public void setContentHandler(org.xml.sax.ContentHandler);
+ method public void setDTDHandler(org.xml.sax.DTDHandler);
+ method public void setDocumentLocator(org.xml.sax.Locator);
+ method public void setEntityResolver(org.xml.sax.EntityResolver);
+ method public void setErrorHandler(org.xml.sax.ErrorHandler);
+ method public void setFeature(String, boolean) throws org.xml.sax.SAXNotRecognizedException, org.xml.sax.SAXNotSupportedException;
+ method public void setProperty(String, Object) throws org.xml.sax.SAXNotRecognizedException, org.xml.sax.SAXNotSupportedException;
+ method public void startDocument() throws org.xml.sax.SAXException;
+ method public void startElement(String, org.xml.sax.AttributeList) throws org.xml.sax.SAXException;
+ }
+
+ @Deprecated public class ParserFactory {
+ method @Deprecated public static org.xml.sax.Parser makeParser() throws java.lang.ClassCastException, java.lang.ClassNotFoundException, java.lang.IllegalAccessException, java.lang.InstantiationException, java.lang.NullPointerException;
+ method @Deprecated public static org.xml.sax.Parser makeParser(String) throws java.lang.ClassCastException, java.lang.ClassNotFoundException, java.lang.IllegalAccessException, java.lang.InstantiationException;
+ }
+
+ public class XMLFilterImpl implements org.xml.sax.ContentHandler org.xml.sax.DTDHandler org.xml.sax.EntityResolver org.xml.sax.ErrorHandler org.xml.sax.XMLFilter {
+ ctor public XMLFilterImpl();
+ ctor public XMLFilterImpl(org.xml.sax.XMLReader);
+ method public void characters(char[], int, int) throws org.xml.sax.SAXException;
+ method public void endDocument() throws org.xml.sax.SAXException;
+ method public void endElement(String, String, String) throws org.xml.sax.SAXException;
+ method public void endPrefixMapping(String) throws org.xml.sax.SAXException;
+ method public void error(org.xml.sax.SAXParseException) throws org.xml.sax.SAXException;
+ method public void fatalError(org.xml.sax.SAXParseException) throws org.xml.sax.SAXException;
+ method public org.xml.sax.ContentHandler getContentHandler();
+ method public org.xml.sax.DTDHandler getDTDHandler();
+ method public org.xml.sax.EntityResolver getEntityResolver();
+ method public org.xml.sax.ErrorHandler getErrorHandler();
+ method public boolean getFeature(String) throws org.xml.sax.SAXNotRecognizedException, org.xml.sax.SAXNotSupportedException;
+ method public org.xml.sax.XMLReader getParent();
+ method public Object getProperty(String) throws org.xml.sax.SAXNotRecognizedException, org.xml.sax.SAXNotSupportedException;
+ method public void ignorableWhitespace(char[], int, int) throws org.xml.sax.SAXException;
+ method public void notationDecl(String, String, String) throws org.xml.sax.SAXException;
+ method public void parse(org.xml.sax.InputSource) throws java.io.IOException, org.xml.sax.SAXException;
+ method public void parse(String) throws java.io.IOException, org.xml.sax.SAXException;
+ method public void processingInstruction(String, String) throws org.xml.sax.SAXException;
+ method public org.xml.sax.InputSource resolveEntity(String, String) throws java.io.IOException, org.xml.sax.SAXException;
+ method public void setContentHandler(org.xml.sax.ContentHandler);
+ method public void setDTDHandler(org.xml.sax.DTDHandler);
+ method public void setDocumentLocator(org.xml.sax.Locator);
+ method public void setEntityResolver(org.xml.sax.EntityResolver);
+ method public void setErrorHandler(org.xml.sax.ErrorHandler);
+ method public void setFeature(String, boolean) throws org.xml.sax.SAXNotRecognizedException, org.xml.sax.SAXNotSupportedException;
+ method public void setParent(org.xml.sax.XMLReader);
+ method public void setProperty(String, Object) throws org.xml.sax.SAXNotRecognizedException, org.xml.sax.SAXNotSupportedException;
+ method public void skippedEntity(String) throws org.xml.sax.SAXException;
+ method public void startDocument() throws org.xml.sax.SAXException;
+ method public void startElement(String, String, String, org.xml.sax.Attributes) throws org.xml.sax.SAXException;
+ method public void startPrefixMapping(String, String) throws org.xml.sax.SAXException;
+ method public void unparsedEntityDecl(String, String, String, String) throws org.xml.sax.SAXException;
+ method public void warning(org.xml.sax.SAXParseException) throws org.xml.sax.SAXException;
+ }
+
+ public class XMLReaderAdapter implements org.xml.sax.ContentHandler org.xml.sax.Parser {
+ ctor public XMLReaderAdapter() throws org.xml.sax.SAXException;
+ ctor public XMLReaderAdapter(org.xml.sax.XMLReader);
+ method public void characters(char[], int, int) throws org.xml.sax.SAXException;
+ method public void endDocument() throws org.xml.sax.SAXException;
+ method public void endElement(String, String, String) throws org.xml.sax.SAXException;
+ method public void endPrefixMapping(String);
+ method public void ignorableWhitespace(char[], int, int) throws org.xml.sax.SAXException;
+ method public void parse(String) throws java.io.IOException, org.xml.sax.SAXException;
+ method public void parse(org.xml.sax.InputSource) throws java.io.IOException, org.xml.sax.SAXException;
+ method public void processingInstruction(String, String) throws org.xml.sax.SAXException;
+ method public void setDTDHandler(org.xml.sax.DTDHandler);
+ method public void setDocumentHandler(org.xml.sax.DocumentHandler);
+ method public void setDocumentLocator(org.xml.sax.Locator);
+ method public void setEntityResolver(org.xml.sax.EntityResolver);
+ method public void setErrorHandler(org.xml.sax.ErrorHandler);
+ method public void setLocale(java.util.Locale) throws org.xml.sax.SAXException;
+ method public void skippedEntity(String) throws org.xml.sax.SAXException;
+ method public void startDocument() throws org.xml.sax.SAXException;
+ method public void startElement(String, String, String, org.xml.sax.Attributes) throws org.xml.sax.SAXException;
+ method public void startPrefixMapping(String, String);
+ }
+
+ public final class XMLReaderFactory {
+ method public static org.xml.sax.XMLReader createXMLReader() throws org.xml.sax.SAXException;
+ method public static org.xml.sax.XMLReader createXMLReader(String) throws org.xml.sax.SAXException;
+ }
+
+}
+
+package org.xmlpull.v1 {
+
+ public interface XmlPullParser {
+ method public void defineEntityReplacementText(String, String) throws org.xmlpull.v1.XmlPullParserException;
+ method public int getAttributeCount();
+ method public String getAttributeName(int);
+ method public String getAttributeNamespace(int);
+ method public String getAttributePrefix(int);
+ method public String getAttributeType(int);
+ method public String getAttributeValue(int);
+ method public String getAttributeValue(String, String);
+ method public int getColumnNumber();
+ method public int getDepth();
+ method public int getEventType() throws org.xmlpull.v1.XmlPullParserException;
+ method public boolean getFeature(String);
+ method public String getInputEncoding();
+ method public int getLineNumber();
+ method public String getName();
+ method public String getNamespace(String);
+ method public String getNamespace();
+ method public int getNamespaceCount(int) throws org.xmlpull.v1.XmlPullParserException;
+ method public String getNamespacePrefix(int) throws org.xmlpull.v1.XmlPullParserException;
+ method public String getNamespaceUri(int) throws org.xmlpull.v1.XmlPullParserException;
+ method public String getPositionDescription();
+ method public String getPrefix();
+ method public Object getProperty(String);
+ method public String getText();
+ method public char[] getTextCharacters(int[]);
+ method public boolean isAttributeDefault(int);
+ method public boolean isEmptyElementTag() throws org.xmlpull.v1.XmlPullParserException;
+ method public boolean isWhitespace() throws org.xmlpull.v1.XmlPullParserException;
+ method public int next() throws java.io.IOException, org.xmlpull.v1.XmlPullParserException;
+ method public int nextTag() throws java.io.IOException, org.xmlpull.v1.XmlPullParserException;
+ method public String nextText() throws java.io.IOException, org.xmlpull.v1.XmlPullParserException;
+ method public int nextToken() throws java.io.IOException, org.xmlpull.v1.XmlPullParserException;
+ method public void require(int, String, String) throws java.io.IOException, org.xmlpull.v1.XmlPullParserException;
+ method public void setFeature(String, boolean) throws org.xmlpull.v1.XmlPullParserException;
+ method public void setInput(java.io.Reader) throws org.xmlpull.v1.XmlPullParserException;
+ method public void setInput(java.io.InputStream, String) throws org.xmlpull.v1.XmlPullParserException;
+ method public void setProperty(String, Object) throws org.xmlpull.v1.XmlPullParserException;
+ field public static final int CDSECT = 5; // 0x5
+ field public static final int COMMENT = 9; // 0x9
+ field public static final int DOCDECL = 10; // 0xa
+ field public static final int END_DOCUMENT = 1; // 0x1
+ field public static final int END_TAG = 3; // 0x3
+ field public static final int ENTITY_REF = 6; // 0x6
+ field public static final String FEATURE_PROCESS_DOCDECL = "http://xmlpull.org/v1/doc/features.html#process-docdecl";
+ field public static final String FEATURE_PROCESS_NAMESPACES = "http://xmlpull.org/v1/doc/features.html#process-namespaces";
+ field public static final String FEATURE_REPORT_NAMESPACE_ATTRIBUTES = "http://xmlpull.org/v1/doc/features.html#report-namespace-prefixes";
+ field public static final String FEATURE_VALIDATION = "http://xmlpull.org/v1/doc/features.html#validation";
+ field public static final int IGNORABLE_WHITESPACE = 7; // 0x7
+ field public static final String NO_NAMESPACE = "";
+ field public static final int PROCESSING_INSTRUCTION = 8; // 0x8
+ field public static final int START_DOCUMENT = 0; // 0x0
+ field public static final int START_TAG = 2; // 0x2
+ field public static final int TEXT = 4; // 0x4
+ field public static final String[] TYPES;
+ }
+
+ public class XmlPullParserException extends java.lang.Exception {
+ ctor public XmlPullParserException(String);
+ ctor public XmlPullParserException(String, org.xmlpull.v1.XmlPullParser, Throwable);
+ method public int getColumnNumber();
+ method public Throwable getDetail();
+ method public int getLineNumber();
+ field protected int column;
+ field protected Throwable detail;
+ field protected int row;
+ }
+
+ public class XmlPullParserFactory {
+ ctor protected XmlPullParserFactory();
+ method public boolean getFeature(String);
+ method public boolean isNamespaceAware();
+ method public boolean isValidating();
+ method public static org.xmlpull.v1.XmlPullParserFactory newInstance() throws org.xmlpull.v1.XmlPullParserException;
+ method public static org.xmlpull.v1.XmlPullParserFactory newInstance(String, Class) throws org.xmlpull.v1.XmlPullParserException;
+ method public org.xmlpull.v1.XmlPullParser newPullParser() throws org.xmlpull.v1.XmlPullParserException;
+ method public org.xmlpull.v1.XmlSerializer newSerializer() throws org.xmlpull.v1.XmlPullParserException;
+ method public void setFeature(String, boolean) throws org.xmlpull.v1.XmlPullParserException;
+ method public void setNamespaceAware(boolean);
+ method public void setValidating(boolean);
+ field public static final String PROPERTY_NAME = "org.xmlpull.v1.XmlPullParserFactory";
+ field protected String classNamesLocation;
+ field protected java.util.HashMap<java.lang.String,java.lang.Boolean> features;
+ field protected java.util.ArrayList parserClasses;
+ field protected java.util.ArrayList serializerClasses;
+ }
+
+ public interface XmlSerializer {
+ method public org.xmlpull.v1.XmlSerializer attribute(String, String, String) throws java.io.IOException, java.lang.IllegalArgumentException, java.lang.IllegalStateException;
+ method public void cdsect(String) throws java.io.IOException, java.lang.IllegalArgumentException, java.lang.IllegalStateException;
+ method public void comment(String) throws java.io.IOException, java.lang.IllegalArgumentException, java.lang.IllegalStateException;
+ method public void docdecl(String) throws java.io.IOException, java.lang.IllegalArgumentException, java.lang.IllegalStateException;
+ method public void endDocument() throws java.io.IOException, java.lang.IllegalArgumentException, java.lang.IllegalStateException;
+ method public org.xmlpull.v1.XmlSerializer endTag(String, String) throws java.io.IOException, java.lang.IllegalArgumentException, java.lang.IllegalStateException;
+ method public void entityRef(String) throws java.io.IOException, java.lang.IllegalArgumentException, java.lang.IllegalStateException;
+ method public void flush() throws java.io.IOException;
+ method public int getDepth();
+ method public boolean getFeature(String);
+ method public String getName();
+ method public String getNamespace();
+ method public String getPrefix(String, boolean) throws java.lang.IllegalArgumentException;
+ method public Object getProperty(String);
+ method public void ignorableWhitespace(String) throws java.io.IOException, java.lang.IllegalArgumentException, java.lang.IllegalStateException;
+ method public void processingInstruction(String) throws java.io.IOException, java.lang.IllegalArgumentException, java.lang.IllegalStateException;
+ method public void setFeature(String, boolean) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException;
+ method public void setOutput(java.io.OutputStream, String) throws java.io.IOException, java.lang.IllegalArgumentException, java.lang.IllegalStateException;
+ method public void setOutput(java.io.Writer) throws java.io.IOException, java.lang.IllegalArgumentException, java.lang.IllegalStateException;
+ method public void setPrefix(String, String) throws java.io.IOException, java.lang.IllegalArgumentException, java.lang.IllegalStateException;
+ method public void setProperty(String, Object) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException;
+ method public void startDocument(String, Boolean) throws java.io.IOException, java.lang.IllegalArgumentException, java.lang.IllegalStateException;
+ method public org.xmlpull.v1.XmlSerializer startTag(String, String) throws java.io.IOException, java.lang.IllegalArgumentException, java.lang.IllegalStateException;
+ method public org.xmlpull.v1.XmlSerializer text(String) throws java.io.IOException, java.lang.IllegalArgumentException, java.lang.IllegalStateException;
+ method public org.xmlpull.v1.XmlSerializer text(char[], int, int) throws java.io.IOException, java.lang.IllegalArgumentException, java.lang.IllegalStateException;
+ }
+
+}
+
+package org.xmlpull.v1.sax2 {
+
+ public class Driver implements org.xml.sax.Attributes org.xml.sax.Locator org.xml.sax.XMLReader {
+ ctor public Driver() throws org.xmlpull.v1.XmlPullParserException;
+ ctor public Driver(org.xmlpull.v1.XmlPullParser) throws org.xmlpull.v1.XmlPullParserException;
+ method public int getColumnNumber();
+ method public org.xml.sax.ContentHandler getContentHandler();
+ method public org.xml.sax.DTDHandler getDTDHandler();
+ method public org.xml.sax.EntityResolver getEntityResolver();
+ method public org.xml.sax.ErrorHandler getErrorHandler();
+ method public boolean getFeature(String) throws org.xml.sax.SAXNotRecognizedException, org.xml.sax.SAXNotSupportedException;
+ method public int getIndex(String, String);
+ method public int getIndex(String);
+ method public int getLength();
+ method public int getLineNumber();
+ method public String getLocalName(int);
+ method public Object getProperty(String) throws org.xml.sax.SAXNotRecognizedException, org.xml.sax.SAXNotSupportedException;
+ method public String getPublicId();
+ method public String getQName(int);
+ method public String getSystemId();
+ method public String getType(int);
+ method public String getType(String, String);
+ method public String getType(String);
+ method public String getURI(int);
+ method public String getValue(int);
+ method public String getValue(String, String);
+ method public String getValue(String);
+ method public void parse(org.xml.sax.InputSource) throws java.io.IOException, org.xml.sax.SAXException;
+ method public void parse(String) throws java.io.IOException, org.xml.sax.SAXException;
+ method public void parseSubTree(org.xmlpull.v1.XmlPullParser) throws java.io.IOException, org.xml.sax.SAXException;
+ method public void setContentHandler(org.xml.sax.ContentHandler);
+ method public void setDTDHandler(org.xml.sax.DTDHandler);
+ method public void setEntityResolver(org.xml.sax.EntityResolver);
+ method public void setErrorHandler(org.xml.sax.ErrorHandler);
+ method public void setFeature(String, boolean) throws org.xml.sax.SAXNotRecognizedException, org.xml.sax.SAXNotSupportedException;
+ method public void setProperty(String, Object) throws org.xml.sax.SAXNotRecognizedException, org.xml.sax.SAXNotSupportedException;
+ method protected void startElement(String, String, String) throws org.xml.sax.SAXException;
+ field protected static final String APACHE_DYNAMIC_VALIDATION_FEATURE = "http://apache.org/xml/features/validation/dynamic";
+ field protected static final String APACHE_SCHEMA_VALIDATION_FEATURE = "http://apache.org/xml/features/validation/schema";
+ field protected static final String DECLARATION_HANDLER_PROPERTY = "http://xml.org/sax/properties/declaration-handler";
+ field protected static final String LEXICAL_HANDLER_PROPERTY = "http://xml.org/sax/properties/lexical-handler";
+ field protected static final String NAMESPACES_FEATURE = "http://xml.org/sax/features/namespaces";
+ field protected static final String NAMESPACE_PREFIXES_FEATURE = "http://xml.org/sax/features/namespace-prefixes";
+ field protected static final String VALIDATION_FEATURE = "http://xml.org/sax/features/validation";
+ field protected org.xml.sax.ContentHandler contentHandler;
+ field protected org.xml.sax.ErrorHandler errorHandler;
+ field protected org.xmlpull.v1.XmlPullParser pp;
+ field protected String systemId;
+ }
+
+}
+
diff --git a/extensions/3/public/api/conscrypt.module.intra.core.api-removed.txt b/extensions/3/public/api/conscrypt.module.intra.core.api-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/public/api/conscrypt.module.intra.core.api-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/public/api/conscrypt.module.intra.core.api.txt b/extensions/3/public/api/conscrypt.module.intra.core.api.txt
new file mode 100644
index 000000000..6fce26f09
--- /dev/null
+++ b/extensions/3/public/api/conscrypt.module.intra.core.api.txt
@@ -0,0 +1,40 @@
+// Signature format: 2.0
+package com.android.org.conscrypt {
+
+ public class OpenSSLMessageDigestJDK extends java.security.MessageDigestSpi implements java.lang.Cloneable {
+ }
+
+ public static final class OpenSSLMessageDigestJDK.MD5 extends com.android.org.conscrypt.OpenSSLMessageDigestJDK {
+ ctor public OpenSSLMessageDigestJDK.MD5() throws java.security.NoSuchAlgorithmException;
+ }
+
+ public static final class OpenSSLMessageDigestJDK.SHA1 extends com.android.org.conscrypt.OpenSSLMessageDigestJDK {
+ ctor public OpenSSLMessageDigestJDK.SHA1() throws java.security.NoSuchAlgorithmException;
+ }
+
+ public static final class OpenSSLMessageDigestJDK.SHA224 extends com.android.org.conscrypt.OpenSSLMessageDigestJDK {
+ ctor public OpenSSLMessageDigestJDK.SHA224() throws java.security.NoSuchAlgorithmException;
+ }
+
+ public static final class OpenSSLMessageDigestJDK.SHA256 extends com.android.org.conscrypt.OpenSSLMessageDigestJDK {
+ ctor public OpenSSLMessageDigestJDK.SHA256() throws java.security.NoSuchAlgorithmException;
+ }
+
+ public static final class OpenSSLMessageDigestJDK.SHA384 extends com.android.org.conscrypt.OpenSSLMessageDigestJDK {
+ ctor public OpenSSLMessageDigestJDK.SHA384() throws java.security.NoSuchAlgorithmException;
+ }
+
+ public static final class OpenSSLMessageDigestJDK.SHA512 extends com.android.org.conscrypt.OpenSSLMessageDigestJDK {
+ ctor public OpenSSLMessageDigestJDK.SHA512() throws java.security.NoSuchAlgorithmException;
+ }
+
+ public final class OpenSSLProvider extends java.security.Provider {
+ ctor public OpenSSLProvider();
+ }
+
+ public final class OpenSSLRandom extends java.security.SecureRandomSpi implements java.io.Serializable {
+ ctor public OpenSSLRandom();
+ }
+
+}
+
diff --git a/extensions/3/public/api/conscrypt.module.platform.api-removed.txt b/extensions/3/public/api/conscrypt.module.platform.api-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/public/api/conscrypt.module.platform.api-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/public/api/conscrypt.module.platform.api.txt b/extensions/3/public/api/conscrypt.module.platform.api.txt
new file mode 100644
index 000000000..b64538382
--- /dev/null
+++ b/extensions/3/public/api/conscrypt.module.platform.api.txt
@@ -0,0 +1,100 @@
+// Signature format: 2.0
+package com.android.org.conscrypt {
+
+ public interface CertPinManager {
+ }
+
+ public final class ClientSessionContext implements javax.net.ssl.SSLSessionContext {
+ method public final java.util.Enumeration<byte[]> getIds();
+ method public final javax.net.ssl.SSLSession getSession(byte[]);
+ method public final int getSessionCacheSize();
+ method public final int getSessionTimeout();
+ method public void setPersistentCache(com.android.org.conscrypt.SSLClientSessionCache);
+ method public final void setSessionCacheSize(int) throws java.lang.IllegalArgumentException;
+ method public final void setSessionTimeout(int) throws java.lang.IllegalArgumentException;
+ }
+
+ public final class Conscrypt {
+ method public static javax.net.ssl.X509TrustManager getDefaultX509TrustManager() throws java.security.KeyManagementException;
+ }
+
+ public interface ConscryptCertStore {
+ }
+
+ public final class FileClientSessionCache {
+ method public static com.android.org.conscrypt.SSLClientSessionCache usingDirectory(java.io.File) throws java.io.IOException;
+ }
+
+ public final class OpenSSLProvider extends java.security.Provider {
+ ctor public OpenSSLProvider();
+ }
+
+ public abstract class OpenSSLSocketImpl extends javax.net.ssl.SSLSocket {
+ method public void addHandshakeCompletedListener(javax.net.ssl.HandshakeCompletedListener);
+ method public final void connect(java.net.SocketAddress) throws java.io.IOException;
+ method public final void connect(java.net.SocketAddress, int) throws java.io.IOException;
+ method @Deprecated public final byte[] getAlpnSelectedProtocol();
+ method @Deprecated public final byte[] getNpnSelectedProtocol();
+ method public final int getPort();
+ method public final int getSoTimeout() throws java.net.SocketException;
+ method public void removeHandshakeCompletedListener(javax.net.ssl.HandshakeCompletedListener);
+ method public final void sendUrgentData(int) throws java.io.IOException;
+ method @Deprecated public final void setAlpnProtocols(byte[]);
+ method public abstract void setChannelIdPrivateKey(java.security.PrivateKey);
+ method public void setHandshakeTimeout(int) throws java.net.SocketException;
+ method public void setHostname(String);
+ method @Deprecated public final void setNpnProtocols(byte[]);
+ method public final void setOOBInline(boolean) throws java.net.SocketException;
+ method public final void setSoTimeout(int) throws java.net.SocketException;
+ method public void setSoWriteTimeout(int) throws java.net.SocketException;
+ method public abstract void setUseSessionTickets(boolean);
+ }
+
+ public interface SSLClientSessionCache {
+ }
+
+ public final class TrustManagerImpl extends javax.net.ssl.X509ExtendedTrustManager {
+ ctor public TrustManagerImpl(java.security.KeyStore);
+ ctor public TrustManagerImpl(java.security.KeyStore, com.android.org.conscrypt.CertPinManager, com.android.org.conscrypt.ConscryptCertStore);
+ method public void checkClientTrusted(java.security.cert.X509Certificate[], String) throws java.security.cert.CertificateException;
+ method public void checkClientTrusted(java.security.cert.X509Certificate[], String, java.net.Socket) throws java.security.cert.CertificateException;
+ method public void checkClientTrusted(java.security.cert.X509Certificate[], String, javax.net.ssl.SSLEngine) throws java.security.cert.CertificateException;
+ method public java.util.List<java.security.cert.X509Certificate> checkServerTrusted(java.security.cert.X509Certificate[], String, String) throws java.security.cert.CertificateException;
+ method public java.util.List<java.security.cert.X509Certificate> getTrustedChainForServer(java.security.cert.X509Certificate[], String, java.net.Socket) throws java.security.cert.CertificateException;
+ method public java.util.List<java.security.cert.X509Certificate> getTrustedChainForServer(java.security.cert.X509Certificate[], String, javax.net.ssl.SSLEngine) throws java.security.cert.CertificateException;
+ method public void handleTrustStorageUpdate();
+ }
+
+ public final class TrustedCertificateIndex {
+ ctor public TrustedCertificateIndex();
+ method public java.util.Set<java.security.cert.TrustAnchor> findAllByIssuerAndSignature(java.security.cert.X509Certificate);
+ method public java.security.cert.TrustAnchor findByIssuerAndSignature(java.security.cert.X509Certificate);
+ method public java.security.cert.TrustAnchor findBySubjectAndPublicKey(java.security.cert.X509Certificate);
+ method public java.security.cert.TrustAnchor index(java.security.cert.X509Certificate);
+ }
+
+ public class TrustedCertificateStore implements com.android.org.conscrypt.ConscryptCertStore {
+ ctor public TrustedCertificateStore();
+ method public java.util.Set<java.lang.String> aliases();
+ method public java.util.Set<java.lang.String> allSystemAliases();
+ method public boolean containsAlias(String);
+ method public void deleteCertificateEntry(String) throws java.security.cert.CertificateException, java.io.IOException;
+ method public java.util.Set<java.security.cert.X509Certificate> findAllIssuers(java.security.cert.X509Certificate);
+ method public java.security.cert.X509Certificate findIssuer(java.security.cert.X509Certificate);
+ method public java.security.cert.Certificate getCertificate(String);
+ method public java.security.cert.Certificate getCertificate(String, boolean);
+ method public String getCertificateAlias(java.security.cert.Certificate);
+ method public String getCertificateAlias(java.security.cert.Certificate, boolean);
+ method public java.util.List<java.security.cert.X509Certificate> getCertificateChain(java.security.cert.X509Certificate) throws java.security.cert.CertificateException;
+ method public java.io.File getCertificateFile(java.io.File, java.security.cert.X509Certificate);
+ method public java.util.Date getCreationDate(String);
+ method public java.security.cert.X509Certificate getTrustAnchor(java.security.cert.X509Certificate);
+ method public void installCertificate(java.security.cert.X509Certificate) throws java.security.cert.CertificateException, java.io.IOException;
+ method public static final boolean isUser(String);
+ method public boolean isUserAddedCertificate(java.security.cert.X509Certificate);
+ method public static void setDefaultUserDirectory(java.io.File);
+ method public java.util.Set<java.lang.String> userAliases();
+ }
+
+}
+
diff --git a/extensions/3/public/api/conscrypt.module.public.api-removed.txt b/extensions/3/public/api/conscrypt.module.public.api-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/public/api/conscrypt.module.public.api-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/public/api/conscrypt.module.public.api.txt b/extensions/3/public/api/conscrypt.module.public.api.txt
new file mode 100644
index 000000000..809495c04
--- /dev/null
+++ b/extensions/3/public/api/conscrypt.module.public.api.txt
@@ -0,0 +1,17 @@
+// Signature format: 2.0
+package android.net.ssl {
+
+ public class SSLEngines {
+ method @Nullable public static byte[] exportKeyingMaterial(@NonNull javax.net.ssl.SSLEngine, @NonNull String, @Nullable byte[], int) throws javax.net.ssl.SSLException;
+ method public static boolean isSupportedEngine(@NonNull javax.net.ssl.SSLEngine);
+ method public static void setUseSessionTickets(@NonNull javax.net.ssl.SSLEngine, boolean);
+ }
+
+ public class SSLSockets {
+ method @Nullable public static byte[] exportKeyingMaterial(@NonNull javax.net.ssl.SSLSocket, @NonNull String, @Nullable byte[], int) throws javax.net.ssl.SSLException;
+ method public static boolean isSupportedSocket(@NonNull javax.net.ssl.SSLSocket);
+ method public static void setUseSessionTickets(@NonNull javax.net.ssl.SSLSocket, boolean);
+ }
+
+}
+
diff --git a/extensions/3/public/api/framework-adservices-removed.txt b/extensions/3/public/api/framework-adservices-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/public/api/framework-adservices-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/public/api/framework-adservices.txt b/extensions/3/public/api/framework-adservices.txt
new file mode 100644
index 000000000..8374d753e
--- /dev/null
+++ b/extensions/3/public/api/framework-adservices.txt
@@ -0,0 +1,9 @@
+// Signature format: 2.0
+package android.adservices {
+
+ public class AdServicesVersion {
+ field public static final int API_VERSION;
+ }
+
+}
+
diff --git a/extensions/3/public/api/framework-appsearch-removed.txt b/extensions/3/public/api/framework-appsearch-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/public/api/framework-appsearch-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/public/api/framework-appsearch.txt b/extensions/3/public/api/framework-appsearch.txt
new file mode 100644
index 000000000..5aea80f77
--- /dev/null
+++ b/extensions/3/public/api/framework-appsearch.txt
@@ -0,0 +1,518 @@
+// Signature format: 2.0
+package android.app.appsearch {
+
+ public final class AppSearchBatchResult<KeyType, ValueType> {
+ method @NonNull public java.util.Map<KeyType,android.app.appsearch.AppSearchResult<ValueType>> getAll();
+ method @NonNull public java.util.Map<KeyType,android.app.appsearch.AppSearchResult<ValueType>> getFailures();
+ method @NonNull public java.util.Map<KeyType,ValueType> getSuccesses();
+ method public boolean isSuccess();
+ }
+
+ public static final class AppSearchBatchResult.Builder<KeyType, ValueType> {
+ ctor public AppSearchBatchResult.Builder();
+ method @NonNull public android.app.appsearch.AppSearchBatchResult<KeyType,ValueType> build();
+ method @NonNull public android.app.appsearch.AppSearchBatchResult.Builder<KeyType,ValueType> setFailure(@NonNull KeyType, int, @Nullable String);
+ method @NonNull public android.app.appsearch.AppSearchBatchResult.Builder<KeyType,ValueType> setResult(@NonNull KeyType, @NonNull android.app.appsearch.AppSearchResult<ValueType>);
+ method @NonNull public android.app.appsearch.AppSearchBatchResult.Builder<KeyType,ValueType> setSuccess(@NonNull KeyType, @Nullable ValueType);
+ }
+
+ public class AppSearchManager {
+ method public void createGlobalSearchSession(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.app.appsearch.AppSearchResult<android.app.appsearch.GlobalSearchSession>>);
+ method public void createSearchSession(@NonNull android.app.appsearch.AppSearchManager.SearchContext, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.app.appsearch.AppSearchResult<android.app.appsearch.AppSearchSession>>);
+ }
+
+ public static final class AppSearchManager.SearchContext {
+ method @NonNull public String getDatabaseName();
+ }
+
+ public static final class AppSearchManager.SearchContext.Builder {
+ ctor public AppSearchManager.SearchContext.Builder(@NonNull String);
+ method @NonNull public android.app.appsearch.AppSearchManager.SearchContext build();
+ }
+
+ public final class AppSearchResult<ValueType> {
+ method @Nullable public String getErrorMessage();
+ method public int getResultCode();
+ method @Nullable public ValueType getResultValue();
+ method public boolean isSuccess();
+ method @NonNull public static <ValueType> android.app.appsearch.AppSearchResult<ValueType> newFailedResult(int, @Nullable String);
+ method @NonNull public static <ValueType> android.app.appsearch.AppSearchResult<ValueType> newSuccessfulResult(@Nullable ValueType);
+ field public static final int RESULT_INTERNAL_ERROR = 2; // 0x2
+ field public static final int RESULT_INVALID_ARGUMENT = 3; // 0x3
+ field public static final int RESULT_INVALID_SCHEMA = 7; // 0x7
+ field public static final int RESULT_IO_ERROR = 4; // 0x4
+ field public static final int RESULT_NOT_FOUND = 6; // 0x6
+ field public static final int RESULT_OK = 0; // 0x0
+ field public static final int RESULT_OUT_OF_SPACE = 5; // 0x5
+ field public static final int RESULT_SECURITY_ERROR = 8; // 0x8
+ field public static final int RESULT_UNKNOWN_ERROR = 1; // 0x1
+ }
+
+ public final class AppSearchSchema {
+ method @NonNull public java.util.List<android.app.appsearch.AppSearchSchema.PropertyConfig> getProperties();
+ method @NonNull public String getSchemaType();
+ }
+
+ public static final class AppSearchSchema.BooleanPropertyConfig extends android.app.appsearch.AppSearchSchema.PropertyConfig {
+ }
+
+ public static final class AppSearchSchema.BooleanPropertyConfig.Builder {
+ ctor public AppSearchSchema.BooleanPropertyConfig.Builder(@NonNull String);
+ method @NonNull public android.app.appsearch.AppSearchSchema.BooleanPropertyConfig build();
+ method @NonNull public android.app.appsearch.AppSearchSchema.BooleanPropertyConfig.Builder setCardinality(int);
+ }
+
+ public static final class AppSearchSchema.Builder {
+ ctor public AppSearchSchema.Builder(@NonNull String);
+ method @NonNull public android.app.appsearch.AppSearchSchema.Builder addProperty(@NonNull android.app.appsearch.AppSearchSchema.PropertyConfig);
+ method @NonNull public android.app.appsearch.AppSearchSchema build();
+ }
+
+ public static final class AppSearchSchema.BytesPropertyConfig extends android.app.appsearch.AppSearchSchema.PropertyConfig {
+ }
+
+ public static final class AppSearchSchema.BytesPropertyConfig.Builder {
+ ctor public AppSearchSchema.BytesPropertyConfig.Builder(@NonNull String);
+ method @NonNull public android.app.appsearch.AppSearchSchema.BytesPropertyConfig build();
+ method @NonNull public android.app.appsearch.AppSearchSchema.BytesPropertyConfig.Builder setCardinality(int);
+ }
+
+ public static final class AppSearchSchema.DocumentPropertyConfig extends android.app.appsearch.AppSearchSchema.PropertyConfig {
+ method @NonNull public String getSchemaType();
+ method public boolean shouldIndexNestedProperties();
+ }
+
+ public static final class AppSearchSchema.DocumentPropertyConfig.Builder {
+ ctor public AppSearchSchema.DocumentPropertyConfig.Builder(@NonNull String, @NonNull String);
+ method @NonNull public android.app.appsearch.AppSearchSchema.DocumentPropertyConfig build();
+ method @NonNull public android.app.appsearch.AppSearchSchema.DocumentPropertyConfig.Builder setCardinality(int);
+ method @NonNull public android.app.appsearch.AppSearchSchema.DocumentPropertyConfig.Builder setShouldIndexNestedProperties(boolean);
+ }
+
+ public static final class AppSearchSchema.DoublePropertyConfig extends android.app.appsearch.AppSearchSchema.PropertyConfig {
+ }
+
+ public static final class AppSearchSchema.DoublePropertyConfig.Builder {
+ ctor public AppSearchSchema.DoublePropertyConfig.Builder(@NonNull String);
+ method @NonNull public android.app.appsearch.AppSearchSchema.DoublePropertyConfig build();
+ method @NonNull public android.app.appsearch.AppSearchSchema.DoublePropertyConfig.Builder setCardinality(int);
+ }
+
+ public static final class AppSearchSchema.LongPropertyConfig extends android.app.appsearch.AppSearchSchema.PropertyConfig {
+ }
+
+ public static final class AppSearchSchema.LongPropertyConfig.Builder {
+ ctor public AppSearchSchema.LongPropertyConfig.Builder(@NonNull String);
+ method @NonNull public android.app.appsearch.AppSearchSchema.LongPropertyConfig build();
+ method @NonNull public android.app.appsearch.AppSearchSchema.LongPropertyConfig.Builder setCardinality(int);
+ }
+
+ public abstract static class AppSearchSchema.PropertyConfig {
+ method public int getCardinality();
+ method @NonNull public String getName();
+ field public static final int CARDINALITY_OPTIONAL = 2; // 0x2
+ field public static final int CARDINALITY_REPEATED = 1; // 0x1
+ field public static final int CARDINALITY_REQUIRED = 3; // 0x3
+ }
+
+ public static final class AppSearchSchema.StringPropertyConfig extends android.app.appsearch.AppSearchSchema.PropertyConfig {
+ method public int getIndexingType();
+ method public int getTokenizerType();
+ field public static final int INDEXING_TYPE_EXACT_TERMS = 1; // 0x1
+ field public static final int INDEXING_TYPE_NONE = 0; // 0x0
+ field public static final int INDEXING_TYPE_PREFIXES = 2; // 0x2
+ field public static final int TOKENIZER_TYPE_NONE = 0; // 0x0
+ field public static final int TOKENIZER_TYPE_PLAIN = 1; // 0x1
+ }
+
+ public static final class AppSearchSchema.StringPropertyConfig.Builder {
+ ctor public AppSearchSchema.StringPropertyConfig.Builder(@NonNull String);
+ method @NonNull public android.app.appsearch.AppSearchSchema.StringPropertyConfig build();
+ method @NonNull public android.app.appsearch.AppSearchSchema.StringPropertyConfig.Builder setCardinality(int);
+ method @NonNull public android.app.appsearch.AppSearchSchema.StringPropertyConfig.Builder setIndexingType(int);
+ method @NonNull public android.app.appsearch.AppSearchSchema.StringPropertyConfig.Builder setTokenizerType(int);
+ }
+
+ public final class AppSearchSession implements java.io.Closeable {
+ method public void close();
+ method public void getByDocumentId(@NonNull android.app.appsearch.GetByDocumentIdRequest, @NonNull java.util.concurrent.Executor, @NonNull android.app.appsearch.BatchResultCallback<java.lang.String,android.app.appsearch.GenericDocument>);
+ method public void getNamespaces(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.app.appsearch.AppSearchResult<java.util.Set<java.lang.String>>>);
+ method public void getSchema(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.app.appsearch.AppSearchResult<android.app.appsearch.GetSchemaResponse>>);
+ method public void getStorageInfo(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.app.appsearch.AppSearchResult<android.app.appsearch.StorageInfo>>);
+ method public void put(@NonNull android.app.appsearch.PutDocumentsRequest, @NonNull java.util.concurrent.Executor, @NonNull android.app.appsearch.BatchResultCallback<java.lang.String,java.lang.Void>);
+ method public void remove(@NonNull android.app.appsearch.RemoveByDocumentIdRequest, @NonNull java.util.concurrent.Executor, @NonNull android.app.appsearch.BatchResultCallback<java.lang.String,java.lang.Void>);
+ method public void remove(@NonNull String, @NonNull android.app.appsearch.SearchSpec, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.app.appsearch.AppSearchResult<java.lang.Void>>);
+ method public void reportUsage(@NonNull android.app.appsearch.ReportUsageRequest, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.app.appsearch.AppSearchResult<java.lang.Void>>);
+ method @NonNull public android.app.appsearch.SearchResults search(@NonNull String, @NonNull android.app.appsearch.SearchSpec);
+ method public void setSchema(@NonNull android.app.appsearch.SetSchemaRequest, @NonNull java.util.concurrent.Executor, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.app.appsearch.AppSearchResult<android.app.appsearch.SetSchemaResponse>>);
+ }
+
+ public interface BatchResultCallback<KeyType, ValueType> {
+ method public void onResult(@NonNull android.app.appsearch.AppSearchBatchResult<KeyType,ValueType>);
+ method public default void onSystemError(@Nullable Throwable);
+ }
+
+ public class GenericDocument {
+ ctor protected GenericDocument(@NonNull android.app.appsearch.GenericDocument);
+ method public long getCreationTimestampMillis();
+ method @NonNull public String getId();
+ method public static int getMaxIndexedProperties();
+ method @NonNull public String getNamespace();
+ method @Nullable public Object getProperty(@NonNull String);
+ method public boolean getPropertyBoolean(@NonNull String);
+ method @Nullable public boolean[] getPropertyBooleanArray(@NonNull String);
+ method @Nullable public byte[] getPropertyBytes(@NonNull String);
+ method @Nullable public byte[][] getPropertyBytesArray(@NonNull String);
+ method @Nullable public android.app.appsearch.GenericDocument getPropertyDocument(@NonNull String);
+ method @Nullable public android.app.appsearch.GenericDocument[] getPropertyDocumentArray(@NonNull String);
+ method public double getPropertyDouble(@NonNull String);
+ method @Nullable public double[] getPropertyDoubleArray(@NonNull String);
+ method public long getPropertyLong(@NonNull String);
+ method @Nullable public long[] getPropertyLongArray(@NonNull String);
+ method @NonNull public java.util.Set<java.lang.String> getPropertyNames();
+ method @Nullable public String getPropertyString(@NonNull String);
+ method @Nullable public String[] getPropertyStringArray(@NonNull String);
+ method @NonNull public String getSchemaType();
+ method public int getScore();
+ method public long getTtlMillis();
+ }
+
+ public static class GenericDocument.Builder<BuilderType extends android.app.appsearch.GenericDocument.Builder> {
+ ctor public GenericDocument.Builder(@NonNull String, @NonNull String, @NonNull String);
+ method @NonNull public android.app.appsearch.GenericDocument build();
+ method @NonNull public BuilderType setCreationTimestampMillis(long);
+ method @NonNull public BuilderType setPropertyBoolean(@NonNull String, @NonNull boolean...);
+ method @NonNull public BuilderType setPropertyBytes(@NonNull String, @NonNull byte[]...);
+ method @NonNull public BuilderType setPropertyDocument(@NonNull String, @NonNull android.app.appsearch.GenericDocument...);
+ method @NonNull public BuilderType setPropertyDouble(@NonNull String, @NonNull double...);
+ method @NonNull public BuilderType setPropertyLong(@NonNull String, @NonNull long...);
+ method @NonNull public BuilderType setPropertyString(@NonNull String, @NonNull java.lang.String...);
+ method @NonNull public BuilderType setScore(@IntRange(from=0, to=java.lang.Integer.MAX_VALUE) int);
+ method @NonNull public BuilderType setTtlMillis(long);
+ }
+
+ public final class GetByDocumentIdRequest {
+ method @NonNull public java.util.Set<java.lang.String> getIds();
+ method @NonNull public String getNamespace();
+ method @NonNull public java.util.Map<java.lang.String,java.util.List<java.lang.String>> getProjections();
+ field public static final String PROJECTION_SCHEMA_TYPE_WILDCARD = "*";
+ }
+
+ public static final class GetByDocumentIdRequest.Builder {
+ ctor public GetByDocumentIdRequest.Builder(@NonNull String);
+ method @NonNull public android.app.appsearch.GetByDocumentIdRequest.Builder addIds(@NonNull java.lang.String...);
+ method @NonNull public android.app.appsearch.GetByDocumentIdRequest.Builder addIds(@NonNull java.util.Collection<java.lang.String>);
+ method @NonNull public android.app.appsearch.GetByDocumentIdRequest.Builder addProjection(@NonNull String, @NonNull java.util.Collection<java.lang.String>);
+ method @NonNull public android.app.appsearch.GetByDocumentIdRequest build();
+ }
+
+ public final class GetSchemaResponse {
+ method @NonNull public java.util.Map<java.lang.String,java.util.Set<java.util.Set<java.lang.Integer>>> getRequiredPermissionsForSchemaTypeVisibility();
+ method @NonNull public java.util.Set<java.lang.String> getSchemaTypesNotDisplayedBySystem();
+ method @NonNull public java.util.Map<java.lang.String,java.util.Set<android.app.appsearch.PackageIdentifier>> getSchemaTypesVisibleToPackages();
+ method @NonNull public java.util.Set<android.app.appsearch.AppSearchSchema> getSchemas();
+ method @IntRange(from=0) public int getVersion();
+ }
+
+ public static final class GetSchemaResponse.Builder {
+ ctor public GetSchemaResponse.Builder();
+ method @NonNull public android.app.appsearch.GetSchemaResponse.Builder addSchema(@NonNull android.app.appsearch.AppSearchSchema);
+ method @NonNull public android.app.appsearch.GetSchemaResponse.Builder addSchemaTypeNotDisplayedBySystem(@NonNull String);
+ method @NonNull public android.app.appsearch.GetSchemaResponse build();
+ method @NonNull public android.app.appsearch.GetSchemaResponse.Builder setRequiredPermissionsForSchemaTypeVisibility(@NonNull String, @NonNull java.util.Set<java.util.Set<java.lang.Integer>>);
+ method @NonNull public android.app.appsearch.GetSchemaResponse.Builder setSchemaTypeVisibleToPackages(@NonNull String, @NonNull java.util.Set<android.app.appsearch.PackageIdentifier>);
+ method @NonNull public android.app.appsearch.GetSchemaResponse.Builder setVersion(@IntRange(from=0) int);
+ }
+
+ public class GlobalSearchSession implements java.io.Closeable {
+ method public void close();
+ method public void getByDocumentId(@NonNull String, @NonNull String, @NonNull android.app.appsearch.GetByDocumentIdRequest, @NonNull java.util.concurrent.Executor, @NonNull android.app.appsearch.BatchResultCallback<java.lang.String,android.app.appsearch.GenericDocument>);
+ method public void getSchema(@NonNull String, @NonNull String, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.app.appsearch.AppSearchResult<android.app.appsearch.GetSchemaResponse>>);
+ method public void registerObserverCallback(@NonNull String, @NonNull android.app.appsearch.observer.ObserverSpec, @NonNull java.util.concurrent.Executor, @NonNull android.app.appsearch.observer.ObserverCallback) throws android.app.appsearch.exceptions.AppSearchException;
+ method public void reportSystemUsage(@NonNull android.app.appsearch.ReportSystemUsageRequest, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.app.appsearch.AppSearchResult<java.lang.Void>>);
+ method @NonNull public android.app.appsearch.SearchResults search(@NonNull String, @NonNull android.app.appsearch.SearchSpec);
+ method public void unregisterObserverCallback(@NonNull String, @NonNull android.app.appsearch.observer.ObserverCallback) throws android.app.appsearch.exceptions.AppSearchException;
+ }
+
+ public abstract class Migrator {
+ ctor public Migrator();
+ method @NonNull @WorkerThread public abstract android.app.appsearch.GenericDocument onDowngrade(int, int, @NonNull android.app.appsearch.GenericDocument);
+ method @NonNull @WorkerThread public abstract android.app.appsearch.GenericDocument onUpgrade(int, int, @NonNull android.app.appsearch.GenericDocument);
+ method public abstract boolean shouldMigrate(int, int);
+ }
+
+ public class PackageIdentifier {
+ ctor public PackageIdentifier(@NonNull String, @NonNull byte[]);
+ method @NonNull public String getPackageName();
+ method @NonNull public byte[] getSha256Certificate();
+ }
+
+ public final class PutDocumentsRequest {
+ method @NonNull public java.util.List<android.app.appsearch.GenericDocument> getGenericDocuments();
+ }
+
+ public static final class PutDocumentsRequest.Builder {
+ ctor public PutDocumentsRequest.Builder();
+ method @NonNull public android.app.appsearch.PutDocumentsRequest.Builder addGenericDocuments(@NonNull android.app.appsearch.GenericDocument...);
+ method @NonNull public android.app.appsearch.PutDocumentsRequest.Builder addGenericDocuments(@NonNull java.util.Collection<? extends android.app.appsearch.GenericDocument>);
+ method @NonNull public android.app.appsearch.PutDocumentsRequest build();
+ }
+
+ public final class RemoveByDocumentIdRequest {
+ method @NonNull public java.util.Set<java.lang.String> getIds();
+ method @NonNull public String getNamespace();
+ }
+
+ public static final class RemoveByDocumentIdRequest.Builder {
+ ctor public RemoveByDocumentIdRequest.Builder(@NonNull String);
+ method @NonNull public android.app.appsearch.RemoveByDocumentIdRequest.Builder addIds(@NonNull java.lang.String...);
+ method @NonNull public android.app.appsearch.RemoveByDocumentIdRequest.Builder addIds(@NonNull java.util.Collection<java.lang.String>);
+ method @NonNull public android.app.appsearch.RemoveByDocumentIdRequest build();
+ }
+
+ public final class ReportSystemUsageRequest {
+ method @NonNull public String getDatabaseName();
+ method @NonNull public String getDocumentId();
+ method @NonNull public String getNamespace();
+ method @NonNull public String getPackageName();
+ method public long getUsageTimestampMillis();
+ }
+
+ public static final class ReportSystemUsageRequest.Builder {
+ ctor public ReportSystemUsageRequest.Builder(@NonNull String, @NonNull String, @NonNull String, @NonNull String);
+ method @NonNull public android.app.appsearch.ReportSystemUsageRequest build();
+ method @NonNull public android.app.appsearch.ReportSystemUsageRequest.Builder setUsageTimestampMillis(long);
+ }
+
+ public final class ReportUsageRequest {
+ method @NonNull public String getDocumentId();
+ method @NonNull public String getNamespace();
+ method public long getUsageTimestampMillis();
+ }
+
+ public static final class ReportUsageRequest.Builder {
+ ctor public ReportUsageRequest.Builder(@NonNull String, @NonNull String);
+ method @NonNull public android.app.appsearch.ReportUsageRequest build();
+ method @NonNull public android.app.appsearch.ReportUsageRequest.Builder setUsageTimestampMillis(long);
+ }
+
+ public final class SearchResult {
+ method @NonNull public String getDatabaseName();
+ method @NonNull public android.app.appsearch.GenericDocument getGenericDocument();
+ method @NonNull public java.util.List<android.app.appsearch.SearchResult.MatchInfo> getMatchInfos();
+ method @NonNull public String getPackageName();
+ method public double getRankingSignal();
+ }
+
+ public static final class SearchResult.Builder {
+ ctor public SearchResult.Builder(@NonNull String, @NonNull String);
+ method @NonNull public android.app.appsearch.SearchResult.Builder addMatchInfo(@NonNull android.app.appsearch.SearchResult.MatchInfo);
+ method @NonNull public android.app.appsearch.SearchResult build();
+ method @NonNull public android.app.appsearch.SearchResult.Builder setGenericDocument(@NonNull android.app.appsearch.GenericDocument);
+ method @NonNull public android.app.appsearch.SearchResult.Builder setRankingSignal(double);
+ }
+
+ public static final class SearchResult.MatchInfo {
+ method @NonNull public CharSequence getExactMatch();
+ method @NonNull public android.app.appsearch.SearchResult.MatchRange getExactMatchRange();
+ method @NonNull public String getFullText();
+ method @NonNull public String getPropertyPath();
+ method @NonNull public CharSequence getSnippet();
+ method @NonNull public android.app.appsearch.SearchResult.MatchRange getSnippetRange();
+ method @NonNull public CharSequence getSubmatch();
+ method @NonNull public android.app.appsearch.SearchResult.MatchRange getSubmatchRange();
+ }
+
+ public static final class SearchResult.MatchInfo.Builder {
+ ctor public SearchResult.MatchInfo.Builder(@NonNull String);
+ method @NonNull public android.app.appsearch.SearchResult.MatchInfo build();
+ method @NonNull public android.app.appsearch.SearchResult.MatchInfo.Builder setExactMatchRange(@NonNull android.app.appsearch.SearchResult.MatchRange);
+ method @NonNull public android.app.appsearch.SearchResult.MatchInfo.Builder setSnippetRange(@NonNull android.app.appsearch.SearchResult.MatchRange);
+ method @NonNull public android.app.appsearch.SearchResult.MatchInfo.Builder setSubmatchRange(@NonNull android.app.appsearch.SearchResult.MatchRange);
+ }
+
+ public static final class SearchResult.MatchRange {
+ ctor public SearchResult.MatchRange(int, int);
+ method public int getEnd();
+ method public int getStart();
+ }
+
+ public class SearchResults implements java.io.Closeable {
+ method public void close();
+ method public void getNextPage(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.app.appsearch.AppSearchResult<java.util.List<android.app.appsearch.SearchResult>>>);
+ }
+
+ public final class SearchSpec {
+ method @NonNull public java.util.List<java.lang.String> getFilterNamespaces();
+ method @NonNull public java.util.List<java.lang.String> getFilterPackageNames();
+ method @NonNull public java.util.List<java.lang.String> getFilterSchemas();
+ method public int getMaxSnippetSize();
+ method public int getOrder();
+ method @NonNull public java.util.Map<java.lang.String,java.util.List<java.lang.String>> getProjections();
+ method public int getRankingStrategy();
+ method public int getResultCountPerPage();
+ method public int getResultGroupingLimit();
+ method public int getResultGroupingTypeFlags();
+ method public int getSnippetCount();
+ method public int getSnippetCountPerProperty();
+ method public int getTermMatch();
+ field public static final int GROUPING_TYPE_PER_NAMESPACE = 2; // 0x2
+ field public static final int GROUPING_TYPE_PER_PACKAGE = 1; // 0x1
+ field public static final int ORDER_ASCENDING = 1; // 0x1
+ field public static final int ORDER_DESCENDING = 0; // 0x0
+ field public static final String PROJECTION_SCHEMA_TYPE_WILDCARD = "*";
+ field public static final int RANKING_STRATEGY_CREATION_TIMESTAMP = 2; // 0x2
+ field public static final int RANKING_STRATEGY_DOCUMENT_SCORE = 1; // 0x1
+ field public static final int RANKING_STRATEGY_NONE = 0; // 0x0
+ field public static final int RANKING_STRATEGY_RELEVANCE_SCORE = 3; // 0x3
+ field public static final int RANKING_STRATEGY_SYSTEM_USAGE_COUNT = 6; // 0x6
+ field public static final int RANKING_STRATEGY_SYSTEM_USAGE_LAST_USED_TIMESTAMP = 7; // 0x7
+ field public static final int RANKING_STRATEGY_USAGE_COUNT = 4; // 0x4
+ field public static final int RANKING_STRATEGY_USAGE_LAST_USED_TIMESTAMP = 5; // 0x5
+ field public static final int TERM_MATCH_EXACT_ONLY = 1; // 0x1
+ field public static final int TERM_MATCH_PREFIX = 2; // 0x2
+ }
+
+ public static final class SearchSpec.Builder {
+ ctor public SearchSpec.Builder();
+ method @NonNull public android.app.appsearch.SearchSpec.Builder addFilterNamespaces(@NonNull java.lang.String...);
+ method @NonNull public android.app.appsearch.SearchSpec.Builder addFilterNamespaces(@NonNull java.util.Collection<java.lang.String>);
+ method @NonNull public android.app.appsearch.SearchSpec.Builder addFilterPackageNames(@NonNull java.lang.String...);
+ method @NonNull public android.app.appsearch.SearchSpec.Builder addFilterPackageNames(@NonNull java.util.Collection<java.lang.String>);
+ method @NonNull public android.app.appsearch.SearchSpec.Builder addFilterSchemas(@NonNull java.lang.String...);
+ method @NonNull public android.app.appsearch.SearchSpec.Builder addFilterSchemas(@NonNull java.util.Collection<java.lang.String>);
+ method @NonNull public android.app.appsearch.SearchSpec.Builder addProjection(@NonNull String, @NonNull java.util.Collection<java.lang.String>);
+ method @NonNull public android.app.appsearch.SearchSpec build();
+ method @NonNull public android.app.appsearch.SearchSpec.Builder setMaxSnippetSize(@IntRange(from=0, to=0x2710) int);
+ method @NonNull public android.app.appsearch.SearchSpec.Builder setOrder(int);
+ method @NonNull public android.app.appsearch.SearchSpec.Builder setRankingStrategy(int);
+ method @NonNull public android.app.appsearch.SearchSpec.Builder setResultCountPerPage(@IntRange(from=0, to=0x2710) int);
+ method @NonNull public android.app.appsearch.SearchSpec.Builder setResultGrouping(int, int);
+ method @NonNull public android.app.appsearch.SearchSpec.Builder setSnippetCount(@IntRange(from=0, to=0x2710) int);
+ method @NonNull public android.app.appsearch.SearchSpec.Builder setSnippetCountPerProperty(@IntRange(from=0, to=0x2710) int);
+ method @NonNull public android.app.appsearch.SearchSpec.Builder setTermMatch(int);
+ }
+
+ public final class SetSchemaRequest {
+ method @NonNull public java.util.Map<java.lang.String,android.app.appsearch.Migrator> getMigrators();
+ method @NonNull public java.util.Map<java.lang.String,java.util.Set<java.util.Set<java.lang.Integer>>> getRequiredPermissionsForSchemaTypeVisibility();
+ method @NonNull public java.util.Set<android.app.appsearch.AppSearchSchema> getSchemas();
+ method @NonNull public java.util.Set<java.lang.String> getSchemasNotDisplayedBySystem();
+ method @NonNull public java.util.Map<java.lang.String,java.util.Set<android.app.appsearch.PackageIdentifier>> getSchemasVisibleToPackages();
+ method @IntRange(from=1) public int getVersion();
+ method public boolean isForceOverride();
+ field public static final int READ_ASSISTANT_APP_SEARCH_DATA = 6; // 0x6
+ field public static final int READ_CALENDAR = 2; // 0x2
+ field public static final int READ_CONTACTS = 3; // 0x3
+ field public static final int READ_EXTERNAL_STORAGE = 4; // 0x4
+ field public static final int READ_HOME_APP_SEARCH_DATA = 5; // 0x5
+ field public static final int READ_SMS = 1; // 0x1
+ }
+
+ public static final class SetSchemaRequest.Builder {
+ ctor public SetSchemaRequest.Builder();
+ method @NonNull public android.app.appsearch.SetSchemaRequest.Builder addRequiredPermissionsForSchemaTypeVisibility(@NonNull String, @NonNull java.util.Set<java.lang.Integer>);
+ method @NonNull public android.app.appsearch.SetSchemaRequest.Builder addSchemas(@NonNull android.app.appsearch.AppSearchSchema...);
+ method @NonNull public android.app.appsearch.SetSchemaRequest.Builder addSchemas(@NonNull java.util.Collection<android.app.appsearch.AppSearchSchema>);
+ method @NonNull public android.app.appsearch.SetSchemaRequest build();
+ method @NonNull public android.app.appsearch.SetSchemaRequest.Builder clearRequiredPermissionsForSchemaTypeVisibility(@NonNull String);
+ method @NonNull public android.app.appsearch.SetSchemaRequest.Builder setForceOverride(boolean);
+ method @NonNull public android.app.appsearch.SetSchemaRequest.Builder setMigrator(@NonNull String, @NonNull android.app.appsearch.Migrator);
+ method @NonNull public android.app.appsearch.SetSchemaRequest.Builder setMigrators(@NonNull java.util.Map<java.lang.String,android.app.appsearch.Migrator>);
+ method @NonNull public android.app.appsearch.SetSchemaRequest.Builder setSchemaTypeDisplayedBySystem(@NonNull String, boolean);
+ method @NonNull public android.app.appsearch.SetSchemaRequest.Builder setSchemaTypeVisibilityForPackage(@NonNull String, boolean, @NonNull android.app.appsearch.PackageIdentifier);
+ method @NonNull public android.app.appsearch.SetSchemaRequest.Builder setVersion(@IntRange(from=1) int);
+ }
+
+ public class SetSchemaResponse {
+ method @NonNull public java.util.Set<java.lang.String> getDeletedTypes();
+ method @NonNull public java.util.Set<java.lang.String> getIncompatibleTypes();
+ method @NonNull public java.util.Set<java.lang.String> getMigratedTypes();
+ method @NonNull public java.util.List<android.app.appsearch.SetSchemaResponse.MigrationFailure> getMigrationFailures();
+ }
+
+ public static final class SetSchemaResponse.Builder {
+ ctor public SetSchemaResponse.Builder();
+ method @NonNull public android.app.appsearch.SetSchemaResponse.Builder addDeletedType(@NonNull String);
+ method @NonNull public android.app.appsearch.SetSchemaResponse.Builder addDeletedTypes(@NonNull java.util.Collection<java.lang.String>);
+ method @NonNull public android.app.appsearch.SetSchemaResponse.Builder addIncompatibleType(@NonNull String);
+ method @NonNull public android.app.appsearch.SetSchemaResponse.Builder addIncompatibleTypes(@NonNull java.util.Collection<java.lang.String>);
+ method @NonNull public android.app.appsearch.SetSchemaResponse.Builder addMigratedType(@NonNull String);
+ method @NonNull public android.app.appsearch.SetSchemaResponse.Builder addMigratedTypes(@NonNull java.util.Collection<java.lang.String>);
+ method @NonNull public android.app.appsearch.SetSchemaResponse.Builder addMigrationFailure(@NonNull android.app.appsearch.SetSchemaResponse.MigrationFailure);
+ method @NonNull public android.app.appsearch.SetSchemaResponse.Builder addMigrationFailures(@NonNull java.util.Collection<android.app.appsearch.SetSchemaResponse.MigrationFailure>);
+ method @NonNull public android.app.appsearch.SetSchemaResponse build();
+ }
+
+ public static class SetSchemaResponse.MigrationFailure {
+ ctor public SetSchemaResponse.MigrationFailure(@NonNull String, @NonNull String, @NonNull String, @NonNull android.app.appsearch.AppSearchResult<?>);
+ method @NonNull public android.app.appsearch.AppSearchResult<java.lang.Void> getAppSearchResult();
+ method @NonNull public String getDocumentId();
+ method @NonNull public String getNamespace();
+ method @NonNull public String getSchemaType();
+ }
+
+ public class StorageInfo {
+ method public int getAliveDocumentsCount();
+ method public int getAliveNamespacesCount();
+ method public long getSizeBytes();
+ }
+
+ public static final class StorageInfo.Builder {
+ ctor public StorageInfo.Builder();
+ method @NonNull public android.app.appsearch.StorageInfo build();
+ method @NonNull public android.app.appsearch.StorageInfo.Builder setAliveDocumentsCount(int);
+ method @NonNull public android.app.appsearch.StorageInfo.Builder setAliveNamespacesCount(int);
+ method @NonNull public android.app.appsearch.StorageInfo.Builder setSizeBytes(long);
+ }
+
+}
+
+package android.app.appsearch.exceptions {
+
+ public class AppSearchException extends java.lang.Exception {
+ ctor public AppSearchException(int);
+ ctor public AppSearchException(int, @Nullable String);
+ ctor public AppSearchException(int, @Nullable String, @Nullable Throwable);
+ method public int getResultCode();
+ method @NonNull public <T> android.app.appsearch.AppSearchResult<T> toAppSearchResult();
+ }
+
+}
+
+package android.app.appsearch.observer {
+
+ public final class DocumentChangeInfo {
+ ctor public DocumentChangeInfo(@NonNull String, @NonNull String, @NonNull String, @NonNull String, @NonNull java.util.Set<java.lang.String>);
+ method @NonNull public java.util.Set<java.lang.String> getChangedDocumentIds();
+ method @NonNull public String getDatabaseName();
+ method @NonNull public String getNamespace();
+ method @NonNull public String getPackageName();
+ method @NonNull public String getSchemaName();
+ }
+
+ public interface ObserverCallback {
+ method public void onDocumentChanged(@NonNull android.app.appsearch.observer.DocumentChangeInfo);
+ method public void onSchemaChanged(@NonNull android.app.appsearch.observer.SchemaChangeInfo);
+ }
+
+ public final class ObserverSpec {
+ method @NonNull public java.util.Set<java.lang.String> getFilterSchemas();
+ }
+
+ public static final class ObserverSpec.Builder {
+ ctor public ObserverSpec.Builder();
+ method @NonNull public android.app.appsearch.observer.ObserverSpec.Builder addFilterSchemas(@NonNull java.lang.String...);
+ method @NonNull public android.app.appsearch.observer.ObserverSpec.Builder addFilterSchemas(@NonNull java.util.Collection<java.lang.String>);
+ method @NonNull public android.app.appsearch.observer.ObserverSpec build();
+ }
+
+ public final class SchemaChangeInfo {
+ ctor public SchemaChangeInfo(@NonNull String, @NonNull String, @NonNull java.util.Set<java.lang.String>);
+ method @NonNull public java.util.Set<java.lang.String> getChangedSchemaNames();
+ method @NonNull public String getDatabaseName();
+ method @NonNull public String getPackageName();
+ }
+
+}
+
diff --git a/extensions/3/public/api/framework-connectivity-removed.txt b/extensions/3/public/api/framework-connectivity-removed.txt
new file mode 100644
index 000000000..303a1e617
--- /dev/null
+++ b/extensions/3/public/api/framework-connectivity-removed.txt
@@ -0,0 +1,11 @@
+// Signature format: 2.0
+package android.net {
+
+ public class ConnectivityManager {
+ method @Deprecated public boolean requestRouteToHost(int, int);
+ method @Deprecated public int startUsingNetworkFeature(int, String);
+ method @Deprecated public int stopUsingNetworkFeature(int, String);
+ }
+
+}
+
diff --git a/extensions/3/public/api/framework-connectivity-t-removed.txt b/extensions/3/public/api/framework-connectivity-t-removed.txt
new file mode 100644
index 000000000..1ba87d8a2
--- /dev/null
+++ b/extensions/3/public/api/framework-connectivity-t-removed.txt
@@ -0,0 +1,9 @@
+// Signature format: 2.0
+package android.net {
+
+ public class TrafficStats {
+ method @Deprecated public static void setThreadStatsUidSelf();
+ }
+
+}
+
diff --git a/extensions/3/public/api/framework-connectivity-t.txt b/extensions/3/public/api/framework-connectivity-t.txt
new file mode 100644
index 000000000..eb77288c7
--- /dev/null
+++ b/extensions/3/public/api/framework-connectivity-t.txt
@@ -0,0 +1,251 @@
+// Signature format: 2.0
+package android.app.usage {
+
+ public final class NetworkStats implements java.lang.AutoCloseable {
+ method public void close();
+ method public boolean getNextBucket(@Nullable android.app.usage.NetworkStats.Bucket);
+ method public boolean hasNextBucket();
+ }
+
+ public static class NetworkStats.Bucket {
+ ctor public NetworkStats.Bucket();
+ method public int getDefaultNetworkStatus();
+ method public long getEndTimeStamp();
+ method public int getMetered();
+ method public int getRoaming();
+ method public long getRxBytes();
+ method public long getRxPackets();
+ method public long getStartTimeStamp();
+ method public int getState();
+ method public int getTag();
+ method public long getTxBytes();
+ method public long getTxPackets();
+ method public int getUid();
+ field public static final int DEFAULT_NETWORK_ALL = -1; // 0xffffffff
+ field public static final int DEFAULT_NETWORK_NO = 1; // 0x1
+ field public static final int DEFAULT_NETWORK_YES = 2; // 0x2
+ field public static final int METERED_ALL = -1; // 0xffffffff
+ field public static final int METERED_NO = 1; // 0x1
+ field public static final int METERED_YES = 2; // 0x2
+ field public static final int ROAMING_ALL = -1; // 0xffffffff
+ field public static final int ROAMING_NO = 1; // 0x1
+ field public static final int ROAMING_YES = 2; // 0x2
+ field public static final int STATE_ALL = -1; // 0xffffffff
+ field public static final int STATE_DEFAULT = 1; // 0x1
+ field public static final int STATE_FOREGROUND = 2; // 0x2
+ field public static final int TAG_NONE = 0; // 0x0
+ field public static final int UID_ALL = -1; // 0xffffffff
+ field public static final int UID_REMOVED = -4; // 0xfffffffc
+ field public static final int UID_TETHERING = -5; // 0xfffffffb
+ }
+
+ public class NetworkStatsManager {
+ method @WorkerThread public android.app.usage.NetworkStats queryDetails(int, @Nullable String, long, long) throws android.os.RemoteException, java.lang.SecurityException;
+ method @NonNull @WorkerThread public android.app.usage.NetworkStats queryDetailsForUid(int, @Nullable String, long, long, int) throws java.lang.SecurityException;
+ method @NonNull @WorkerThread public android.app.usage.NetworkStats queryDetailsForUidTag(int, @Nullable String, long, long, int, int) throws java.lang.SecurityException;
+ method @NonNull @WorkerThread public android.app.usage.NetworkStats queryDetailsForUidTagState(int, @Nullable String, long, long, int, int, int) throws java.lang.SecurityException;
+ method @WorkerThread public android.app.usage.NetworkStats querySummary(int, @Nullable String, long, long) throws android.os.RemoteException, java.lang.SecurityException;
+ method @WorkerThread public android.app.usage.NetworkStats.Bucket querySummaryForDevice(int, @Nullable String, long, long) throws android.os.RemoteException, java.lang.SecurityException;
+ method @WorkerThread public android.app.usage.NetworkStats.Bucket querySummaryForUser(int, @Nullable String, long, long) throws android.os.RemoteException, java.lang.SecurityException;
+ method public void registerUsageCallback(int, @Nullable String, long, @NonNull android.app.usage.NetworkStatsManager.UsageCallback);
+ method public void registerUsageCallback(int, @Nullable String, long, @NonNull android.app.usage.NetworkStatsManager.UsageCallback, @Nullable android.os.Handler);
+ method public void unregisterUsageCallback(@NonNull android.app.usage.NetworkStatsManager.UsageCallback);
+ }
+
+ public abstract static class NetworkStatsManager.UsageCallback {
+ ctor public NetworkStatsManager.UsageCallback();
+ method public abstract void onThresholdReached(int, @Nullable String);
+ }
+
+}
+
+package android.net {
+
+ public final class EthernetNetworkSpecifier extends android.net.NetworkSpecifier implements android.os.Parcelable {
+ ctor public EthernetNetworkSpecifier(@NonNull String);
+ method public int describeContents();
+ method @Nullable public String getInterfaceName();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.EthernetNetworkSpecifier> CREATOR;
+ }
+
+ public final class IpSecAlgorithm implements android.os.Parcelable {
+ ctor public IpSecAlgorithm(@NonNull String, @NonNull byte[]);
+ ctor public IpSecAlgorithm(@NonNull String, @NonNull byte[], int);
+ method public int describeContents();
+ method @NonNull public byte[] getKey();
+ method @NonNull public String getName();
+ method @NonNull public static java.util.Set<java.lang.String> getSupportedAlgorithms();
+ method public int getTruncationLengthBits();
+ method public void writeToParcel(android.os.Parcel, int);
+ field public static final String AUTH_AES_CMAC = "cmac(aes)";
+ field public static final String AUTH_AES_XCBC = "xcbc(aes)";
+ field public static final String AUTH_CRYPT_AES_GCM = "rfc4106(gcm(aes))";
+ field public static final String AUTH_CRYPT_CHACHA20_POLY1305 = "rfc7539esp(chacha20,poly1305)";
+ field public static final String AUTH_HMAC_MD5 = "hmac(md5)";
+ field public static final String AUTH_HMAC_SHA1 = "hmac(sha1)";
+ field public static final String AUTH_HMAC_SHA256 = "hmac(sha256)";
+ field public static final String AUTH_HMAC_SHA384 = "hmac(sha384)";
+ field public static final String AUTH_HMAC_SHA512 = "hmac(sha512)";
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.IpSecAlgorithm> CREATOR;
+ field public static final String CRYPT_AES_CBC = "cbc(aes)";
+ field public static final String CRYPT_AES_CTR = "rfc3686(ctr(aes))";
+ }
+
+ public class IpSecManager {
+ method @NonNull public android.net.IpSecManager.SecurityParameterIndex allocateSecurityParameterIndex(@NonNull java.net.InetAddress) throws android.net.IpSecManager.ResourceUnavailableException;
+ method @NonNull public android.net.IpSecManager.SecurityParameterIndex allocateSecurityParameterIndex(@NonNull java.net.InetAddress, int) throws android.net.IpSecManager.ResourceUnavailableException, android.net.IpSecManager.SpiUnavailableException;
+ method public void applyTransportModeTransform(@NonNull java.net.Socket, int, @NonNull android.net.IpSecTransform) throws java.io.IOException;
+ method public void applyTransportModeTransform(@NonNull java.net.DatagramSocket, int, @NonNull android.net.IpSecTransform) throws java.io.IOException;
+ method public void applyTransportModeTransform(@NonNull java.io.FileDescriptor, int, @NonNull android.net.IpSecTransform) throws java.io.IOException;
+ method @NonNull public android.net.IpSecManager.UdpEncapsulationSocket openUdpEncapsulationSocket(int) throws java.io.IOException, android.net.IpSecManager.ResourceUnavailableException;
+ method @NonNull public android.net.IpSecManager.UdpEncapsulationSocket openUdpEncapsulationSocket() throws java.io.IOException, android.net.IpSecManager.ResourceUnavailableException;
+ method public void removeTransportModeTransforms(@NonNull java.net.Socket) throws java.io.IOException;
+ method public void removeTransportModeTransforms(@NonNull java.net.DatagramSocket) throws java.io.IOException;
+ method public void removeTransportModeTransforms(@NonNull java.io.FileDescriptor) throws java.io.IOException;
+ field public static final int DIRECTION_IN = 0; // 0x0
+ field public static final int DIRECTION_OUT = 1; // 0x1
+ }
+
+ public static final class IpSecManager.ResourceUnavailableException extends android.util.AndroidException {
+ }
+
+ public static final class IpSecManager.SecurityParameterIndex implements java.lang.AutoCloseable {
+ method public void close();
+ method public int getSpi();
+ }
+
+ public static final class IpSecManager.SpiUnavailableException extends android.util.AndroidException {
+ method public int getSpi();
+ }
+
+ public static final class IpSecManager.UdpEncapsulationSocket implements java.lang.AutoCloseable {
+ method public void close() throws java.io.IOException;
+ method public java.io.FileDescriptor getFileDescriptor();
+ method public int getPort();
+ }
+
+ public final class IpSecTransform implements java.lang.AutoCloseable {
+ method public void close();
+ }
+
+ public static class IpSecTransform.Builder {
+ ctor public IpSecTransform.Builder(@NonNull android.content.Context);
+ method @NonNull public android.net.IpSecTransform buildTransportModeTransform(@NonNull java.net.InetAddress, @NonNull android.net.IpSecManager.SecurityParameterIndex) throws java.io.IOException, android.net.IpSecManager.ResourceUnavailableException, android.net.IpSecManager.SpiUnavailableException;
+ method @NonNull public android.net.IpSecTransform.Builder setAuthenticatedEncryption(@NonNull android.net.IpSecAlgorithm);
+ method @NonNull public android.net.IpSecTransform.Builder setAuthentication(@NonNull android.net.IpSecAlgorithm);
+ method @NonNull public android.net.IpSecTransform.Builder setEncryption(@NonNull android.net.IpSecAlgorithm);
+ method @NonNull public android.net.IpSecTransform.Builder setIpv4Encapsulation(@NonNull android.net.IpSecManager.UdpEncapsulationSocket, int);
+ }
+
+ public class TrafficStats {
+ ctor public TrafficStats();
+ method public static void clearThreadStatsTag();
+ method public static void clearThreadStatsUid();
+ method public static int getAndSetThreadStatsTag(int);
+ method public static long getMobileRxBytes();
+ method public static long getMobileRxPackets();
+ method public static long getMobileTxBytes();
+ method public static long getMobileTxPackets();
+ method public static long getRxBytes(@NonNull String);
+ method public static long getRxPackets(@NonNull String);
+ method public static int getThreadStatsTag();
+ method public static int getThreadStatsUid();
+ method public static long getTotalRxBytes();
+ method public static long getTotalRxPackets();
+ method public static long getTotalTxBytes();
+ method public static long getTotalTxPackets();
+ method public static long getTxBytes(@NonNull String);
+ method public static long getTxPackets(@NonNull String);
+ method public static long getUidRxBytes(int);
+ method public static long getUidRxPackets(int);
+ method @Deprecated public static long getUidTcpRxBytes(int);
+ method @Deprecated public static long getUidTcpRxSegments(int);
+ method @Deprecated public static long getUidTcpTxBytes(int);
+ method @Deprecated public static long getUidTcpTxSegments(int);
+ method public static long getUidTxBytes(int);
+ method public static long getUidTxPackets(int);
+ method @Deprecated public static long getUidUdpRxBytes(int);
+ method @Deprecated public static long getUidUdpRxPackets(int);
+ method @Deprecated public static long getUidUdpTxBytes(int);
+ method @Deprecated public static long getUidUdpTxPackets(int);
+ method public static void incrementOperationCount(int);
+ method public static void incrementOperationCount(int, int);
+ method public static void setThreadStatsTag(int);
+ method public static void setThreadStatsUid(int);
+ method public static void tagDatagramSocket(@NonNull java.net.DatagramSocket) throws java.net.SocketException;
+ method public static void tagFileDescriptor(@NonNull java.io.FileDescriptor) throws java.io.IOException;
+ method public static void tagSocket(@NonNull java.net.Socket) throws java.net.SocketException;
+ method public static void untagDatagramSocket(@NonNull java.net.DatagramSocket) throws java.net.SocketException;
+ method public static void untagFileDescriptor(@NonNull java.io.FileDescriptor) throws java.io.IOException;
+ method public static void untagSocket(@NonNull java.net.Socket) throws java.net.SocketException;
+ field public static final int UNSUPPORTED = -1; // 0xffffffff
+ }
+
+}
+
+package android.net.nsd {
+
+ public final class NsdManager {
+ method public void discoverServices(String, int, android.net.nsd.NsdManager.DiscoveryListener);
+ method public void discoverServices(@NonNull String, int, @Nullable android.net.Network, @NonNull java.util.concurrent.Executor, @NonNull android.net.nsd.NsdManager.DiscoveryListener);
+ method @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public void discoverServices(@NonNull String, int, @NonNull android.net.NetworkRequest, @NonNull java.util.concurrent.Executor, @NonNull android.net.nsd.NsdManager.DiscoveryListener);
+ method public void registerService(android.net.nsd.NsdServiceInfo, int, android.net.nsd.NsdManager.RegistrationListener);
+ method public void registerService(@NonNull android.net.nsd.NsdServiceInfo, int, @NonNull java.util.concurrent.Executor, @NonNull android.net.nsd.NsdManager.RegistrationListener);
+ method public void resolveService(android.net.nsd.NsdServiceInfo, android.net.nsd.NsdManager.ResolveListener);
+ method public void resolveService(@NonNull android.net.nsd.NsdServiceInfo, @NonNull java.util.concurrent.Executor, @NonNull android.net.nsd.NsdManager.ResolveListener);
+ method public void stopServiceDiscovery(android.net.nsd.NsdManager.DiscoveryListener);
+ method public void unregisterService(android.net.nsd.NsdManager.RegistrationListener);
+ field public static final String ACTION_NSD_STATE_CHANGED = "android.net.nsd.STATE_CHANGED";
+ field public static final String EXTRA_NSD_STATE = "nsd_state";
+ field public static final int FAILURE_ALREADY_ACTIVE = 3; // 0x3
+ field public static final int FAILURE_INTERNAL_ERROR = 0; // 0x0
+ field public static final int FAILURE_MAX_LIMIT = 4; // 0x4
+ field public static final int NSD_STATE_DISABLED = 1; // 0x1
+ field public static final int NSD_STATE_ENABLED = 2; // 0x2
+ field public static final int PROTOCOL_DNS_SD = 1; // 0x1
+ }
+
+ public static interface NsdManager.DiscoveryListener {
+ method public void onDiscoveryStarted(String);
+ method public void onDiscoveryStopped(String);
+ method public void onServiceFound(android.net.nsd.NsdServiceInfo);
+ method public void onServiceLost(android.net.nsd.NsdServiceInfo);
+ method public void onStartDiscoveryFailed(String, int);
+ method public void onStopDiscoveryFailed(String, int);
+ }
+
+ public static interface NsdManager.RegistrationListener {
+ method public void onRegistrationFailed(android.net.nsd.NsdServiceInfo, int);
+ method public void onServiceRegistered(android.net.nsd.NsdServiceInfo);
+ method public void onServiceUnregistered(android.net.nsd.NsdServiceInfo);
+ method public void onUnregistrationFailed(android.net.nsd.NsdServiceInfo, int);
+ }
+
+ public static interface NsdManager.ResolveListener {
+ method public void onResolveFailed(android.net.nsd.NsdServiceInfo, int);
+ method public void onServiceResolved(android.net.nsd.NsdServiceInfo);
+ }
+
+ public final class NsdServiceInfo implements android.os.Parcelable {
+ ctor public NsdServiceInfo();
+ method public int describeContents();
+ method public java.util.Map<java.lang.String,byte[]> getAttributes();
+ method public java.net.InetAddress getHost();
+ method @Nullable public android.net.Network getNetwork();
+ method public int getPort();
+ method public String getServiceName();
+ method public String getServiceType();
+ method public void removeAttribute(String);
+ method public void setAttribute(String, String);
+ method public void setHost(java.net.InetAddress);
+ method public void setNetwork(@Nullable android.net.Network);
+ method public void setPort(int);
+ method public void setServiceName(String);
+ method public void setServiceType(String);
+ method public void writeToParcel(android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.nsd.NsdServiceInfo> CREATOR;
+ }
+
+}
+
diff --git a/extensions/3/public/api/framework-connectivity.txt b/extensions/3/public/api/framework-connectivity.txt
new file mode 100644
index 000000000..547b7e26a
--- /dev/null
+++ b/extensions/3/public/api/framework-connectivity.txt
@@ -0,0 +1,526 @@
+// Signature format: 2.0
+package android.net {
+
+ public class CaptivePortal implements android.os.Parcelable {
+ method public int describeContents();
+ method public void ignoreNetwork();
+ method public void reportCaptivePortalDismissed();
+ method public void writeToParcel(android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.CaptivePortal> CREATOR;
+ }
+
+ public class ConnectivityDiagnosticsManager {
+ method public void registerConnectivityDiagnosticsCallback(@NonNull android.net.NetworkRequest, @NonNull java.util.concurrent.Executor, @NonNull android.net.ConnectivityDiagnosticsManager.ConnectivityDiagnosticsCallback);
+ method public void unregisterConnectivityDiagnosticsCallback(@NonNull android.net.ConnectivityDiagnosticsManager.ConnectivityDiagnosticsCallback);
+ }
+
+ public abstract static class ConnectivityDiagnosticsManager.ConnectivityDiagnosticsCallback {
+ ctor public ConnectivityDiagnosticsManager.ConnectivityDiagnosticsCallback();
+ method public void onConnectivityReportAvailable(@NonNull android.net.ConnectivityDiagnosticsManager.ConnectivityReport);
+ method public void onDataStallSuspected(@NonNull android.net.ConnectivityDiagnosticsManager.DataStallReport);
+ method public void onNetworkConnectivityReported(@NonNull android.net.Network, boolean);
+ }
+
+ public static final class ConnectivityDiagnosticsManager.ConnectivityReport implements android.os.Parcelable {
+ ctor public ConnectivityDiagnosticsManager.ConnectivityReport(@NonNull android.net.Network, long, @NonNull android.net.LinkProperties, @NonNull android.net.NetworkCapabilities, @NonNull android.os.PersistableBundle);
+ method public int describeContents();
+ method @NonNull public android.os.PersistableBundle getAdditionalInfo();
+ method @NonNull public android.net.LinkProperties getLinkProperties();
+ method @NonNull public android.net.Network getNetwork();
+ method @NonNull public android.net.NetworkCapabilities getNetworkCapabilities();
+ method public long getReportTimestamp();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.ConnectivityDiagnosticsManager.ConnectivityReport> CREATOR;
+ field public static final String KEY_NETWORK_PROBES_ATTEMPTED_BITMASK = "networkProbesAttempted";
+ field public static final String KEY_NETWORK_PROBES_SUCCEEDED_BITMASK = "networkProbesSucceeded";
+ field public static final String KEY_NETWORK_VALIDATION_RESULT = "networkValidationResult";
+ field public static final int NETWORK_PROBE_DNS = 4; // 0x4
+ field public static final int NETWORK_PROBE_FALLBACK = 32; // 0x20
+ field public static final int NETWORK_PROBE_HTTP = 8; // 0x8
+ field public static final int NETWORK_PROBE_HTTPS = 16; // 0x10
+ field public static final int NETWORK_PROBE_PRIVATE_DNS = 64; // 0x40
+ field public static final int NETWORK_VALIDATION_RESULT_INVALID = 0; // 0x0
+ field public static final int NETWORK_VALIDATION_RESULT_PARTIALLY_VALID = 2; // 0x2
+ field public static final int NETWORK_VALIDATION_RESULT_SKIPPED = 3; // 0x3
+ field public static final int NETWORK_VALIDATION_RESULT_VALID = 1; // 0x1
+ }
+
+ public static final class ConnectivityDiagnosticsManager.DataStallReport implements android.os.Parcelable {
+ ctor public ConnectivityDiagnosticsManager.DataStallReport(@NonNull android.net.Network, long, int, @NonNull android.net.LinkProperties, @NonNull android.net.NetworkCapabilities, @NonNull android.os.PersistableBundle);
+ method public int describeContents();
+ method public int getDetectionMethod();
+ method @NonNull public android.net.LinkProperties getLinkProperties();
+ method @NonNull public android.net.Network getNetwork();
+ method @NonNull public android.net.NetworkCapabilities getNetworkCapabilities();
+ method public long getReportTimestamp();
+ method @NonNull public android.os.PersistableBundle getStallDetails();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.ConnectivityDiagnosticsManager.DataStallReport> CREATOR;
+ field public static final int DETECTION_METHOD_DNS_EVENTS = 1; // 0x1
+ field public static final int DETECTION_METHOD_TCP_METRICS = 2; // 0x2
+ field public static final String KEY_DNS_CONSECUTIVE_TIMEOUTS = "dnsConsecutiveTimeouts";
+ field public static final String KEY_TCP_METRICS_COLLECTION_PERIOD_MILLIS = "tcpMetricsCollectionPeriodMillis";
+ field public static final String KEY_TCP_PACKET_FAIL_RATE = "tcpPacketFailRate";
+ }
+
+ public class ConnectivityManager {
+ method public void addDefaultNetworkActiveListener(android.net.ConnectivityManager.OnNetworkActiveListener);
+ method public boolean bindProcessToNetwork(@Nullable android.net.Network);
+ method @NonNull public android.net.SocketKeepalive createSocketKeepalive(@NonNull android.net.Network, @NonNull android.net.IpSecManager.UdpEncapsulationSocket, @NonNull java.net.InetAddress, @NonNull java.net.InetAddress, @NonNull java.util.concurrent.Executor, @NonNull android.net.SocketKeepalive.Callback);
+ method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public android.net.Network getActiveNetwork();
+ method @Deprecated @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public android.net.NetworkInfo getActiveNetworkInfo();
+ method @Deprecated @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public android.net.NetworkInfo[] getAllNetworkInfo();
+ method @Deprecated @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public android.net.Network[] getAllNetworks();
+ method @Deprecated public boolean getBackgroundDataSetting();
+ method @Nullable public android.net.Network getBoundNetworkForProcess();
+ method public int getConnectionOwnerUid(int, @NonNull java.net.InetSocketAddress, @NonNull java.net.InetSocketAddress);
+ method @Nullable public android.net.ProxyInfo getDefaultProxy();
+ method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public android.net.LinkProperties getLinkProperties(@Nullable android.net.Network);
+ method @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public int getMultipathPreference(@Nullable android.net.Network);
+ method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public android.net.NetworkCapabilities getNetworkCapabilities(@Nullable android.net.Network);
+ method @Deprecated @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public android.net.NetworkInfo getNetworkInfo(int);
+ method @Deprecated @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public android.net.NetworkInfo getNetworkInfo(@Nullable android.net.Network);
+ method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public int getNetworkPreference();
+ method @Nullable public byte[] getNetworkWatchlistConfigHash();
+ method @Deprecated @Nullable public static android.net.Network getProcessDefaultNetwork();
+ method public int getRestrictBackgroundStatus();
+ method @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public boolean isActiveNetworkMetered();
+ method public boolean isDefaultNetworkActive();
+ method @Deprecated public static boolean isNetworkTypeValid(int);
+ method public void registerBestMatchingNetworkCallback(@NonNull android.net.NetworkRequest, @NonNull android.net.ConnectivityManager.NetworkCallback, @NonNull android.os.Handler);
+ method @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public void registerDefaultNetworkCallback(@NonNull android.net.ConnectivityManager.NetworkCallback);
+ method @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public void registerDefaultNetworkCallback(@NonNull android.net.ConnectivityManager.NetworkCallback, @NonNull android.os.Handler);
+ method @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public void registerNetworkCallback(@NonNull android.net.NetworkRequest, @NonNull android.net.ConnectivityManager.NetworkCallback);
+ method @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public void registerNetworkCallback(@NonNull android.net.NetworkRequest, @NonNull android.net.ConnectivityManager.NetworkCallback, @NonNull android.os.Handler);
+ method @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public void registerNetworkCallback(@NonNull android.net.NetworkRequest, @NonNull android.app.PendingIntent);
+ method public void releaseNetworkRequest(@NonNull android.app.PendingIntent);
+ method public void removeDefaultNetworkActiveListener(@NonNull android.net.ConnectivityManager.OnNetworkActiveListener);
+ method @Deprecated public void reportBadNetwork(@Nullable android.net.Network);
+ method public void reportNetworkConnectivity(@Nullable android.net.Network, boolean);
+ method public boolean requestBandwidthUpdate(@NonNull android.net.Network);
+ method public void requestNetwork(@NonNull android.net.NetworkRequest, @NonNull android.net.ConnectivityManager.NetworkCallback);
+ method public void requestNetwork(@NonNull android.net.NetworkRequest, @NonNull android.net.ConnectivityManager.NetworkCallback, @NonNull android.os.Handler);
+ method public void requestNetwork(@NonNull android.net.NetworkRequest, @NonNull android.net.ConnectivityManager.NetworkCallback, int);
+ method public void requestNetwork(@NonNull android.net.NetworkRequest, @NonNull android.net.ConnectivityManager.NetworkCallback, @NonNull android.os.Handler, int);
+ method public void requestNetwork(@NonNull android.net.NetworkRequest, @NonNull android.app.PendingIntent);
+ method @Deprecated public void setNetworkPreference(int);
+ method @Deprecated public static boolean setProcessDefaultNetwork(@Nullable android.net.Network);
+ method public void unregisterNetworkCallback(@NonNull android.net.ConnectivityManager.NetworkCallback);
+ method public void unregisterNetworkCallback(@NonNull android.app.PendingIntent);
+ field @Deprecated public static final String ACTION_BACKGROUND_DATA_SETTING_CHANGED = "android.net.conn.BACKGROUND_DATA_SETTING_CHANGED";
+ field public static final String ACTION_CAPTIVE_PORTAL_SIGN_IN = "android.net.conn.CAPTIVE_PORTAL";
+ field public static final String ACTION_RESTRICT_BACKGROUND_CHANGED = "android.net.conn.RESTRICT_BACKGROUND_CHANGED";
+ field @Deprecated public static final String CONNECTIVITY_ACTION = "android.net.conn.CONNECTIVITY_CHANGE";
+ field @Deprecated public static final int DEFAULT_NETWORK_PREFERENCE = 1; // 0x1
+ field public static final String EXTRA_CAPTIVE_PORTAL = "android.net.extra.CAPTIVE_PORTAL";
+ field public static final String EXTRA_CAPTIVE_PORTAL_URL = "android.net.extra.CAPTIVE_PORTAL_URL";
+ field @Deprecated public static final String EXTRA_EXTRA_INFO = "extraInfo";
+ field @Deprecated public static final String EXTRA_IS_FAILOVER = "isFailover";
+ field public static final String EXTRA_NETWORK = "android.net.extra.NETWORK";
+ field @Deprecated public static final String EXTRA_NETWORK_INFO = "networkInfo";
+ field public static final String EXTRA_NETWORK_REQUEST = "android.net.extra.NETWORK_REQUEST";
+ field @Deprecated public static final String EXTRA_NETWORK_TYPE = "networkType";
+ field public static final String EXTRA_NO_CONNECTIVITY = "noConnectivity";
+ field @Deprecated public static final String EXTRA_OTHER_NETWORK_INFO = "otherNetwork";
+ field public static final String EXTRA_REASON = "reason";
+ field public static final int MULTIPATH_PREFERENCE_HANDOVER = 1; // 0x1
+ field public static final int MULTIPATH_PREFERENCE_PERFORMANCE = 4; // 0x4
+ field public static final int MULTIPATH_PREFERENCE_RELIABILITY = 2; // 0x2
+ field public static final int RESTRICT_BACKGROUND_STATUS_DISABLED = 1; // 0x1
+ field public static final int RESTRICT_BACKGROUND_STATUS_ENABLED = 3; // 0x3
+ field public static final int RESTRICT_BACKGROUND_STATUS_WHITELISTED = 2; // 0x2
+ field @Deprecated public static final int TYPE_BLUETOOTH = 7; // 0x7
+ field @Deprecated public static final int TYPE_DUMMY = 8; // 0x8
+ field @Deprecated public static final int TYPE_ETHERNET = 9; // 0x9
+ field @Deprecated public static final int TYPE_MOBILE = 0; // 0x0
+ field @Deprecated public static final int TYPE_MOBILE_DUN = 4; // 0x4
+ field @Deprecated public static final int TYPE_MOBILE_HIPRI = 5; // 0x5
+ field @Deprecated public static final int TYPE_MOBILE_MMS = 2; // 0x2
+ field @Deprecated public static final int TYPE_MOBILE_SUPL = 3; // 0x3
+ field @Deprecated public static final int TYPE_VPN = 17; // 0x11
+ field @Deprecated public static final int TYPE_WIFI = 1; // 0x1
+ field @Deprecated public static final int TYPE_WIMAX = 6; // 0x6
+ }
+
+ public static class ConnectivityManager.NetworkCallback {
+ ctor public ConnectivityManager.NetworkCallback();
+ ctor public ConnectivityManager.NetworkCallback(int);
+ method public void onAvailable(@NonNull android.net.Network);
+ method public void onBlockedStatusChanged(@NonNull android.net.Network, boolean);
+ method public void onCapabilitiesChanged(@NonNull android.net.Network, @NonNull android.net.NetworkCapabilities);
+ method public void onLinkPropertiesChanged(@NonNull android.net.Network, @NonNull android.net.LinkProperties);
+ method public void onLosing(@NonNull android.net.Network, int);
+ method public void onLost(@NonNull android.net.Network);
+ method public void onUnavailable();
+ field public static final int FLAG_INCLUDE_LOCATION_INFO = 1; // 0x1
+ }
+
+ public static interface ConnectivityManager.OnNetworkActiveListener {
+ method public void onNetworkActive();
+ }
+
+ public class DhcpInfo implements android.os.Parcelable {
+ ctor public DhcpInfo();
+ method public int describeContents();
+ method public void writeToParcel(android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.DhcpInfo> CREATOR;
+ field public int dns1;
+ field public int dns2;
+ field public int gateway;
+ field public int ipAddress;
+ field public int leaseDuration;
+ field public int netmask;
+ field public int serverAddress;
+ }
+
+ public final class DnsResolver {
+ method @NonNull public static android.net.DnsResolver getInstance();
+ method public void query(@Nullable android.net.Network, @NonNull String, int, @NonNull java.util.concurrent.Executor, @Nullable android.os.CancellationSignal, @NonNull android.net.DnsResolver.Callback<? super java.util.List<java.net.InetAddress>>);
+ method public void query(@Nullable android.net.Network, @NonNull String, int, int, @NonNull java.util.concurrent.Executor, @Nullable android.os.CancellationSignal, @NonNull android.net.DnsResolver.Callback<? super java.util.List<java.net.InetAddress>>);
+ method public void rawQuery(@Nullable android.net.Network, @NonNull byte[], int, @NonNull java.util.concurrent.Executor, @Nullable android.os.CancellationSignal, @NonNull android.net.DnsResolver.Callback<? super byte[]>);
+ method public void rawQuery(@Nullable android.net.Network, @NonNull String, int, int, int, @NonNull java.util.concurrent.Executor, @Nullable android.os.CancellationSignal, @NonNull android.net.DnsResolver.Callback<? super byte[]>);
+ field public static final int CLASS_IN = 1; // 0x1
+ field public static final int ERROR_PARSE = 0; // 0x0
+ field public static final int ERROR_SYSTEM = 1; // 0x1
+ field public static final int FLAG_EMPTY = 0; // 0x0
+ field public static final int FLAG_NO_CACHE_LOOKUP = 4; // 0x4
+ field public static final int FLAG_NO_CACHE_STORE = 2; // 0x2
+ field public static final int FLAG_NO_RETRY = 1; // 0x1
+ field public static final int TYPE_A = 1; // 0x1
+ field public static final int TYPE_AAAA = 28; // 0x1c
+ }
+
+ public static interface DnsResolver.Callback<T> {
+ method public void onAnswer(@NonNull T, int);
+ method public void onError(@NonNull android.net.DnsResolver.DnsException);
+ }
+
+ public static class DnsResolver.DnsException extends java.lang.Exception {
+ ctor public DnsResolver.DnsException(int, @Nullable Throwable);
+ field public final int code;
+ }
+
+ public class InetAddresses {
+ method public static boolean isNumericAddress(@NonNull String);
+ method @NonNull public static java.net.InetAddress parseNumericAddress(@NonNull String);
+ }
+
+ public final class IpConfiguration implements android.os.Parcelable {
+ method public int describeContents();
+ method @Nullable public android.net.ProxyInfo getHttpProxy();
+ method @Nullable public android.net.StaticIpConfiguration getStaticIpConfiguration();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.IpConfiguration> CREATOR;
+ }
+
+ public static final class IpConfiguration.Builder {
+ ctor public IpConfiguration.Builder();
+ method @NonNull public android.net.IpConfiguration build();
+ method @NonNull public android.net.IpConfiguration.Builder setHttpProxy(@Nullable android.net.ProxyInfo);
+ method @NonNull public android.net.IpConfiguration.Builder setStaticIpConfiguration(@Nullable android.net.StaticIpConfiguration);
+ }
+
+ public final class IpPrefix implements android.os.Parcelable {
+ ctor public IpPrefix(@NonNull java.net.InetAddress, @IntRange(from=0, to=128) int);
+ method public boolean contains(@NonNull java.net.InetAddress);
+ method public int describeContents();
+ method @NonNull public java.net.InetAddress getAddress();
+ method @IntRange(from=0, to=128) public int getPrefixLength();
+ method @NonNull public byte[] getRawAddress();
+ method public void writeToParcel(android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.IpPrefix> CREATOR;
+ }
+
+ public class LinkAddress implements android.os.Parcelable {
+ method public int describeContents();
+ method public java.net.InetAddress getAddress();
+ method public int getFlags();
+ method @IntRange(from=0, to=128) public int getPrefixLength();
+ method public int getScope();
+ method public void writeToParcel(android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.LinkAddress> CREATOR;
+ }
+
+ public final class LinkProperties implements android.os.Parcelable {
+ ctor public LinkProperties();
+ method public boolean addRoute(@NonNull android.net.RouteInfo);
+ method public void clear();
+ method public int describeContents();
+ method @Nullable public java.net.Inet4Address getDhcpServerAddress();
+ method @NonNull public java.util.List<java.net.InetAddress> getDnsServers();
+ method @Nullable public String getDomains();
+ method @Nullable public android.net.ProxyInfo getHttpProxy();
+ method @Nullable public String getInterfaceName();
+ method @NonNull public java.util.List<android.net.LinkAddress> getLinkAddresses();
+ method public int getMtu();
+ method @Nullable public android.net.IpPrefix getNat64Prefix();
+ method @Nullable public String getPrivateDnsServerName();
+ method @NonNull public java.util.List<android.net.RouteInfo> getRoutes();
+ method public boolean isPrivateDnsActive();
+ method public boolean isWakeOnLanSupported();
+ method public void setDhcpServerAddress(@Nullable java.net.Inet4Address);
+ method public void setDnsServers(@NonNull java.util.Collection<java.net.InetAddress>);
+ method public void setDomains(@Nullable String);
+ method public void setHttpProxy(@Nullable android.net.ProxyInfo);
+ method public void setInterfaceName(@Nullable String);
+ method public void setLinkAddresses(@NonNull java.util.Collection<android.net.LinkAddress>);
+ method public void setMtu(int);
+ method public void setNat64Prefix(@Nullable android.net.IpPrefix);
+ method public void writeToParcel(android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.LinkProperties> CREATOR;
+ }
+
+ public final class MacAddress implements android.os.Parcelable {
+ method public int describeContents();
+ method @NonNull public static android.net.MacAddress fromBytes(@NonNull byte[]);
+ method @NonNull public static android.net.MacAddress fromString(@NonNull String);
+ method public int getAddressType();
+ method @Nullable public java.net.Inet6Address getLinkLocalIpv6FromEui48Mac();
+ method public boolean isLocallyAssigned();
+ method public boolean matches(@NonNull android.net.MacAddress, @NonNull android.net.MacAddress);
+ method @NonNull public byte[] toByteArray();
+ method @NonNull public String toOuiString();
+ method public void writeToParcel(android.os.Parcel, int);
+ field public static final android.net.MacAddress BROADCAST_ADDRESS;
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.MacAddress> CREATOR;
+ field public static final int TYPE_BROADCAST = 3; // 0x3
+ field public static final int TYPE_MULTICAST = 2; // 0x2
+ field public static final int TYPE_UNICAST = 1; // 0x1
+ }
+
+ public class Network implements android.os.Parcelable {
+ method public void bindSocket(java.net.DatagramSocket) throws java.io.IOException;
+ method public void bindSocket(java.net.Socket) throws java.io.IOException;
+ method public void bindSocket(java.io.FileDescriptor) throws java.io.IOException;
+ method public int describeContents();
+ method public static android.net.Network fromNetworkHandle(long);
+ method public java.net.InetAddress[] getAllByName(String) throws java.net.UnknownHostException;
+ method public java.net.InetAddress getByName(String) throws java.net.UnknownHostException;
+ method public long getNetworkHandle();
+ method public javax.net.SocketFactory getSocketFactory();
+ method public java.net.URLConnection openConnection(java.net.URL) throws java.io.IOException;
+ method public java.net.URLConnection openConnection(java.net.URL, java.net.Proxy) throws java.io.IOException;
+ method public void writeToParcel(android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.Network> CREATOR;
+ }
+
+ public final class NetworkCapabilities implements android.os.Parcelable {
+ ctor public NetworkCapabilities();
+ ctor public NetworkCapabilities(android.net.NetworkCapabilities);
+ method public int describeContents();
+ method @NonNull public int[] getCapabilities();
+ method @NonNull public int[] getEnterpriseIds();
+ method public int getLinkDownstreamBandwidthKbps();
+ method public int getLinkUpstreamBandwidthKbps();
+ method @Nullable public android.net.NetworkSpecifier getNetworkSpecifier();
+ method public int getOwnerUid();
+ method public int getSignalStrength();
+ method @Nullable public android.net.TransportInfo getTransportInfo();
+ method public boolean hasCapability(int);
+ method public boolean hasEnterpriseId(int);
+ method public boolean hasTransport(int);
+ method public void writeToParcel(android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.NetworkCapabilities> CREATOR;
+ field public static final int NET_CAPABILITY_CAPTIVE_PORTAL = 17; // 0x11
+ field public static final int NET_CAPABILITY_CBS = 5; // 0x5
+ field public static final int NET_CAPABILITY_DUN = 2; // 0x2
+ field public static final int NET_CAPABILITY_EIMS = 10; // 0xa
+ field public static final int NET_CAPABILITY_ENTERPRISE = 29; // 0x1d
+ field public static final int NET_CAPABILITY_FOREGROUND = 19; // 0x13
+ field public static final int NET_CAPABILITY_FOTA = 3; // 0x3
+ field public static final int NET_CAPABILITY_HEAD_UNIT = 32; // 0x20
+ field public static final int NET_CAPABILITY_IA = 7; // 0x7
+ field public static final int NET_CAPABILITY_IMS = 4; // 0x4
+ field public static final int NET_CAPABILITY_INTERNET = 12; // 0xc
+ field public static final int NET_CAPABILITY_MCX = 23; // 0x17
+ field public static final int NET_CAPABILITY_MMS = 0; // 0x0
+ field public static final int NET_CAPABILITY_MMTEL = 33; // 0x21
+ field public static final int NET_CAPABILITY_NOT_CONGESTED = 20; // 0x14
+ field public static final int NET_CAPABILITY_NOT_METERED = 11; // 0xb
+ field public static final int NET_CAPABILITY_NOT_RESTRICTED = 13; // 0xd
+ field public static final int NET_CAPABILITY_NOT_ROAMING = 18; // 0x12
+ field public static final int NET_CAPABILITY_NOT_SUSPENDED = 21; // 0x15
+ field public static final int NET_CAPABILITY_NOT_VPN = 15; // 0xf
+ field public static final int NET_CAPABILITY_PRIORITIZE_BANDWIDTH = 35; // 0x23
+ field public static final int NET_CAPABILITY_PRIORITIZE_LATENCY = 34; // 0x22
+ field public static final int NET_CAPABILITY_RCS = 8; // 0x8
+ field public static final int NET_CAPABILITY_SUPL = 1; // 0x1
+ field public static final int NET_CAPABILITY_TEMPORARILY_NOT_METERED = 25; // 0x19
+ field public static final int NET_CAPABILITY_TRUSTED = 14; // 0xe
+ field public static final int NET_CAPABILITY_VALIDATED = 16; // 0x10
+ field public static final int NET_CAPABILITY_WIFI_P2P = 6; // 0x6
+ field public static final int NET_CAPABILITY_XCAP = 9; // 0x9
+ field public static final int NET_ENTERPRISE_ID_1 = 1; // 0x1
+ field public static final int NET_ENTERPRISE_ID_2 = 2; // 0x2
+ field public static final int NET_ENTERPRISE_ID_3 = 3; // 0x3
+ field public static final int NET_ENTERPRISE_ID_4 = 4; // 0x4
+ field public static final int NET_ENTERPRISE_ID_5 = 5; // 0x5
+ field public static final int SIGNAL_STRENGTH_UNSPECIFIED = -2147483648; // 0x80000000
+ field public static final int TRANSPORT_BLUETOOTH = 2; // 0x2
+ field public static final int TRANSPORT_CELLULAR = 0; // 0x0
+ field public static final int TRANSPORT_ETHERNET = 3; // 0x3
+ field public static final int TRANSPORT_LOWPAN = 6; // 0x6
+ field public static final int TRANSPORT_USB = 8; // 0x8
+ field public static final int TRANSPORT_VPN = 4; // 0x4
+ field public static final int TRANSPORT_WIFI = 1; // 0x1
+ field public static final int TRANSPORT_WIFI_AWARE = 5; // 0x5
+ }
+
+ @Deprecated public class NetworkInfo implements android.os.Parcelable {
+ ctor @Deprecated public NetworkInfo(int, int, @Nullable String, @Nullable String);
+ method @Deprecated public int describeContents();
+ method @Deprecated @NonNull public android.net.NetworkInfo.DetailedState getDetailedState();
+ method @Deprecated public String getExtraInfo();
+ method @Deprecated public String getReason();
+ method @Deprecated public android.net.NetworkInfo.State getState();
+ method @Deprecated public int getSubtype();
+ method @Deprecated public String getSubtypeName();
+ method @Deprecated public int getType();
+ method @Deprecated public String getTypeName();
+ method @Deprecated public boolean isAvailable();
+ method @Deprecated public boolean isConnected();
+ method @Deprecated public boolean isConnectedOrConnecting();
+ method @Deprecated public boolean isFailover();
+ method @Deprecated public boolean isRoaming();
+ method @Deprecated public void setDetailedState(@NonNull android.net.NetworkInfo.DetailedState, @Nullable String, @Nullable String);
+ method @Deprecated public void writeToParcel(android.os.Parcel, int);
+ field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.net.NetworkInfo> CREATOR;
+ }
+
+ @Deprecated public enum NetworkInfo.DetailedState {
+ enum_constant @Deprecated public static final android.net.NetworkInfo.DetailedState AUTHENTICATING;
+ enum_constant @Deprecated public static final android.net.NetworkInfo.DetailedState BLOCKED;
+ enum_constant @Deprecated public static final android.net.NetworkInfo.DetailedState CAPTIVE_PORTAL_CHECK;
+ enum_constant @Deprecated public static final android.net.NetworkInfo.DetailedState CONNECTED;
+ enum_constant @Deprecated public static final android.net.NetworkInfo.DetailedState CONNECTING;
+ enum_constant @Deprecated public static final android.net.NetworkInfo.DetailedState DISCONNECTED;
+ enum_constant @Deprecated public static final android.net.NetworkInfo.DetailedState DISCONNECTING;
+ enum_constant @Deprecated public static final android.net.NetworkInfo.DetailedState FAILED;
+ enum_constant @Deprecated public static final android.net.NetworkInfo.DetailedState IDLE;
+ enum_constant @Deprecated public static final android.net.NetworkInfo.DetailedState OBTAINING_IPADDR;
+ enum_constant @Deprecated public static final android.net.NetworkInfo.DetailedState SCANNING;
+ enum_constant @Deprecated public static final android.net.NetworkInfo.DetailedState SUSPENDED;
+ enum_constant @Deprecated public static final android.net.NetworkInfo.DetailedState VERIFYING_POOR_LINK;
+ }
+
+ @Deprecated public enum NetworkInfo.State {
+ enum_constant @Deprecated public static final android.net.NetworkInfo.State CONNECTED;
+ enum_constant @Deprecated public static final android.net.NetworkInfo.State CONNECTING;
+ enum_constant @Deprecated public static final android.net.NetworkInfo.State DISCONNECTED;
+ enum_constant @Deprecated public static final android.net.NetworkInfo.State DISCONNECTING;
+ enum_constant @Deprecated public static final android.net.NetworkInfo.State SUSPENDED;
+ enum_constant @Deprecated public static final android.net.NetworkInfo.State UNKNOWN;
+ }
+
+ public class NetworkRequest implements android.os.Parcelable {
+ method public boolean canBeSatisfiedBy(@Nullable android.net.NetworkCapabilities);
+ method public int describeContents();
+ method @NonNull public int[] getCapabilities();
+ method @Nullable public android.net.NetworkSpecifier getNetworkSpecifier();
+ method @NonNull public int[] getTransportTypes();
+ method public boolean hasCapability(int);
+ method public boolean hasTransport(int);
+ method public void writeToParcel(android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.NetworkRequest> CREATOR;
+ }
+
+ public static class NetworkRequest.Builder {
+ ctor public NetworkRequest.Builder();
+ ctor public NetworkRequest.Builder(@NonNull android.net.NetworkRequest);
+ method public android.net.NetworkRequest.Builder addCapability(int);
+ method public android.net.NetworkRequest.Builder addTransportType(int);
+ method public android.net.NetworkRequest build();
+ method @NonNull public android.net.NetworkRequest.Builder clearCapabilities();
+ method public android.net.NetworkRequest.Builder removeCapability(int);
+ method public android.net.NetworkRequest.Builder removeTransportType(int);
+ method @NonNull public android.net.NetworkRequest.Builder setIncludeOtherUidNetworks(boolean);
+ method @Deprecated public android.net.NetworkRequest.Builder setNetworkSpecifier(String);
+ method public android.net.NetworkRequest.Builder setNetworkSpecifier(android.net.NetworkSpecifier);
+ }
+
+ public class ParseException extends java.lang.RuntimeException {
+ ctor public ParseException(@NonNull String);
+ ctor public ParseException(@NonNull String, @NonNull Throwable);
+ field public String response;
+ }
+
+ public class ProxyInfo implements android.os.Parcelable {
+ ctor public ProxyInfo(@Nullable android.net.ProxyInfo);
+ method public static android.net.ProxyInfo buildDirectProxy(String, int);
+ method public static android.net.ProxyInfo buildDirectProxy(String, int, java.util.List<java.lang.String>);
+ method public static android.net.ProxyInfo buildPacProxy(android.net.Uri);
+ method @NonNull public static android.net.ProxyInfo buildPacProxy(@NonNull android.net.Uri, int);
+ method public int describeContents();
+ method public String[] getExclusionList();
+ method public String getHost();
+ method public android.net.Uri getPacFileUrl();
+ method public int getPort();
+ method public boolean isValid();
+ method public void writeToParcel(android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.ProxyInfo> CREATOR;
+ }
+
+ public final class RouteInfo implements android.os.Parcelable {
+ method public int describeContents();
+ method @NonNull public android.net.IpPrefix getDestination();
+ method @Nullable public java.net.InetAddress getGateway();
+ method @Nullable public String getInterface();
+ method public int getType();
+ method public boolean hasGateway();
+ method public boolean isDefaultRoute();
+ method public boolean matches(java.net.InetAddress);
+ method public void writeToParcel(android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.RouteInfo> CREATOR;
+ field public static final int RTN_THROW = 9; // 0x9
+ field public static final int RTN_UNICAST = 1; // 0x1
+ field public static final int RTN_UNREACHABLE = 7; // 0x7
+ }
+
+ public abstract class SocketKeepalive implements java.lang.AutoCloseable {
+ method public final void close();
+ method public final void start(@IntRange(from=0xa, to=0xe10) int);
+ method public final void stop();
+ field public static final int ERROR_HARDWARE_ERROR = -31; // 0xffffffe1
+ field public static final int ERROR_INSUFFICIENT_RESOURCES = -32; // 0xffffffe0
+ field public static final int ERROR_INVALID_INTERVAL = -24; // 0xffffffe8
+ field public static final int ERROR_INVALID_IP_ADDRESS = -21; // 0xffffffeb
+ field public static final int ERROR_INVALID_LENGTH = -23; // 0xffffffe9
+ field public static final int ERROR_INVALID_NETWORK = -20; // 0xffffffec
+ field public static final int ERROR_INVALID_PORT = -22; // 0xffffffea
+ field public static final int ERROR_INVALID_SOCKET = -25; // 0xffffffe7
+ field public static final int ERROR_SOCKET_NOT_IDLE = -26; // 0xffffffe6
+ field public static final int ERROR_UNSUPPORTED = -30; // 0xffffffe2
+ }
+
+ public static class SocketKeepalive.Callback {
+ ctor public SocketKeepalive.Callback();
+ method public void onDataReceived();
+ method public void onError(int);
+ method public void onStarted();
+ method public void onStopped();
+ }
+
+ public final class StaticIpConfiguration implements android.os.Parcelable {
+ method public int describeContents();
+ method @NonNull public java.util.List<java.net.InetAddress> getDnsServers();
+ method @Nullable public String getDomains();
+ method @Nullable public java.net.InetAddress getGateway();
+ method @NonNull public android.net.LinkAddress getIpAddress();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.StaticIpConfiguration> CREATOR;
+ }
+
+ public static final class StaticIpConfiguration.Builder {
+ ctor public StaticIpConfiguration.Builder();
+ method @NonNull public android.net.StaticIpConfiguration build();
+ method @NonNull public android.net.StaticIpConfiguration.Builder setDnsServers(@NonNull Iterable<java.net.InetAddress>);
+ method @NonNull public android.net.StaticIpConfiguration.Builder setDomains(@Nullable String);
+ method @NonNull public android.net.StaticIpConfiguration.Builder setGateway(@Nullable java.net.InetAddress);
+ method @NonNull public android.net.StaticIpConfiguration.Builder setIpAddress(@NonNull android.net.LinkAddress);
+ }
+
+ public interface TransportInfo {
+ }
+
+}
+
diff --git a/extensions/3/public/api/framework-media-removed.txt b/extensions/3/public/api/framework-media-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/public/api/framework-media-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/public/api/framework-media.txt b/extensions/3/public/api/framework-media.txt
new file mode 100644
index 000000000..b7d7ed866
--- /dev/null
+++ b/extensions/3/public/api/framework-media.txt
@@ -0,0 +1,267 @@
+// Signature format: 2.0
+package android.media {
+
+ public final class ApplicationMediaCapabilities implements android.os.Parcelable {
+ method @NonNull public static android.media.ApplicationMediaCapabilities createFromXml(@NonNull org.xmlpull.v1.XmlPullParser);
+ method public int describeContents();
+ method @NonNull public java.util.List<java.lang.String> getSupportedHdrTypes();
+ method @NonNull public java.util.List<java.lang.String> getSupportedVideoMimeTypes();
+ method @NonNull public java.util.List<java.lang.String> getUnsupportedHdrTypes();
+ method @NonNull public java.util.List<java.lang.String> getUnsupportedVideoMimeTypes();
+ method public boolean isFormatSpecified(@NonNull String);
+ method public boolean isHdrTypeSupported(@NonNull String);
+ method public boolean isVideoMimeTypeSupported(@NonNull String);
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.media.ApplicationMediaCapabilities> CREATOR;
+ }
+
+ public static final class ApplicationMediaCapabilities.Builder {
+ ctor public ApplicationMediaCapabilities.Builder();
+ method @NonNull public android.media.ApplicationMediaCapabilities.Builder addSupportedHdrType(@NonNull String);
+ method @NonNull public android.media.ApplicationMediaCapabilities.Builder addSupportedVideoMimeType(@NonNull String);
+ method @NonNull public android.media.ApplicationMediaCapabilities.Builder addUnsupportedHdrType(@NonNull String);
+ method @NonNull public android.media.ApplicationMediaCapabilities.Builder addUnsupportedVideoMimeType(@NonNull String);
+ method @NonNull public android.media.ApplicationMediaCapabilities build();
+ }
+
+ public class MediaCommunicationManager {
+ method @NonNull public java.util.List<android.media.Session2Token> getSession2Tokens();
+ method @IntRange(from=1) public int getVersion();
+ }
+
+ public class MediaController2 implements java.lang.AutoCloseable {
+ method public void cancelSessionCommand(@NonNull Object);
+ method public void close();
+ method @Nullable public android.media.Session2Token getConnectedToken();
+ method public boolean isPlaybackActive();
+ method @NonNull public Object sendSessionCommand(@NonNull android.media.Session2Command, @Nullable android.os.Bundle);
+ }
+
+ public static final class MediaController2.Builder {
+ ctor public MediaController2.Builder(@NonNull android.content.Context, @NonNull android.media.Session2Token);
+ method @NonNull public android.media.MediaController2 build();
+ method @NonNull public android.media.MediaController2.Builder setConnectionHints(@NonNull android.os.Bundle);
+ method @NonNull public android.media.MediaController2.Builder setControllerCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.MediaController2.ControllerCallback);
+ }
+
+ public abstract static class MediaController2.ControllerCallback {
+ ctor public MediaController2.ControllerCallback();
+ method public void onCommandResult(@NonNull android.media.MediaController2, @NonNull Object, @NonNull android.media.Session2Command, @NonNull android.media.Session2Command.Result);
+ method public void onConnected(@NonNull android.media.MediaController2, @NonNull android.media.Session2CommandGroup);
+ method public void onDisconnected(@NonNull android.media.MediaController2);
+ method public void onPlaybackActiveChanged(@NonNull android.media.MediaController2, boolean);
+ method @Nullable public android.media.Session2Command.Result onSessionCommand(@NonNull android.media.MediaController2, @NonNull android.media.Session2Command, @Nullable android.os.Bundle);
+ }
+
+ public final class MediaFeature {
+ ctor public MediaFeature();
+ }
+
+ public static final class MediaFeature.HdrType {
+ field public static final String DOLBY_VISION = "android.media.feature.hdr.dolby_vision";
+ field public static final String HDR10 = "android.media.feature.hdr.hdr10";
+ field public static final String HDR10_PLUS = "android.media.feature.hdr.hdr10_plus";
+ field public static final String HLG = "android.media.feature.hdr.hlg";
+ }
+
+ public final class MediaParser {
+ method public boolean advance(@NonNull android.media.MediaParser.SeekableInputReader) throws java.io.IOException;
+ method @NonNull public static android.media.MediaParser create(@NonNull android.media.MediaParser.OutputConsumer, @NonNull java.lang.String...);
+ method @NonNull public static android.media.MediaParser createByName(@NonNull String, @NonNull android.media.MediaParser.OutputConsumer);
+ method @NonNull public android.media.metrics.LogSessionId getLogSessionId();
+ method @NonNull public String getParserName();
+ method @NonNull public static java.util.List<java.lang.String> getParserNames(@NonNull android.media.MediaFormat);
+ method public void release();
+ method public void seek(@NonNull android.media.MediaParser.SeekPoint);
+ method public void setLogSessionId(@NonNull android.media.metrics.LogSessionId);
+ method @NonNull public android.media.MediaParser setParameter(@NonNull String, @NonNull Object);
+ method public boolean supportsParameter(@NonNull String);
+ field public static final String PARAMETER_ADTS_ENABLE_CBR_SEEKING = "android.media.mediaparser.adts.enableCbrSeeking";
+ field public static final String PARAMETER_AMR_ENABLE_CBR_SEEKING = "android.media.mediaparser.amr.enableCbrSeeking";
+ field public static final String PARAMETER_FLAC_DISABLE_ID3 = "android.media.mediaparser.flac.disableId3";
+ field public static final String PARAMETER_MATROSKA_DISABLE_CUES_SEEKING = "android.media.mediaparser.matroska.disableCuesSeeking";
+ field public static final String PARAMETER_MP3_DISABLE_ID3 = "android.media.mediaparser.mp3.disableId3";
+ field public static final String PARAMETER_MP3_ENABLE_CBR_SEEKING = "android.media.mediaparser.mp3.enableCbrSeeking";
+ field public static final String PARAMETER_MP3_ENABLE_INDEX_SEEKING = "android.media.mediaparser.mp3.enableIndexSeeking";
+ field public static final String PARAMETER_MP4_IGNORE_EDIT_LISTS = "android.media.mediaparser.mp4.ignoreEditLists";
+ field public static final String PARAMETER_MP4_IGNORE_TFDT_BOX = "android.media.mediaparser.mp4.ignoreTfdtBox";
+ field public static final String PARAMETER_MP4_TREAT_VIDEO_FRAMES_AS_KEYFRAMES = "android.media.mediaparser.mp4.treatVideoFramesAsKeyframes";
+ field public static final String PARAMETER_TS_ALLOW_NON_IDR_AVC_KEYFRAMES = "android.media.mediaparser.ts.allowNonIdrAvcKeyframes";
+ field public static final String PARAMETER_TS_DETECT_ACCESS_UNITS = "android.media.mediaparser.ts.ignoreDetectAccessUnits";
+ field public static final String PARAMETER_TS_ENABLE_HDMV_DTS_AUDIO_STREAMS = "android.media.mediaparser.ts.enableHdmvDtsAudioStreams";
+ field public static final String PARAMETER_TS_IGNORE_AAC_STREAM = "android.media.mediaparser.ts.ignoreAacStream";
+ field public static final String PARAMETER_TS_IGNORE_AVC_STREAM = "android.media.mediaparser.ts.ignoreAvcStream";
+ field public static final String PARAMETER_TS_IGNORE_SPLICE_INFO_STREAM = "android.media.mediaparser.ts.ignoreSpliceInfoStream";
+ field public static final String PARAMETER_TS_MODE = "android.media.mediaparser.ts.mode";
+ field public static final String PARSER_NAME_AC3 = "android.media.mediaparser.Ac3Parser";
+ field public static final String PARSER_NAME_AC4 = "android.media.mediaparser.Ac4Parser";
+ field public static final String PARSER_NAME_ADTS = "android.media.mediaparser.AdtsParser";
+ field public static final String PARSER_NAME_AMR = "android.media.mediaparser.AmrParser";
+ field public static final String PARSER_NAME_FLAC = "android.media.mediaparser.FlacParser";
+ field public static final String PARSER_NAME_FLV = "android.media.mediaparser.FlvParser";
+ field public static final String PARSER_NAME_FMP4 = "android.media.mediaparser.FragmentedMp4Parser";
+ field public static final String PARSER_NAME_MATROSKA = "android.media.mediaparser.MatroskaParser";
+ field public static final String PARSER_NAME_MP3 = "android.media.mediaparser.Mp3Parser";
+ field public static final String PARSER_NAME_MP4 = "android.media.mediaparser.Mp4Parser";
+ field public static final String PARSER_NAME_OGG = "android.media.mediaparser.OggParser";
+ field public static final String PARSER_NAME_PS = "android.media.mediaparser.PsParser";
+ field public static final String PARSER_NAME_TS = "android.media.mediaparser.TsParser";
+ field public static final String PARSER_NAME_UNKNOWN = "android.media.mediaparser.UNKNOWN";
+ field public static final String PARSER_NAME_WAV = "android.media.mediaparser.WavParser";
+ field public static final int SAMPLE_FLAG_DECODE_ONLY = -2147483648; // 0x80000000
+ field public static final int SAMPLE_FLAG_ENCRYPTED = 1073741824; // 0x40000000
+ field public static final int SAMPLE_FLAG_HAS_SUPPLEMENTAL_DATA = 268435456; // 0x10000000
+ field public static final int SAMPLE_FLAG_KEY_FRAME = 1; // 0x1
+ field public static final int SAMPLE_FLAG_LAST_SAMPLE = 536870912; // 0x20000000
+ }
+
+ public static interface MediaParser.InputReader {
+ method public long getLength();
+ method public long getPosition();
+ method public int read(@NonNull byte[], int, int) throws java.io.IOException;
+ }
+
+ public static interface MediaParser.OutputConsumer {
+ method public void onSampleCompleted(int, long, int, int, int, @Nullable android.media.MediaCodec.CryptoInfo);
+ method public void onSampleDataFound(int, @NonNull android.media.MediaParser.InputReader) throws java.io.IOException;
+ method public void onSeekMapFound(@NonNull android.media.MediaParser.SeekMap);
+ method public void onTrackCountFound(int);
+ method public void onTrackDataFound(int, @NonNull android.media.MediaParser.TrackData);
+ }
+
+ public static final class MediaParser.ParsingException extends java.io.IOException {
+ }
+
+ public static final class MediaParser.SeekMap {
+ method public long getDurationMicros();
+ method @NonNull public android.util.Pair<android.media.MediaParser.SeekPoint,android.media.MediaParser.SeekPoint> getSeekPoints(long);
+ method public boolean isSeekable();
+ field public static final int UNKNOWN_DURATION = -2147483648; // 0x80000000
+ }
+
+ public static final class MediaParser.SeekPoint {
+ field @NonNull public static final android.media.MediaParser.SeekPoint START;
+ field public final long position;
+ field public final long timeMicros;
+ }
+
+ public static interface MediaParser.SeekableInputReader extends android.media.MediaParser.InputReader {
+ method public void seekToPosition(long);
+ }
+
+ public static final class MediaParser.TrackData {
+ field @Nullable public final android.media.DrmInitData drmInitData;
+ field @NonNull public final android.media.MediaFormat mediaFormat;
+ }
+
+ public static final class MediaParser.UnrecognizedInputFormatException extends java.io.IOException {
+ }
+
+ public class MediaSession2 implements java.lang.AutoCloseable {
+ method public void broadcastSessionCommand(@NonNull android.media.Session2Command, @Nullable android.os.Bundle);
+ method public void cancelSessionCommand(@NonNull android.media.MediaSession2.ControllerInfo, @NonNull Object);
+ method public void close();
+ method @NonNull public java.util.List<android.media.MediaSession2.ControllerInfo> getConnectedControllers();
+ method @NonNull public String getId();
+ method @NonNull public android.media.Session2Token getToken();
+ method public boolean isPlaybackActive();
+ method @NonNull public Object sendSessionCommand(@NonNull android.media.MediaSession2.ControllerInfo, @NonNull android.media.Session2Command, @Nullable android.os.Bundle);
+ method public void setPlaybackActive(boolean);
+ }
+
+ public static final class MediaSession2.Builder {
+ ctor public MediaSession2.Builder(@NonNull android.content.Context);
+ method @NonNull public android.media.MediaSession2 build();
+ method @NonNull public android.media.MediaSession2.Builder setExtras(@NonNull android.os.Bundle);
+ method @NonNull public android.media.MediaSession2.Builder setId(@NonNull String);
+ method @NonNull public android.media.MediaSession2.Builder setSessionActivity(@Nullable android.app.PendingIntent);
+ method @NonNull public android.media.MediaSession2.Builder setSessionCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.MediaSession2.SessionCallback);
+ }
+
+ public static final class MediaSession2.ControllerInfo {
+ method @NonNull public android.os.Bundle getConnectionHints();
+ method @NonNull public String getPackageName();
+ method @NonNull public android.media.session.MediaSessionManager.RemoteUserInfo getRemoteUserInfo();
+ method public int getUid();
+ }
+
+ public abstract static class MediaSession2.SessionCallback {
+ ctor public MediaSession2.SessionCallback();
+ method public void onCommandResult(@NonNull android.media.MediaSession2, @NonNull android.media.MediaSession2.ControllerInfo, @NonNull Object, @NonNull android.media.Session2Command, @NonNull android.media.Session2Command.Result);
+ method @Nullable public android.media.Session2CommandGroup onConnect(@NonNull android.media.MediaSession2, @NonNull android.media.MediaSession2.ControllerInfo);
+ method public void onDisconnected(@NonNull android.media.MediaSession2, @NonNull android.media.MediaSession2.ControllerInfo);
+ method public void onPostConnect(@NonNull android.media.MediaSession2, @NonNull android.media.MediaSession2.ControllerInfo);
+ method @Nullable public android.media.Session2Command.Result onSessionCommand(@NonNull android.media.MediaSession2, @NonNull android.media.MediaSession2.ControllerInfo, @NonNull android.media.Session2Command, @Nullable android.os.Bundle);
+ }
+
+ public abstract class MediaSession2Service extends android.app.Service {
+ ctor public MediaSession2Service();
+ method public final void addSession(@NonNull android.media.MediaSession2);
+ method @NonNull public final java.util.List<android.media.MediaSession2> getSessions();
+ method @CallSuper @Nullable public android.os.IBinder onBind(@NonNull android.content.Intent);
+ method @Nullable public abstract android.media.MediaSession2 onGetSession(@NonNull android.media.MediaSession2.ControllerInfo);
+ method @Nullable public abstract android.media.MediaSession2Service.MediaNotification onUpdateNotification(@NonNull android.media.MediaSession2);
+ method public final void removeSession(@NonNull android.media.MediaSession2);
+ field public static final String SERVICE_INTERFACE = "android.media.MediaSession2Service";
+ }
+
+ public static class MediaSession2Service.MediaNotification {
+ ctor public MediaSession2Service.MediaNotification(int, @NonNull android.app.Notification);
+ method @NonNull public android.app.Notification getNotification();
+ method public int getNotificationId();
+ }
+
+ public final class Session2Command implements android.os.Parcelable {
+ ctor public Session2Command(int);
+ ctor public Session2Command(@NonNull String, @Nullable android.os.Bundle);
+ method public int describeContents();
+ method public int getCommandCode();
+ method @Nullable public String getCustomAction();
+ method @Nullable public android.os.Bundle getCustomExtras();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field public static final int COMMAND_CODE_CUSTOM = 0; // 0x0
+ field @NonNull public static final android.os.Parcelable.Creator<android.media.Session2Command> CREATOR;
+ }
+
+ public static final class Session2Command.Result {
+ ctor public Session2Command.Result(int, @Nullable android.os.Bundle);
+ method public int getResultCode();
+ method @Nullable public android.os.Bundle getResultData();
+ field public static final int RESULT_ERROR_UNKNOWN_ERROR = -1; // 0xffffffff
+ field public static final int RESULT_INFO_SKIPPED = 1; // 0x1
+ field public static final int RESULT_SUCCESS = 0; // 0x0
+ }
+
+ public final class Session2CommandGroup implements android.os.Parcelable {
+ method public int describeContents();
+ method @NonNull public java.util.Set<android.media.Session2Command> getCommands();
+ method public boolean hasCommand(@NonNull android.media.Session2Command);
+ method public boolean hasCommand(int);
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.media.Session2CommandGroup> CREATOR;
+ }
+
+ public static final class Session2CommandGroup.Builder {
+ ctor public Session2CommandGroup.Builder();
+ ctor public Session2CommandGroup.Builder(@NonNull android.media.Session2CommandGroup);
+ method @NonNull public android.media.Session2CommandGroup.Builder addCommand(@NonNull android.media.Session2Command);
+ method @NonNull public android.media.Session2CommandGroup build();
+ method @NonNull public android.media.Session2CommandGroup.Builder removeCommand(@NonNull android.media.Session2Command);
+ }
+
+ public final class Session2Token implements android.os.Parcelable {
+ ctor public Session2Token(@NonNull android.content.Context, @NonNull android.content.ComponentName);
+ method public int describeContents();
+ method @NonNull public android.os.Bundle getExtras();
+ method @NonNull public String getPackageName();
+ method @Nullable public String getServiceName();
+ method public int getType();
+ method public int getUid();
+ method public void writeToParcel(android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.media.Session2Token> CREATOR;
+ field public static final int TYPE_SESSION = 0; // 0x0
+ field public static final int TYPE_SESSION_SERVICE = 1; // 0x1
+ }
+
+}
+
diff --git a/extensions/3/public/api/framework-mediaprovider-removed.txt b/extensions/3/public/api/framework-mediaprovider-removed.txt
new file mode 100644
index 000000000..183a7c9a8
--- /dev/null
+++ b/extensions/3/public/api/framework-mediaprovider-removed.txt
@@ -0,0 +1,43 @@
+// Signature format: 2.0
+package android.provider {
+
+ public static interface MediaStore.Audio.AudioColumns extends android.provider.MediaStore.MediaColumns {
+ field public static final String ALBUM = "album";
+ field public static final String ARTIST = "artist";
+ field public static final String COMPOSER = "composer";
+ field public static final String DURATION = "duration";
+ }
+
+ public static interface MediaStore.DownloadColumns extends android.provider.MediaStore.MediaColumns {
+ field @Deprecated public static final String DESCRIPTION = "description";
+ }
+
+ public static interface MediaStore.Files.FileColumns extends android.provider.MediaStore.MediaColumns {
+ field public static final String TITLE = "title";
+ }
+
+ public static interface MediaStore.Images.ImageColumns extends android.provider.MediaStore.MediaColumns {
+ field public static final String BUCKET_DISPLAY_NAME = "bucket_display_name";
+ field public static final String BUCKET_ID = "bucket_id";
+ field public static final String DATE_TAKEN = "datetaken";
+ field public static final String GROUP_ID = "group_id";
+ field public static final String ORIENTATION = "orientation";
+ }
+
+ public static interface MediaStore.MediaColumns extends android.provider.BaseColumns {
+ field @Deprecated public static final String GROUP_ID = "group_id";
+ }
+
+ public static interface MediaStore.Video.VideoColumns extends android.provider.MediaStore.MediaColumns {
+ field public static final String ALBUM = "album";
+ field public static final String ARTIST = "artist";
+ field public static final String BUCKET_DISPLAY_NAME = "bucket_display_name";
+ field public static final String BUCKET_ID = "bucket_id";
+ field public static final String DATE_TAKEN = "datetaken";
+ field public static final String DURATION = "duration";
+ field public static final String GROUP_ID = "group_id";
+ field public static final String RESOLUTION = "resolution";
+ }
+
+}
+
diff --git a/extensions/3/public/api/framework-mediaprovider.txt b/extensions/3/public/api/framework-mediaprovider.txt
new file mode 100644
index 000000000..8e1691a9c
--- /dev/null
+++ b/extensions/3/public/api/framework-mediaprovider.txt
@@ -0,0 +1,524 @@
+// Signature format: 2.0
+package android.provider {
+
+ public abstract class CloudMediaProvider extends android.content.ContentProvider {
+ ctor public CloudMediaProvider();
+ method public final void attachInfo(@NonNull android.content.Context, @NonNull android.content.pm.ProviderInfo);
+ method @NonNull public final android.os.Bundle call(@NonNull String, @Nullable String, @Nullable android.os.Bundle);
+ method @NonNull public final android.net.Uri canonicalize(@NonNull android.net.Uri);
+ method public final int delete(@NonNull android.net.Uri, @Nullable String, @Nullable String[]);
+ method @NonNull public final String getType(@NonNull android.net.Uri);
+ method @NonNull public final android.net.Uri insert(@NonNull android.net.Uri, @NonNull android.content.ContentValues);
+ method @Nullable public android.provider.CloudMediaProvider.CloudMediaSurfaceController onCreateCloudMediaSurfaceController(@NonNull android.os.Bundle, @NonNull android.provider.CloudMediaProvider.CloudMediaSurfaceStateChangedCallback);
+ method @NonNull public abstract android.os.Bundle onGetMediaCollectionInfo(@NonNull android.os.Bundle);
+ method @NonNull public abstract android.os.ParcelFileDescriptor onOpenMedia(@NonNull String, @Nullable android.os.Bundle, @Nullable android.os.CancellationSignal) throws java.io.FileNotFoundException;
+ method @NonNull public abstract android.content.res.AssetFileDescriptor onOpenPreview(@NonNull String, @NonNull android.graphics.Point, @Nullable android.os.Bundle, @Nullable android.os.CancellationSignal) throws java.io.FileNotFoundException;
+ method @NonNull public android.database.Cursor onQueryAlbums(@NonNull android.os.Bundle);
+ method @NonNull public abstract android.database.Cursor onQueryDeletedMedia(@NonNull android.os.Bundle);
+ method @NonNull public abstract android.database.Cursor onQueryMedia(@NonNull android.os.Bundle);
+ method @NonNull public final android.os.ParcelFileDescriptor openFile(@NonNull android.net.Uri, @NonNull String) throws java.io.FileNotFoundException;
+ method @NonNull public final android.os.ParcelFileDescriptor openFile(@NonNull android.net.Uri, @NonNull String, @Nullable android.os.CancellationSignal) throws java.io.FileNotFoundException;
+ method @NonNull public final android.content.res.AssetFileDescriptor openTypedAssetFile(@NonNull android.net.Uri, @NonNull String, @Nullable android.os.Bundle) throws java.io.FileNotFoundException;
+ method @NonNull public final android.content.res.AssetFileDescriptor openTypedAssetFile(@NonNull android.net.Uri, @NonNull String, @Nullable android.os.Bundle, @Nullable android.os.CancellationSignal) throws java.io.FileNotFoundException;
+ method @NonNull public final android.database.Cursor query(@NonNull android.net.Uri, @Nullable String[], @Nullable android.os.Bundle, @Nullable android.os.CancellationSignal);
+ method @NonNull public final android.database.Cursor query(@NonNull android.net.Uri, @Nullable String[], @Nullable String, @Nullable String[], @Nullable String);
+ method @NonNull public final android.database.Cursor query(@NonNull android.net.Uri, @Nullable String[], @Nullable String, @Nullable String[], @Nullable String, @Nullable android.os.CancellationSignal);
+ method public final int update(@NonNull android.net.Uri, @NonNull android.content.ContentValues, @Nullable String, @Nullable String[]);
+ }
+
+ public abstract static class CloudMediaProvider.CloudMediaSurfaceController {
+ ctor public CloudMediaProvider.CloudMediaSurfaceController();
+ method public abstract void onConfigChange(@NonNull android.os.Bundle);
+ method public abstract void onDestroy();
+ method public abstract void onMediaPause(int);
+ method public abstract void onMediaPlay(int);
+ method public abstract void onMediaSeekTo(int, long);
+ method public abstract void onPlayerCreate();
+ method public abstract void onPlayerRelease();
+ method public abstract void onSurfaceChanged(int, int, int, int);
+ method public abstract void onSurfaceCreated(int, @NonNull android.view.Surface, @NonNull String);
+ method public abstract void onSurfaceDestroyed(int);
+ }
+
+ public static final class CloudMediaProvider.CloudMediaSurfaceStateChangedCallback {
+ method public void setPlaybackState(int, int, @Nullable android.os.Bundle);
+ field public static final int PLAYBACK_STATE_BUFFERING = 1; // 0x1
+ field public static final int PLAYBACK_STATE_COMPLETED = 5; // 0x5
+ field public static final int PLAYBACK_STATE_ERROR_PERMANENT_FAILURE = 7; // 0x7
+ field public static final int PLAYBACK_STATE_ERROR_RETRIABLE_FAILURE = 6; // 0x6
+ field public static final int PLAYBACK_STATE_MEDIA_SIZE_CHANGED = 8; // 0x8
+ field public static final int PLAYBACK_STATE_PAUSED = 4; // 0x4
+ field public static final int PLAYBACK_STATE_READY = 2; // 0x2
+ field public static final int PLAYBACK_STATE_STARTED = 3; // 0x3
+ }
+
+ public final class CloudMediaProviderContract {
+ field public static final String EXTRA_ALBUM_ID = "android.provider.extra.ALBUM_ID";
+ field public static final String EXTRA_LOOPING_PLAYBACK_ENABLED = "android.provider.extra.LOOPING_PLAYBACK_ENABLED";
+ field public static final String EXTRA_MEDIA_COLLECTION_ID = "android.provider.extra.MEDIA_COLLECTION_ID";
+ field public static final String EXTRA_PAGE_TOKEN = "android.provider.extra.PAGE_TOKEN";
+ field public static final String EXTRA_PREVIEW_THUMBNAIL = "android.provider.extra.PREVIEW_THUMBNAIL";
+ field public static final String EXTRA_SURFACE_CONTROLLER_AUDIO_MUTE_ENABLED = "android.provider.extra.SURFACE_CONTROLLER_AUDIO_MUTE_ENABLED";
+ field public static final String EXTRA_SYNC_GENERATION = "android.provider.extra.SYNC_GENERATION";
+ field public static final String MANAGE_CLOUD_MEDIA_PROVIDERS_PERMISSION = "com.android.providers.media.permission.MANAGE_CLOUD_MEDIA_PROVIDERS";
+ field public static final String PROVIDER_INTERFACE = "android.content.action.CLOUD_MEDIA_PROVIDER";
+ }
+
+ public static final class CloudMediaProviderContract.AlbumColumns {
+ field public static final String DATE_TAKEN_MILLIS = "date_taken_millis";
+ field public static final String DISPLAY_NAME = "display_name";
+ field public static final String ID = "id";
+ field public static final String MEDIA_COUNT = "album_media_count";
+ field public static final String MEDIA_COVER_ID = "album_media_cover_id";
+ }
+
+ public static final class CloudMediaProviderContract.MediaCollectionInfo {
+ field public static final String ACCOUNT_CONFIGURATION_INTENT = "account_configuration_intent";
+ field public static final String ACCOUNT_NAME = "account_name";
+ field public static final String LAST_MEDIA_SYNC_GENERATION = "last_media_sync_generation";
+ field public static final String MEDIA_COLLECTION_ID = "media_collection_id";
+ }
+
+ public static final class CloudMediaProviderContract.MediaColumns {
+ field public static final String DATE_TAKEN_MILLIS = "date_taken_millis";
+ field public static final String DURATION_MILLIS = "duration_millis";
+ field public static final String ID = "id";
+ field public static final String IS_FAVORITE = "is_favorite";
+ field public static final String MEDIA_STORE_URI = "media_store_uri";
+ field public static final String MIME_TYPE = "mime_type";
+ field public static final String SIZE_BYTES = "size_bytes";
+ field public static final String STANDARD_MIME_TYPE_EXTENSION = "standard_mime_type_extension";
+ field public static final int STANDARD_MIME_TYPE_EXTENSION_ANIMATED_WEBP = 3; // 0x3
+ field public static final int STANDARD_MIME_TYPE_EXTENSION_GIF = 1; // 0x1
+ field public static final int STANDARD_MIME_TYPE_EXTENSION_MOTION_PHOTO = 2; // 0x2
+ field public static final int STANDARD_MIME_TYPE_EXTENSION_NONE = 0; // 0x0
+ field public static final String SYNC_GENERATION = "sync_generation";
+ }
+
+ public final class MediaStore {
+ ctor public MediaStore();
+ method public static boolean canManageMedia(@NonNull android.content.Context);
+ method @NonNull public static android.app.PendingIntent createDeleteRequest(@NonNull android.content.ContentResolver, @NonNull java.util.Collection<android.net.Uri>);
+ method @NonNull public static android.app.PendingIntent createFavoriteRequest(@NonNull android.content.ContentResolver, @NonNull java.util.Collection<android.net.Uri>, boolean);
+ method @NonNull public static android.app.PendingIntent createTrashRequest(@NonNull android.content.ContentResolver, @NonNull java.util.Collection<android.net.Uri>, boolean);
+ method @NonNull public static android.app.PendingIntent createWriteRequest(@NonNull android.content.ContentResolver, @NonNull java.util.Collection<android.net.Uri>);
+ method @Nullable public static android.net.Uri getDocumentUri(@NonNull android.content.Context, @NonNull android.net.Uri);
+ method @NonNull public static java.util.Set<java.lang.String> getExternalVolumeNames(@NonNull android.content.Context);
+ method public static long getGeneration(@NonNull android.content.Context, @NonNull String);
+ method public static android.net.Uri getMediaScannerUri();
+ method @Nullable public static android.net.Uri getMediaUri(@NonNull android.content.Context, @NonNull android.net.Uri);
+ method @NonNull public static android.os.ParcelFileDescriptor getOriginalMediaFormatFileDescriptor(@NonNull android.content.Context, @NonNull android.os.ParcelFileDescriptor) throws java.io.IOException;
+ method public static int getPickImagesMaxLimit();
+ method @NonNull public static java.util.Set<java.lang.String> getRecentExternalVolumeNames(@NonNull android.content.Context);
+ method @Nullable public static android.net.Uri getRedactedUri(@NonNull android.content.ContentResolver, @NonNull android.net.Uri);
+ method @NonNull public static java.util.List<android.net.Uri> getRedactedUri(@NonNull android.content.ContentResolver, @NonNull java.util.List<android.net.Uri>);
+ method public static boolean getRequireOriginal(@NonNull android.net.Uri);
+ method @NonNull public static String getVersion(@NonNull android.content.Context);
+ method @NonNull public static String getVersion(@NonNull android.content.Context, @NonNull String);
+ method @NonNull public static String getVolumeName(@NonNull android.net.Uri);
+ method public static boolean isCurrentCloudMediaProviderAuthority(@NonNull android.content.ContentResolver, @NonNull String);
+ method public static boolean isCurrentSystemGallery(@NonNull android.content.ContentResolver, int, @NonNull String);
+ method public static boolean isSupportedCloudMediaProviderAuthority(@NonNull android.content.ContentResolver, @NonNull String);
+ method public static void notifyCloudMediaChangedEvent(@NonNull android.content.ContentResolver, @NonNull String, @NonNull String) throws java.lang.SecurityException;
+ method @Deprecated @NonNull public static android.net.Uri setIncludePending(@NonNull android.net.Uri);
+ method @NonNull public static android.net.Uri setRequireOriginal(@NonNull android.net.Uri);
+ field public static final String ACTION_IMAGE_CAPTURE = "android.media.action.IMAGE_CAPTURE";
+ field public static final String ACTION_IMAGE_CAPTURE_SECURE = "android.media.action.IMAGE_CAPTURE_SECURE";
+ field public static final String ACTION_PICK_IMAGES = "android.provider.action.PICK_IMAGES";
+ field public static final String ACTION_PICK_IMAGES_SETTINGS = "android.provider.action.PICK_IMAGES_SETTINGS";
+ field public static final String ACTION_REVIEW = "android.provider.action.REVIEW";
+ field public static final String ACTION_REVIEW_SECURE = "android.provider.action.REVIEW_SECURE";
+ field public static final String ACTION_VIDEO_CAPTURE = "android.media.action.VIDEO_CAPTURE";
+ field public static final String AUTHORITY = "media";
+ field @NonNull public static final android.net.Uri AUTHORITY_URI;
+ field public static final String EXTRA_ACCEPT_ORIGINAL_MEDIA_FORMAT = "android.provider.extra.ACCEPT_ORIGINAL_MEDIA_FORMAT";
+ field public static final String EXTRA_BRIGHTNESS = "android.provider.extra.BRIGHTNESS";
+ field public static final String EXTRA_DURATION_LIMIT = "android.intent.extra.durationLimit";
+ field public static final String EXTRA_FINISH_ON_COMPLETION = "android.intent.extra.finishOnCompletion";
+ field public static final String EXTRA_FULL_SCREEN = "android.intent.extra.fullScreen";
+ field public static final String EXTRA_MEDIA_ALBUM = "android.intent.extra.album";
+ field public static final String EXTRA_MEDIA_ARTIST = "android.intent.extra.artist";
+ field public static final String EXTRA_MEDIA_CAPABILITIES = "android.provider.extra.MEDIA_CAPABILITIES";
+ field public static final String EXTRA_MEDIA_CAPABILITIES_UID = "android.provider.extra.MEDIA_CAPABILITIES_UID";
+ field public static final String EXTRA_MEDIA_FOCUS = "android.intent.extra.focus";
+ field public static final String EXTRA_MEDIA_GENRE = "android.intent.extra.genre";
+ field @Deprecated public static final String EXTRA_MEDIA_PLAYLIST = "android.intent.extra.playlist";
+ field public static final String EXTRA_MEDIA_RADIO_CHANNEL = "android.intent.extra.radio_channel";
+ field public static final String EXTRA_MEDIA_TITLE = "android.intent.extra.title";
+ field public static final String EXTRA_OUTPUT = "output";
+ field public static final String EXTRA_PICK_IMAGES_MAX = "android.provider.extra.PICK_IMAGES_MAX";
+ field public static final String EXTRA_SCREEN_ORIENTATION = "android.intent.extra.screenOrientation";
+ field public static final String EXTRA_SHOW_ACTION_ICONS = "android.intent.extra.showActionIcons";
+ field public static final String EXTRA_SIZE_LIMIT = "android.intent.extra.sizeLimit";
+ field public static final String EXTRA_VIDEO_QUALITY = "android.intent.extra.videoQuality";
+ field public static final String INTENT_ACTION_MEDIA_PLAY_FROM_SEARCH = "android.media.action.MEDIA_PLAY_FROM_SEARCH";
+ field public static final String INTENT_ACTION_MEDIA_SEARCH = "android.intent.action.MEDIA_SEARCH";
+ field @Deprecated public static final String INTENT_ACTION_MUSIC_PLAYER = "android.intent.action.MUSIC_PLAYER";
+ field public static final String INTENT_ACTION_STILL_IMAGE_CAMERA = "android.media.action.STILL_IMAGE_CAMERA";
+ field public static final String INTENT_ACTION_STILL_IMAGE_CAMERA_SECURE = "android.media.action.STILL_IMAGE_CAMERA_SECURE";
+ field public static final String INTENT_ACTION_TEXT_OPEN_FROM_SEARCH = "android.media.action.TEXT_OPEN_FROM_SEARCH";
+ field public static final String INTENT_ACTION_VIDEO_CAMERA = "android.media.action.VIDEO_CAMERA";
+ field public static final String INTENT_ACTION_VIDEO_PLAY_FROM_SEARCH = "android.media.action.VIDEO_PLAY_FROM_SEARCH";
+ field public static final int MATCH_DEFAULT = 0; // 0x0
+ field public static final int MATCH_EXCLUDE = 2; // 0x2
+ field public static final int MATCH_INCLUDE = 1; // 0x1
+ field public static final int MATCH_ONLY = 3; // 0x3
+ field public static final String MEDIA_IGNORE_FILENAME = ".nomedia";
+ field public static final String MEDIA_SCANNER_VOLUME = "volume";
+ field public static final String META_DATA_REVIEW_GALLERY_PREWARM_SERVICE = "android.media.review_gallery_prewarm_service";
+ field public static final String META_DATA_STILL_IMAGE_CAMERA_PREWARM_SERVICE = "android.media.still_image_camera_preview_service";
+ field public static final String QUERY_ARG_INCLUDE_RECENTLY_UNMOUNTED_VOLUMES = "android:query-arg-recently-unmounted-volumes";
+ field public static final String QUERY_ARG_MATCH_FAVORITE = "android:query-arg-match-favorite";
+ field public static final String QUERY_ARG_MATCH_PENDING = "android:query-arg-match-pending";
+ field public static final String QUERY_ARG_MATCH_TRASHED = "android:query-arg-match-trashed";
+ field public static final String QUERY_ARG_RELATED_URI = "android:query-arg-related-uri";
+ field public static final String UNKNOWN_STRING = "<unknown>";
+ field public static final String VOLUME_EXTERNAL = "external";
+ field public static final String VOLUME_EXTERNAL_PRIMARY = "external_primary";
+ field public static final String VOLUME_INTERNAL = "internal";
+ }
+
+ public static final class MediaStore.Audio {
+ ctor public MediaStore.Audio();
+ method @Deprecated @Nullable public static String keyFor(@Nullable String);
+ }
+
+ public static interface MediaStore.Audio.AlbumColumns {
+ field public static final String ALBUM = "album";
+ field @Deprecated public static final String ALBUM_ART = "album_art";
+ field public static final String ALBUM_ID = "album_id";
+ field @Deprecated public static final String ALBUM_KEY = "album_key";
+ field public static final String ARTIST = "artist";
+ field public static final String ARTIST_ID = "artist_id";
+ field @Deprecated public static final String ARTIST_KEY = "artist_key";
+ field public static final String FIRST_YEAR = "minyear";
+ field public static final String LAST_YEAR = "maxyear";
+ field public static final String NUMBER_OF_SONGS = "numsongs";
+ field public static final String NUMBER_OF_SONGS_FOR_ARTIST = "numsongs_by_artist";
+ }
+
+ public static final class MediaStore.Audio.Albums implements android.provider.BaseColumns android.provider.MediaStore.Audio.AlbumColumns {
+ ctor public MediaStore.Audio.Albums();
+ method public static android.net.Uri getContentUri(String);
+ field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/albums";
+ field public static final String DEFAULT_SORT_ORDER = "album_key";
+ field public static final String ENTRY_CONTENT_TYPE = "vnd.android.cursor.item/album";
+ field public static final android.net.Uri EXTERNAL_CONTENT_URI;
+ field public static final android.net.Uri INTERNAL_CONTENT_URI;
+ }
+
+ public static interface MediaStore.Audio.ArtistColumns {
+ field public static final String ARTIST = "artist";
+ field @Deprecated public static final String ARTIST_KEY = "artist_key";
+ field public static final String NUMBER_OF_ALBUMS = "number_of_albums";
+ field public static final String NUMBER_OF_TRACKS = "number_of_tracks";
+ }
+
+ public static final class MediaStore.Audio.Artists implements android.provider.BaseColumns android.provider.MediaStore.Audio.ArtistColumns {
+ ctor public MediaStore.Audio.Artists();
+ method public static android.net.Uri getContentUri(String);
+ field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/artists";
+ field public static final String DEFAULT_SORT_ORDER = "artist_key";
+ field public static final String ENTRY_CONTENT_TYPE = "vnd.android.cursor.item/artist";
+ field public static final android.net.Uri EXTERNAL_CONTENT_URI;
+ field public static final android.net.Uri INTERNAL_CONTENT_URI;
+ }
+
+ public static final class MediaStore.Audio.Artists.Albums implements android.provider.BaseColumns android.provider.MediaStore.Audio.AlbumColumns {
+ ctor public MediaStore.Audio.Artists.Albums();
+ method public static android.net.Uri getContentUri(String, long);
+ }
+
+ public static interface MediaStore.Audio.AudioColumns extends android.provider.MediaStore.MediaColumns {
+ field public static final String ALBUM_ID = "album_id";
+ field @Deprecated public static final String ALBUM_KEY = "album_key";
+ field public static final String ARTIST_ID = "artist_id";
+ field @Deprecated public static final String ARTIST_KEY = "artist_key";
+ field public static final String BOOKMARK = "bookmark";
+ field public static final String GENRE = "genre";
+ field public static final String GENRE_ID = "genre_id";
+ field @Deprecated public static final String GENRE_KEY = "genre_key";
+ field public static final String IS_ALARM = "is_alarm";
+ field public static final String IS_AUDIOBOOK = "is_audiobook";
+ field public static final String IS_MUSIC = "is_music";
+ field public static final String IS_NOTIFICATION = "is_notification";
+ field public static final String IS_PODCAST = "is_podcast";
+ field public static final String IS_RECORDING = "is_recording";
+ field public static final String IS_RINGTONE = "is_ringtone";
+ field @Deprecated public static final String TITLE_KEY = "title_key";
+ field public static final String TITLE_RESOURCE_URI = "title_resource_uri";
+ field public static final String TRACK = "track";
+ field public static final String YEAR = "year";
+ }
+
+ public static final class MediaStore.Audio.Genres implements android.provider.BaseColumns android.provider.MediaStore.Audio.GenresColumns {
+ ctor public MediaStore.Audio.Genres();
+ method public static android.net.Uri getContentUri(String);
+ method public static android.net.Uri getContentUriForAudioId(String, int);
+ field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/genre";
+ field public static final String DEFAULT_SORT_ORDER = "name";
+ field public static final String ENTRY_CONTENT_TYPE = "vnd.android.cursor.item/genre";
+ field public static final android.net.Uri EXTERNAL_CONTENT_URI;
+ field public static final android.net.Uri INTERNAL_CONTENT_URI;
+ }
+
+ public static final class MediaStore.Audio.Genres.Members implements android.provider.MediaStore.Audio.AudioColumns {
+ ctor public MediaStore.Audio.Genres.Members();
+ method public static android.net.Uri getContentUri(String, long);
+ field public static final String AUDIO_ID = "audio_id";
+ field public static final String CONTENT_DIRECTORY = "members";
+ field public static final String DEFAULT_SORT_ORDER = "title_key";
+ field public static final String GENRE_ID = "genre_id";
+ }
+
+ public static interface MediaStore.Audio.GenresColumns {
+ field public static final String NAME = "name";
+ }
+
+ public static final class MediaStore.Audio.Media implements android.provider.MediaStore.Audio.AudioColumns {
+ ctor public MediaStore.Audio.Media();
+ method public static android.net.Uri getContentUri(String);
+ method @NonNull public static android.net.Uri getContentUri(@NonNull String, long);
+ method @Deprecated @Nullable public static android.net.Uri getContentUriForPath(@NonNull String);
+ field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/audio";
+ field public static final String DEFAULT_SORT_ORDER = "title_key";
+ field public static final String ENTRY_CONTENT_TYPE = "vnd.android.cursor.item/audio";
+ field public static final android.net.Uri EXTERNAL_CONTENT_URI;
+ field public static final String EXTRA_MAX_BYTES = "android.provider.MediaStore.extra.MAX_BYTES";
+ field public static final android.net.Uri INTERNAL_CONTENT_URI;
+ field public static final String RECORD_SOUND_ACTION = "android.provider.MediaStore.RECORD_SOUND";
+ }
+
+ @Deprecated public static final class MediaStore.Audio.Playlists implements android.provider.BaseColumns android.provider.MediaStore.Audio.PlaylistsColumns {
+ ctor @Deprecated public MediaStore.Audio.Playlists();
+ method @Deprecated public static android.net.Uri getContentUri(String);
+ field @Deprecated public static final String CONTENT_TYPE = "vnd.android.cursor.dir/playlist";
+ field @Deprecated public static final String DEFAULT_SORT_ORDER = "name";
+ field @Deprecated public static final String ENTRY_CONTENT_TYPE = "vnd.android.cursor.item/playlist";
+ field @Deprecated public static final android.net.Uri EXTERNAL_CONTENT_URI;
+ field @Deprecated public static final android.net.Uri INTERNAL_CONTENT_URI;
+ }
+
+ @Deprecated public static final class MediaStore.Audio.Playlists.Members implements android.provider.MediaStore.Audio.AudioColumns {
+ ctor @Deprecated public MediaStore.Audio.Playlists.Members();
+ method @Deprecated public static android.net.Uri getContentUri(String, long);
+ method @Deprecated public static boolean moveItem(android.content.ContentResolver, long, int, int);
+ field @Deprecated public static final String AUDIO_ID = "audio_id";
+ field @Deprecated public static final String CONTENT_DIRECTORY = "members";
+ field @Deprecated public static final String DEFAULT_SORT_ORDER = "play_order";
+ field @Deprecated public static final String PLAYLIST_ID = "playlist_id";
+ field @Deprecated public static final String PLAY_ORDER = "play_order";
+ field @Deprecated public static final String _ID = "_id";
+ }
+
+ @Deprecated public static interface MediaStore.Audio.PlaylistsColumns extends android.provider.MediaStore.MediaColumns {
+ field @Deprecated public static final String DATA = "_data";
+ field @Deprecated public static final String DATE_ADDED = "date_added";
+ field @Deprecated public static final String DATE_MODIFIED = "date_modified";
+ field @Deprecated public static final String NAME = "name";
+ }
+
+ public static final class MediaStore.Audio.Radio {
+ field public static final String ENTRY_CONTENT_TYPE = "vnd.android.cursor.item/radio";
+ }
+
+ public static interface MediaStore.DownloadColumns extends android.provider.MediaStore.MediaColumns {
+ field public static final String DOWNLOAD_URI = "download_uri";
+ field public static final String REFERER_URI = "referer_uri";
+ }
+
+ public static final class MediaStore.Downloads implements android.provider.MediaStore.DownloadColumns {
+ method @NonNull public static android.net.Uri getContentUri(@NonNull String);
+ method @NonNull public static android.net.Uri getContentUri(@NonNull String, long);
+ field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/download";
+ field @NonNull public static final android.net.Uri EXTERNAL_CONTENT_URI;
+ field @NonNull public static final android.net.Uri INTERNAL_CONTENT_URI;
+ }
+
+ public static final class MediaStore.Files {
+ ctor public MediaStore.Files();
+ method public static android.net.Uri getContentUri(String);
+ method public static android.net.Uri getContentUri(String, long);
+ }
+
+ public static interface MediaStore.Files.FileColumns extends android.provider.MediaStore.MediaColumns {
+ field public static final String MEDIA_TYPE = "media_type";
+ field public static final int MEDIA_TYPE_AUDIO = 2; // 0x2
+ field public static final int MEDIA_TYPE_DOCUMENT = 6; // 0x6
+ field public static final int MEDIA_TYPE_IMAGE = 1; // 0x1
+ field public static final int MEDIA_TYPE_NONE = 0; // 0x0
+ field @Deprecated public static final int MEDIA_TYPE_PLAYLIST = 4; // 0x4
+ field public static final int MEDIA_TYPE_SUBTITLE = 5; // 0x5
+ field public static final int MEDIA_TYPE_VIDEO = 3; // 0x3
+ field public static final String MIME_TYPE = "mime_type";
+ field public static final String PARENT = "parent";
+ }
+
+ public static final class MediaStore.Images {
+ ctor public MediaStore.Images();
+ }
+
+ public static interface MediaStore.Images.ImageColumns extends android.provider.MediaStore.MediaColumns {
+ field public static final String DESCRIPTION = "description";
+ field public static final String EXPOSURE_TIME = "exposure_time";
+ field public static final String F_NUMBER = "f_number";
+ field public static final String ISO = "iso";
+ field public static final String IS_PRIVATE = "isprivate";
+ field @Deprecated public static final String LATITUDE = "latitude";
+ field @Deprecated public static final String LONGITUDE = "longitude";
+ field @Deprecated public static final String MINI_THUMB_MAGIC = "mini_thumb_magic";
+ field @Deprecated public static final String PICASA_ID = "picasa_id";
+ field public static final String SCENE_CAPTURE_TYPE = "scene_capture_type";
+ }
+
+ public static final class MediaStore.Images.Media implements android.provider.MediaStore.Images.ImageColumns {
+ ctor public MediaStore.Images.Media();
+ method @Deprecated public static android.graphics.Bitmap getBitmap(android.content.ContentResolver, android.net.Uri) throws java.io.FileNotFoundException, java.io.IOException;
+ method public static android.net.Uri getContentUri(String);
+ method @NonNull public static android.net.Uri getContentUri(@NonNull String, long);
+ method @Deprecated public static String insertImage(android.content.ContentResolver, String, String, String) throws java.io.FileNotFoundException;
+ method @Deprecated public static String insertImage(android.content.ContentResolver, android.graphics.Bitmap, String, String);
+ method @Deprecated public static android.database.Cursor query(android.content.ContentResolver, android.net.Uri, String[]);
+ method @Deprecated public static android.database.Cursor query(android.content.ContentResolver, android.net.Uri, String[], String, String);
+ method @Deprecated public static android.database.Cursor query(android.content.ContentResolver, android.net.Uri, String[], String, String[], String);
+ field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/image";
+ field public static final String DEFAULT_SORT_ORDER = "bucket_display_name";
+ field public static final android.net.Uri EXTERNAL_CONTENT_URI;
+ field public static final android.net.Uri INTERNAL_CONTENT_URI;
+ }
+
+ @Deprecated public static class MediaStore.Images.Thumbnails implements android.provider.BaseColumns {
+ ctor @Deprecated public MediaStore.Images.Thumbnails();
+ method @Deprecated public static void cancelThumbnailRequest(android.content.ContentResolver, long);
+ method @Deprecated public static void cancelThumbnailRequest(android.content.ContentResolver, long, long);
+ method @Deprecated public static android.net.Uri getContentUri(String);
+ method @Deprecated @NonNull public static android.util.Size getKindSize(int);
+ method @Deprecated public static android.graphics.Bitmap getThumbnail(android.content.ContentResolver, long, int, android.graphics.BitmapFactory.Options);
+ method @Deprecated public static android.graphics.Bitmap getThumbnail(android.content.ContentResolver, long, long, int, android.graphics.BitmapFactory.Options);
+ method @Deprecated public static final android.database.Cursor query(android.content.ContentResolver, android.net.Uri, String[]);
+ method @Deprecated public static final android.database.Cursor queryMiniThumbnail(android.content.ContentResolver, long, int, String[]);
+ method @Deprecated public static final android.database.Cursor queryMiniThumbnails(android.content.ContentResolver, android.net.Uri, int, String[]);
+ field @Deprecated public static final String DATA = "_data";
+ field @Deprecated public static final String DEFAULT_SORT_ORDER = "image_id ASC";
+ field @Deprecated public static final android.net.Uri EXTERNAL_CONTENT_URI;
+ field @Deprecated public static final int FULL_SCREEN_KIND = 2; // 0x2
+ field @Deprecated public static final String HEIGHT = "height";
+ field @Deprecated public static final String IMAGE_ID = "image_id";
+ field @Deprecated public static final android.net.Uri INTERNAL_CONTENT_URI;
+ field @Deprecated public static final String KIND = "kind";
+ field @Deprecated public static final int MICRO_KIND = 3; // 0x3
+ field @Deprecated public static final int MINI_KIND = 1; // 0x1
+ field @Deprecated public static final String THUMB_DATA = "thumb_data";
+ field @Deprecated public static final String WIDTH = "width";
+ }
+
+ public static interface MediaStore.MediaColumns extends android.provider.BaseColumns {
+ field public static final String ALBUM = "album";
+ field public static final String ALBUM_ARTIST = "album_artist";
+ field public static final String ARTIST = "artist";
+ field public static final String AUTHOR = "author";
+ field public static final String BITRATE = "bitrate";
+ field public static final String BUCKET_DISPLAY_NAME = "bucket_display_name";
+ field public static final String BUCKET_ID = "bucket_id";
+ field public static final String CAPTURE_FRAMERATE = "capture_framerate";
+ field public static final String CD_TRACK_NUMBER = "cd_track_number";
+ field public static final String COMPILATION = "compilation";
+ field public static final String COMPOSER = "composer";
+ field public static final String DATA = "_data";
+ field public static final String DATE_ADDED = "date_added";
+ field public static final String DATE_EXPIRES = "date_expires";
+ field public static final String DATE_MODIFIED = "date_modified";
+ field public static final String DATE_TAKEN = "datetaken";
+ field public static final String DISC_NUMBER = "disc_number";
+ field public static final String DISPLAY_NAME = "_display_name";
+ field public static final String DOCUMENT_ID = "document_id";
+ field public static final String DURATION = "duration";
+ field public static final String GENERATION_ADDED = "generation_added";
+ field public static final String GENERATION_MODIFIED = "generation_modified";
+ field public static final String GENRE = "genre";
+ field public static final String HEIGHT = "height";
+ field public static final String INSTANCE_ID = "instance_id";
+ field public static final String IS_DOWNLOAD = "is_download";
+ field public static final String IS_DRM = "is_drm";
+ field public static final String IS_FAVORITE = "is_favorite";
+ field public static final String IS_PENDING = "is_pending";
+ field public static final String IS_TRASHED = "is_trashed";
+ field public static final String MIME_TYPE = "mime_type";
+ field public static final String NUM_TRACKS = "num_tracks";
+ field public static final String ORIENTATION = "orientation";
+ field public static final String ORIGINAL_DOCUMENT_ID = "original_document_id";
+ field public static final String OWNER_PACKAGE_NAME = "owner_package_name";
+ field public static final String RELATIVE_PATH = "relative_path";
+ field public static final String RESOLUTION = "resolution";
+ field public static final String SIZE = "_size";
+ field public static final String TITLE = "title";
+ field public static final String VOLUME_NAME = "volume_name";
+ field public static final String WIDTH = "width";
+ field public static final String WRITER = "writer";
+ field public static final String XMP = "xmp";
+ field public static final String YEAR = "year";
+ }
+
+ public static class MediaStore.PickerMediaColumns {
+ field public static final String DATA = "_data";
+ field public static final String DATE_TAKEN = "datetaken";
+ field public static final String DISPLAY_NAME = "_display_name";
+ field public static final String DURATION_MILLIS = "duration";
+ field public static final String MIME_TYPE = "mime_type";
+ field public static final String SIZE = "_size";
+ }
+
+ public static final class MediaStore.Video {
+ ctor public MediaStore.Video();
+ method @Deprecated public static android.database.Cursor query(android.content.ContentResolver, android.net.Uri, String[]);
+ field public static final String DEFAULT_SORT_ORDER = "_display_name";
+ }
+
+ public static final class MediaStore.Video.Media implements android.provider.MediaStore.Video.VideoColumns {
+ ctor public MediaStore.Video.Media();
+ method public static android.net.Uri getContentUri(String);
+ method @NonNull public static android.net.Uri getContentUri(@NonNull String, long);
+ field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/video";
+ field public static final String DEFAULT_SORT_ORDER = "title";
+ field public static final android.net.Uri EXTERNAL_CONTENT_URI;
+ field public static final android.net.Uri INTERNAL_CONTENT_URI;
+ }
+
+ @Deprecated public static class MediaStore.Video.Thumbnails implements android.provider.BaseColumns {
+ ctor @Deprecated public MediaStore.Video.Thumbnails();
+ method @Deprecated public static void cancelThumbnailRequest(android.content.ContentResolver, long);
+ method @Deprecated public static void cancelThumbnailRequest(android.content.ContentResolver, long, long);
+ method @Deprecated public static android.net.Uri getContentUri(String);
+ method @Deprecated @NonNull public static android.util.Size getKindSize(int);
+ method @Deprecated public static android.graphics.Bitmap getThumbnail(android.content.ContentResolver, long, int, android.graphics.BitmapFactory.Options);
+ method @Deprecated public static android.graphics.Bitmap getThumbnail(android.content.ContentResolver, long, long, int, android.graphics.BitmapFactory.Options);
+ field @Deprecated public static final String DATA = "_data";
+ field @Deprecated public static final String DEFAULT_SORT_ORDER = "video_id ASC";
+ field @Deprecated public static final android.net.Uri EXTERNAL_CONTENT_URI;
+ field @Deprecated public static final int FULL_SCREEN_KIND = 2; // 0x2
+ field @Deprecated public static final String HEIGHT = "height";
+ field @Deprecated public static final android.net.Uri INTERNAL_CONTENT_URI;
+ field @Deprecated public static final String KIND = "kind";
+ field @Deprecated public static final int MICRO_KIND = 3; // 0x3
+ field @Deprecated public static final int MINI_KIND = 1; // 0x1
+ field @Deprecated public static final String VIDEO_ID = "video_id";
+ field @Deprecated public static final String WIDTH = "width";
+ }
+
+ public static interface MediaStore.Video.VideoColumns extends android.provider.MediaStore.MediaColumns {
+ field public static final String BOOKMARK = "bookmark";
+ field public static final String CATEGORY = "category";
+ field public static final String COLOR_RANGE = "color_range";
+ field public static final String COLOR_STANDARD = "color_standard";
+ field public static final String COLOR_TRANSFER = "color_transfer";
+ field public static final String DESCRIPTION = "description";
+ field public static final String IS_PRIVATE = "isprivate";
+ field public static final String LANGUAGE = "language";
+ field @Deprecated public static final String LATITUDE = "latitude";
+ field @Deprecated public static final String LONGITUDE = "longitude";
+ field @Deprecated public static final String MINI_THUMB_MAGIC = "mini_thumb_magic";
+ field public static final String TAGS = "tags";
+ }
+
+}
+
diff --git a/extensions/3/public/api/framework-ondevicepersonalization-removed.txt b/extensions/3/public/api/framework-ondevicepersonalization-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/public/api/framework-ondevicepersonalization-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/public/api/framework-ondevicepersonalization.txt b/extensions/3/public/api/framework-ondevicepersonalization.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/public/api/framework-ondevicepersonalization.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/public/api/framework-permission-removed.txt b/extensions/3/public/api/framework-permission-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/public/api/framework-permission-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/public/api/framework-permission-s-removed.txt b/extensions/3/public/api/framework-permission-s-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/public/api/framework-permission-s-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/public/api/framework-permission-s.txt b/extensions/3/public/api/framework-permission-s.txt
new file mode 100644
index 000000000..4ecc98980
--- /dev/null
+++ b/extensions/3/public/api/framework-permission-s.txt
@@ -0,0 +1,19 @@
+// Signature format: 2.0
+package android.app.role {
+
+ public final class RoleManager {
+ method @NonNull public android.content.Intent createRequestRoleIntent(@NonNull String);
+ method public boolean isRoleAvailable(@NonNull String);
+ method public boolean isRoleHeld(@NonNull String);
+ field public static final String ROLE_ASSISTANT = "android.app.role.ASSISTANT";
+ field public static final String ROLE_BROWSER = "android.app.role.BROWSER";
+ field public static final String ROLE_CALL_REDIRECTION = "android.app.role.CALL_REDIRECTION";
+ field public static final String ROLE_CALL_SCREENING = "android.app.role.CALL_SCREENING";
+ field public static final String ROLE_DIALER = "android.app.role.DIALER";
+ field public static final String ROLE_EMERGENCY = "android.app.role.EMERGENCY";
+ field public static final String ROLE_HOME = "android.app.role.HOME";
+ field public static final String ROLE_SMS = "android.app.role.SMS";
+ }
+
+}
+
diff --git a/extensions/3/public/api/framework-permission.txt b/extensions/3/public/api/framework-permission.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/public/api/framework-permission.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/public/api/framework-scheduling-removed.txt b/extensions/3/public/api/framework-scheduling-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/public/api/framework-scheduling-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/public/api/framework-scheduling.txt b/extensions/3/public/api/framework-scheduling.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/public/api/framework-scheduling.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/public/api/framework-sdkextensions-removed.txt b/extensions/3/public/api/framework-sdkextensions-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/public/api/framework-sdkextensions-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/public/api/framework-sdkextensions.txt b/extensions/3/public/api/framework-sdkextensions.txt
new file mode 100644
index 000000000..180afea04
--- /dev/null
+++ b/extensions/3/public/api/framework-sdkextensions.txt
@@ -0,0 +1,10 @@
+// Signature format: 2.0
+package android.os.ext {
+
+ public class SdkExtensions {
+ method @NonNull public static java.util.Map<java.lang.Integer,java.lang.Integer> getAllExtensionVersions();
+ method public static int getExtensionVersion(int);
+ }
+
+}
+
diff --git a/extensions/3/public/api/framework-sdksandbox-removed.txt b/extensions/3/public/api/framework-sdksandbox-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/public/api/framework-sdksandbox-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/public/api/framework-sdksandbox.txt b/extensions/3/public/api/framework-sdksandbox.txt
new file mode 100644
index 000000000..25bbd9622
--- /dev/null
+++ b/extensions/3/public/api/framework-sdksandbox.txt
@@ -0,0 +1,11 @@
+// Signature format: 2.0
+package android.app.sdksandbox {
+
+ public final class SdkSandboxManager {
+ method public static int getSdkSandboxState();
+ field public static final int SDK_SANDBOX_STATE_DISABLED = 0; // 0x0
+ field public static final int SDK_SANDBOX_STATE_ENABLED_PROCESS_ISOLATION = 2; // 0x2
+ }
+
+}
+
diff --git a/extensions/3/public/api/framework-statsd-removed.txt b/extensions/3/public/api/framework-statsd-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/public/api/framework-statsd-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/public/api/framework-statsd.txt b/extensions/3/public/api/framework-statsd.txt
new file mode 100644
index 000000000..a65569347
--- /dev/null
+++ b/extensions/3/public/api/framework-statsd.txt
@@ -0,0 +1,12 @@
+// Signature format: 2.0
+package android.util {
+
+ public final class StatsLog {
+ method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public static boolean logBinaryPushStateChanged(@NonNull String, long, int, int, @NonNull long[]);
+ method public static boolean logEvent(int);
+ method public static boolean logStart(int);
+ method public static boolean logStop(int);
+ }
+
+}
+
diff --git a/extensions/3/public/api/framework-tethering-removed.txt b/extensions/3/public/api/framework-tethering-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/public/api/framework-tethering-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/public/api/framework-tethering.txt b/extensions/3/public/api/framework-tethering.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/public/api/framework-tethering.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/public/api/framework-uwb-removed.txt b/extensions/3/public/api/framework-uwb-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/public/api/framework-uwb-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/public/api/framework-uwb.txt b/extensions/3/public/api/framework-uwb.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/public/api/framework-uwb.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/public/api/framework-wifi-removed.txt b/extensions/3/public/api/framework-wifi-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/public/api/framework-wifi-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/public/api/framework-wifi.txt b/extensions/3/public/api/framework-wifi.txt
new file mode 100644
index 000000000..f78a462c9
--- /dev/null
+++ b/extensions/3/public/api/framework-wifi.txt
@@ -0,0 +1,1588 @@
+// Signature format: 2.0
+package android.net.wifi {
+
+ public abstract class EasyConnectStatusCallback {
+ field public static final int EASY_CONNECT_EVENT_FAILURE_AUTHENTICATION = -2; // 0xfffffffe
+ field public static final int EASY_CONNECT_EVENT_FAILURE_BUSY = -5; // 0xfffffffb
+ field public static final int EASY_CONNECT_EVENT_FAILURE_CANNOT_FIND_NETWORK = -10; // 0xfffffff6
+ field public static final int EASY_CONNECT_EVENT_FAILURE_CONFIGURATION = -4; // 0xfffffffc
+ field public static final int EASY_CONNECT_EVENT_FAILURE_ENROLLEE_AUTHENTICATION = -11; // 0xfffffff5
+ field public static final int EASY_CONNECT_EVENT_FAILURE_ENROLLEE_FAILED_TO_SCAN_NETWORK_CHANNEL = -14; // 0xfffffff2
+ field public static final int EASY_CONNECT_EVENT_FAILURE_ENROLLEE_REJECTED_CONFIGURATION = -12; // 0xfffffff4
+ field public static final int EASY_CONNECT_EVENT_FAILURE_GENERIC = -7; // 0xfffffff9
+ field public static final int EASY_CONNECT_EVENT_FAILURE_INVALID_NETWORK = -9; // 0xfffffff7
+ field public static final int EASY_CONNECT_EVENT_FAILURE_INVALID_URI = -1; // 0xffffffff
+ field public static final int EASY_CONNECT_EVENT_FAILURE_NOT_COMPATIBLE = -3; // 0xfffffffd
+ field public static final int EASY_CONNECT_EVENT_FAILURE_NOT_SUPPORTED = -8; // 0xfffffff8
+ field public static final int EASY_CONNECT_EVENT_FAILURE_TIMEOUT = -6; // 0xfffffffa
+ field public static final int EASY_CONNECT_EVENT_FAILURE_URI_GENERATION = -13; // 0xfffffff3
+ }
+
+ public final class MloLink implements android.os.Parcelable {
+ ctor public MloLink();
+ method public int describeContents();
+ method @Nullable public android.net.MacAddress getApMacAddress();
+ method public int getBand();
+ method @IntRange(from=1) public int getChannel();
+ method @IntRange(from=android.net.wifi.MloLink.INVALID_MLO_LINK_ID, to=0xf) public int getLinkId();
+ method @Nullable public android.net.MacAddress getStaMacAddress();
+ method public int getState();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.MloLink> CREATOR;
+ field public static final int INVALID_MLO_LINK_ID = -1; // 0xffffffff
+ field public static final int MLO_LINK_STATE_ACTIVE = 3; // 0x3
+ field public static final int MLO_LINK_STATE_IDLE = 2; // 0x2
+ field public static final int MLO_LINK_STATE_INVALID = 0; // 0x0
+ field public static final int MLO_LINK_STATE_UNASSOCIATED = 1; // 0x1
+ }
+
+ public final class ScanResult implements android.os.Parcelable {
+ ctor public ScanResult(@NonNull android.net.wifi.ScanResult);
+ ctor public ScanResult();
+ method public static int convertChannelToFrequencyMhzIfSupported(int, int);
+ method public static int convertFrequencyMhzToChannelIfSupported(int);
+ method public int describeContents();
+ method @NonNull public java.util.List<android.net.wifi.MloLink> getAffiliatedMloLinks();
+ method @Nullable public android.net.MacAddress getApMldMacAddress();
+ method @IntRange(from=android.net.wifi.MloLink.INVALID_MLO_LINK_ID, to=0xf) public int getApMloLinkId();
+ method @NonNull public java.util.List<android.net.wifi.ScanResult.InformationElement> getInformationElements();
+ method @NonNull public int[] getSecurityTypes();
+ method @Nullable public android.net.wifi.WifiSsid getWifiSsid();
+ method public int getWifiStandard();
+ method public boolean is80211mcResponder();
+ method public boolean isPasspointNetwork();
+ method public void writeToParcel(android.os.Parcel, int);
+ field public String BSSID;
+ field public static final int CHANNEL_WIDTH_160MHZ = 3; // 0x3
+ field public static final int CHANNEL_WIDTH_20MHZ = 0; // 0x0
+ field public static final int CHANNEL_WIDTH_320MHZ = 5; // 0x5
+ field public static final int CHANNEL_WIDTH_40MHZ = 1; // 0x1
+ field public static final int CHANNEL_WIDTH_80MHZ = 2; // 0x2
+ field public static final int CHANNEL_WIDTH_80MHZ_PLUS_MHZ = 4; // 0x4
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.ScanResult> CREATOR;
+ field public static final int PREAMBLE_EHT = 4; // 0x4
+ field public static final int PREAMBLE_HE = 3; // 0x3
+ field public static final int PREAMBLE_HT = 1; // 0x1
+ field public static final int PREAMBLE_LEGACY = 0; // 0x0
+ field public static final int PREAMBLE_VHT = 2; // 0x2
+ field @Deprecated public String SSID;
+ field public static final int UNSPECIFIED = -1; // 0xffffffff
+ field public static final int WIFI_BAND_24_GHZ = 1; // 0x1
+ field public static final int WIFI_BAND_5_GHZ = 2; // 0x2
+ field public static final int WIFI_BAND_60_GHZ = 16; // 0x10
+ field public static final int WIFI_BAND_6_GHZ = 8; // 0x8
+ field public static final int WIFI_STANDARD_11AC = 5; // 0x5
+ field public static final int WIFI_STANDARD_11AD = 7; // 0x7
+ field public static final int WIFI_STANDARD_11AX = 6; // 0x6
+ field public static final int WIFI_STANDARD_11BE = 8; // 0x8
+ field public static final int WIFI_STANDARD_11N = 4; // 0x4
+ field public static final int WIFI_STANDARD_LEGACY = 1; // 0x1
+ field public static final int WIFI_STANDARD_UNKNOWN = 0; // 0x0
+ field public String capabilities;
+ field public int centerFreq0;
+ field public int centerFreq1;
+ field public int channelWidth;
+ field public int frequency;
+ field public int level;
+ field @Deprecated public CharSequence operatorFriendlyName;
+ field public long timestamp;
+ field @Deprecated public CharSequence venueName;
+ }
+
+ public static class ScanResult.InformationElement implements android.os.Parcelable {
+ ctor public ScanResult.InformationElement(int, int, @NonNull byte[]);
+ ctor public ScanResult.InformationElement(@NonNull android.net.wifi.ScanResult.InformationElement);
+ method public int describeContents();
+ method @NonNull public java.nio.ByteBuffer getBytes();
+ method public int getId();
+ method public int getIdExt();
+ method public void writeToParcel(android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.ScanResult.InformationElement> CREATOR;
+ }
+
+ public final class SoftApConfiguration implements android.os.Parcelable {
+ method public int describeContents();
+ method @Nullable public android.net.MacAddress getBssid();
+ method @Nullable public String getPassphrase();
+ method public int getSecurityType();
+ method @Deprecated @Nullable public String getSsid();
+ method @Nullable public android.net.wifi.WifiSsid getWifiSsid();
+ method public boolean isHiddenSsid();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.SoftApConfiguration> CREATOR;
+ field public static final int SECURITY_TYPE_OPEN = 0; // 0x0
+ field public static final int SECURITY_TYPE_WPA2_PSK = 1; // 0x1
+ field public static final int SECURITY_TYPE_WPA3_OWE = 5; // 0x5
+ field public static final int SECURITY_TYPE_WPA3_OWE_TRANSITION = 4; // 0x4
+ field public static final int SECURITY_TYPE_WPA3_SAE = 3; // 0x3
+ field public static final int SECURITY_TYPE_WPA3_SAE_TRANSITION = 2; // 0x2
+ }
+
+ public enum SupplicantState implements android.os.Parcelable {
+ method public int describeContents();
+ method public static boolean isValidState(android.net.wifi.SupplicantState);
+ method public void writeToParcel(android.os.Parcel, int);
+ enum_constant public static final android.net.wifi.SupplicantState ASSOCIATED;
+ enum_constant public static final android.net.wifi.SupplicantState ASSOCIATING;
+ enum_constant public static final android.net.wifi.SupplicantState AUTHENTICATING;
+ enum_constant public static final android.net.wifi.SupplicantState COMPLETED;
+ enum_constant public static final android.net.wifi.SupplicantState DISCONNECTED;
+ enum_constant public static final android.net.wifi.SupplicantState DORMANT;
+ enum_constant public static final android.net.wifi.SupplicantState FOUR_WAY_HANDSHAKE;
+ enum_constant public static final android.net.wifi.SupplicantState GROUP_HANDSHAKE;
+ enum_constant public static final android.net.wifi.SupplicantState INACTIVE;
+ enum_constant public static final android.net.wifi.SupplicantState INTERFACE_DISABLED;
+ enum_constant public static final android.net.wifi.SupplicantState INVALID;
+ enum_constant public static final android.net.wifi.SupplicantState SCANNING;
+ enum_constant public static final android.net.wifi.SupplicantState UNINITIALIZED;
+ }
+
+ @Deprecated public class WifiConfiguration implements android.os.Parcelable {
+ ctor @Deprecated public WifiConfiguration();
+ ctor @Deprecated public WifiConfiguration(@NonNull android.net.wifi.WifiConfiguration);
+ method public int describeContents();
+ method @Deprecated public android.net.ProxyInfo getHttpProxy();
+ method @Deprecated @NonNull public String getKey();
+ method @Deprecated public int getMacRandomizationSetting();
+ method @Deprecated @NonNull public android.net.MacAddress getRandomizedMacAddress();
+ method @Deprecated public boolean isDppConfigurator();
+ method @Deprecated public boolean isPasspoint();
+ method @Deprecated public void setHttpProxy(android.net.ProxyInfo);
+ method @Deprecated public void setIpConfiguration(@Nullable android.net.IpConfiguration);
+ method @Deprecated public void setMacRandomizationSetting(int);
+ method @Deprecated public void setSecurityParams(int);
+ method public void writeToParcel(android.os.Parcel, int);
+ field @Deprecated public String BSSID;
+ field @Deprecated public String FQDN;
+ field @Deprecated public static final int RANDOMIZATION_AUTO = 3; // 0x3
+ field @Deprecated public static final int RANDOMIZATION_NONE = 0; // 0x0
+ field @Deprecated public static final int RANDOMIZATION_NON_PERSISTENT = 2; // 0x2
+ field @Deprecated public static final int RANDOMIZATION_PERSISTENT = 1; // 0x1
+ field @Deprecated public static final int SECURITY_TYPE_DPP = 13; // 0xd
+ field @Deprecated public static final int SECURITY_TYPE_EAP = 3; // 0x3
+ field @Deprecated public static final int SECURITY_TYPE_EAP_SUITE_B = 5; // 0x5
+ field @Deprecated public static final int SECURITY_TYPE_EAP_WPA3_ENTERPRISE = 9; // 0x9
+ field @Deprecated public static final int SECURITY_TYPE_EAP_WPA3_ENTERPRISE_192_BIT = 5; // 0x5
+ field @Deprecated public static final int SECURITY_TYPE_OPEN = 0; // 0x0
+ field @Deprecated public static final int SECURITY_TYPE_OWE = 6; // 0x6
+ field @Deprecated public static final int SECURITY_TYPE_PSK = 2; // 0x2
+ field @Deprecated public static final int SECURITY_TYPE_SAE = 4; // 0x4
+ field @Deprecated public static final int SECURITY_TYPE_WAPI_CERT = 8; // 0x8
+ field @Deprecated public static final int SECURITY_TYPE_WAPI_PSK = 7; // 0x7
+ field @Deprecated public static final int SECURITY_TYPE_WEP = 1; // 0x1
+ field @Deprecated public String SSID;
+ field @Deprecated @NonNull public java.util.BitSet allowedAuthAlgorithms;
+ field @Deprecated @NonNull public java.util.BitSet allowedGroupCiphers;
+ field @Deprecated @NonNull public java.util.BitSet allowedGroupManagementCiphers;
+ field @Deprecated @NonNull public java.util.BitSet allowedKeyManagement;
+ field @Deprecated @NonNull public java.util.BitSet allowedPairwiseCiphers;
+ field @Deprecated @NonNull public java.util.BitSet allowedProtocols;
+ field @Deprecated @NonNull public java.util.BitSet allowedSuiteBCiphers;
+ field @Deprecated public android.net.wifi.WifiEnterpriseConfig enterpriseConfig;
+ field @Deprecated public boolean hiddenSSID;
+ field @Deprecated public boolean isHomeProviderNetwork;
+ field @Deprecated public int networkId;
+ field @Deprecated public String preSharedKey;
+ field @Deprecated public int priority;
+ field @Deprecated public String providerFriendlyName;
+ field @Deprecated public long[] roamingConsortiumIds;
+ field @Deprecated public int status;
+ field @Deprecated public String[] wepKeys;
+ field @Deprecated public int wepTxKeyIndex;
+ }
+
+ @Deprecated public static class WifiConfiguration.AuthAlgorithm {
+ field @Deprecated public static final int LEAP = 2; // 0x2
+ field @Deprecated public static final int OPEN = 0; // 0x0
+ field @Deprecated public static final int SAE = 3; // 0x3
+ field @Deprecated public static final int SHARED = 1; // 0x1
+ field @Deprecated public static final String[] strings;
+ field @Deprecated public static final String varName = "auth_alg";
+ }
+
+ @Deprecated public static class WifiConfiguration.GroupCipher {
+ field @Deprecated public static final int CCMP = 3; // 0x3
+ field @Deprecated public static final int GCMP_128 = 7; // 0x7
+ field @Deprecated public static final int GCMP_256 = 5; // 0x5
+ field @Deprecated public static final int SMS4 = 6; // 0x6
+ field @Deprecated public static final int TKIP = 2; // 0x2
+ field @Deprecated public static final int WEP104 = 1; // 0x1
+ field @Deprecated public static final int WEP40 = 0; // 0x0
+ field @Deprecated public static final String[] strings;
+ field @Deprecated public static final String varName = "group";
+ }
+
+ @Deprecated public static class WifiConfiguration.GroupMgmtCipher {
+ field @Deprecated public static final int BIP_CMAC_256 = 0; // 0x0
+ field @Deprecated public static final int BIP_GMAC_128 = 1; // 0x1
+ field @Deprecated public static final int BIP_GMAC_256 = 2; // 0x2
+ }
+
+ @Deprecated public static class WifiConfiguration.KeyMgmt {
+ field @Deprecated public static final int IEEE8021X = 3; // 0x3
+ field @Deprecated public static final int NONE = 0; // 0x0
+ field @Deprecated public static final int OWE = 9; // 0x9
+ field @Deprecated public static final int SAE = 8; // 0x8
+ field @Deprecated public static final int SUITE_B_192 = 10; // 0xa
+ field @Deprecated public static final int WPA_EAP = 2; // 0x2
+ field @Deprecated public static final int WPA_PSK = 1; // 0x1
+ field @Deprecated public static final String[] strings;
+ field @Deprecated public static final String varName = "key_mgmt";
+ }
+
+ @Deprecated public static class WifiConfiguration.PairwiseCipher {
+ field @Deprecated public static final int CCMP = 2; // 0x2
+ field @Deprecated public static final int GCMP_128 = 5; // 0x5
+ field @Deprecated public static final int GCMP_256 = 3; // 0x3
+ field @Deprecated public static final int NONE = 0; // 0x0
+ field @Deprecated public static final int SMS4 = 4; // 0x4
+ field @Deprecated public static final int TKIP = 1; // 0x1
+ field @Deprecated public static final String[] strings;
+ field @Deprecated public static final String varName = "pairwise";
+ }
+
+ @Deprecated public static class WifiConfiguration.Protocol {
+ field @Deprecated public static final int RSN = 1; // 0x1
+ field @Deprecated public static final int WAPI = 3; // 0x3
+ field @Deprecated public static final int WPA = 0; // 0x0
+ field @Deprecated public static final String[] strings;
+ field @Deprecated public static final String varName = "proto";
+ }
+
+ @Deprecated public static class WifiConfiguration.Status {
+ field @Deprecated public static final int CURRENT = 0; // 0x0
+ field @Deprecated public static final int DISABLED = 1; // 0x1
+ field @Deprecated public static final int ENABLED = 2; // 0x2
+ field @Deprecated public static final String[] strings;
+ }
+
+ public class WifiEnterpriseConfig implements android.os.Parcelable {
+ ctor public WifiEnterpriseConfig();
+ ctor public WifiEnterpriseConfig(android.net.wifi.WifiEnterpriseConfig);
+ method public int describeContents();
+ method public void enableTrustOnFirstUse(boolean);
+ method public String getAltSubjectMatch();
+ method public String getAnonymousIdentity();
+ method @Nullable public java.security.cert.X509Certificate getCaCertificate();
+ method @Nullable public java.security.cert.X509Certificate[] getCaCertificates();
+ method public java.security.cert.X509Certificate getClientCertificate();
+ method @Nullable public java.security.cert.X509Certificate[] getClientCertificateChain();
+ method @Nullable public String getClientKeyPairAlias();
+ method @Nullable public java.security.PrivateKey getClientPrivateKey();
+ method @Nullable public String getDecoratedIdentityPrefix();
+ method public String getDomainSuffixMatch();
+ method public int getEapMethod();
+ method public String getIdentity();
+ method public String getPassword();
+ method public int getPhase2Method();
+ method public String getPlmn();
+ method public String getRealm();
+ method @Deprecated public String getSubjectMatch();
+ method public boolean hasCaCertificate();
+ method public boolean isAuthenticationSimBased();
+ method public boolean isEapMethodServerCertUsed();
+ method public boolean isServerCertValidationEnabled();
+ method public boolean isTrustOnFirstUseEnabled();
+ method public void setAltSubjectMatch(String);
+ method public void setAnonymousIdentity(String);
+ method public void setCaCertificate(@Nullable java.security.cert.X509Certificate);
+ method public void setCaCertificates(@Nullable java.security.cert.X509Certificate[]);
+ method public void setClientKeyEntry(java.security.PrivateKey, java.security.cert.X509Certificate);
+ method public void setClientKeyEntryWithCertificateChain(java.security.PrivateKey, java.security.cert.X509Certificate[]);
+ method public void setClientKeyPairAlias(@NonNull String);
+ method public void setDecoratedIdentityPrefix(@Nullable String);
+ method public void setDomainSuffixMatch(String);
+ method public void setEapMethod(int);
+ method public void setIdentity(String);
+ method public void setPassword(String);
+ method public void setPhase2Method(int);
+ method public void setPlmn(String);
+ method public void setRealm(String);
+ method @Deprecated public void setSubjectMatch(String);
+ method public void writeToParcel(android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.WifiEnterpriseConfig> CREATOR;
+ field public static final String EXTRA_WAPI_AS_CERTIFICATE_DATA = "android.net.wifi.extra.WAPI_AS_CERTIFICATE_DATA";
+ field public static final String EXTRA_WAPI_AS_CERTIFICATE_NAME = "android.net.wifi.extra.WAPI_AS_CERTIFICATE_NAME";
+ field public static final String EXTRA_WAPI_USER_CERTIFICATE_DATA = "android.net.wifi.extra.WAPI_USER_CERTIFICATE_DATA";
+ field public static final String EXTRA_WAPI_USER_CERTIFICATE_NAME = "android.net.wifi.extra.WAPI_USER_CERTIFICATE_NAME";
+ field public static final String WAPI_AS_CERTIFICATE = "WAPIAS_";
+ field public static final String WAPI_USER_CERTIFICATE = "WAPIUSR_";
+ }
+
+ public static final class WifiEnterpriseConfig.Eap {
+ field public static final int AKA = 5; // 0x5
+ field public static final int AKA_PRIME = 6; // 0x6
+ field public static final int NONE = -1; // 0xffffffff
+ field public static final int PEAP = 0; // 0x0
+ field public static final int PWD = 3; // 0x3
+ field public static final int SIM = 4; // 0x4
+ field public static final int TLS = 1; // 0x1
+ field public static final int TTLS = 2; // 0x2
+ field public static final int UNAUTH_TLS = 7; // 0x7
+ field public static final int WAPI_CERT = 8; // 0x8
+ }
+
+ public static final class WifiEnterpriseConfig.Phase2 {
+ field public static final int AKA = 6; // 0x6
+ field public static final int AKA_PRIME = 7; // 0x7
+ field public static final int GTC = 4; // 0x4
+ field public static final int MSCHAP = 2; // 0x2
+ field public static final int MSCHAPV2 = 3; // 0x3
+ field public static final int NONE = 0; // 0x0
+ field public static final int PAP = 1; // 0x1
+ field public static final int SIM = 5; // 0x5
+ }
+
+ public class WifiInfo implements android.os.Parcelable android.net.TransportInfo {
+ method public int describeContents();
+ method @NonNull public java.util.List<android.net.wifi.MloLink> getAffiliatedMloLinks();
+ method @Nullable public android.net.MacAddress getApMldMacAddress();
+ method @IntRange(from=android.net.wifi.MloLink.INVALID_MLO_LINK_ID, to=0xf) public int getApMloLinkId();
+ method public String getBSSID();
+ method public int getCurrentSecurityType();
+ method public static android.net.NetworkInfo.DetailedState getDetailedStateOf(android.net.wifi.SupplicantState);
+ method public int getFrequency();
+ method public boolean getHiddenSSID();
+ method @Nullable public java.util.List<android.net.wifi.ScanResult.InformationElement> getInformationElements();
+ method @Deprecated public int getIpAddress();
+ method public int getLinkSpeed();
+ method public String getMacAddress();
+ method public int getMaxSupportedRxLinkSpeedMbps();
+ method public int getMaxSupportedTxLinkSpeedMbps();
+ method public int getNetworkId();
+ method @Nullable public String getPasspointFqdn();
+ method @Nullable public String getPasspointProviderFriendlyName();
+ method public int getRssi();
+ method @IntRange(from=0xffffffff) public int getRxLinkSpeedMbps();
+ method public String getSSID();
+ method public int getSubscriptionId();
+ method public android.net.wifi.SupplicantState getSupplicantState();
+ method @IntRange(from=0xffffffff) public int getTxLinkSpeedMbps();
+ method public int getWifiStandard();
+ method public boolean isRestricted();
+ method @NonNull public android.net.wifi.WifiInfo makeCopy(long);
+ method public void writeToParcel(android.os.Parcel, int);
+ field public static final String FREQUENCY_UNITS = "MHz";
+ field public static final String LINK_SPEED_UNITS = "Mbps";
+ field public static final int LINK_SPEED_UNKNOWN = -1; // 0xffffffff
+ field public static final int SECURITY_TYPE_DPP = 13; // 0xd
+ field public static final int SECURITY_TYPE_EAP = 3; // 0x3
+ field public static final int SECURITY_TYPE_EAP_WPA3_ENTERPRISE = 9; // 0x9
+ field public static final int SECURITY_TYPE_EAP_WPA3_ENTERPRISE_192_BIT = 5; // 0x5
+ field public static final int SECURITY_TYPE_OPEN = 0; // 0x0
+ field public static final int SECURITY_TYPE_OSEN = 10; // 0xa
+ field public static final int SECURITY_TYPE_OWE = 6; // 0x6
+ field public static final int SECURITY_TYPE_PASSPOINT_R1_R2 = 11; // 0xb
+ field public static final int SECURITY_TYPE_PASSPOINT_R3 = 12; // 0xc
+ field public static final int SECURITY_TYPE_PSK = 2; // 0x2
+ field public static final int SECURITY_TYPE_SAE = 4; // 0x4
+ field public static final int SECURITY_TYPE_UNKNOWN = -1; // 0xffffffff
+ field public static final int SECURITY_TYPE_WAPI_CERT = 8; // 0x8
+ field public static final int SECURITY_TYPE_WAPI_PSK = 7; // 0x7
+ field public static final int SECURITY_TYPE_WEP = 1; // 0x1
+ }
+
+ public static final class WifiInfo.Builder {
+ ctor public WifiInfo.Builder();
+ method @NonNull public android.net.wifi.WifiInfo build();
+ method @NonNull public android.net.wifi.WifiInfo.Builder setBssid(@NonNull String);
+ method @NonNull public android.net.wifi.WifiInfo.Builder setCurrentSecurityType(int);
+ method @NonNull public android.net.wifi.WifiInfo.Builder setNetworkId(int);
+ method @NonNull public android.net.wifi.WifiInfo.Builder setRssi(int);
+ method @NonNull public android.net.wifi.WifiInfo.Builder setSsid(@NonNull byte[]);
+ }
+
+ public class WifiManager {
+ method @Deprecated public int addNetwork(android.net.wifi.WifiConfiguration);
+ method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_STACK, android.Manifest.permission.NETWORK_SETUP_WIZARD, android.Manifest.permission.NETWORK_MANAGED_PROVISIONING}, conditional=true) public android.net.wifi.WifiManager.AddNetworkResult addNetworkPrivileged(@NonNull android.net.wifi.WifiConfiguration);
+ method @RequiresPermission(android.Manifest.permission.CHANGE_WIFI_STATE) public int addNetworkSuggestions(@NonNull java.util.List<android.net.wifi.WifiNetworkSuggestion>);
+ method public void addOrUpdatePasspointConfiguration(android.net.wifi.hotspot2.PasspointConfiguration);
+ method @RequiresPermission(allOf={android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.ACCESS_WIFI_STATE}) public void addSuggestionConnectionStatusListener(@NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.WifiManager.SuggestionConnectionStatusListener);
+ method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public void addSuggestionUserApprovalStatusListener(@NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.WifiManager.SuggestionUserApprovalStatusListener);
+ method public void allowAutojoinGlobal(boolean);
+ method @Deprecated public static int calculateSignalLevel(int, int);
+ method @IntRange(from=0) public int calculateSignalLevel(int);
+ method @Deprecated public void cancelWps(android.net.wifi.WifiManager.WpsCallback);
+ method public static int compareSignalLevel(int, int);
+ method public android.net.wifi.WifiManager.MulticastLock createMulticastLock(String);
+ method public android.net.wifi.WifiManager.WifiLock createWifiLock(int, String);
+ method @Deprecated public android.net.wifi.WifiManager.WifiLock createWifiLock(String);
+ method @Deprecated public boolean disableNetwork(int);
+ method @Deprecated public boolean disconnect();
+ method @Deprecated public boolean enableNetwork(int, boolean);
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_MANAGED_PROVISIONING, android.Manifest.permission.NETWORK_CARRIER_PROVISIONING}, conditional=true) public void flushPasspointAnqpCache();
+ method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public java.util.List<android.net.wifi.WifiConfiguration> getCallerConfiguredNetworks();
+ method @Deprecated @RequiresPermission(allOf={android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.ACCESS_WIFI_STATE}) public java.util.List<android.net.wifi.WifiConfiguration> getConfiguredNetworks();
+ method @Deprecated @RequiresPermission(allOf={android.Manifest.permission.ACCESS_WIFI_STATE, android.Manifest.permission.ACCESS_FINE_LOCATION}, conditional=true) public android.net.wifi.WifiInfo getConnectionInfo();
+ method @Deprecated public android.net.DhcpInfo getDhcpInfo();
+ method public int getMaxNumberOfNetworkSuggestionsPerApp();
+ method @IntRange(from=0) public int getMaxSignalLevel();
+ method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public java.util.List<android.net.wifi.WifiNetworkSuggestion> getNetworkSuggestions();
+ method @Deprecated public java.util.List<android.net.wifi.hotspot2.PasspointConfiguration> getPasspointConfigurations();
+ method @RequiresPermission(allOf={android.Manifest.permission.ACCESS_WIFI_STATE, android.Manifest.permission.ACCESS_FINE_LOCATION}) public java.util.List<android.net.wifi.ScanResult> getScanResults();
+ method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public int getStaConcurrencyForMultiInternetMode();
+ method public int getWifiState();
+ method public boolean is24GHzBandSupported();
+ method public boolean is5GHzBandSupported();
+ method public boolean is60GHzBandSupported();
+ method public boolean is6GHzBandSupported();
+ method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public boolean isAutoWakeupEnabled();
+ method public boolean isBridgedApConcurrencySupported();
+ method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public boolean isCarrierNetworkOffloadEnabled(int, boolean);
+ method public boolean isDecoratedIdentitySupported();
+ method @Deprecated public boolean isDeviceToApRttSupported();
+ method public boolean isEasyConnectDppAkmSupported();
+ method public boolean isEasyConnectEnrolleeResponderModeSupported();
+ method public boolean isEasyConnectSupported();
+ method public boolean isEnhancedOpenSupported();
+ method public boolean isEnhancedPowerReportingSupported();
+ method public boolean isMakeBeforeBreakWifiSwitchingSupported();
+ method public boolean isP2pSupported();
+ method public boolean isPasspointTermsAndConditionsSupported();
+ method public boolean isPreferredNetworkOffloadSupported();
+ method @Deprecated public boolean isScanAlwaysAvailable();
+ method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public boolean isScanThrottleEnabled();
+ method public boolean isStaApConcurrencySupported();
+ method public boolean isStaBridgedApConcurrencySupported();
+ method public boolean isStaConcurrencyForLocalOnlyConnectionsSupported();
+ method public boolean isStaConcurrencyForMultiInternetSupported();
+ method public boolean isTdlsSupported();
+ method public boolean isTrustOnFirstUseSupported();
+ method public boolean isWapiSupported();
+ method public boolean isWifiDisplayR2Supported();
+ method public boolean isWifiEnabled();
+ method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public boolean isWifiPasspointEnabled();
+ method public boolean isWifiStandardSupported(int);
+ method public boolean isWpa3SaeH2eSupported();
+ method public boolean isWpa3SaePublicKeySupported();
+ method public boolean isWpa3SaeSupported();
+ method public boolean isWpa3SuiteBSupported();
+ method @Deprecated public boolean pingSupplicant();
+ method public void queryAutojoinGlobal(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Boolean>);
+ method @Deprecated public boolean reassociate();
+ method @Deprecated public boolean reconnect();
+ method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public void registerScanResultsCallback(@NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.WifiManager.ScanResultsCallback);
+ method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public void registerSubsystemRestartTrackingCallback(@NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.WifiManager.SubsystemRestartTrackingCallback);
+ method @Deprecated public boolean removeNetwork(int);
+ method @RequiresPermission(android.Manifest.permission.CHANGE_WIFI_STATE) public int removeNetworkSuggestions(@NonNull java.util.List<android.net.wifi.WifiNetworkSuggestion>);
+ method @RequiresPermission(android.Manifest.permission.CHANGE_WIFI_STATE) public int removeNetworkSuggestions(@NonNull java.util.List<android.net.wifi.WifiNetworkSuggestion>, int);
+ method @RequiresPermission(android.Manifest.permission.CHANGE_WIFI_STATE) public boolean removeNonCallerConfiguredNetworks();
+ method @Deprecated public void removePasspointConfiguration(String);
+ method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public void removeSuggestionConnectionStatusListener(@NonNull android.net.wifi.WifiManager.SuggestionConnectionStatusListener);
+ method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public void removeSuggestionUserApprovalStatusListener(@NonNull android.net.wifi.WifiManager.SuggestionUserApprovalStatusListener);
+ method @RequiresPermission(allOf={android.Manifest.permission.MANAGE_WIFI_INTERFACES, android.Manifest.permission.ACCESS_WIFI_STATE}) public void reportCreateInterfaceImpact(int, boolean, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.BiConsumer<java.lang.Boolean,java.util.Set<android.net.wifi.WifiManager.InterfaceCreationImpact>>);
+ method @Deprecated public boolean saveConfiguration();
+ method public void setTdlsEnabled(java.net.InetAddress, boolean);
+ method public void setTdlsEnabledWithMacAddress(String, boolean);
+ method @Deprecated public boolean setWifiEnabled(boolean);
+ method @RequiresPermission(allOf={android.Manifest.permission.CHANGE_WIFI_STATE, android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.NEARBY_WIFI_DEVICES}, conditional=true) public void startLocalOnlyHotspot(android.net.wifi.WifiManager.LocalOnlyHotspotCallback, @Nullable android.os.Handler);
+ method @Deprecated public boolean startScan();
+ method @Deprecated public void startWps(android.net.wifi.WpsInfo, android.net.wifi.WifiManager.WpsCallback);
+ method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public void unregisterScanResultsCallback(@NonNull android.net.wifi.WifiManager.ScanResultsCallback);
+ method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public void unregisterSubsystemRestartTrackingCallback(@NonNull android.net.wifi.WifiManager.SubsystemRestartTrackingCallback);
+ method @Deprecated public int updateNetwork(android.net.wifi.WifiConfiguration);
+ field public static final String ACTION_PICK_WIFI_NETWORK = "android.net.wifi.PICK_WIFI_NETWORK";
+ field public static final int ACTION_REMOVE_SUGGESTION_DISCONNECT = 2; // 0x2
+ field public static final int ACTION_REMOVE_SUGGESTION_LINGER = 1; // 0x1
+ field public static final String ACTION_REQUEST_SCAN_ALWAYS_AVAILABLE = "android.net.wifi.action.REQUEST_SCAN_ALWAYS_AVAILABLE";
+ field public static final String ACTION_WIFI_NETWORK_SUGGESTION_POST_CONNECTION = "android.net.wifi.action.WIFI_NETWORK_SUGGESTION_POST_CONNECTION";
+ field public static final String ACTION_WIFI_SCAN_AVAILABILITY_CHANGED = "android.net.wifi.action.WIFI_SCAN_AVAILABILITY_CHANGED";
+ field @Deprecated public static final int ERROR_AUTHENTICATING = 1; // 0x1
+ field @Deprecated public static final String EXTRA_BSSID = "bssid";
+ field public static final String EXTRA_NETWORK_INFO = "networkInfo";
+ field public static final String EXTRA_NETWORK_SUGGESTION = "android.net.wifi.extra.NETWORK_SUGGESTION";
+ field public static final String EXTRA_NEW_RSSI = "newRssi";
+ field @Deprecated public static final String EXTRA_NEW_STATE = "newState";
+ field public static final String EXTRA_PREVIOUS_WIFI_STATE = "previous_wifi_state";
+ field public static final String EXTRA_RESULTS_UPDATED = "resultsUpdated";
+ field public static final String EXTRA_SCAN_AVAILABLE = "android.net.wifi.extra.SCAN_AVAILABLE";
+ field @Deprecated public static final String EXTRA_SUPPLICANT_CONNECTED = "connected";
+ field @Deprecated public static final String EXTRA_SUPPLICANT_ERROR = "supplicantError";
+ field @Deprecated public static final String EXTRA_WIFI_INFO = "wifiInfo";
+ field public static final String EXTRA_WIFI_STATE = "wifi_state";
+ field public static final String NETWORK_IDS_CHANGED_ACTION = "android.net.wifi.NETWORK_IDS_CHANGED";
+ field public static final String NETWORK_STATE_CHANGED_ACTION = "android.net.wifi.STATE_CHANGE";
+ field public static final String RSSI_CHANGED_ACTION = "android.net.wifi.RSSI_CHANGED";
+ field public static final String SCAN_RESULTS_AVAILABLE_ACTION = "android.net.wifi.SCAN_RESULTS";
+ field public static final int STATUS_NETWORK_SUGGESTIONS_ERROR_ADD_DUPLICATE = 3; // 0x3
+ field public static final int STATUS_NETWORK_SUGGESTIONS_ERROR_ADD_EXCEEDS_MAX_PER_APP = 4; // 0x4
+ field public static final int STATUS_NETWORK_SUGGESTIONS_ERROR_ADD_INVALID = 7; // 0x7
+ field public static final int STATUS_NETWORK_SUGGESTIONS_ERROR_ADD_NOT_ALLOWED = 6; // 0x6
+ field public static final int STATUS_NETWORK_SUGGESTIONS_ERROR_APP_DISALLOWED = 2; // 0x2
+ field public static final int STATUS_NETWORK_SUGGESTIONS_ERROR_INTERNAL = 1; // 0x1
+ field public static final int STATUS_NETWORK_SUGGESTIONS_ERROR_REMOVE_INVALID = 5; // 0x5
+ field public static final int STATUS_NETWORK_SUGGESTIONS_ERROR_RESTRICTED_BY_ADMIN = 8; // 0x8
+ field public static final int STATUS_NETWORK_SUGGESTIONS_SUCCESS = 0; // 0x0
+ field public static final int STATUS_SUGGESTION_APPROVAL_APPROVED_BY_CARRIER_PRIVILEGE = 4; // 0x4
+ field public static final int STATUS_SUGGESTION_APPROVAL_APPROVED_BY_USER = 2; // 0x2
+ field public static final int STATUS_SUGGESTION_APPROVAL_PENDING = 1; // 0x1
+ field public static final int STATUS_SUGGESTION_APPROVAL_REJECTED_BY_USER = 3; // 0x3
+ field public static final int STATUS_SUGGESTION_APPROVAL_UNKNOWN = 0; // 0x0
+ field public static final int STATUS_SUGGESTION_CONNECTION_FAILURE_ASSOCIATION = 1; // 0x1
+ field public static final int STATUS_SUGGESTION_CONNECTION_FAILURE_AUTHENTICATION = 2; // 0x2
+ field public static final int STATUS_SUGGESTION_CONNECTION_FAILURE_IP_PROVISIONING = 3; // 0x3
+ field public static final int STATUS_SUGGESTION_CONNECTION_FAILURE_UNKNOWN = 0; // 0x0
+ field @Deprecated public static final String SUPPLICANT_CONNECTION_CHANGE_ACTION = "android.net.wifi.supplicant.CONNECTION_CHANGE";
+ field @Deprecated public static final String SUPPLICANT_STATE_CHANGED_ACTION = "android.net.wifi.supplicant.STATE_CHANGE";
+ field public static final String UNKNOWN_SSID = "<unknown ssid>";
+ field public static final int WIFI_INTERFACE_TYPE_AP = 1; // 0x1
+ field public static final int WIFI_INTERFACE_TYPE_AWARE = 2; // 0x2
+ field public static final int WIFI_INTERFACE_TYPE_DIRECT = 3; // 0x3
+ field public static final int WIFI_INTERFACE_TYPE_STA = 0; // 0x0
+ field @Deprecated public static final int WIFI_MODE_FULL = 1; // 0x1
+ field public static final int WIFI_MODE_FULL_HIGH_PERF = 3; // 0x3
+ field public static final int WIFI_MODE_FULL_LOW_LATENCY = 4; // 0x4
+ field @Deprecated public static final int WIFI_MODE_SCAN_ONLY = 2; // 0x2
+ field public static final int WIFI_MULTI_INTERNET_MODE_DBS_AP = 1; // 0x1
+ field public static final int WIFI_MULTI_INTERNET_MODE_DISABLED = 0; // 0x0
+ field public static final int WIFI_MULTI_INTERNET_MODE_MULTI_AP = 2; // 0x2
+ field public static final String WIFI_STATE_CHANGED_ACTION = "android.net.wifi.WIFI_STATE_CHANGED";
+ field public static final int WIFI_STATE_DISABLED = 1; // 0x1
+ field public static final int WIFI_STATE_DISABLING = 0; // 0x0
+ field public static final int WIFI_STATE_ENABLED = 3; // 0x3
+ field public static final int WIFI_STATE_ENABLING = 2; // 0x2
+ field public static final int WIFI_STATE_UNKNOWN = 4; // 0x4
+ field @Deprecated public static final int WPS_AUTH_FAILURE = 6; // 0x6
+ field @Deprecated public static final int WPS_OVERLAP_ERROR = 3; // 0x3
+ field @Deprecated public static final int WPS_TIMED_OUT = 7; // 0x7
+ field @Deprecated public static final int WPS_TKIP_ONLY_PROHIBITED = 5; // 0x5
+ field @Deprecated public static final int WPS_WEP_PROHIBITED = 4; // 0x4
+ }
+
+ public static final class WifiManager.AddNetworkResult implements android.os.Parcelable {
+ ctor public WifiManager.AddNetworkResult(int, int);
+ method public int describeContents();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.WifiManager.AddNetworkResult> CREATOR;
+ field public static final int STATUS_ADD_PASSPOINT_FAILURE = 3; // 0x3
+ field public static final int STATUS_ADD_WIFI_CONFIG_FAILURE = 4; // 0x4
+ field public static final int STATUS_FAILURE_UNKNOWN = 1; // 0x1
+ field public static final int STATUS_FAILURE_UPDATE_NETWORK_KEYS = 9; // 0x9
+ field public static final int STATUS_INVALID_CONFIGURATION = 5; // 0x5
+ field public static final int STATUS_INVALID_CONFIGURATION_ENTERPRISE = 10; // 0xa
+ field public static final int STATUS_NO_PERMISSION = 2; // 0x2
+ field public static final int STATUS_NO_PERMISSION_MODIFY_CONFIG = 6; // 0x6
+ field public static final int STATUS_NO_PERMISSION_MODIFY_MAC_RANDOMIZATION = 8; // 0x8
+ field public static final int STATUS_NO_PERMISSION_MODIFY_PROXY_SETTING = 7; // 0x7
+ field public static final int STATUS_SUCCESS = 0; // 0x0
+ field public final int networkId;
+ field public final int statusCode;
+ }
+
+ public static class WifiManager.InterfaceCreationImpact {
+ ctor public WifiManager.InterfaceCreationImpact(int, @NonNull java.util.Set<java.lang.String>);
+ method public int getInterfaceType();
+ method @NonNull public java.util.Set<java.lang.String> getPackages();
+ }
+
+ public static class WifiManager.LocalOnlyHotspotCallback {
+ ctor public WifiManager.LocalOnlyHotspotCallback();
+ method public void onFailed(int);
+ method public void onStarted(android.net.wifi.WifiManager.LocalOnlyHotspotReservation);
+ method public void onStopped();
+ field public static final int ERROR_GENERIC = 2; // 0x2
+ field public static final int ERROR_INCOMPATIBLE_MODE = 3; // 0x3
+ field public static final int ERROR_NO_CHANNEL = 1; // 0x1
+ field public static final int ERROR_TETHERING_DISALLOWED = 4; // 0x4
+ }
+
+ public class WifiManager.LocalOnlyHotspotReservation implements java.lang.AutoCloseable {
+ method public void close();
+ method @NonNull public android.net.wifi.SoftApConfiguration getSoftApConfiguration();
+ method @Deprecated @Nullable public android.net.wifi.WifiConfiguration getWifiConfiguration();
+ }
+
+ public class WifiManager.MulticastLock {
+ method public void acquire();
+ method public boolean isHeld();
+ method public void release();
+ method public void setReferenceCounted(boolean);
+ }
+
+ public abstract static class WifiManager.ScanResultsCallback {
+ ctor public WifiManager.ScanResultsCallback();
+ method public abstract void onScanResultsAvailable();
+ }
+
+ public abstract static class WifiManager.SubsystemRestartTrackingCallback {
+ ctor public WifiManager.SubsystemRestartTrackingCallback();
+ method public abstract void onSubsystemRestarted();
+ method public abstract void onSubsystemRestarting();
+ }
+
+ public static interface WifiManager.SuggestionConnectionStatusListener {
+ method public void onConnectionStatus(@NonNull android.net.wifi.WifiNetworkSuggestion, int);
+ }
+
+ public static interface WifiManager.SuggestionUserApprovalStatusListener {
+ method public void onUserApprovalStatusChange(int);
+ }
+
+ public class WifiManager.WifiLock {
+ method public void acquire();
+ method public boolean isHeld();
+ method public void release();
+ method public void setReferenceCounted(boolean);
+ method public void setWorkSource(android.os.WorkSource);
+ }
+
+ @Deprecated public abstract static class WifiManager.WpsCallback {
+ ctor @Deprecated public WifiManager.WpsCallback();
+ method @Deprecated public abstract void onFailed(int);
+ method @Deprecated public abstract void onStarted(String);
+ method @Deprecated public abstract void onSucceeded();
+ }
+
+ public final class WifiNetworkSpecifier extends android.net.NetworkSpecifier implements android.os.Parcelable {
+ method public int describeContents();
+ method public int getBand();
+ method public void writeToParcel(android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.WifiNetworkSpecifier> CREATOR;
+ }
+
+ public static final class WifiNetworkSpecifier.Builder {
+ ctor public WifiNetworkSpecifier.Builder();
+ method @NonNull public android.net.wifi.WifiNetworkSpecifier build();
+ method @NonNull public android.net.wifi.WifiNetworkSpecifier.Builder setBand(int);
+ method @NonNull public android.net.wifi.WifiNetworkSpecifier.Builder setBssid(@NonNull android.net.MacAddress);
+ method @NonNull public android.net.wifi.WifiNetworkSpecifier.Builder setBssidPattern(@NonNull android.net.MacAddress, @NonNull android.net.MacAddress);
+ method @NonNull public android.net.wifi.WifiNetworkSpecifier.Builder setIsEnhancedOpen(boolean);
+ method @NonNull public android.net.wifi.WifiNetworkSpecifier.Builder setIsHiddenSsid(boolean);
+ method @NonNull public android.net.wifi.WifiNetworkSpecifier.Builder setSsid(@NonNull String);
+ method @NonNull public android.net.wifi.WifiNetworkSpecifier.Builder setSsidPattern(@NonNull android.os.PatternMatcher);
+ method @NonNull public android.net.wifi.WifiNetworkSpecifier.Builder setWpa2EnterpriseConfig(@NonNull android.net.wifi.WifiEnterpriseConfig);
+ method @NonNull public android.net.wifi.WifiNetworkSpecifier.Builder setWpa2Passphrase(@NonNull String);
+ method @NonNull public android.net.wifi.WifiNetworkSpecifier.Builder setWpa3Enterprise192BitModeConfig(@NonNull android.net.wifi.WifiEnterpriseConfig);
+ method @Deprecated @NonNull public android.net.wifi.WifiNetworkSpecifier.Builder setWpa3EnterpriseConfig(@NonNull android.net.wifi.WifiEnterpriseConfig);
+ method @NonNull public android.net.wifi.WifiNetworkSpecifier.Builder setWpa3EnterpriseStandardModeConfig(@NonNull android.net.wifi.WifiEnterpriseConfig);
+ method @NonNull public android.net.wifi.WifiNetworkSpecifier.Builder setWpa3Passphrase(@NonNull String);
+ }
+
+ public final class WifiNetworkSuggestion implements android.os.Parcelable {
+ method public int describeContents();
+ method @Nullable public android.net.MacAddress getBssid();
+ method @Nullable public android.net.wifi.WifiEnterpriseConfig getEnterpriseConfig();
+ method public int getMacRandomizationSetting();
+ method @Nullable public String getPassphrase();
+ method @Nullable public android.net.wifi.hotspot2.PasspointConfiguration getPasspointConfig();
+ method @IntRange(from=0) public int getPriority();
+ method @IntRange(from=0) public int getPriorityGroup();
+ method @Nullable public String getSsid();
+ method @Nullable public android.os.ParcelUuid getSubscriptionGroup();
+ method public int getSubscriptionId();
+ method @Nullable public android.net.wifi.WifiSsid getWifiSsid();
+ method public boolean isAppInteractionRequired();
+ method public boolean isCarrierMerged();
+ method public boolean isCredentialSharedWithUser();
+ method public boolean isEnhancedOpen();
+ method public boolean isHiddenSsid();
+ method public boolean isInitialAutojoinEnabled();
+ method public boolean isMetered();
+ method public boolean isRestricted();
+ method public boolean isUntrusted();
+ method public boolean isUserInteractionRequired();
+ method public void writeToParcel(android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.WifiNetworkSuggestion> CREATOR;
+ field public static final int RANDOMIZATION_NON_PERSISTENT = 1; // 0x1
+ field public static final int RANDOMIZATION_PERSISTENT = 0; // 0x0
+ }
+
+ public static final class WifiNetworkSuggestion.Builder {
+ ctor public WifiNetworkSuggestion.Builder();
+ method @NonNull public android.net.wifi.WifiNetworkSuggestion build();
+ method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setBssid(@NonNull android.net.MacAddress);
+ method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setCarrierMerged(boolean);
+ method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setCredentialSharedWithUser(boolean);
+ method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setIsAppInteractionRequired(boolean);
+ method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setIsEnhancedOpen(boolean);
+ method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setIsHiddenSsid(boolean);
+ method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setIsInitialAutojoinEnabled(boolean);
+ method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setIsMetered(boolean);
+ method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setIsUserInteractionRequired(boolean);
+ method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setIsWpa3SaeH2eOnlyModeEnabled(boolean);
+ method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setMacRandomizationSetting(int);
+ method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setPasspointConfig(@NonNull android.net.wifi.hotspot2.PasspointConfiguration);
+ method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setPriority(@IntRange(from=0) int);
+ method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setPriorityGroup(@IntRange(from=0) int);
+ method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setRestricted(boolean);
+ method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setSsid(@NonNull String);
+ method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setSubscriptionGroup(@NonNull android.os.ParcelUuid);
+ method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setSubscriptionId(int);
+ method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setUntrusted(boolean);
+ method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setWapiEnterpriseConfig(@NonNull android.net.wifi.WifiEnterpriseConfig);
+ method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setWapiPassphrase(@NonNull String);
+ method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setWifiSsid(@NonNull android.net.wifi.WifiSsid);
+ method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setWpa2EnterpriseConfig(@NonNull android.net.wifi.WifiEnterpriseConfig);
+ method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setWpa2Passphrase(@NonNull String);
+ method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setWpa3Enterprise192BitModeConfig(@NonNull android.net.wifi.WifiEnterpriseConfig);
+ method @Deprecated @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setWpa3EnterpriseConfig(@NonNull android.net.wifi.WifiEnterpriseConfig);
+ method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setWpa3EnterpriseStandardModeConfig(@NonNull android.net.wifi.WifiEnterpriseConfig);
+ method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setWpa3Passphrase(@NonNull String);
+ }
+
+ public final class WifiSsid implements android.os.Parcelable {
+ method public int describeContents();
+ method @NonNull public static android.net.wifi.WifiSsid fromBytes(@Nullable byte[]);
+ method @NonNull public byte[] getBytes();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.WifiSsid> CREATOR;
+ }
+
+ public class WpsInfo implements android.os.Parcelable {
+ ctor public WpsInfo();
+ ctor public WpsInfo(android.net.wifi.WpsInfo);
+ method public int describeContents();
+ method public void writeToParcel(android.os.Parcel, int);
+ field public String BSSID;
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.WpsInfo> CREATOR;
+ field public static final int DISPLAY = 1; // 0x1
+ field public static final int INVALID = 4; // 0x4
+ field public static final int KEYPAD = 2; // 0x2
+ field public static final int LABEL = 3; // 0x3
+ field public static final int PBC = 0; // 0x0
+ field public String pin;
+ field public int setup;
+ }
+
+}
+
+package android.net.wifi.aware {
+
+ public class AttachCallback {
+ ctor public AttachCallback();
+ method public void onAttachFailed();
+ method public void onAttached(android.net.wifi.aware.WifiAwareSession);
+ method public void onAwareSessionTerminated();
+ }
+
+ public final class AwareResources implements android.os.Parcelable {
+ ctor public AwareResources(@IntRange(from=0) int, @IntRange(from=0) int, @IntRange(from=0) int);
+ method public int describeContents();
+ method @IntRange(from=0) public int getAvailableDataPathsCount();
+ method @IntRange(from=0) public int getAvailablePublishSessionsCount();
+ method @IntRange(from=0) public int getAvailableSubscribeSessionsCount();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.aware.AwareResources> CREATOR;
+ }
+
+ public final class Characteristics implements android.os.Parcelable {
+ method public int describeContents();
+ method public int getMaxMatchFilterLength();
+ method public int getMaxServiceNameLength();
+ method public int getMaxServiceSpecificInfoLength();
+ method @IntRange(from=1) public int getNumberOfSupportedDataInterfaces();
+ method @IntRange(from=1) public int getNumberOfSupportedDataPaths();
+ method @IntRange(from=1) public int getNumberOfSupportedPublishSessions();
+ method @IntRange(from=1) public int getNumberOfSupportedSubscribeSessions();
+ method public int getSupportedCipherSuites();
+ method public boolean isInstantCommunicationModeSupported();
+ method public void writeToParcel(android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.aware.Characteristics> CREATOR;
+ field public static final int WIFI_AWARE_CIPHER_SUITE_NCS_PK_128 = 4; // 0x4
+ field public static final int WIFI_AWARE_CIPHER_SUITE_NCS_PK_256 = 8; // 0x8
+ field public static final int WIFI_AWARE_CIPHER_SUITE_NCS_SK_128 = 1; // 0x1
+ field public static final int WIFI_AWARE_CIPHER_SUITE_NCS_SK_256 = 2; // 0x2
+ field public static final int WIFI_AWARE_CIPHER_SUITE_NONE = 0; // 0x0
+ }
+
+ public class DiscoverySession implements java.lang.AutoCloseable {
+ method public void close();
+ method @Deprecated public android.net.NetworkSpecifier createNetworkSpecifierOpen(@NonNull android.net.wifi.aware.PeerHandle);
+ method @Deprecated public android.net.NetworkSpecifier createNetworkSpecifierPassphrase(@NonNull android.net.wifi.aware.PeerHandle, @NonNull String);
+ method public void sendMessage(@NonNull android.net.wifi.aware.PeerHandle, int, @Nullable byte[]);
+ }
+
+ public class DiscoverySessionCallback {
+ ctor public DiscoverySessionCallback();
+ method public void onMessageReceived(android.net.wifi.aware.PeerHandle, byte[]);
+ method public void onMessageSendFailed(int);
+ method public void onMessageSendSucceeded(int);
+ method public void onPublishStarted(@NonNull android.net.wifi.aware.PublishDiscoverySession);
+ method public void onServiceDiscovered(android.net.wifi.aware.PeerHandle, byte[], java.util.List<byte[]>);
+ method public void onServiceDiscovered(@NonNull android.net.wifi.aware.ServiceDiscoveryInfo);
+ method public void onServiceDiscoveredWithinRange(android.net.wifi.aware.PeerHandle, byte[], java.util.List<byte[]>, int);
+ method public void onServiceDiscoveredWithinRange(@NonNull android.net.wifi.aware.ServiceDiscoveryInfo, int);
+ method public void onServiceLost(@NonNull android.net.wifi.aware.PeerHandle, int);
+ method public void onSessionConfigFailed();
+ method public void onSessionConfigUpdated();
+ method public void onSessionTerminated();
+ method public void onSubscribeStarted(@NonNull android.net.wifi.aware.SubscribeDiscoverySession);
+ }
+
+ public class IdentityChangedListener {
+ ctor public IdentityChangedListener();
+ method public void onIdentityChanged(byte[]);
+ }
+
+ public final class ParcelablePeerHandle extends android.net.wifi.aware.PeerHandle implements android.os.Parcelable {
+ ctor public ParcelablePeerHandle(@NonNull android.net.wifi.aware.PeerHandle);
+ method public int describeContents();
+ method public void writeToParcel(android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.aware.ParcelablePeerHandle> CREATOR;
+ }
+
+ public class PeerHandle {
+ }
+
+ public final class PublishConfig implements android.os.Parcelable {
+ method public int describeContents();
+ method public int getInstantCommunicationBand();
+ method @Nullable public android.net.wifi.aware.WifiAwareDataPathSecurityConfig getSecurityConfig();
+ method public boolean isInstantCommunicationModeEnabled();
+ method public void writeToParcel(android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.aware.PublishConfig> CREATOR;
+ field public static final int PUBLISH_TYPE_SOLICITED = 1; // 0x1
+ field public static final int PUBLISH_TYPE_UNSOLICITED = 0; // 0x0
+ }
+
+ public static final class PublishConfig.Builder {
+ ctor public PublishConfig.Builder();
+ method public android.net.wifi.aware.PublishConfig build();
+ method @NonNull public android.net.wifi.aware.PublishConfig.Builder setDataPathSecurityConfig(@NonNull android.net.wifi.aware.WifiAwareDataPathSecurityConfig);
+ method @NonNull public android.net.wifi.aware.PublishConfig.Builder setInstantCommunicationModeEnabled(boolean, int);
+ method public android.net.wifi.aware.PublishConfig.Builder setMatchFilter(@Nullable java.util.List<byte[]>);
+ method public android.net.wifi.aware.PublishConfig.Builder setPublishType(int);
+ method public android.net.wifi.aware.PublishConfig.Builder setRangingEnabled(boolean);
+ method public android.net.wifi.aware.PublishConfig.Builder setServiceName(@NonNull String);
+ method public android.net.wifi.aware.PublishConfig.Builder setServiceSpecificInfo(@Nullable byte[]);
+ method public android.net.wifi.aware.PublishConfig.Builder setTerminateNotificationEnabled(boolean);
+ method public android.net.wifi.aware.PublishConfig.Builder setTtlSec(int);
+ }
+
+ public class PublishDiscoverySession extends android.net.wifi.aware.DiscoverySession {
+ method public void updatePublish(@NonNull android.net.wifi.aware.PublishConfig);
+ }
+
+ public final class ServiceDiscoveryInfo {
+ method @NonNull public java.util.List<byte[]> getMatchFilters();
+ method public int getPeerCipherSuite();
+ method @NonNull public android.net.wifi.aware.PeerHandle getPeerHandle();
+ method @Nullable public byte[] getScid();
+ method @Nullable public byte[] getServiceSpecificInfo();
+ }
+
+ public final class SubscribeConfig implements android.os.Parcelable {
+ method public int describeContents();
+ method public int getInstantCommunicationBand();
+ method public boolean isInstantCommunicationModeEnabled();
+ method public void writeToParcel(android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.aware.SubscribeConfig> CREATOR;
+ field public static final int SUBSCRIBE_TYPE_ACTIVE = 1; // 0x1
+ field public static final int SUBSCRIBE_TYPE_PASSIVE = 0; // 0x0
+ }
+
+ public static final class SubscribeConfig.Builder {
+ ctor public SubscribeConfig.Builder();
+ method public android.net.wifi.aware.SubscribeConfig build();
+ method @NonNull public android.net.wifi.aware.SubscribeConfig.Builder setInstantCommunicationModeEnabled(boolean, int);
+ method public android.net.wifi.aware.SubscribeConfig.Builder setMatchFilter(@Nullable java.util.List<byte[]>);
+ method public android.net.wifi.aware.SubscribeConfig.Builder setMaxDistanceMm(int);
+ method public android.net.wifi.aware.SubscribeConfig.Builder setMinDistanceMm(int);
+ method public android.net.wifi.aware.SubscribeConfig.Builder setServiceName(@NonNull String);
+ method public android.net.wifi.aware.SubscribeConfig.Builder setServiceSpecificInfo(@Nullable byte[]);
+ method public android.net.wifi.aware.SubscribeConfig.Builder setSubscribeType(int);
+ method public android.net.wifi.aware.SubscribeConfig.Builder setTerminateNotificationEnabled(boolean);
+ method public android.net.wifi.aware.SubscribeConfig.Builder setTtlSec(int);
+ }
+
+ public class SubscribeDiscoverySession extends android.net.wifi.aware.DiscoverySession {
+ method public void updateSubscribe(@NonNull android.net.wifi.aware.SubscribeConfig);
+ }
+
+ public final class WifiAwareChannelInfo implements android.os.Parcelable {
+ method public int describeContents();
+ method @IntRange(from=0) public int getChannelBandwidth();
+ method @IntRange(from=0) public int getChannelFrequencyMhz();
+ method @IntRange(from=0) public int getSpatialStreamCount();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.aware.WifiAwareChannelInfo> CREATOR;
+ }
+
+ public final class WifiAwareDataPathSecurityConfig implements android.os.Parcelable {
+ method public int describeContents();
+ method public int getCipherSuite();
+ method @Nullable public byte[] getPmk();
+ method @Nullable public byte[] getPmkId();
+ method @Nullable public String getPskPassphrase();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.aware.WifiAwareDataPathSecurityConfig> CREATOR;
+ }
+
+ public static final class WifiAwareDataPathSecurityConfig.Builder {
+ ctor public WifiAwareDataPathSecurityConfig.Builder(int);
+ method @NonNull public android.net.wifi.aware.WifiAwareDataPathSecurityConfig build();
+ method @NonNull public android.net.wifi.aware.WifiAwareDataPathSecurityConfig.Builder setPmk(@NonNull byte[]);
+ method @NonNull public android.net.wifi.aware.WifiAwareDataPathSecurityConfig.Builder setPmkId(@NonNull byte[]);
+ method @NonNull public android.net.wifi.aware.WifiAwareDataPathSecurityConfig.Builder setPskPassphrase(@NonNull String);
+ }
+
+ public class WifiAwareManager {
+ method @RequiresPermission(allOf={android.Manifest.permission.ACCESS_WIFI_STATE, android.Manifest.permission.CHANGE_WIFI_STATE}) public void attach(@NonNull android.net.wifi.aware.AttachCallback, @Nullable android.os.Handler);
+ method @RequiresPermission(allOf={android.Manifest.permission.ACCESS_WIFI_STATE, android.Manifest.permission.CHANGE_WIFI_STATE, android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.NEARBY_WIFI_DEVICES}, conditional=true) public void attach(@NonNull android.net.wifi.aware.AttachCallback, @NonNull android.net.wifi.aware.IdentityChangedListener, @Nullable android.os.Handler);
+ method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public android.net.wifi.aware.AwareResources getAvailableAwareResources();
+ method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public android.net.wifi.aware.Characteristics getCharacteristics();
+ method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public boolean isAvailable();
+ method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public boolean isDeviceAttached();
+ method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public boolean isInstantCommunicationModeEnabled();
+ method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public boolean isSetChannelOnDataPathSupported();
+ field @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public static final String ACTION_WIFI_AWARE_RESOURCE_CHANGED = "android.net.wifi.aware.action.WIFI_AWARE_RESOURCE_CHANGED";
+ field public static final String ACTION_WIFI_AWARE_STATE_CHANGED = "android.net.wifi.aware.action.WIFI_AWARE_STATE_CHANGED";
+ field public static final String EXTRA_AWARE_RESOURCES = "android.net.wifi.aware.extra.AWARE_RESOURCES";
+ field public static final int WIFI_AWARE_DATA_PATH_ROLE_INITIATOR = 0; // 0x0
+ field public static final int WIFI_AWARE_DATA_PATH_ROLE_RESPONDER = 1; // 0x1
+ field public static final int WIFI_AWARE_DISCOVERY_LOST_REASON_PEER_NOT_VISIBLE = 1; // 0x1
+ field public static final int WIFI_AWARE_DISCOVERY_LOST_REASON_UNKNOWN = 0; // 0x0
+ }
+
+ public final class WifiAwareNetworkInfo implements android.os.Parcelable android.net.TransportInfo {
+ method public int describeContents();
+ method @NonNull public java.util.List<android.net.wifi.aware.WifiAwareChannelInfo> getChannelInfoList();
+ method @Nullable public java.net.Inet6Address getPeerIpv6Addr();
+ method public int getPort();
+ method public int getTransportProtocol();
+ method public void writeToParcel(android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.aware.WifiAwareNetworkInfo> CREATOR;
+ }
+
+ public final class WifiAwareNetworkSpecifier extends android.net.NetworkSpecifier implements android.os.Parcelable {
+ method public int describeContents();
+ method @IntRange(from=0) public int getChannelFrequencyMhz();
+ method @Nullable public android.net.wifi.aware.WifiAwareDataPathSecurityConfig getWifiAwareDataPathSecurityConfig();
+ method public boolean isChannelRequired();
+ method public void writeToParcel(android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.aware.WifiAwareNetworkSpecifier> CREATOR;
+ }
+
+ public static final class WifiAwareNetworkSpecifier.Builder {
+ ctor public WifiAwareNetworkSpecifier.Builder(@NonNull android.net.wifi.aware.DiscoverySession, @NonNull android.net.wifi.aware.PeerHandle);
+ ctor public WifiAwareNetworkSpecifier.Builder(@NonNull android.net.wifi.aware.PublishDiscoverySession);
+ method @NonNull public android.net.wifi.aware.WifiAwareNetworkSpecifier build();
+ method @NonNull public android.net.wifi.aware.WifiAwareNetworkSpecifier.Builder setChannelFrequencyMhz(@IntRange(from=0) int, boolean);
+ method @NonNull public android.net.wifi.aware.WifiAwareNetworkSpecifier.Builder setDataPathSecurityConfig(@NonNull android.net.wifi.aware.WifiAwareDataPathSecurityConfig);
+ method @NonNull public android.net.wifi.aware.WifiAwareNetworkSpecifier.Builder setPmk(@NonNull byte[]);
+ method @NonNull public android.net.wifi.aware.WifiAwareNetworkSpecifier.Builder setPort(@IntRange(from=0, to=65535) int);
+ method @NonNull public android.net.wifi.aware.WifiAwareNetworkSpecifier.Builder setPskPassphrase(@NonNull String);
+ method @NonNull public android.net.wifi.aware.WifiAwareNetworkSpecifier.Builder setTransportProtocol(@IntRange(from=0, to=255) int);
+ }
+
+ public class WifiAwareSession implements java.lang.AutoCloseable {
+ method public void close();
+ method @Deprecated public android.net.NetworkSpecifier createNetworkSpecifierOpen(int, @NonNull byte[]);
+ method @Deprecated public android.net.NetworkSpecifier createNetworkSpecifierPassphrase(int, @NonNull byte[], @NonNull String);
+ method @RequiresPermission(allOf={android.Manifest.permission.ACCESS_WIFI_STATE, android.Manifest.permission.CHANGE_WIFI_STATE, android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.NEARBY_WIFI_DEVICES}, conditional=true) public void publish(@NonNull android.net.wifi.aware.PublishConfig, @NonNull android.net.wifi.aware.DiscoverySessionCallback, @Nullable android.os.Handler);
+ method @RequiresPermission(allOf={android.Manifest.permission.ACCESS_WIFI_STATE, android.Manifest.permission.CHANGE_WIFI_STATE, android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.NEARBY_WIFI_DEVICES}, conditional=true) public void subscribe(@NonNull android.net.wifi.aware.SubscribeConfig, @NonNull android.net.wifi.aware.DiscoverySessionCallback, @Nullable android.os.Handler);
+ }
+
+}
+
+package android.net.wifi.hotspot2 {
+
+ public final class ConfigParser {
+ method public static android.net.wifi.hotspot2.PasspointConfiguration parsePasspointConfig(String, byte[]);
+ }
+
+ public final class PasspointConfiguration implements android.os.Parcelable {
+ ctor public PasspointConfiguration();
+ ctor public PasspointConfiguration(android.net.wifi.hotspot2.PasspointConfiguration);
+ method public int describeContents();
+ method public android.net.wifi.hotspot2.pps.Credential getCredential();
+ method @Nullable public String getDecoratedIdentityPrefix();
+ method public android.net.wifi.hotspot2.pps.HomeSp getHomeSp();
+ method public long getSubscriptionExpirationTimeMillis();
+ method @NonNull public String getUniqueId();
+ method public boolean isOsuProvisioned();
+ method public void setCredential(android.net.wifi.hotspot2.pps.Credential);
+ method public void setDecoratedIdentityPrefix(@Nullable String);
+ method public void setHomeSp(android.net.wifi.hotspot2.pps.HomeSp);
+ method public void setSubscriptionExpirationTimeInMillis(long);
+ method public void writeToParcel(android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.hotspot2.PasspointConfiguration> CREATOR;
+ }
+
+}
+
+package android.net.wifi.hotspot2.omadm {
+
+ public final class PpsMoParser {
+ method public static android.net.wifi.hotspot2.PasspointConfiguration parseMoText(String);
+ }
+
+}
+
+package android.net.wifi.hotspot2.pps {
+
+ public final class Credential implements android.os.Parcelable {
+ ctor public Credential();
+ ctor public Credential(android.net.wifi.hotspot2.pps.Credential);
+ method public int describeContents();
+ method public java.security.cert.X509Certificate getCaCertificate();
+ method public android.net.wifi.hotspot2.pps.Credential.CertificateCredential getCertCredential();
+ method public java.security.cert.X509Certificate[] getClientCertificateChain();
+ method public java.security.PrivateKey getClientPrivateKey();
+ method public String getRealm();
+ method public android.net.wifi.hotspot2.pps.Credential.SimCredential getSimCredential();
+ method public android.net.wifi.hotspot2.pps.Credential.UserCredential getUserCredential();
+ method public void setCaCertificate(java.security.cert.X509Certificate);
+ method public void setCertCredential(android.net.wifi.hotspot2.pps.Credential.CertificateCredential);
+ method public void setClientCertificateChain(java.security.cert.X509Certificate[]);
+ method public void setClientPrivateKey(java.security.PrivateKey);
+ method public void setRealm(String);
+ method public void setSimCredential(android.net.wifi.hotspot2.pps.Credential.SimCredential);
+ method public void setUserCredential(android.net.wifi.hotspot2.pps.Credential.UserCredential);
+ method public void writeToParcel(android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.hotspot2.pps.Credential> CREATOR;
+ }
+
+ public static final class Credential.CertificateCredential implements android.os.Parcelable {
+ ctor public Credential.CertificateCredential();
+ ctor public Credential.CertificateCredential(android.net.wifi.hotspot2.pps.Credential.CertificateCredential);
+ method public int describeContents();
+ method public byte[] getCertSha256Fingerprint();
+ method public String getCertType();
+ method public void setCertSha256Fingerprint(byte[]);
+ method public void setCertType(String);
+ method public void writeToParcel(android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.hotspot2.pps.Credential.CertificateCredential> CREATOR;
+ }
+
+ public static final class Credential.SimCredential implements android.os.Parcelable {
+ ctor public Credential.SimCredential();
+ ctor public Credential.SimCredential(android.net.wifi.hotspot2.pps.Credential.SimCredential);
+ method public int describeContents();
+ method public int getEapType();
+ method public String getImsi();
+ method public void setEapType(int);
+ method public void setImsi(String);
+ method public void writeToParcel(android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.hotspot2.pps.Credential.SimCredential> CREATOR;
+ }
+
+ public static final class Credential.UserCredential implements android.os.Parcelable {
+ ctor public Credential.UserCredential();
+ ctor public Credential.UserCredential(android.net.wifi.hotspot2.pps.Credential.UserCredential);
+ method public int describeContents();
+ method public int getEapType();
+ method public String getNonEapInnerMethod();
+ method public String getPassword();
+ method public String getUsername();
+ method public void setEapType(int);
+ method public void setNonEapInnerMethod(String);
+ method public void setPassword(String);
+ method public void setUsername(String);
+ method public void writeToParcel(android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.hotspot2.pps.Credential.UserCredential> CREATOR;
+ }
+
+ public final class HomeSp implements android.os.Parcelable {
+ ctor public HomeSp();
+ ctor public HomeSp(android.net.wifi.hotspot2.pps.HomeSp);
+ method public int describeContents();
+ method public String getFqdn();
+ method public String getFriendlyName();
+ method @Nullable public long[] getMatchAllOis();
+ method @Nullable public long[] getMatchAnyOis();
+ method @NonNull public java.util.Collection<java.lang.String> getOtherHomePartnersList();
+ method public long[] getRoamingConsortiumOis();
+ method public void setFqdn(String);
+ method public void setFriendlyName(String);
+ method public void setMatchAllOis(@Nullable long[]);
+ method public void setMatchAnyOis(@Nullable long[]);
+ method public void setOtherHomePartnersList(@NonNull java.util.Collection<java.lang.String>);
+ method public void setRoamingConsortiumOis(long[]);
+ method public void writeToParcel(android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.hotspot2.pps.HomeSp> CREATOR;
+ }
+
+}
+
+package android.net.wifi.p2p {
+
+ public class WifiP2pConfig implements android.os.Parcelable {
+ ctor public WifiP2pConfig();
+ ctor public WifiP2pConfig(android.net.wifi.p2p.WifiP2pConfig);
+ method public int describeContents();
+ method public int getGroupOwnerBand();
+ method public int getNetworkId();
+ method @Nullable public String getNetworkName();
+ method @Nullable public String getPassphrase();
+ method public void writeToParcel(android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.p2p.WifiP2pConfig> CREATOR;
+ field public static final int GROUP_OWNER_BAND_2GHZ = 1; // 0x1
+ field public static final int GROUP_OWNER_BAND_5GHZ = 2; // 0x2
+ field public static final int GROUP_OWNER_BAND_AUTO = 0; // 0x0
+ field public static final int GROUP_OWNER_INTENT_AUTO = -1; // 0xffffffff
+ field public static final int GROUP_OWNER_INTENT_MAX = 15; // 0xf
+ field public static final int GROUP_OWNER_INTENT_MIN = 0; // 0x0
+ field public String deviceAddress;
+ field @IntRange(from=0, to=15) public int groupOwnerIntent;
+ field public android.net.wifi.WpsInfo wps;
+ }
+
+ public static final class WifiP2pConfig.Builder {
+ ctor public WifiP2pConfig.Builder();
+ method @NonNull public android.net.wifi.p2p.WifiP2pConfig build();
+ method @NonNull public android.net.wifi.p2p.WifiP2pConfig.Builder enablePersistentMode(boolean);
+ method @NonNull public android.net.wifi.p2p.WifiP2pConfig.Builder setDeviceAddress(@Nullable android.net.MacAddress);
+ method @NonNull public android.net.wifi.p2p.WifiP2pConfig.Builder setGroupOperatingBand(int);
+ method @NonNull public android.net.wifi.p2p.WifiP2pConfig.Builder setGroupOperatingFrequency(int);
+ method @NonNull public android.net.wifi.p2p.WifiP2pConfig.Builder setNetworkName(@NonNull String);
+ method @NonNull public android.net.wifi.p2p.WifiP2pConfig.Builder setPassphrase(@NonNull String);
+ }
+
+ public class WifiP2pDevice implements android.os.Parcelable {
+ ctor public WifiP2pDevice();
+ ctor public WifiP2pDevice(android.net.wifi.p2p.WifiP2pDevice);
+ method public int describeContents();
+ method @NonNull public java.util.List<android.net.wifi.ScanResult.InformationElement> getVendorElements();
+ method @Nullable public android.net.wifi.p2p.WifiP2pWfdInfo getWfdInfo();
+ method public boolean isGroupOwner();
+ method public boolean isServiceDiscoveryCapable();
+ method public void update(@NonNull android.net.wifi.p2p.WifiP2pDevice);
+ method public boolean wpsDisplaySupported();
+ method public boolean wpsKeypadSupported();
+ method public boolean wpsPbcSupported();
+ method public void writeToParcel(android.os.Parcel, int);
+ field public static final int AVAILABLE = 3; // 0x3
+ field public static final int CONNECTED = 0; // 0x0
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.p2p.WifiP2pDevice> CREATOR;
+ field public static final int FAILED = 2; // 0x2
+ field public static final int INVITED = 1; // 0x1
+ field public static final int UNAVAILABLE = 4; // 0x4
+ field public String deviceAddress;
+ field public String deviceName;
+ field public String primaryDeviceType;
+ field public String secondaryDeviceType;
+ field public int status;
+ }
+
+ public class WifiP2pDeviceList implements android.os.Parcelable {
+ ctor public WifiP2pDeviceList();
+ ctor public WifiP2pDeviceList(android.net.wifi.p2p.WifiP2pDeviceList);
+ method public int describeContents();
+ method public android.net.wifi.p2p.WifiP2pDevice get(String);
+ method public java.util.Collection<android.net.wifi.p2p.WifiP2pDevice> getDeviceList();
+ method public void writeToParcel(android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.p2p.WifiP2pDeviceList> CREATOR;
+ }
+
+ public class WifiP2pGroup implements android.os.Parcelable {
+ ctor public WifiP2pGroup();
+ ctor public WifiP2pGroup(android.net.wifi.p2p.WifiP2pGroup);
+ method public int describeContents();
+ method public java.util.Collection<android.net.wifi.p2p.WifiP2pDevice> getClientList();
+ method public int getFrequency();
+ method public String getInterface();
+ method public int getNetworkId();
+ method public String getNetworkName();
+ method public android.net.wifi.p2p.WifiP2pDevice getOwner();
+ method public String getPassphrase();
+ method public boolean isGroupOwner();
+ method public void writeToParcel(android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.p2p.WifiP2pGroup> CREATOR;
+ field public static final int NETWORK_ID_PERSISTENT = -2; // 0xfffffffe
+ field public static final int NETWORK_ID_TEMPORARY = -1; // 0xffffffff
+ }
+
+ public class WifiP2pInfo implements android.os.Parcelable {
+ ctor public WifiP2pInfo();
+ ctor public WifiP2pInfo(android.net.wifi.p2p.WifiP2pInfo);
+ method public int describeContents();
+ method public void writeToParcel(android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.p2p.WifiP2pInfo> CREATOR;
+ field public boolean groupFormed;
+ field public java.net.InetAddress groupOwnerAddress;
+ field public boolean isGroupOwner;
+ }
+
+ public class WifiP2pManager {
+ method @RequiresPermission(android.Manifest.permission.MANAGE_WIFI_NETWORK_SELECTION) public void addExternalApprover(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, @NonNull android.net.MacAddress, @NonNull android.net.wifi.p2p.WifiP2pManager.ExternalApproverRequestListener);
+ method @RequiresPermission(allOf={android.Manifest.permission.NEARBY_WIFI_DEVICES, android.Manifest.permission.ACCESS_FINE_LOCATION}, conditional=true) public void addLocalService(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.nsd.WifiP2pServiceInfo, android.net.wifi.p2p.WifiP2pManager.ActionListener);
+ method public void addServiceRequest(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.nsd.WifiP2pServiceRequest, android.net.wifi.p2p.WifiP2pManager.ActionListener);
+ method public void cancelConnect(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.ActionListener);
+ method public void clearLocalServices(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.ActionListener);
+ method public void clearServiceRequests(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.ActionListener);
+ method @RequiresPermission(allOf={android.Manifest.permission.NEARBY_WIFI_DEVICES, android.Manifest.permission.ACCESS_FINE_LOCATION}, conditional=true) public void connect(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pConfig, android.net.wifi.p2p.WifiP2pManager.ActionListener);
+ method @RequiresPermission(allOf={android.Manifest.permission.NEARBY_WIFI_DEVICES, android.Manifest.permission.ACCESS_FINE_LOCATION}, conditional=true) public void createGroup(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.ActionListener);
+ method @RequiresPermission(allOf={android.Manifest.permission.NEARBY_WIFI_DEVICES, android.Manifest.permission.ACCESS_FINE_LOCATION}, conditional=true) public void createGroup(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, @Nullable android.net.wifi.p2p.WifiP2pConfig, @Nullable android.net.wifi.p2p.WifiP2pManager.ActionListener);
+ method @RequiresPermission(allOf={android.Manifest.permission.NEARBY_WIFI_DEVICES, android.Manifest.permission.ACCESS_FINE_LOCATION}, conditional=true) public void discoverPeers(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.ActionListener);
+ method @RequiresPermission(allOf={android.Manifest.permission.NEARBY_WIFI_DEVICES, android.Manifest.permission.ACCESS_FINE_LOCATION}, conditional=true) public void discoverPeersOnSocialChannels(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, @Nullable android.net.wifi.p2p.WifiP2pManager.ActionListener);
+ method @RequiresPermission(allOf={android.Manifest.permission.NEARBY_WIFI_DEVICES, android.Manifest.permission.ACCESS_FINE_LOCATION}, conditional=true) public void discoverPeersOnSpecificFrequency(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, int, @Nullable android.net.wifi.p2p.WifiP2pManager.ActionListener);
+ method @RequiresPermission(allOf={android.Manifest.permission.NEARBY_WIFI_DEVICES, android.Manifest.permission.ACCESS_FINE_LOCATION}, conditional=true) public void discoverServices(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.ActionListener);
+ method public static int getP2pMaxAllowedVendorElementsLengthBytes();
+ method public android.net.wifi.p2p.WifiP2pManager.Channel initialize(android.content.Context, android.os.Looper, android.net.wifi.p2p.WifiP2pManager.ChannelListener);
+ method public boolean isChannelConstrainedDiscoverySupported();
+ method public boolean isGroupClientRemovalSupported();
+ method public boolean isSetVendorElementsSupported();
+ method public void removeClient(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, @NonNull android.net.MacAddress, @Nullable android.net.wifi.p2p.WifiP2pManager.ActionListener);
+ method @RequiresPermission(android.Manifest.permission.MANAGE_WIFI_NETWORK_SELECTION) public void removeExternalApprover(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, @NonNull android.net.MacAddress, @Nullable android.net.wifi.p2p.WifiP2pManager.ActionListener);
+ method public void removeGroup(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.ActionListener);
+ method public void removeLocalService(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.nsd.WifiP2pServiceInfo, android.net.wifi.p2p.WifiP2pManager.ActionListener);
+ method public void removeServiceRequest(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.nsd.WifiP2pServiceRequest, android.net.wifi.p2p.WifiP2pManager.ActionListener);
+ method public void requestConnectionInfo(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.ConnectionInfoListener);
+ method @RequiresPermission(allOf={android.Manifest.permission.NEARBY_WIFI_DEVICES, android.Manifest.permission.ACCESS_FINE_LOCATION}, conditional=true) public void requestDeviceInfo(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, @NonNull android.net.wifi.p2p.WifiP2pManager.DeviceInfoListener);
+ method public void requestDiscoveryState(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, @NonNull android.net.wifi.p2p.WifiP2pManager.DiscoveryStateListener);
+ method @RequiresPermission(allOf={android.Manifest.permission.NEARBY_WIFI_DEVICES, android.Manifest.permission.ACCESS_FINE_LOCATION}, conditional=true) public void requestGroupInfo(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.GroupInfoListener);
+ method public void requestNetworkInfo(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, @NonNull android.net.wifi.p2p.WifiP2pManager.NetworkInfoListener);
+ method public void requestP2pState(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, @NonNull android.net.wifi.p2p.WifiP2pManager.P2pStateListener);
+ method @RequiresPermission(allOf={android.Manifest.permission.NEARBY_WIFI_DEVICES, android.Manifest.permission.ACCESS_FINE_LOCATION}, conditional=true) public void requestPeers(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.PeerListListener);
+ method @RequiresPermission(android.Manifest.permission.MANAGE_WIFI_NETWORK_SELECTION) public void setConnectionRequestResult(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, @NonNull android.net.MacAddress, int, @Nullable android.net.wifi.p2p.WifiP2pManager.ActionListener);
+ method @RequiresPermission(android.Manifest.permission.MANAGE_WIFI_NETWORK_SELECTION) public void setConnectionRequestResult(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, @NonNull android.net.MacAddress, int, @Nullable String, @Nullable android.net.wifi.p2p.WifiP2pManager.ActionListener);
+ method public void setDnsSdResponseListeners(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.DnsSdServiceResponseListener, android.net.wifi.p2p.WifiP2pManager.DnsSdTxtRecordListener);
+ method public void setServiceResponseListener(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.ServiceResponseListener);
+ method public void setUpnpServiceResponseListener(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.UpnpServiceResponseListener);
+ method @RequiresPermission(allOf={android.Manifest.permission.NEARBY_WIFI_DEVICES, android.Manifest.permission.OVERRIDE_WIFI_CONFIG}) public void setVendorElements(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, @NonNull java.util.List<android.net.wifi.ScanResult.InformationElement>, @Nullable android.net.wifi.p2p.WifiP2pManager.ActionListener);
+ method @RequiresPermission(allOf={android.Manifest.permission.NEARBY_WIFI_DEVICES, android.Manifest.permission.ACCESS_FINE_LOCATION}, conditional=true) public void startListening(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, @Nullable android.net.wifi.p2p.WifiP2pManager.ActionListener);
+ method public void stopListening(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, @Nullable android.net.wifi.p2p.WifiP2pManager.ActionListener);
+ method public void stopPeerDiscovery(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.ActionListener);
+ field public static final String ACTION_WIFI_P2P_REQUEST_RESPONSE_CHANGED = "android.net.wifi.p2p.action.WIFI_P2P_REQUEST_RESPONSE_CHANGED";
+ field public static final int BUSY = 2; // 0x2
+ field public static final int CONNECTION_REQUEST_ACCEPT = 0; // 0x0
+ field public static final int CONNECTION_REQUEST_DEFER_SHOW_PIN_TO_SERVICE = 3; // 0x3
+ field public static final int CONNECTION_REQUEST_DEFER_TO_SERVICE = 2; // 0x2
+ field public static final int CONNECTION_REQUEST_REJECT = 1; // 0x1
+ field public static final int ERROR = 0; // 0x0
+ field public static final String EXTRA_DISCOVERY_STATE = "discoveryState";
+ field public static final String EXTRA_NETWORK_INFO = "networkInfo";
+ field public static final String EXTRA_P2P_DEVICE_LIST = "wifiP2pDeviceList";
+ field public static final String EXTRA_REQUEST_CONFIG = "android.net.wifi.p2p.extra.REQUEST_CONFIG";
+ field public static final String EXTRA_REQUEST_RESPONSE = "android.net.wifi.p2p.extra.REQUEST_RESPONSE";
+ field public static final String EXTRA_WIFI_P2P_DEVICE = "wifiP2pDevice";
+ field public static final String EXTRA_WIFI_P2P_GROUP = "p2pGroupInfo";
+ field public static final String EXTRA_WIFI_P2P_INFO = "wifiP2pInfo";
+ field public static final String EXTRA_WIFI_STATE = "wifi_p2p_state";
+ field public static final int NO_SERVICE_REQUESTS = 3; // 0x3
+ field public static final int P2P_UNSUPPORTED = 1; // 0x1
+ field public static final String WIFI_P2P_CONNECTION_CHANGED_ACTION = "android.net.wifi.p2p.CONNECTION_STATE_CHANGE";
+ field public static final String WIFI_P2P_DISCOVERY_CHANGED_ACTION = "android.net.wifi.p2p.DISCOVERY_STATE_CHANGE";
+ field public static final int WIFI_P2P_DISCOVERY_STARTED = 2; // 0x2
+ field public static final int WIFI_P2P_DISCOVERY_STOPPED = 1; // 0x1
+ field public static final String WIFI_P2P_PEERS_CHANGED_ACTION = "android.net.wifi.p2p.PEERS_CHANGED";
+ field public static final String WIFI_P2P_STATE_CHANGED_ACTION = "android.net.wifi.p2p.STATE_CHANGED";
+ field public static final int WIFI_P2P_STATE_DISABLED = 1; // 0x1
+ field public static final int WIFI_P2P_STATE_ENABLED = 2; // 0x2
+ field public static final String WIFI_P2P_THIS_DEVICE_CHANGED_ACTION = "android.net.wifi.p2p.THIS_DEVICE_CHANGED";
+ }
+
+ public static interface WifiP2pManager.ActionListener {
+ method public void onFailure(int);
+ method public void onSuccess();
+ }
+
+ public static class WifiP2pManager.Channel implements java.lang.AutoCloseable {
+ method public void close();
+ }
+
+ public static interface WifiP2pManager.ChannelListener {
+ method public void onChannelDisconnected();
+ }
+
+ public static interface WifiP2pManager.ConnectionInfoListener {
+ method public void onConnectionInfoAvailable(android.net.wifi.p2p.WifiP2pInfo);
+ }
+
+ public static interface WifiP2pManager.DeviceInfoListener {
+ method public void onDeviceInfoAvailable(@Nullable android.net.wifi.p2p.WifiP2pDevice);
+ }
+
+ public static interface WifiP2pManager.DiscoveryStateListener {
+ method public void onDiscoveryStateAvailable(int);
+ }
+
+ public static interface WifiP2pManager.DnsSdServiceResponseListener {
+ method public void onDnsSdServiceAvailable(String, String, android.net.wifi.p2p.WifiP2pDevice);
+ }
+
+ public static interface WifiP2pManager.DnsSdTxtRecordListener {
+ method public void onDnsSdTxtRecordAvailable(String, java.util.Map<java.lang.String,java.lang.String>, android.net.wifi.p2p.WifiP2pDevice);
+ }
+
+ public static interface WifiP2pManager.ExternalApproverRequestListener {
+ method public void onAttached(@NonNull android.net.MacAddress);
+ method public void onConnectionRequested(int, @NonNull android.net.wifi.p2p.WifiP2pConfig, @NonNull android.net.wifi.p2p.WifiP2pDevice);
+ method public void onDetached(@NonNull android.net.MacAddress, int);
+ method public void onPinGenerated(@NonNull android.net.MacAddress, @NonNull String);
+ field public static final int APPROVER_DETACH_REASON_CLOSE = 3; // 0x3
+ field public static final int APPROVER_DETACH_REASON_FAILURE = 1; // 0x1
+ field public static final int APPROVER_DETACH_REASON_REMOVE = 0; // 0x0
+ field public static final int APPROVER_DETACH_REASON_REPLACE = 2; // 0x2
+ field public static final int REQUEST_TYPE_INVITATION = 1; // 0x1
+ field public static final int REQUEST_TYPE_JOIN = 2; // 0x2
+ field public static final int REQUEST_TYPE_NEGOTIATION = 0; // 0x0
+ }
+
+ public static interface WifiP2pManager.GroupInfoListener {
+ method public void onGroupInfoAvailable(android.net.wifi.p2p.WifiP2pGroup);
+ }
+
+ public static interface WifiP2pManager.NetworkInfoListener {
+ method public void onNetworkInfoAvailable(@NonNull android.net.NetworkInfo);
+ }
+
+ public static interface WifiP2pManager.P2pStateListener {
+ method public void onP2pStateAvailable(int);
+ }
+
+ public static interface WifiP2pManager.PeerListListener {
+ method public void onPeersAvailable(android.net.wifi.p2p.WifiP2pDeviceList);
+ }
+
+ public static interface WifiP2pManager.ServiceResponseListener {
+ method public void onServiceAvailable(int, byte[], android.net.wifi.p2p.WifiP2pDevice);
+ }
+
+ public static interface WifiP2pManager.UpnpServiceResponseListener {
+ method public void onUpnpServiceAvailable(java.util.List<java.lang.String>, android.net.wifi.p2p.WifiP2pDevice);
+ }
+
+ public final class WifiP2pWfdInfo implements android.os.Parcelable {
+ ctor public WifiP2pWfdInfo();
+ ctor public WifiP2pWfdInfo(@Nullable android.net.wifi.p2p.WifiP2pWfdInfo);
+ method public int describeContents();
+ method public int getControlPort();
+ method public int getDeviceInfo();
+ method public int getDeviceType();
+ method public int getMaxThroughput();
+ method public int getR2DeviceInfo();
+ method public int getR2DeviceType();
+ method public boolean isContentProtectionSupported();
+ method public boolean isCoupledSinkSupportedAtSink();
+ method public boolean isCoupledSinkSupportedAtSource();
+ method public boolean isEnabled();
+ method public boolean isR2Supported();
+ method public boolean isSessionAvailable();
+ method public void setContentProtectionSupported(boolean);
+ method public void setControlPort(@IntRange(from=0) int);
+ method public void setCoupledSinkSupportAtSink(boolean);
+ method public void setCoupledSinkSupportAtSource(boolean);
+ method public boolean setDeviceType(int);
+ method public void setEnabled(boolean);
+ method public void setMaxThroughput(@IntRange(from=0) int);
+ method public boolean setR2DeviceType(int);
+ method public void setSessionAvailable(boolean);
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.p2p.WifiP2pWfdInfo> CREATOR;
+ field public static final int DEVICE_INFO_AUDIO_ONLY_SUPPORT_AT_SOURCE = 2048; // 0x800
+ field public static final int DEVICE_INFO_AUDIO_UNSUPPORTED_AT_PRIMARY_SINK = 1024; // 0x400
+ field public static final int DEVICE_INFO_CONTENT_PROTECTION_SUPPORT = 256; // 0x100
+ field public static final int DEVICE_INFO_COUPLED_SINK_SUPPORT_AT_SINK = 8; // 0x8
+ field public static final int DEVICE_INFO_COUPLED_SINK_SUPPORT_AT_SOURCE = 4; // 0x4
+ field public static final int DEVICE_INFO_DEVICE_TYPE_MASK = 3; // 0x3
+ field public static final int DEVICE_INFO_PREFERRED_CONNECTIVITY_MASK = 128; // 0x80
+ field public static final int DEVICE_INFO_SESSION_AVAILABLE_MASK = 48; // 0x30
+ field public static final int DEVICE_INFO_TDLS_PERSISTENT_GROUP = 4096; // 0x1000
+ field public static final int DEVICE_INFO_TDLS_PERSISTENT_GROUP_REINVOKE = 8192; // 0x2000
+ field public static final int DEVICE_INFO_TIME_SYNCHRONIZATION_SUPPORT = 512; // 0x200
+ field public static final int DEVICE_INFO_WFD_SERVICE_DISCOVERY_SUPPORT = 64; // 0x40
+ field public static final int DEVICE_TYPE_PRIMARY_SINK = 1; // 0x1
+ field public static final int DEVICE_TYPE_SECONDARY_SINK = 2; // 0x2
+ field public static final int DEVICE_TYPE_SOURCE_OR_PRIMARY_SINK = 3; // 0x3
+ field public static final int DEVICE_TYPE_WFD_SOURCE = 0; // 0x0
+ field public static final int PREFERRED_CONNECTIVITY_P2P = 0; // 0x0
+ field public static final int PREFERRED_CONNECTIVITY_TDLS = 1; // 0x1
+ }
+
+}
+
+package android.net.wifi.p2p.nsd {
+
+ public class WifiP2pDnsSdServiceInfo extends android.net.wifi.p2p.nsd.WifiP2pServiceInfo {
+ method public static android.net.wifi.p2p.nsd.WifiP2pDnsSdServiceInfo newInstance(String, String, java.util.Map<java.lang.String,java.lang.String>);
+ }
+
+ public class WifiP2pDnsSdServiceRequest extends android.net.wifi.p2p.nsd.WifiP2pServiceRequest {
+ method public static android.net.wifi.p2p.nsd.WifiP2pDnsSdServiceRequest newInstance();
+ method public static android.net.wifi.p2p.nsd.WifiP2pDnsSdServiceRequest newInstance(String);
+ method public static android.net.wifi.p2p.nsd.WifiP2pDnsSdServiceRequest newInstance(String, String);
+ }
+
+ public class WifiP2pServiceInfo implements android.os.Parcelable {
+ method public int describeContents();
+ method public void writeToParcel(android.os.Parcel, int);
+ field public static final int SERVICE_TYPE_ALL = 0; // 0x0
+ field public static final int SERVICE_TYPE_BONJOUR = 1; // 0x1
+ field public static final int SERVICE_TYPE_UPNP = 2; // 0x2
+ field public static final int SERVICE_TYPE_VENDOR_SPECIFIC = 255; // 0xff
+ }
+
+ public class WifiP2pServiceRequest implements android.os.Parcelable {
+ method public int describeContents();
+ method public static android.net.wifi.p2p.nsd.WifiP2pServiceRequest newInstance(int, String);
+ method public static android.net.wifi.p2p.nsd.WifiP2pServiceRequest newInstance(int);
+ method public void writeToParcel(android.os.Parcel, int);
+ }
+
+ public class WifiP2pUpnpServiceInfo extends android.net.wifi.p2p.nsd.WifiP2pServiceInfo {
+ method public static android.net.wifi.p2p.nsd.WifiP2pUpnpServiceInfo newInstance(String, String, java.util.List<java.lang.String>);
+ }
+
+ public class WifiP2pUpnpServiceRequest extends android.net.wifi.p2p.nsd.WifiP2pServiceRequest {
+ method public static android.net.wifi.p2p.nsd.WifiP2pUpnpServiceRequest newInstance();
+ method public static android.net.wifi.p2p.nsd.WifiP2pUpnpServiceRequest newInstance(String);
+ }
+
+}
+
+package android.net.wifi.rtt {
+
+ public class CivicLocationKeys {
+ field public static final int ADDITIONAL_CODE = 32; // 0x20
+ field public static final int APT = 26; // 0x1a
+ field public static final int BOROUGH = 4; // 0x4
+ field public static final int BRANCH_ROAD_NAME = 36; // 0x24
+ field public static final int BUILDING = 25; // 0x19
+ field public static final int CITY = 3; // 0x3
+ field public static final int COUNTY = 2; // 0x2
+ field public static final int DESK = 33; // 0x21
+ field public static final int FLOOR = 27; // 0x1b
+ field public static final int GROUP_OF_STREETS = 6; // 0x6
+ field public static final int HNO = 19; // 0x13
+ field public static final int HNS = 20; // 0x14
+ field public static final int LANGUAGE = 0; // 0x0
+ field public static final int LMK = 21; // 0x15
+ field public static final int LOC = 22; // 0x16
+ field public static final int NAM = 23; // 0x17
+ field public static final int NEIGHBORHOOD = 5; // 0x5
+ field public static final int PCN = 30; // 0x1e
+ field public static final int POD = 17; // 0x11
+ field public static final int POSTAL_CODE = 24; // 0x18
+ field public static final int PO_BOX = 31; // 0x1f
+ field public static final int PRD = 16; // 0x10
+ field public static final int PRIMARY_ROAD_NAME = 34; // 0x22
+ field public static final int ROAD_SECTION = 35; // 0x23
+ field public static final int ROOM = 28; // 0x1c
+ field public static final int SCRIPT = 128; // 0x80
+ field public static final int STATE = 1; // 0x1
+ field public static final int STREET_NAME_POST_MODIFIER = 39; // 0x27
+ field public static final int STREET_NAME_PRE_MODIFIER = 38; // 0x26
+ field public static final int STS = 18; // 0x12
+ field public static final int SUBBRANCH_ROAD_NAME = 37; // 0x25
+ field public static final int TYPE_OF_PLACE = 29; // 0x1d
+ }
+
+ public final class RangingRequest implements android.os.Parcelable {
+ method public int describeContents();
+ method public static int getDefaultRttBurstSize();
+ method public static int getMaxPeers();
+ method public static int getMaxRttBurstSize();
+ method public static int getMinRttBurstSize();
+ method public int getRttBurstSize();
+ method public void writeToParcel(android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.rtt.RangingRequest> CREATOR;
+ }
+
+ public static final class RangingRequest.Builder {
+ ctor public RangingRequest.Builder();
+ method @NonNull public android.net.wifi.rtt.RangingRequest.Builder addAccessPoint(@NonNull android.net.wifi.ScanResult);
+ method @NonNull public android.net.wifi.rtt.RangingRequest.Builder addAccessPoints(@NonNull java.util.List<android.net.wifi.ScanResult>);
+ method @NonNull public android.net.wifi.rtt.RangingRequest.Builder addNon80211mcCapableAccessPoint(@NonNull android.net.wifi.ScanResult);
+ method @NonNull public android.net.wifi.rtt.RangingRequest.Builder addNon80211mcCapableAccessPoints(@NonNull java.util.List<android.net.wifi.ScanResult>);
+ method @NonNull public android.net.wifi.rtt.RangingRequest.Builder addResponder(@NonNull android.net.wifi.rtt.ResponderConfig);
+ method @NonNull public android.net.wifi.rtt.RangingRequest.Builder addResponders(@NonNull java.util.List<android.net.wifi.rtt.ResponderConfig>);
+ method public android.net.wifi.rtt.RangingRequest.Builder addWifiAwarePeer(@NonNull android.net.MacAddress);
+ method public android.net.wifi.rtt.RangingRequest.Builder addWifiAwarePeer(@NonNull android.net.wifi.aware.PeerHandle);
+ method public android.net.wifi.rtt.RangingRequest build();
+ method @NonNull public android.net.wifi.rtt.RangingRequest.Builder setRttBurstSize(int);
+ }
+
+ public final class RangingResult implements android.os.Parcelable {
+ method public int describeContents();
+ method public int getDistanceMm();
+ method public int getDistanceStdDevMm();
+ method @Nullable public android.net.MacAddress getMacAddress();
+ method public int getNumAttemptedMeasurements();
+ method public int getNumSuccessfulMeasurements();
+ method @Nullable public android.net.wifi.aware.PeerHandle getPeerHandle();
+ method public long getRangingTimestampMillis();
+ method public int getRssi();
+ method public int getStatus();
+ method @Nullable public android.net.wifi.rtt.ResponderLocation getUnverifiedResponderLocation();
+ method public boolean is80211mcMeasurement();
+ method public void writeToParcel(android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.rtt.RangingResult> CREATOR;
+ field public static final int STATUS_FAIL = 1; // 0x1
+ field public static final int STATUS_RESPONDER_DOES_NOT_SUPPORT_IEEE80211MC = 2; // 0x2
+ field public static final int STATUS_SUCCESS = 0; // 0x0
+ }
+
+ public abstract class RangingResultCallback {
+ ctor public RangingResultCallback();
+ method public abstract void onRangingFailure(int);
+ method public abstract void onRangingResults(@NonNull java.util.List<android.net.wifi.rtt.RangingResult>);
+ field public static final int STATUS_CODE_FAIL = 1; // 0x1
+ field public static final int STATUS_CODE_FAIL_RTT_NOT_AVAILABLE = 2; // 0x2
+ }
+
+ public final class ResponderConfig implements android.os.Parcelable {
+ method public int describeContents();
+ method @NonNull public static android.net.wifi.rtt.ResponderConfig fromScanResult(@NonNull android.net.wifi.ScanResult);
+ method @IntRange(from=0) public int getCenterFreq0Mhz();
+ method @IntRange(from=0) public int getCenterFreq1Mhz();
+ method public int getChannelWidth();
+ method @IntRange(from=0) public int getFrequencyMhz();
+ method @Nullable public android.net.MacAddress getMacAddress();
+ method public int getPreamble();
+ method public boolean is80211mcSupported();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.rtt.ResponderConfig> CREATOR;
+ }
+
+ public static final class ResponderConfig.Builder {
+ ctor public ResponderConfig.Builder();
+ method @NonNull public android.net.wifi.rtt.ResponderConfig build();
+ method @NonNull public android.net.wifi.rtt.ResponderConfig.Builder set80211mcSupported(boolean);
+ method @NonNull public android.net.wifi.rtt.ResponderConfig.Builder setCenterFreq0Mhz(@IntRange(from=0) int);
+ method @NonNull public android.net.wifi.rtt.ResponderConfig.Builder setCenterFreq1Mhz(@IntRange(from=0) int);
+ method @NonNull public android.net.wifi.rtt.ResponderConfig.Builder setChannelWidth(int);
+ method @NonNull public android.net.wifi.rtt.ResponderConfig.Builder setFrequencyMhz(@IntRange(from=0) int);
+ method @NonNull public android.net.wifi.rtt.ResponderConfig.Builder setMacAddress(@NonNull android.net.MacAddress);
+ method @NonNull public android.net.wifi.rtt.ResponderConfig.Builder setPreamble(int);
+ }
+
+ public final class ResponderLocation implements android.os.Parcelable {
+ method public int describeContents();
+ method public double getAltitude();
+ method public int getAltitudeType();
+ method public double getAltitudeUncertainty();
+ method public java.util.List<android.net.MacAddress> getColocatedBssids();
+ method public int getDatum();
+ method public int getExpectedToMove();
+ method public double getFloorNumber();
+ method public double getHeightAboveFloorMeters();
+ method public double getHeightAboveFloorUncertaintyMeters();
+ method public double getLatitude();
+ method public double getLatitudeUncertainty();
+ method public int getLciVersion();
+ method public double getLongitude();
+ method public double getLongitudeUncertainty();
+ method @Nullable public String getMapImageMimeType();
+ method @Nullable public android.net.Uri getMapImageUri();
+ method public boolean getRegisteredLocationAgreementIndication();
+ method public boolean isLciSubelementValid();
+ method public boolean isZaxisSubelementValid();
+ method @Nullable public android.location.Address toCivicLocationAddress();
+ method @Nullable public android.util.SparseArray<java.lang.String> toCivicLocationSparseArray();
+ method @NonNull public android.location.Location toLocation();
+ method public void writeToParcel(android.os.Parcel, int);
+ field public static final int ALTITUDE_FLOORS = 2; // 0x2
+ field public static final int ALTITUDE_METERS = 1; // 0x1
+ field public static final int ALTITUDE_UNDEFINED = 0; // 0x0
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.rtt.ResponderLocation> CREATOR;
+ field public static final int DATUM_NAD83_MLLW = 3; // 0x3
+ field public static final int DATUM_NAD83_NAV88 = 2; // 0x2
+ field public static final int DATUM_UNDEFINED = 0; // 0x0
+ field public static final int DATUM_WGS84 = 1; // 0x1
+ field public static final int LCI_VERSION_1 = 1; // 0x1
+ field public static final int LOCATION_FIXED = 0; // 0x0
+ field public static final int LOCATION_MOVEMENT_UNKNOWN = 2; // 0x2
+ field public static final int LOCATION_RESERVED = 3; // 0x3
+ field public static final int LOCATION_VARIABLE = 1; // 0x1
+ }
+
+ public class WifiRttManager {
+ method public boolean isAvailable();
+ method @RequiresPermission(allOf={android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.CHANGE_WIFI_STATE, android.Manifest.permission.ACCESS_WIFI_STATE, android.Manifest.permission.NEARBY_WIFI_DEVICES}) public void startRanging(@NonNull android.net.wifi.rtt.RangingRequest, @NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.rtt.RangingResultCallback);
+ field public static final String ACTION_WIFI_RTT_STATE_CHANGED = "android.net.wifi.rtt.action.WIFI_RTT_STATE_CHANGED";
+ }
+
+}
+
diff --git a/extensions/3/public/api/service-art-removed.txt b/extensions/3/public/api/service-art-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/public/api/service-art-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/public/api/service-art.txt b/extensions/3/public/api/service-art.txt
new file mode 100644
index 000000000..c7844e078
--- /dev/null
+++ b/extensions/3/public/api/service-art.txt
@@ -0,0 +1,9 @@
+// Signature format: 2.0
+package com.android.server.art {
+
+ public final class ArtManagerLocal {
+ ctor public ArtManagerLocal();
+ }
+
+}
+
diff --git a/extensions/3/public/api/service-media-s-removed.txt b/extensions/3/public/api/service-media-s-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/public/api/service-media-s-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/public/api/service-media-s.txt b/extensions/3/public/api/service-media-s.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/public/api/service-media-s.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/public/api/service-permission-removed.txt b/extensions/3/public/api/service-permission-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/public/api/service-permission-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/public/api/service-permission.txt b/extensions/3/public/api/service-permission.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/public/api/service-permission.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/public/api/service-sdksandbox-removed.txt b/extensions/3/public/api/service-sdksandbox-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/public/api/service-sdksandbox-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/public/api/service-sdksandbox.txt b/extensions/3/public/api/service-sdksandbox.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/public/api/service-sdksandbox.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/system-server/api/service-art-removed.txt b/extensions/3/system-server/api/service-art-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/system-server/api/service-art-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/system-server/api/service-art.txt b/extensions/3/system-server/api/service-art.txt
new file mode 100644
index 000000000..c7844e078
--- /dev/null
+++ b/extensions/3/system-server/api/service-art.txt
@@ -0,0 +1,9 @@
+// Signature format: 2.0
+package com.android.server.art {
+
+ public final class ArtManagerLocal {
+ ctor public ArtManagerLocal();
+ }
+
+}
+
diff --git a/extensions/3/system-server/api/service-media-s-removed.txt b/extensions/3/system-server/api/service-media-s-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/system-server/api/service-media-s-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/system-server/api/service-media-s.txt b/extensions/3/system-server/api/service-media-s.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/system-server/api/service-media-s.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/system-server/api/service-permission-removed.txt b/extensions/3/system-server/api/service-permission-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/system-server/api/service-permission-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/system-server/api/service-permission.txt b/extensions/3/system-server/api/service-permission.txt
new file mode 100644
index 000000000..b1869c2c7
--- /dev/null
+++ b/extensions/3/system-server/api/service-permission.txt
@@ -0,0 +1,54 @@
+// Signature format: 2.0
+package com.android.permission.persistence {
+
+ public interface RuntimePermissionsPersistence {
+ method @NonNull public static com.android.permission.persistence.RuntimePermissionsPersistence createInstance();
+ method public void deleteForUser(@NonNull android.os.UserHandle);
+ method @Nullable public com.android.permission.persistence.RuntimePermissionsState readForUser(@NonNull android.os.UserHandle);
+ method public void writeForUser(@NonNull com.android.permission.persistence.RuntimePermissionsState, @NonNull android.os.UserHandle);
+ }
+
+ public final class RuntimePermissionsState {
+ ctor public RuntimePermissionsState(int, @Nullable String, @NonNull java.util.Map<java.lang.String,java.util.List<com.android.permission.persistence.RuntimePermissionsState.PermissionState>>, @NonNull java.util.Map<java.lang.String,java.util.List<com.android.permission.persistence.RuntimePermissionsState.PermissionState>>);
+ method @Nullable public String getFingerprint();
+ method @NonNull public java.util.Map<java.lang.String,java.util.List<com.android.permission.persistence.RuntimePermissionsState.PermissionState>> getPackagePermissions();
+ method @NonNull public java.util.Map<java.lang.String,java.util.List<com.android.permission.persistence.RuntimePermissionsState.PermissionState>> getSharedUserPermissions();
+ method public int getVersion();
+ field public static final int NO_VERSION = -1; // 0xffffffff
+ }
+
+ public static final class RuntimePermissionsState.PermissionState {
+ ctor public RuntimePermissionsState.PermissionState(@NonNull String, boolean, int);
+ method public int getFlags();
+ method @NonNull public String getName();
+ method public boolean isGranted();
+ }
+
+}
+
+package com.android.role {
+
+ public interface RoleManagerLocal {
+ method @NonNull public java.util.Map<java.lang.String,java.util.Set<java.lang.String>> getRolesAndHolders(int);
+ }
+
+}
+
+package com.android.role.persistence {
+
+ public interface RolesPersistence {
+ method @NonNull public static com.android.role.persistence.RolesPersistence createInstance();
+ method public void deleteForUser(@NonNull android.os.UserHandle);
+ method @Nullable public com.android.role.persistence.RolesState readForUser(@NonNull android.os.UserHandle);
+ method public void writeForUser(@NonNull com.android.role.persistence.RolesState, @NonNull android.os.UserHandle);
+ }
+
+ public final class RolesState {
+ ctor public RolesState(int, @Nullable String, @NonNull java.util.Map<java.lang.String,java.util.Set<java.lang.String>>);
+ method @Nullable public String getPackagesHash();
+ method @NonNull public java.util.Map<java.lang.String,java.util.Set<java.lang.String>> getRoles();
+ method public int getVersion();
+ }
+
+}
+
diff --git a/extensions/3/system-server/api/service-sdksandbox-removed.txt b/extensions/3/system-server/api/service-sdksandbox-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/system-server/api/service-sdksandbox-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/system-server/api/service-sdksandbox.txt b/extensions/3/system-server/api/service-sdksandbox.txt
new file mode 100644
index 000000000..4e077078c
--- /dev/null
+++ b/extensions/3/system-server/api/service-sdksandbox.txt
@@ -0,0 +1,16 @@
+// Signature format: 2.0
+package com.android.server.sdksandbox {
+
+ public interface SdkSandboxManagerLocal {
+ method public void enforceAllowedToSendBroadcast(@NonNull android.content.Intent);
+ method public void enforceAllowedToStartActivity(@NonNull android.content.Intent);
+ method public void enforceAllowedToStartOrBindService(@NonNull android.content.Intent);
+ method @NonNull public String getSdkSandboxProcessNameForInstrumentation(@NonNull android.content.pm.ApplicationInfo);
+ method public void notifyInstrumentationFinished(@NonNull String, int);
+ method public void notifyInstrumentationStarted(@NonNull String, int);
+ field public static final String SERVICE_INTERFACE = "com.android.sdksandbox.SdkSandboxService";
+ field public static final String VERIFIER_RECEIVER = "com.android.server.sdksandbox.SdkSandboxVerifierReceiver";
+ }
+
+}
+
diff --git a/extensions/3/system/api/android.net.ipsec.ike-removed.txt b/extensions/3/system/api/android.net.ipsec.ike-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/system/api/android.net.ipsec.ike-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/system/api/android.net.ipsec.ike.txt b/extensions/3/system/api/android.net.ipsec.ike.txt
new file mode 100644
index 000000000..f09f33d18
--- /dev/null
+++ b/extensions/3/system/api/android.net.ipsec.ike.txt
@@ -0,0 +1,155 @@
+// Signature format: 2.0
+package android.net.eap {
+
+ public final class EapSessionConfig {
+ method @Deprecated @Nullable public android.net.eap.EapSessionConfig.EapMsChapV2Config getEapMsChapV2onfig();
+ }
+
+ @Deprecated public abstract static class EapSessionConfig.EapUiccConfig extends android.net.eap.EapSessionConfig.EapMethodConfig {
+ method @Deprecated public int getAppType();
+ method @Deprecated public int getSubId();
+ }
+
+}
+
+package android.net.ipsec.ike {
+
+ public interface ChildSessionCallback {
+ method @Deprecated public default void onClosedExceptionally(@NonNull android.net.ipsec.ike.exceptions.IkeException);
+ method public default void onIpSecTransformsMigrated(@NonNull android.net.IpSecTransform, @NonNull android.net.IpSecTransform);
+ }
+
+ public final class ChildSessionConfiguration {
+ method @NonNull public java.util.List<android.net.LinkAddress> getInternalAddresses();
+ method @NonNull public java.util.List<java.net.InetAddress> getInternalDhcpServers();
+ method @NonNull public java.util.List<java.net.InetAddress> getInternalDnsServers();
+ method @NonNull public java.util.List<android.net.IpPrefix> getInternalSubnets();
+ }
+
+ public static final class ChildSessionConfiguration.Builder {
+ method @NonNull public android.net.ipsec.ike.ChildSessionConfiguration.Builder addInternalAddress(@NonNull android.net.LinkAddress);
+ method @NonNull public android.net.ipsec.ike.ChildSessionConfiguration.Builder addInternalDhcpServer(@NonNull java.net.InetAddress);
+ method @NonNull public android.net.ipsec.ike.ChildSessionConfiguration.Builder addInternalDnsServer(@NonNull java.net.InetAddress);
+ method @NonNull public android.net.ipsec.ike.ChildSessionConfiguration.Builder addInternalSubnet(@NonNull android.net.IpPrefix);
+ method @NonNull public android.net.ipsec.ike.ChildSessionConfiguration.Builder clearInternalAddresses();
+ method @NonNull public android.net.ipsec.ike.ChildSessionConfiguration.Builder clearInternalDhcpServers();
+ method @NonNull public android.net.ipsec.ike.ChildSessionConfiguration.Builder clearInternalDnsServers();
+ method @NonNull public android.net.ipsec.ike.ChildSessionConfiguration.Builder clearInternalSubnets();
+ }
+
+ public abstract class ChildSessionParams {
+ method @Deprecated @NonNull public java.util.List<android.net.ipsec.ike.ChildSaProposal> getSaProposals();
+ }
+
+ public final class IkeSession implements java.lang.AutoCloseable {
+ method public void setNetwork(@NonNull android.net.Network);
+ }
+
+ public interface IkeSessionCallback {
+ method @Deprecated public default void onClosedExceptionally(@NonNull android.net.ipsec.ike.exceptions.IkeException);
+ method @Deprecated public default void onError(@NonNull android.net.ipsec.ike.exceptions.IkeProtocolException);
+ method public default void onIkeSessionConnectionInfoChanged(@NonNull android.net.ipsec.ike.IkeSessionConnectionInfo);
+ }
+
+ public final class IkeSessionConfiguration {
+ method @NonNull public java.util.List<java.net.InetAddress> getPcscfServers();
+ }
+
+ public static final class IkeSessionConfiguration.Builder {
+ method @NonNull public android.net.ipsec.ike.IkeSessionConfiguration.Builder addPcscfServer(@NonNull java.net.InetAddress);
+ method @NonNull public android.net.ipsec.ike.IkeSessionConfiguration.Builder clearPcscfServers();
+ }
+
+ public final class IkeSessionParams {
+ method @NonNull public java.util.List<android.net.ipsec.ike.IkeSessionParams.IkeConfigRequest> getConfigurationRequests();
+ method @IntRange(from=0x0, to=0x3f) public int getDscp();
+ method @Nullable public android.net.ipsec.ike.ike3gpp.Ike3gppExtension getIke3gppExtension();
+ method @Deprecated @NonNull public java.util.List<android.net.ipsec.ike.IkeSaProposal> getSaProposals();
+ }
+
+ public static final class IkeSessionParams.Builder {
+ ctor @Deprecated public IkeSessionParams.Builder(@NonNull android.content.Context);
+ method @NonNull public android.net.ipsec.ike.IkeSessionParams.Builder addPcscfServerRequest(@NonNull java.net.InetAddress);
+ method @NonNull public android.net.ipsec.ike.IkeSessionParams.Builder addPcscfServerRequest(int);
+ method @Deprecated @NonNull public android.net.ipsec.ike.IkeSessionParams.Builder addSaProposal(@NonNull android.net.ipsec.ike.IkeSaProposal);
+ method @NonNull public android.net.ipsec.ike.IkeSessionParams.Builder setDscp(@IntRange(from=0x0, to=0x3f) int);
+ method @NonNull public android.net.ipsec.ike.IkeSessionParams.Builder setIke3gppExtension(@NonNull android.net.ipsec.ike.ike3gpp.Ike3gppExtension);
+ }
+
+ public static interface IkeSessionParams.ConfigRequestIpv4PcscfServer extends android.net.ipsec.ike.IkeSessionParams.IkeConfigRequest {
+ method @Nullable public java.net.Inet4Address getAddress();
+ }
+
+ public static interface IkeSessionParams.ConfigRequestIpv6PcscfServer extends android.net.ipsec.ike.IkeSessionParams.IkeConfigRequest {
+ method @Nullable public java.net.Inet6Address getAddress();
+ }
+
+ public static interface IkeSessionParams.IkeConfigRequest {
+ }
+
+ public static final class TransportModeChildSessionParams.Builder {
+ method @Deprecated @NonNull public android.net.ipsec.ike.TransportModeChildSessionParams.Builder addSaProposal(@NonNull android.net.ipsec.ike.ChildSaProposal);
+ }
+
+ public static final class TunnelModeChildSessionParams.Builder {
+ method @Deprecated @NonNull public android.net.ipsec.ike.TunnelModeChildSessionParams.Builder addSaProposal(@NonNull android.net.ipsec.ike.ChildSaProposal);
+ }
+
+}
+
+package android.net.ipsec.ike.exceptions {
+
+ public abstract class IkeProtocolException extends android.net.ipsec.ike.exceptions.IkeException {
+ method @Nullable public byte[] getErrorData();
+ }
+
+}
+
+package android.net.ipsec.ike.ike3gpp {
+
+ public final class Ike3gppBackoffTimer extends android.net.ipsec.ike.ike3gpp.Ike3gppData {
+ ctor public Ike3gppBackoffTimer(byte, int);
+ method public int getBackoffCause();
+ method public byte getBackoffTimer();
+ method public int getDataType();
+ field public static final int ERROR_TYPE_NETWORK_FAILURE = 10500; // 0x2904
+ field public static final int ERROR_TYPE_NO_APN_SUBSCRIPTION = 9002; // 0x232a
+ }
+
+ public abstract class Ike3gppData {
+ method public abstract int getDataType();
+ field public static final int DATA_TYPE_NOTIFY_BACKOFF_TIMER = 2; // 0x2
+ field public static final int DATA_TYPE_NOTIFY_N1_MODE_INFORMATION = 1; // 0x1
+ }
+
+ public final class Ike3gppExtension {
+ ctor public Ike3gppExtension(@NonNull android.net.ipsec.ike.ike3gpp.Ike3gppParams, @NonNull android.net.ipsec.ike.ike3gpp.Ike3gppExtension.Ike3gppDataListener);
+ method @NonNull public android.net.ipsec.ike.ike3gpp.Ike3gppExtension.Ike3gppDataListener getIke3gppDataListener();
+ method @NonNull public android.net.ipsec.ike.ike3gpp.Ike3gppParams getIke3gppParams();
+ }
+
+ public static interface Ike3gppExtension.Ike3gppDataListener {
+ method public void onIke3gppDataReceived(@NonNull java.util.List<android.net.ipsec.ike.ike3gpp.Ike3gppData>);
+ }
+
+ public final class Ike3gppN1ModeInformation extends android.net.ipsec.ike.ike3gpp.Ike3gppData {
+ ctor public Ike3gppN1ModeInformation(@NonNull byte[]);
+ method public int getDataType();
+ method @NonNull public byte[] getSnssai();
+ }
+
+ public final class Ike3gppParams {
+ method @Nullable public String getMobileDeviceIdentity();
+ method public byte getPduSessionId();
+ field public static final byte PDU_SESSION_ID_UNSET = 0; // 0x0
+ }
+
+ public static final class Ike3gppParams.Builder {
+ ctor public Ike3gppParams.Builder();
+ method @NonNull public android.net.ipsec.ike.ike3gpp.Ike3gppParams build();
+ method @NonNull public android.net.ipsec.ike.ike3gpp.Ike3gppParams.Builder setMobileDeviceIdentity(@Nullable String);
+ method @NonNull public android.net.ipsec.ike.ike3gpp.Ike3gppParams.Builder setPduSessionId(byte);
+ }
+
+}
+
diff --git a/extensions/3/system/api/art.module.public.api-removed.txt b/extensions/3/system/api/art.module.public.api-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/system/api/art.module.public.api-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/system/api/art.module.public.api.txt b/extensions/3/system/api/art.module.public.api.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/system/api/art.module.public.api.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/system/api/conscrypt.module.public.api-removed.txt b/extensions/3/system/api/conscrypt.module.public.api-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/system/api/conscrypt.module.public.api-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/system/api/conscrypt.module.public.api.txt b/extensions/3/system/api/conscrypt.module.public.api.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/system/api/conscrypt.module.public.api.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/system/api/framework-adservices-removed.txt b/extensions/3/system/api/framework-adservices-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/system/api/framework-adservices-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/system/api/framework-adservices.txt b/extensions/3/system/api/framework-adservices.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/system/api/framework-adservices.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/system/api/framework-appsearch-removed.txt b/extensions/3/system/api/framework-appsearch-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/system/api/framework-appsearch-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/system/api/framework-appsearch.txt b/extensions/3/system/api/framework-appsearch.txt
new file mode 100644
index 000000000..4a6194e29
--- /dev/null
+++ b/extensions/3/system/api/framework-appsearch.txt
@@ -0,0 +1,9 @@
+// Signature format: 2.0
+package android.app.appsearch {
+
+ public class AppSearchManagerFrameworkInitializer {
+ method public static void initialize();
+ }
+
+}
+
diff --git a/extensions/3/system/api/framework-connectivity-removed.txt b/extensions/3/system/api/framework-connectivity-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/system/api/framework-connectivity-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/system/api/framework-connectivity-t-removed.txt b/extensions/3/system/api/framework-connectivity-t-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/system/api/framework-connectivity-t-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/system/api/framework-connectivity-t.txt b/extensions/3/system/api/framework-connectivity-t.txt
new file mode 100644
index 000000000..c2d245c83
--- /dev/null
+++ b/extensions/3/system/api/framework-connectivity-t.txt
@@ -0,0 +1,349 @@
+// Signature format: 2.0
+package android.app.usage {
+
+ public class NetworkStatsManager {
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_STATS_PROVIDER, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void registerNetworkStatsProvider(@NonNull String, @NonNull android.net.netstats.provider.NetworkStatsProvider);
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_STATS_PROVIDER, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void unregisterNetworkStatsProvider(@NonNull android.net.netstats.provider.NetworkStatsProvider);
+ }
+
+}
+
+package android.nearby {
+
+ public interface BroadcastCallback {
+ method public void onStatusChanged(int);
+ field public static final int STATUS_FAILURE = 1; // 0x1
+ field public static final int STATUS_FAILURE_ALREADY_REGISTERED = 2; // 0x2
+ field public static final int STATUS_FAILURE_MISSING_PERMISSIONS = 4; // 0x4
+ field public static final int STATUS_FAILURE_SIZE_EXCEED_LIMIT = 3; // 0x3
+ field public static final int STATUS_OK = 0; // 0x0
+ }
+
+ public abstract class BroadcastRequest {
+ method @NonNull public java.util.List<java.lang.Integer> getMediums();
+ method @IntRange(from=0xffffff81, to=126) public int getTxPower();
+ method public int getType();
+ method public int getVersion();
+ field public static final int BROADCAST_TYPE_NEARBY_PRESENCE = 3; // 0x3
+ field public static final int BROADCAST_TYPE_UNKNOWN = -1; // 0xffffffff
+ field public static final int MEDIUM_BLE = 1; // 0x1
+ field public static final int PRESENCE_VERSION_UNKNOWN = -1; // 0xffffffff
+ field public static final int PRESENCE_VERSION_V0 = 0; // 0x0
+ field public static final int PRESENCE_VERSION_V1 = 1; // 0x1
+ field public static final int UNKNOWN_TX_POWER = -127; // 0xffffff81
+ }
+
+ public final class CredentialElement implements android.os.Parcelable {
+ ctor public CredentialElement(@NonNull String, @NonNull byte[]);
+ method public int describeContents();
+ method @NonNull public String getKey();
+ method @NonNull public byte[] getValue();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.nearby.CredentialElement> CREATOR;
+ }
+
+ public final class DataElement implements android.os.Parcelable {
+ ctor public DataElement(int, @NonNull byte[]);
+ method public int describeContents();
+ method public int getKey();
+ method @NonNull public byte[] getValue();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.nearby.DataElement> CREATOR;
+ }
+
+ public abstract class NearbyDevice {
+ method @NonNull public java.util.List<java.lang.Integer> getMediums();
+ method @Nullable public String getName();
+ method @IntRange(from=0xffffff81, to=126) public int getRssi();
+ method public static boolean isValidMedium(int);
+ }
+
+ public class NearbyManager {
+ method @RequiresPermission(allOf={android.Manifest.permission.BLUETOOTH_ADVERTISE, android.Manifest.permission.BLUETOOTH_PRIVILEGED}) public void startBroadcast(@NonNull android.nearby.BroadcastRequest, @NonNull java.util.concurrent.Executor, @NonNull android.nearby.BroadcastCallback);
+ method @RequiresPermission(allOf={android.Manifest.permission.BLUETOOTH_SCAN, android.Manifest.permission.BLUETOOTH_PRIVILEGED}) public int startScan(@NonNull android.nearby.ScanRequest, @NonNull java.util.concurrent.Executor, @NonNull android.nearby.ScanCallback);
+ method @RequiresPermission(allOf={android.Manifest.permission.BLUETOOTH_ADVERTISE, android.Manifest.permission.BLUETOOTH_PRIVILEGED}) public void stopBroadcast(@NonNull android.nearby.BroadcastCallback);
+ method @RequiresPermission(allOf={android.Manifest.permission.BLUETOOTH_SCAN, android.Manifest.permission.BLUETOOTH_PRIVILEGED}) public void stopScan(@NonNull android.nearby.ScanCallback);
+ }
+
+ public final class PresenceBroadcastRequest extends android.nearby.BroadcastRequest implements android.os.Parcelable {
+ method public int describeContents();
+ method @NonNull public java.util.List<java.lang.Integer> getActions();
+ method @NonNull public android.nearby.PrivateCredential getCredential();
+ method @NonNull public java.util.List<android.nearby.DataElement> getExtendedProperties();
+ method @NonNull public byte[] getSalt();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.nearby.PresenceBroadcastRequest> CREATOR;
+ }
+
+ public static final class PresenceBroadcastRequest.Builder {
+ ctor public PresenceBroadcastRequest.Builder(@NonNull java.util.List<java.lang.Integer>, @NonNull byte[], @NonNull android.nearby.PrivateCredential);
+ method @NonNull public android.nearby.PresenceBroadcastRequest.Builder addAction(@IntRange(from=1, to=255) int);
+ method @NonNull public android.nearby.PresenceBroadcastRequest.Builder addExtendedProperty(@NonNull android.nearby.DataElement);
+ method @NonNull public android.nearby.PresenceBroadcastRequest build();
+ method @NonNull public android.nearby.PresenceBroadcastRequest.Builder setTxPower(@IntRange(from=0xffffff81, to=126) int);
+ method @NonNull public android.nearby.PresenceBroadcastRequest.Builder setVersion(int);
+ }
+
+ public abstract class PresenceCredential {
+ method @NonNull public byte[] getAuthenticityKey();
+ method @NonNull public java.util.List<android.nearby.CredentialElement> getCredentialElements();
+ method public int getIdentityType();
+ method @NonNull public byte[] getSecretId();
+ method public int getType();
+ field public static final int CREDENTIAL_TYPE_PRIVATE = 0; // 0x0
+ field public static final int CREDENTIAL_TYPE_PUBLIC = 1; // 0x1
+ field public static final int IDENTITY_TYPE_PRIVATE = 1; // 0x1
+ field public static final int IDENTITY_TYPE_PROVISIONED = 2; // 0x2
+ field public static final int IDENTITY_TYPE_TRUSTED = 3; // 0x3
+ field public static final int IDENTITY_TYPE_UNKNOWN = 0; // 0x0
+ }
+
+ public final class PresenceDevice extends android.nearby.NearbyDevice implements android.os.Parcelable {
+ method public int describeContents();
+ method @NonNull public String getDeviceId();
+ method @Nullable public String getDeviceImageUrl();
+ method public int getDeviceType();
+ method public long getDiscoveryTimestampMillis();
+ method @NonNull public byte[] getEncryptedIdentity();
+ method @NonNull public java.util.List<android.nearby.DataElement> getExtendedProperties();
+ method @NonNull public byte[] getSalt();
+ method @NonNull public byte[] getSecretId();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.nearby.PresenceDevice> CREATOR;
+ }
+
+ public static final class PresenceDevice.Builder {
+ ctor public PresenceDevice.Builder(@NonNull String, @NonNull byte[], @NonNull byte[], @NonNull byte[]);
+ method @NonNull public android.nearby.PresenceDevice.Builder addExtendedProperty(@NonNull android.nearby.DataElement);
+ method @NonNull public android.nearby.PresenceDevice.Builder addMedium(int);
+ method @NonNull public android.nearby.PresenceDevice build();
+ method @NonNull public android.nearby.PresenceDevice.Builder setDeviceImageUrl(@Nullable String);
+ method @NonNull public android.nearby.PresenceDevice.Builder setDeviceType(int);
+ method @NonNull public android.nearby.PresenceDevice.Builder setDiscoveryTimestampMillis(long);
+ method @NonNull public android.nearby.PresenceDevice.Builder setName(@Nullable String);
+ method @NonNull public android.nearby.PresenceDevice.Builder setRssi(int);
+ }
+
+ public final class PresenceScanFilter extends android.nearby.ScanFilter implements android.os.Parcelable {
+ method public int describeContents();
+ method @NonNull public java.util.List<android.nearby.PublicCredential> getCredentials();
+ method @NonNull public java.util.List<android.nearby.DataElement> getExtendedProperties();
+ method @NonNull public java.util.List<java.lang.Integer> getPresenceActions();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.nearby.PresenceScanFilter> CREATOR;
+ }
+
+ public static final class PresenceScanFilter.Builder {
+ ctor public PresenceScanFilter.Builder();
+ method @NonNull public android.nearby.PresenceScanFilter.Builder addCredential(@NonNull android.nearby.PublicCredential);
+ method @NonNull public android.nearby.PresenceScanFilter.Builder addExtendedProperty(@NonNull android.nearby.DataElement);
+ method @NonNull public android.nearby.PresenceScanFilter.Builder addPresenceAction(@IntRange(from=1, to=255) int);
+ method @NonNull public android.nearby.PresenceScanFilter build();
+ method @NonNull public android.nearby.PresenceScanFilter.Builder setMaxPathLoss(@IntRange(from=0, to=127) int);
+ }
+
+ public final class PrivateCredential extends android.nearby.PresenceCredential implements android.os.Parcelable {
+ method public int describeContents();
+ method @NonNull public String getDeviceName();
+ method @NonNull public byte[] getMetadataEncryptionKey();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.nearby.PrivateCredential> CREATOR;
+ }
+
+ public static final class PrivateCredential.Builder {
+ ctor public PrivateCredential.Builder(@NonNull byte[], @NonNull byte[], @NonNull byte[], @NonNull String);
+ method @NonNull public android.nearby.PrivateCredential.Builder addCredentialElement(@NonNull android.nearby.CredentialElement);
+ method @NonNull public android.nearby.PrivateCredential build();
+ method @NonNull public android.nearby.PrivateCredential.Builder setIdentityType(int);
+ }
+
+ public final class PublicCredential extends android.nearby.PresenceCredential implements android.os.Parcelable {
+ method public int describeContents();
+ method @NonNull public byte[] getEncryptedMetadata();
+ method @NonNull public byte[] getEncryptedMetadataKeyTag();
+ method @NonNull public byte[] getPublicKey();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.nearby.PublicCredential> CREATOR;
+ }
+
+ public static final class PublicCredential.Builder {
+ ctor public PublicCredential.Builder(@NonNull byte[], @NonNull byte[], @NonNull byte[], @NonNull byte[], @NonNull byte[]);
+ method @NonNull public android.nearby.PublicCredential.Builder addCredentialElement(@NonNull android.nearby.CredentialElement);
+ method @NonNull public android.nearby.PublicCredential build();
+ method @NonNull public android.nearby.PublicCredential.Builder setIdentityType(int);
+ }
+
+ public interface ScanCallback {
+ method public void onDiscovered(@NonNull android.nearby.NearbyDevice);
+ method public void onLost(@NonNull android.nearby.NearbyDevice);
+ method public void onUpdated(@NonNull android.nearby.NearbyDevice);
+ }
+
+ public abstract class ScanFilter {
+ method @IntRange(from=0, to=127) public int getMaxPathLoss();
+ method public int getType();
+ }
+
+ public final class ScanRequest implements android.os.Parcelable {
+ method public int describeContents();
+ method @NonNull public java.util.List<android.nearby.ScanFilter> getScanFilters();
+ method public int getScanMode();
+ method public int getScanType();
+ method @NonNull public android.os.WorkSource getWorkSource();
+ method public boolean isBleEnabled();
+ method public static boolean isValidScanMode(int);
+ method public static boolean isValidScanType(int);
+ method @NonNull public static String scanModeToString(int);
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.nearby.ScanRequest> CREATOR;
+ field public static final int SCAN_MODE_BALANCED = 1; // 0x1
+ field public static final int SCAN_MODE_LOW_LATENCY = 2; // 0x2
+ field public static final int SCAN_MODE_LOW_POWER = 0; // 0x0
+ field public static final int SCAN_MODE_NO_POWER = -1; // 0xffffffff
+ field public static final int SCAN_TYPE_FAST_PAIR = 1; // 0x1
+ field public static final int SCAN_TYPE_NEARBY_PRESENCE = 2; // 0x2
+ }
+
+ public static final class ScanRequest.Builder {
+ ctor public ScanRequest.Builder();
+ method @NonNull public android.nearby.ScanRequest.Builder addScanFilter(@NonNull android.nearby.ScanFilter);
+ method @NonNull public android.nearby.ScanRequest build();
+ method @NonNull public android.nearby.ScanRequest.Builder setBleEnabled(boolean);
+ method @NonNull public android.nearby.ScanRequest.Builder setScanMode(int);
+ method @NonNull public android.nearby.ScanRequest.Builder setScanType(int);
+ method @NonNull @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public android.nearby.ScanRequest.Builder setWorkSource(@Nullable android.os.WorkSource);
+ }
+
+}
+
+package android.net {
+
+ public class EthernetManager {
+ method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK, android.Manifest.permission.MANAGE_ETHERNET_NETWORKS}) public void disableInterface(@NonNull String, @Nullable java.util.concurrent.Executor, @Nullable android.os.OutcomeReceiver<java.lang.String,android.net.EthernetNetworkManagementException>);
+ method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK, android.Manifest.permission.MANAGE_ETHERNET_NETWORKS}) public void enableInterface(@NonNull String, @Nullable java.util.concurrent.Executor, @Nullable android.os.OutcomeReceiver<java.lang.String,android.net.EthernetNetworkManagementException>);
+ method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public android.net.EthernetManager.TetheredInterfaceRequest requestTetheredInterface(@NonNull java.util.concurrent.Executor, @NonNull android.net.EthernetManager.TetheredInterfaceCallback);
+ method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK, android.Manifest.permission.MANAGE_ETHERNET_NETWORKS}) public void updateConfiguration(@NonNull String, @NonNull android.net.EthernetNetworkUpdateRequest, @Nullable java.util.concurrent.Executor, @Nullable android.os.OutcomeReceiver<java.lang.String,android.net.EthernetNetworkManagementException>);
+ }
+
+ public static interface EthernetManager.TetheredInterfaceCallback {
+ method public void onAvailable(@NonNull String);
+ method public void onUnavailable();
+ }
+
+ public static class EthernetManager.TetheredInterfaceRequest {
+ method public void release();
+ }
+
+ public final class EthernetNetworkManagementException extends java.lang.RuntimeException implements android.os.Parcelable {
+ ctor public EthernetNetworkManagementException(@NonNull String);
+ method public int describeContents();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.EthernetNetworkManagementException> CREATOR;
+ }
+
+ public final class EthernetNetworkUpdateRequest implements android.os.Parcelable {
+ method public int describeContents();
+ method @Nullable public android.net.IpConfiguration getIpConfiguration();
+ method @Nullable public android.net.NetworkCapabilities getNetworkCapabilities();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.EthernetNetworkUpdateRequest> CREATOR;
+ }
+
+ public static final class EthernetNetworkUpdateRequest.Builder {
+ ctor public EthernetNetworkUpdateRequest.Builder();
+ ctor public EthernetNetworkUpdateRequest.Builder(@NonNull android.net.EthernetNetworkUpdateRequest);
+ method @NonNull public android.net.EthernetNetworkUpdateRequest build();
+ method @NonNull public android.net.EthernetNetworkUpdateRequest.Builder setIpConfiguration(@Nullable android.net.IpConfiguration);
+ method @NonNull public android.net.EthernetNetworkUpdateRequest.Builder setNetworkCapabilities(@Nullable android.net.NetworkCapabilities);
+ }
+
+ public class IpSecManager {
+ method @RequiresPermission(android.Manifest.permission.MANAGE_IPSEC_TUNNELS) public void applyTunnelModeTransform(@NonNull android.net.IpSecManager.IpSecTunnelInterface, int, @NonNull android.net.IpSecTransform) throws java.io.IOException;
+ method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_IPSEC_TUNNELS) public android.net.IpSecManager.IpSecTunnelInterface createIpSecTunnelInterface(@NonNull java.net.InetAddress, @NonNull java.net.InetAddress, @NonNull android.net.Network) throws java.io.IOException, android.net.IpSecManager.ResourceUnavailableException;
+ }
+
+ public static final class IpSecManager.IpSecTunnelInterface implements java.lang.AutoCloseable {
+ method @RequiresPermission(android.Manifest.permission.MANAGE_IPSEC_TUNNELS) public void addAddress(@NonNull java.net.InetAddress, int) throws java.io.IOException;
+ method public void close();
+ method @NonNull public String getInterfaceName();
+ method @RequiresPermission(android.Manifest.permission.MANAGE_IPSEC_TUNNELS) public void removeAddress(@NonNull java.net.InetAddress, int) throws java.io.IOException;
+ method @RequiresPermission(android.Manifest.permission.MANAGE_IPSEC_TUNNELS) public void setUnderlyingNetwork(@NonNull android.net.Network) throws java.io.IOException;
+ }
+
+ public static class IpSecTransform.Builder {
+ method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_IPSEC_TUNNELS) public android.net.IpSecTransform buildTunnelModeTransform(@NonNull java.net.InetAddress, @NonNull android.net.IpSecManager.SecurityParameterIndex) throws java.io.IOException, android.net.IpSecManager.ResourceUnavailableException, android.net.IpSecManager.SpiUnavailableException;
+ }
+
+ public final class NetworkStats implements java.lang.Iterable<android.net.NetworkStats.Entry> android.os.Parcelable {
+ ctor public NetworkStats(long, int);
+ method @NonNull public android.net.NetworkStats add(@NonNull android.net.NetworkStats);
+ method @NonNull public android.net.NetworkStats addEntry(@NonNull android.net.NetworkStats.Entry);
+ method public int describeContents();
+ method @NonNull public java.util.Iterator<android.net.NetworkStats.Entry> iterator();
+ method @NonNull public android.net.NetworkStats subtract(@NonNull android.net.NetworkStats);
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.NetworkStats> CREATOR;
+ field public static final int DEFAULT_NETWORK_ALL = -1; // 0xffffffff
+ field public static final int DEFAULT_NETWORK_NO = 0; // 0x0
+ field public static final int DEFAULT_NETWORK_YES = 1; // 0x1
+ field public static final String IFACE_VT = "vt_data0";
+ field public static final int METERED_ALL = -1; // 0xffffffff
+ field public static final int METERED_NO = 0; // 0x0
+ field public static final int METERED_YES = 1; // 0x1
+ field public static final int ROAMING_ALL = -1; // 0xffffffff
+ field public static final int ROAMING_NO = 0; // 0x0
+ field public static final int ROAMING_YES = 1; // 0x1
+ field public static final int SET_ALL = -1; // 0xffffffff
+ field public static final int SET_DEFAULT = 0; // 0x0
+ field public static final int SET_FOREGROUND = 1; // 0x1
+ field public static final int TAG_NONE = 0; // 0x0
+ field public static final int UID_ALL = -1; // 0xffffffff
+ field public static final int UID_TETHERING = -5; // 0xfffffffb
+ }
+
+ public static class NetworkStats.Entry {
+ ctor public NetworkStats.Entry(@Nullable String, int, int, int, int, int, int, long, long, long, long, long);
+ method public int getDefaultNetwork();
+ method public int getMetered();
+ method public long getOperations();
+ method public int getRoaming();
+ method public long getRxBytes();
+ method public long getRxPackets();
+ method public int getSet();
+ method public int getTag();
+ method public long getTxBytes();
+ method public long getTxPackets();
+ method public int getUid();
+ }
+
+ public class TrafficStats {
+ method public static void setThreadStatsTagApp();
+ method public static void setThreadStatsTagBackup();
+ method public static void setThreadStatsTagRestore();
+ field public static final int TAG_NETWORK_STACK_IMPERSONATION_RANGE_END = -113; // 0xffffff8f
+ field public static final int TAG_NETWORK_STACK_IMPERSONATION_RANGE_START = -128; // 0xffffff80
+ field public static final int TAG_NETWORK_STACK_RANGE_END = -257; // 0xfffffeff
+ field public static final int TAG_NETWORK_STACK_RANGE_START = -768; // 0xfffffd00
+ field public static final int TAG_SYSTEM_IMPERSONATION_RANGE_END = -241; // 0xffffff0f
+ field public static final int TAG_SYSTEM_IMPERSONATION_RANGE_START = -256; // 0xffffff00
+ }
+
+}
+
+package android.net.netstats.provider {
+
+ public abstract class NetworkStatsProvider {
+ ctor public NetworkStatsProvider();
+ method public void notifyAlertReached();
+ method public void notifyLimitReached();
+ method public void notifyStatsUpdated(int, @NonNull android.net.NetworkStats, @NonNull android.net.NetworkStats);
+ method public void notifyWarningReached();
+ method public abstract void onRequestStatsUpdate(int);
+ method public abstract void onSetAlert(long);
+ method public abstract void onSetLimit(@NonNull String, long);
+ method public void onSetWarningAndLimit(@NonNull String, long, long);
+ field public static final int QUOTA_UNLIMITED = -1; // 0xffffffff
+ }
+
+}
+
diff --git a/extensions/3/system/api/framework-connectivity.txt b/extensions/3/system/api/framework-connectivity.txt
new file mode 100644
index 000000000..db1d7e9e5
--- /dev/null
+++ b/extensions/3/system/api/framework-connectivity.txt
@@ -0,0 +1,522 @@
+// Signature format: 2.0
+package android.net {
+
+ public class CaptivePortal implements android.os.Parcelable {
+ method @Deprecated public void logEvent(int, @NonNull String);
+ method @RequiresPermission(android.Manifest.permission.NETWORK_STACK) public void reevaluateNetwork();
+ method public void useNetwork();
+ field public static final int APP_REQUEST_REEVALUATION_REQUIRED = 100; // 0x64
+ field public static final int APP_RETURN_DISMISSED = 0; // 0x0
+ field public static final int APP_RETURN_UNWANTED = 1; // 0x1
+ field public static final int APP_RETURN_WANTED_AS_IS = 2; // 0x2
+ }
+
+ public final class CaptivePortalData implements android.os.Parcelable {
+ method public int describeContents();
+ method public long getByteLimit();
+ method public long getExpiryTimeMillis();
+ method public long getRefreshTimeMillis();
+ method @Nullable public android.net.Uri getUserPortalUrl();
+ method public int getUserPortalUrlSource();
+ method @Nullable public CharSequence getVenueFriendlyName();
+ method @Nullable public android.net.Uri getVenueInfoUrl();
+ method public int getVenueInfoUrlSource();
+ method public boolean isCaptive();
+ method public boolean isSessionExtendable();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field public static final int CAPTIVE_PORTAL_DATA_SOURCE_OTHER = 0; // 0x0
+ field public static final int CAPTIVE_PORTAL_DATA_SOURCE_PASSPOINT = 1; // 0x1
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.CaptivePortalData> CREATOR;
+ }
+
+ public static class CaptivePortalData.Builder {
+ ctor public CaptivePortalData.Builder();
+ ctor public CaptivePortalData.Builder(@Nullable android.net.CaptivePortalData);
+ method @NonNull public android.net.CaptivePortalData build();
+ method @NonNull public android.net.CaptivePortalData.Builder setBytesRemaining(long);
+ method @NonNull public android.net.CaptivePortalData.Builder setCaptive(boolean);
+ method @NonNull public android.net.CaptivePortalData.Builder setExpiryTime(long);
+ method @NonNull public android.net.CaptivePortalData.Builder setRefreshTime(long);
+ method @NonNull public android.net.CaptivePortalData.Builder setSessionExtendable(boolean);
+ method @NonNull public android.net.CaptivePortalData.Builder setUserPortalUrl(@Nullable android.net.Uri);
+ method @NonNull public android.net.CaptivePortalData.Builder setUserPortalUrl(@Nullable android.net.Uri, int);
+ method @NonNull public android.net.CaptivePortalData.Builder setVenueFriendlyName(@Nullable CharSequence);
+ method @NonNull public android.net.CaptivePortalData.Builder setVenueInfoUrl(@Nullable android.net.Uri);
+ method @NonNull public android.net.CaptivePortalData.Builder setVenueInfoUrl(@Nullable android.net.Uri, int);
+ }
+
+ public class ConnectivityManager {
+ method @NonNull @RequiresPermission(android.Manifest.permission.PACKET_KEEPALIVE_OFFLOAD) public android.net.SocketKeepalive createNattKeepalive(@NonNull android.net.Network, @NonNull android.os.ParcelFileDescriptor, @NonNull java.net.InetAddress, @NonNull java.net.InetAddress, @NonNull java.util.concurrent.Executor, @NonNull android.net.SocketKeepalive.Callback);
+ method @NonNull @RequiresPermission(android.Manifest.permission.PACKET_KEEPALIVE_OFFLOAD) public android.net.SocketKeepalive createSocketKeepalive(@NonNull android.net.Network, @NonNull java.net.Socket, @NonNull java.util.concurrent.Executor, @NonNull android.net.SocketKeepalive.Callback);
+ method @Deprecated @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public String getCaptivePortalServerUrl();
+ method @Deprecated @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void getLatestTetheringEntitlementResult(int, boolean, @NonNull java.util.concurrent.Executor, @NonNull android.net.ConnectivityManager.OnTetheringEntitlementResultListener);
+ method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.TETHER_PRIVILEGED, android.Manifest.permission.WRITE_SETTINGS}) public boolean isTetheringSupported();
+ method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_FACTORY}) public int registerNetworkProvider(@NonNull android.net.NetworkProvider);
+ method public void registerQosCallback(@NonNull android.net.QosSocketInfo, @NonNull java.util.concurrent.Executor, @NonNull android.net.QosCallback);
+ method @Deprecated @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void registerTetheringEventCallback(@NonNull java.util.concurrent.Executor, @NonNull android.net.ConnectivityManager.OnTetheringEventCallback);
+ method @RequiresPermission(android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK) public void requestNetwork(@NonNull android.net.NetworkRequest, int, int, @NonNull android.os.Handler, @NonNull android.net.ConnectivityManager.NetworkCallback);
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_AIRPLANE_MODE, android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD, android.Manifest.permission.NETWORK_STACK}) public void setAirplaneMode(boolean);
+ method @RequiresPermission(android.Manifest.permission.CONTROL_OEM_PAID_NETWORK_PREFERENCE) public void setOemNetworkPreference(@NonNull android.net.OemNetworkPreferences, @Nullable java.util.concurrent.Executor, @Nullable Runnable);
+ method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK}) public boolean shouldAvoidBadWifi();
+ method @RequiresPermission(android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK) public void startCaptivePortalApp(@NonNull android.net.Network, @NonNull android.os.Bundle);
+ method @Deprecated @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void startTethering(int, boolean, android.net.ConnectivityManager.OnStartTetheringCallback);
+ method @Deprecated @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void startTethering(int, boolean, android.net.ConnectivityManager.OnStartTetheringCallback, android.os.Handler);
+ method @Deprecated @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void stopTethering(int);
+ method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_FACTORY}) public void unregisterNetworkProvider(@NonNull android.net.NetworkProvider);
+ method public void unregisterQosCallback(@NonNull android.net.QosCallback);
+ method @Deprecated @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void unregisterTetheringEventCallback(@NonNull android.net.ConnectivityManager.OnTetheringEventCallback);
+ field public static final String EXTRA_CAPTIVE_PORTAL_PROBE_SPEC = "android.net.extra.CAPTIVE_PORTAL_PROBE_SPEC";
+ field public static final String EXTRA_CAPTIVE_PORTAL_USER_AGENT = "android.net.extra.CAPTIVE_PORTAL_USER_AGENT";
+ field public static final int TETHERING_BLUETOOTH = 2; // 0x2
+ field public static final int TETHERING_USB = 1; // 0x1
+ field public static final int TETHERING_WIFI = 0; // 0x0
+ field @Deprecated public static final int TETHER_ERROR_ENTITLEMENT_UNKONWN = 13; // 0xd
+ field @Deprecated public static final int TETHER_ERROR_NO_ERROR = 0; // 0x0
+ field @Deprecated public static final int TETHER_ERROR_PROVISION_FAILED = 11; // 0xb
+ field public static final int TYPE_NONE = -1; // 0xffffffff
+ field @Deprecated public static final int TYPE_PROXY = 16; // 0x10
+ field @Deprecated public static final int TYPE_WIFI_P2P = 13; // 0xd
+ }
+
+ @Deprecated public abstract static class ConnectivityManager.OnStartTetheringCallback {
+ ctor @Deprecated public ConnectivityManager.OnStartTetheringCallback();
+ method @Deprecated public void onTetheringFailed();
+ method @Deprecated public void onTetheringStarted();
+ }
+
+ @Deprecated public static interface ConnectivityManager.OnTetheringEntitlementResultListener {
+ method @Deprecated public void onTetheringEntitlementResult(int);
+ }
+
+ @Deprecated public abstract static class ConnectivityManager.OnTetheringEventCallback {
+ ctor @Deprecated public ConnectivityManager.OnTetheringEventCallback();
+ method @Deprecated public void onUpstreamChanged(@Nullable android.net.Network);
+ }
+
+ public final class DscpPolicy implements android.os.Parcelable {
+ method @Nullable public java.net.InetAddress getDestinationAddress();
+ method @Nullable public android.util.Range<java.lang.Integer> getDestinationPortRange();
+ method public int getDscpValue();
+ method public int getPolicyId();
+ method public int getProtocol();
+ method @Nullable public java.net.InetAddress getSourceAddress();
+ method public int getSourcePort();
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.DscpPolicy> CREATOR;
+ field public static final int PROTOCOL_ANY = -1; // 0xffffffff
+ field public static final int SOURCE_PORT_ANY = -1; // 0xffffffff
+ }
+
+ public static final class DscpPolicy.Builder {
+ ctor public DscpPolicy.Builder(int, int);
+ method @NonNull public android.net.DscpPolicy build();
+ method @NonNull public android.net.DscpPolicy.Builder setDestinationAddress(@NonNull java.net.InetAddress);
+ method @NonNull public android.net.DscpPolicy.Builder setDestinationPortRange(@NonNull android.util.Range<java.lang.Integer>);
+ method @NonNull public android.net.DscpPolicy.Builder setProtocol(int);
+ method @NonNull public android.net.DscpPolicy.Builder setSourceAddress(@NonNull java.net.InetAddress);
+ method @NonNull public android.net.DscpPolicy.Builder setSourcePort(int);
+ }
+
+ public final class InvalidPacketException extends java.lang.Exception {
+ ctor public InvalidPacketException(int);
+ method public int getError();
+ field public static final int ERROR_INVALID_IP_ADDRESS = -21; // 0xffffffeb
+ field public static final int ERROR_INVALID_LENGTH = -23; // 0xffffffe9
+ field public static final int ERROR_INVALID_PORT = -22; // 0xffffffea
+ }
+
+ public final class IpConfiguration implements android.os.Parcelable {
+ ctor public IpConfiguration();
+ ctor public IpConfiguration(@NonNull android.net.IpConfiguration);
+ method @NonNull public android.net.IpConfiguration.IpAssignment getIpAssignment();
+ method @NonNull public android.net.IpConfiguration.ProxySettings getProxySettings();
+ method public void setHttpProxy(@Nullable android.net.ProxyInfo);
+ method public void setIpAssignment(@NonNull android.net.IpConfiguration.IpAssignment);
+ method public void setProxySettings(@NonNull android.net.IpConfiguration.ProxySettings);
+ method public void setStaticIpConfiguration(@Nullable android.net.StaticIpConfiguration);
+ }
+
+ public enum IpConfiguration.IpAssignment {
+ enum_constant public static final android.net.IpConfiguration.IpAssignment DHCP;
+ enum_constant public static final android.net.IpConfiguration.IpAssignment STATIC;
+ enum_constant public static final android.net.IpConfiguration.IpAssignment UNASSIGNED;
+ }
+
+ public enum IpConfiguration.ProxySettings {
+ enum_constant public static final android.net.IpConfiguration.ProxySettings NONE;
+ enum_constant public static final android.net.IpConfiguration.ProxySettings PAC;
+ enum_constant public static final android.net.IpConfiguration.ProxySettings STATIC;
+ enum_constant public static final android.net.IpConfiguration.ProxySettings UNASSIGNED;
+ }
+
+ public final class IpPrefix implements android.os.Parcelable {
+ ctor public IpPrefix(@NonNull String);
+ }
+
+ public class KeepalivePacketData {
+ ctor protected KeepalivePacketData(@NonNull java.net.InetAddress, @IntRange(from=0, to=65535) int, @NonNull java.net.InetAddress, @IntRange(from=0, to=65535) int, @NonNull byte[]) throws android.net.InvalidPacketException;
+ method @NonNull public java.net.InetAddress getDstAddress();
+ method public int getDstPort();
+ method @NonNull public byte[] getPacket();
+ method @NonNull public java.net.InetAddress getSrcAddress();
+ method public int getSrcPort();
+ }
+
+ public class LinkAddress implements android.os.Parcelable {
+ ctor public LinkAddress(@NonNull java.net.InetAddress, @IntRange(from=0, to=128) int, int, int);
+ ctor public LinkAddress(@NonNull java.net.InetAddress, @IntRange(from=0, to=128) int, int, int, long, long);
+ ctor public LinkAddress(@NonNull java.net.InetAddress, @IntRange(from=0, to=128) int);
+ ctor public LinkAddress(@NonNull String);
+ ctor public LinkAddress(@NonNull String, int, int);
+ method public long getDeprecationTime();
+ method public long getExpirationTime();
+ method public boolean isGlobalPreferred();
+ method public boolean isIpv4();
+ method public boolean isIpv6();
+ method public boolean isSameAddressAs(@Nullable android.net.LinkAddress);
+ field public static final long LIFETIME_PERMANENT = 9223372036854775807L; // 0x7fffffffffffffffL
+ field public static final long LIFETIME_UNKNOWN = -1L; // 0xffffffffffffffffL
+ }
+
+ public final class LinkProperties implements android.os.Parcelable {
+ ctor public LinkProperties(@Nullable android.net.LinkProperties);
+ ctor public LinkProperties(@Nullable android.net.LinkProperties, boolean);
+ method public boolean addDnsServer(@NonNull java.net.InetAddress);
+ method public boolean addLinkAddress(@NonNull android.net.LinkAddress);
+ method public boolean addPcscfServer(@NonNull java.net.InetAddress);
+ method @NonNull public java.util.List<java.net.InetAddress> getAddresses();
+ method @NonNull public java.util.List<java.lang.String> getAllInterfaceNames();
+ method @NonNull public java.util.List<android.net.LinkAddress> getAllLinkAddresses();
+ method @NonNull public java.util.List<android.net.RouteInfo> getAllRoutes();
+ method @Nullable public android.net.Uri getCaptivePortalApiUrl();
+ method @Nullable public android.net.CaptivePortalData getCaptivePortalData();
+ method @NonNull public java.util.List<java.net.InetAddress> getPcscfServers();
+ method @Nullable public String getTcpBufferSizes();
+ method @NonNull public java.util.List<java.net.InetAddress> getValidatedPrivateDnsServers();
+ method public boolean hasGlobalIpv6Address();
+ method public boolean hasIpv4Address();
+ method public boolean hasIpv4DefaultRoute();
+ method public boolean hasIpv4DnsServer();
+ method public boolean hasIpv6DefaultRoute();
+ method public boolean hasIpv6DnsServer();
+ method public boolean isIpv4Provisioned();
+ method public boolean isIpv6Provisioned();
+ method public boolean isProvisioned();
+ method public boolean isReachable(@NonNull java.net.InetAddress);
+ method public boolean removeDnsServer(@NonNull java.net.InetAddress);
+ method public boolean removeLinkAddress(@NonNull android.net.LinkAddress);
+ method public boolean removeRoute(@NonNull android.net.RouteInfo);
+ method public void setCaptivePortalApiUrl(@Nullable android.net.Uri);
+ method public void setCaptivePortalData(@Nullable android.net.CaptivePortalData);
+ method public void setPcscfServers(@NonNull java.util.Collection<java.net.InetAddress>);
+ method public void setPrivateDnsServerName(@Nullable String);
+ method public void setTcpBufferSizes(@Nullable String);
+ method public void setUsePrivateDns(boolean);
+ method public void setValidatedPrivateDnsServers(@NonNull java.util.Collection<java.net.InetAddress>);
+ }
+
+ public final class NattKeepalivePacketData extends android.net.KeepalivePacketData implements android.os.Parcelable {
+ ctor public NattKeepalivePacketData(@NonNull java.net.InetAddress, int, @NonNull java.net.InetAddress, int, @NonNull byte[]) throws android.net.InvalidPacketException;
+ method public int describeContents();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.NattKeepalivePacketData> CREATOR;
+ }
+
+ public class Network implements android.os.Parcelable {
+ ctor public Network(@NonNull android.net.Network);
+ method public int getNetId();
+ method @NonNull public android.net.Network getPrivateDnsBypassingCopy();
+ }
+
+ public abstract class NetworkAgent {
+ ctor public NetworkAgent(@NonNull android.content.Context, @NonNull android.os.Looper, @NonNull String, @NonNull android.net.NetworkCapabilities, @NonNull android.net.LinkProperties, int, @NonNull android.net.NetworkAgentConfig, @Nullable android.net.NetworkProvider);
+ ctor public NetworkAgent(@NonNull android.content.Context, @NonNull android.os.Looper, @NonNull String, @NonNull android.net.NetworkCapabilities, @NonNull android.net.LinkProperties, @NonNull android.net.NetworkScore, @NonNull android.net.NetworkAgentConfig, @Nullable android.net.NetworkProvider);
+ method @Nullable public android.net.Network getNetwork();
+ method public void markConnected();
+ method public void onAddKeepalivePacketFilter(int, @NonNull android.net.KeepalivePacketData);
+ method public void onAutomaticReconnectDisabled();
+ method public void onBandwidthUpdateRequested();
+ method public void onDscpPolicyStatusUpdated(int, int);
+ method public void onNetworkCreated();
+ method public void onNetworkDestroyed();
+ method public void onNetworkUnwanted();
+ method public void onQosCallbackRegistered(int, @NonNull android.net.QosFilter);
+ method public void onQosCallbackUnregistered(int);
+ method public void onRemoveKeepalivePacketFilter(int);
+ method public void onSaveAcceptUnvalidated(boolean);
+ method public void onSignalStrengthThresholdsUpdated(@NonNull int[]);
+ method public void onStartSocketKeepalive(int, @NonNull java.time.Duration, @NonNull android.net.KeepalivePacketData);
+ method public void onStopSocketKeepalive(int);
+ method public void onValidationStatus(int, @Nullable android.net.Uri);
+ method @NonNull public android.net.Network register();
+ method public void sendAddDscpPolicy(@NonNull android.net.DscpPolicy);
+ method public final void sendLinkProperties(@NonNull android.net.LinkProperties);
+ method public final void sendNetworkCapabilities(@NonNull android.net.NetworkCapabilities);
+ method public final void sendNetworkScore(@NonNull android.net.NetworkScore);
+ method public final void sendNetworkScore(@IntRange(from=0, to=99) int);
+ method public final void sendQosCallbackError(int, int);
+ method public final void sendQosSessionAvailable(int, int, @NonNull android.net.QosSessionAttributes);
+ method public final void sendQosSessionLost(int, int, int);
+ method public void sendRemoveAllDscpPolicies();
+ method public void sendRemoveDscpPolicy(int);
+ method public final void sendSocketKeepaliveEvent(int, int);
+ method @Deprecated public void setLegacySubtype(int, @NonNull String);
+ method public void setLingerDuration(@NonNull java.time.Duration);
+ method public void setTeardownDelayMillis(@IntRange(from=0, to=0x1388) int);
+ method public final void setUnderlyingNetworks(@Nullable java.util.List<android.net.Network>);
+ method public void unregister();
+ method public void unregisterAfterReplacement(@IntRange(from=0, to=0x1388) int);
+ field public static final int DSCP_POLICY_STATUS_DELETED = 4; // 0x4
+ field public static final int DSCP_POLICY_STATUS_INSUFFICIENT_PROCESSING_RESOURCES = 3; // 0x3
+ field public static final int DSCP_POLICY_STATUS_POLICY_NOT_FOUND = 5; // 0x5
+ field public static final int DSCP_POLICY_STATUS_REQUESTED_CLASSIFIER_NOT_SUPPORTED = 2; // 0x2
+ field public static final int DSCP_POLICY_STATUS_REQUEST_DECLINED = 1; // 0x1
+ field public static final int DSCP_POLICY_STATUS_SUCCESS = 0; // 0x0
+ field public static final int VALIDATION_STATUS_NOT_VALID = 2; // 0x2
+ field public static final int VALIDATION_STATUS_VALID = 1; // 0x1
+ }
+
+ public final class NetworkAgentConfig implements android.os.Parcelable {
+ method public int describeContents();
+ method public int getLegacyType();
+ method @NonNull public String getLegacyTypeName();
+ method public boolean isExplicitlySelected();
+ method public boolean isPartialConnectivityAcceptable();
+ method public boolean isUnvalidatedConnectivityAcceptable();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.NetworkAgentConfig> CREATOR;
+ }
+
+ public static final class NetworkAgentConfig.Builder {
+ ctor public NetworkAgentConfig.Builder();
+ method @NonNull public android.net.NetworkAgentConfig build();
+ method @NonNull public android.net.NetworkAgentConfig.Builder setExplicitlySelected(boolean);
+ method @NonNull public android.net.NetworkAgentConfig.Builder setLegacyExtraInfo(@NonNull String);
+ method @NonNull public android.net.NetworkAgentConfig.Builder setLegacySubType(int);
+ method @NonNull public android.net.NetworkAgentConfig.Builder setLegacySubTypeName(@NonNull String);
+ method @NonNull public android.net.NetworkAgentConfig.Builder setLegacyType(int);
+ method @NonNull public android.net.NetworkAgentConfig.Builder setLegacyTypeName(@NonNull String);
+ method @NonNull public android.net.NetworkAgentConfig.Builder setNat64DetectionEnabled(boolean);
+ method @NonNull public android.net.NetworkAgentConfig.Builder setPartialConnectivityAcceptable(boolean);
+ method @NonNull public android.net.NetworkAgentConfig.Builder setProvisioningNotificationEnabled(boolean);
+ method @NonNull public android.net.NetworkAgentConfig.Builder setUnvalidatedConnectivityAcceptable(boolean);
+ }
+
+ public final class NetworkCapabilities implements android.os.Parcelable {
+ method @NonNull public int[] getAdministratorUids();
+ method @Nullable public static String getCapabilityCarrierName(int);
+ method @Nullable public String getSsid();
+ method @NonNull public java.util.Set<java.lang.Integer> getSubscriptionIds();
+ method @NonNull public int[] getTransportTypes();
+ method @Nullable public java.util.List<android.net.Network> getUnderlyingNetworks();
+ method public boolean isPrivateDnsBroken();
+ method public boolean satisfiedByNetworkCapabilities(@Nullable android.net.NetworkCapabilities);
+ field public static final int NET_CAPABILITY_BIP = 31; // 0x1f
+ field public static final int NET_CAPABILITY_NOT_VCN_MANAGED = 28; // 0x1c
+ field public static final int NET_CAPABILITY_OEM_PAID = 22; // 0x16
+ field public static final int NET_CAPABILITY_OEM_PRIVATE = 26; // 0x1a
+ field public static final int NET_CAPABILITY_PARTIAL_CONNECTIVITY = 24; // 0x18
+ field public static final int NET_CAPABILITY_VEHICLE_INTERNAL = 27; // 0x1b
+ field public static final int NET_CAPABILITY_VSIM = 30; // 0x1e
+ }
+
+ public static final class NetworkCapabilities.Builder {
+ ctor public NetworkCapabilities.Builder();
+ ctor public NetworkCapabilities.Builder(@NonNull android.net.NetworkCapabilities);
+ method @NonNull public android.net.NetworkCapabilities.Builder addCapability(int);
+ method @NonNull public android.net.NetworkCapabilities.Builder addEnterpriseId(int);
+ method @NonNull public android.net.NetworkCapabilities.Builder addTransportType(int);
+ method @NonNull public android.net.NetworkCapabilities build();
+ method @NonNull public android.net.NetworkCapabilities.Builder removeCapability(int);
+ method @NonNull public android.net.NetworkCapabilities.Builder removeEnterpriseId(int);
+ method @NonNull public android.net.NetworkCapabilities.Builder removeTransportType(int);
+ method @NonNull @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY) public android.net.NetworkCapabilities.Builder setAdministratorUids(@NonNull int[]);
+ method @NonNull public android.net.NetworkCapabilities.Builder setLinkDownstreamBandwidthKbps(int);
+ method @NonNull public android.net.NetworkCapabilities.Builder setLinkUpstreamBandwidthKbps(int);
+ method @NonNull public android.net.NetworkCapabilities.Builder setNetworkSpecifier(@Nullable android.net.NetworkSpecifier);
+ method @NonNull @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY) public android.net.NetworkCapabilities.Builder setOwnerUid(int);
+ method @NonNull @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY) public android.net.NetworkCapabilities.Builder setRequestorPackageName(@Nullable String);
+ method @NonNull @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY) public android.net.NetworkCapabilities.Builder setRequestorUid(int);
+ method @NonNull @RequiresPermission(android.Manifest.permission.NETWORK_SIGNAL_STRENGTH_WAKEUP) public android.net.NetworkCapabilities.Builder setSignalStrength(int);
+ method @NonNull @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY) public android.net.NetworkCapabilities.Builder setSsid(@Nullable String);
+ method @NonNull public android.net.NetworkCapabilities.Builder setSubscriptionIds(@NonNull java.util.Set<java.lang.Integer>);
+ method @NonNull public android.net.NetworkCapabilities.Builder setTransportInfo(@Nullable android.net.TransportInfo);
+ method @NonNull @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY) public android.net.NetworkCapabilities.Builder setUnderlyingNetworks(@Nullable java.util.List<android.net.Network>);
+ method @NonNull public static android.net.NetworkCapabilities.Builder withoutDefaultCapabilities();
+ }
+
+ public class NetworkProvider {
+ ctor public NetworkProvider(@NonNull android.content.Context, @NonNull android.os.Looper, @NonNull String);
+ method @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY) public void declareNetworkRequestUnfulfillable(@NonNull android.net.NetworkRequest);
+ method public int getProviderId();
+ method public void onNetworkRequestWithdrawn(@NonNull android.net.NetworkRequest);
+ method public void onNetworkRequested(@NonNull android.net.NetworkRequest, @IntRange(from=0, to=99) int, int);
+ method @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY) public void registerNetworkOffer(@NonNull android.net.NetworkScore, @NonNull android.net.NetworkCapabilities, @NonNull java.util.concurrent.Executor, @NonNull android.net.NetworkProvider.NetworkOfferCallback);
+ method @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY) public void unregisterNetworkOffer(@NonNull android.net.NetworkProvider.NetworkOfferCallback);
+ field public static final int ID_NONE = -1; // 0xffffffff
+ }
+
+ public static interface NetworkProvider.NetworkOfferCallback {
+ method public void onNetworkNeeded(@NonNull android.net.NetworkRequest);
+ method public void onNetworkUnneeded(@NonNull android.net.NetworkRequest);
+ }
+
+ public class NetworkReleasedException extends java.lang.Exception {
+ ctor public NetworkReleasedException();
+ }
+
+ public class NetworkRequest implements android.os.Parcelable {
+ method @Nullable public String getRequestorPackageName();
+ method public int getRequestorUid();
+ }
+
+ public static class NetworkRequest.Builder {
+ method @NonNull @RequiresPermission(android.Manifest.permission.NETWORK_SIGNAL_STRENGTH_WAKEUP) public android.net.NetworkRequest.Builder setSignalStrength(int);
+ method @NonNull public android.net.NetworkRequest.Builder setSubscriptionIds(@NonNull java.util.Set<java.lang.Integer>);
+ }
+
+ public final class NetworkScore implements android.os.Parcelable {
+ method public int describeContents();
+ method public int getKeepConnectedReason();
+ method public int getLegacyInt();
+ method public boolean isExiting();
+ method public boolean isTransportPrimary();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.NetworkScore> CREATOR;
+ field public static final int KEEP_CONNECTED_FOR_HANDOVER = 1; // 0x1
+ field public static final int KEEP_CONNECTED_NONE = 0; // 0x0
+ }
+
+ public static final class NetworkScore.Builder {
+ ctor public NetworkScore.Builder();
+ method @NonNull public android.net.NetworkScore build();
+ method @NonNull public android.net.NetworkScore.Builder setExiting(boolean);
+ method @NonNull public android.net.NetworkScore.Builder setKeepConnectedReason(int);
+ method @NonNull public android.net.NetworkScore.Builder setLegacyInt(int);
+ method @NonNull public android.net.NetworkScore.Builder setTransportPrimary(boolean);
+ }
+
+ public final class OemNetworkPreferences implements android.os.Parcelable {
+ method public int describeContents();
+ method @NonNull public java.util.Map<java.lang.String,java.lang.Integer> getNetworkPreferences();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.OemNetworkPreferences> CREATOR;
+ field public static final int OEM_NETWORK_PREFERENCE_OEM_PAID = 1; // 0x1
+ field public static final int OEM_NETWORK_PREFERENCE_OEM_PAID_NO_FALLBACK = 2; // 0x2
+ field public static final int OEM_NETWORK_PREFERENCE_OEM_PAID_ONLY = 3; // 0x3
+ field public static final int OEM_NETWORK_PREFERENCE_OEM_PRIVATE_ONLY = 4; // 0x4
+ field public static final int OEM_NETWORK_PREFERENCE_UNINITIALIZED = 0; // 0x0
+ }
+
+ public static final class OemNetworkPreferences.Builder {
+ ctor public OemNetworkPreferences.Builder();
+ ctor public OemNetworkPreferences.Builder(@NonNull android.net.OemNetworkPreferences);
+ method @NonNull public android.net.OemNetworkPreferences.Builder addNetworkPreference(@NonNull String, int);
+ method @NonNull public android.net.OemNetworkPreferences build();
+ method @NonNull public android.net.OemNetworkPreferences.Builder clearNetworkPreference(@NonNull String);
+ }
+
+ public abstract class QosCallback {
+ ctor public QosCallback();
+ method public void onError(@NonNull android.net.QosCallbackException);
+ method public void onQosSessionAvailable(@NonNull android.net.QosSession, @NonNull android.net.QosSessionAttributes);
+ method public void onQosSessionLost(@NonNull android.net.QosSession);
+ }
+
+ public static class QosCallback.QosCallbackRegistrationException extends java.lang.RuntimeException {
+ }
+
+ public final class QosCallbackException extends java.lang.Exception {
+ ctor public QosCallbackException(@NonNull String);
+ ctor public QosCallbackException(@NonNull Throwable);
+ }
+
+ public abstract class QosFilter {
+ method @NonNull public abstract android.net.Network getNetwork();
+ method public abstract boolean matchesLocalAddress(@NonNull java.net.InetAddress, int, int);
+ method public abstract boolean matchesRemoteAddress(@NonNull java.net.InetAddress, int, int);
+ }
+
+ public final class QosSession implements android.os.Parcelable {
+ ctor public QosSession(int, int);
+ method public int describeContents();
+ method public int getSessionId();
+ method public int getSessionType();
+ method public long getUniqueId();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.QosSession> CREATOR;
+ field public static final int TYPE_EPS_BEARER = 1; // 0x1
+ field public static final int TYPE_NR_BEARER = 2; // 0x2
+ }
+
+ public interface QosSessionAttributes {
+ }
+
+ public final class QosSocketInfo implements android.os.Parcelable {
+ ctor public QosSocketInfo(@NonNull android.net.Network, @NonNull java.net.Socket) throws java.io.IOException;
+ method public int describeContents();
+ method @NonNull public java.net.InetSocketAddress getLocalSocketAddress();
+ method @NonNull public android.net.Network getNetwork();
+ method @Nullable public java.net.InetSocketAddress getRemoteSocketAddress();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.QosSocketInfo> CREATOR;
+ }
+
+ public final class RouteInfo implements android.os.Parcelable {
+ ctor public RouteInfo(@Nullable android.net.IpPrefix, @Nullable java.net.InetAddress, @Nullable String, int);
+ ctor public RouteInfo(@Nullable android.net.IpPrefix, @Nullable java.net.InetAddress, @Nullable String, int, int);
+ method public int getMtu();
+ }
+
+ public abstract class SocketKeepalive implements java.lang.AutoCloseable {
+ field public static final int ERROR_NO_SUCH_SLOT = -33; // 0xffffffdf
+ field public static final int SUCCESS = 0; // 0x0
+ }
+
+ public class SocketLocalAddressChangedException extends java.lang.Exception {
+ ctor public SocketLocalAddressChangedException();
+ }
+
+ public class SocketNotBoundException extends java.lang.Exception {
+ ctor public SocketNotBoundException();
+ }
+
+ public final class StaticIpConfiguration implements android.os.Parcelable {
+ ctor public StaticIpConfiguration();
+ ctor public StaticIpConfiguration(@Nullable android.net.StaticIpConfiguration);
+ method public void addDnsServer(@NonNull java.net.InetAddress);
+ method public void clear();
+ method @NonNull public java.util.List<android.net.RouteInfo> getRoutes(@Nullable String);
+ }
+
+ public final class TcpKeepalivePacketData extends android.net.KeepalivePacketData implements android.os.Parcelable {
+ ctor public TcpKeepalivePacketData(@NonNull java.net.InetAddress, int, @NonNull java.net.InetAddress, int, @NonNull byte[], int, int, int, int, int, int) throws android.net.InvalidPacketException;
+ method public int describeContents();
+ method public int getIpTos();
+ method public int getIpTtl();
+ method public int getTcpAck();
+ method public int getTcpSeq();
+ method public int getTcpWindow();
+ method public int getTcpWindowScale();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.TcpKeepalivePacketData> CREATOR;
+ }
+
+}
+
+package android.net.apf {
+
+ public final class ApfCapabilities implements android.os.Parcelable {
+ ctor public ApfCapabilities(int, int, int);
+ method public int describeContents();
+ method public static boolean getApfDrop8023Frames();
+ method @NonNull public static int[] getApfEtherTypeBlackList();
+ method public boolean hasDataAccess();
+ method public void writeToParcel(android.os.Parcel, int);
+ field public static final android.os.Parcelable.Creator<android.net.apf.ApfCapabilities> CREATOR;
+ field public final int apfPacketFormat;
+ field public final int apfVersionSupported;
+ field public final int maximumApfProgramSize;
+ }
+
+}
+
diff --git a/extensions/3/system/api/framework-media-removed.txt b/extensions/3/system/api/framework-media-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/system/api/framework-media-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/system/api/framework-media.txt b/extensions/3/system/api/framework-media.txt
new file mode 100644
index 000000000..6eea769d9
--- /dev/null
+++ b/extensions/3/system/api/framework-media.txt
@@ -0,0 +1,68 @@
+// Signature format: 2.0
+package android.media {
+
+ public final class MediaTranscodingManager {
+ method @Nullable public android.media.MediaTranscodingManager.TranscodingSession enqueueRequest(@NonNull android.media.MediaTranscodingManager.TranscodingRequest, @NonNull java.util.concurrent.Executor, @NonNull android.media.MediaTranscodingManager.OnTranscodingFinishedListener);
+ }
+
+ @java.lang.FunctionalInterface public static interface MediaTranscodingManager.OnTranscodingFinishedListener {
+ method public void onTranscodingFinished(@NonNull android.media.MediaTranscodingManager.TranscodingSession);
+ }
+
+ public abstract static class MediaTranscodingManager.TranscodingRequest {
+ method public int getClientPid();
+ method public int getClientUid();
+ method @Nullable public android.os.ParcelFileDescriptor getDestinationFileDescriptor();
+ method @NonNull public android.net.Uri getDestinationUri();
+ method @Nullable public android.os.ParcelFileDescriptor getSourceFileDescriptor();
+ method @NonNull public android.net.Uri getSourceUri();
+ }
+
+ public static class MediaTranscodingManager.TranscodingRequest.VideoFormatResolver {
+ ctor public MediaTranscodingManager.TranscodingRequest.VideoFormatResolver(@NonNull android.media.ApplicationMediaCapabilities, @NonNull android.media.MediaFormat);
+ method @Nullable public android.media.MediaFormat resolveVideoFormat();
+ method public boolean shouldTranscode();
+ }
+
+ public static final class MediaTranscodingManager.TranscodingSession {
+ method public boolean addClientUid(int);
+ method public void cancel();
+ method @NonNull public java.util.List<java.lang.Integer> getClientUids();
+ method public int getErrorCode();
+ method @IntRange(from=0, to=100) public int getProgress();
+ method public int getResult();
+ method public int getSessionId();
+ method public int getStatus();
+ method public void setOnProgressUpdateListener(@NonNull java.util.concurrent.Executor, @Nullable android.media.MediaTranscodingManager.TranscodingSession.OnProgressUpdateListener);
+ field public static final int ERROR_DROPPED_BY_SERVICE = 1; // 0x1
+ field public static final int ERROR_NONE = 0; // 0x0
+ field public static final int ERROR_SERVICE_DIED = 2; // 0x2
+ field public static final int RESULT_CANCELED = 4; // 0x4
+ field public static final int RESULT_ERROR = 3; // 0x3
+ field public static final int RESULT_NONE = 1; // 0x1
+ field public static final int RESULT_SUCCESS = 2; // 0x2
+ field public static final int STATUS_FINISHED = 3; // 0x3
+ field public static final int STATUS_PAUSED = 4; // 0x4
+ field public static final int STATUS_PENDING = 1; // 0x1
+ field public static final int STATUS_RUNNING = 2; // 0x2
+ }
+
+ @java.lang.FunctionalInterface public static interface MediaTranscodingManager.TranscodingSession.OnProgressUpdateListener {
+ method public void onProgressUpdate(@NonNull android.media.MediaTranscodingManager.TranscodingSession, @IntRange(from=0, to=100) int);
+ }
+
+ public static final class MediaTranscodingManager.VideoTranscodingRequest extends android.media.MediaTranscodingManager.TranscodingRequest {
+ method @NonNull public android.media.MediaFormat getVideoTrackFormat();
+ }
+
+ public static final class MediaTranscodingManager.VideoTranscodingRequest.Builder {
+ ctor public MediaTranscodingManager.VideoTranscodingRequest.Builder(@NonNull android.net.Uri, @NonNull android.net.Uri, @NonNull android.media.MediaFormat);
+ method @NonNull public android.media.MediaTranscodingManager.VideoTranscodingRequest build();
+ method @NonNull public android.media.MediaTranscodingManager.VideoTranscodingRequest.Builder setClientPid(int);
+ method @NonNull public android.media.MediaTranscodingManager.VideoTranscodingRequest.Builder setClientUid(int);
+ method @NonNull public android.media.MediaTranscodingManager.VideoTranscodingRequest.Builder setDestinationFileDescriptor(@NonNull android.os.ParcelFileDescriptor);
+ method @NonNull public android.media.MediaTranscodingManager.VideoTranscodingRequest.Builder setSourceFileDescriptor(@NonNull android.os.ParcelFileDescriptor);
+ }
+
+}
+
diff --git a/extensions/3/system/api/framework-mediaprovider-removed.txt b/extensions/3/system/api/framework-mediaprovider-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/system/api/framework-mediaprovider-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/system/api/framework-mediaprovider.txt b/extensions/3/system/api/framework-mediaprovider.txt
new file mode 100644
index 000000000..d29a6ed0d
--- /dev/null
+++ b/extensions/3/system/api/framework-mediaprovider.txt
@@ -0,0 +1,15 @@
+// Signature format: 2.0
+package android.provider {
+
+ public final class MediaStore {
+ method @NonNull public static android.net.Uri rewriteToLegacy(@NonNull android.net.Uri);
+ method @NonNull @WorkerThread public static android.net.Uri scanFile(@NonNull android.content.ContentResolver, @NonNull java.io.File);
+ method @WorkerThread public static void scanVolume(@NonNull android.content.ContentResolver, @NonNull String);
+ method @WorkerThread public static void waitForIdle(@NonNull android.content.ContentResolver);
+ field public static final String AUTHORITY_LEGACY = "media_legacy";
+ field @NonNull public static final android.net.Uri AUTHORITY_LEGACY_URI;
+ field public static final String QUERY_ARG_DEFER_SCAN = "android:query-arg-defer-scan";
+ }
+
+}
+
diff --git a/extensions/3/system/api/framework-ondevicepersonalization-removed.txt b/extensions/3/system/api/framework-ondevicepersonalization-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/system/api/framework-ondevicepersonalization-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/system/api/framework-ondevicepersonalization.txt b/extensions/3/system/api/framework-ondevicepersonalization.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/system/api/framework-ondevicepersonalization.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/system/api/framework-permission-removed.txt b/extensions/3/system/api/framework-permission-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/system/api/framework-permission-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/system/api/framework-permission-s-removed.txt b/extensions/3/system/api/framework-permission-s-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/system/api/framework-permission-s-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/system/api/framework-permission-s.txt b/extensions/3/system/api/framework-permission-s.txt
new file mode 100644
index 000000000..db2d140ca
--- /dev/null
+++ b/extensions/3/system/api/framework-permission-s.txt
@@ -0,0 +1,514 @@
+// Signature format: 2.0
+package android.app.role {
+
+ public interface OnRoleHoldersChangedListener {
+ method public void onRoleHoldersChanged(@NonNull String, @NonNull android.os.UserHandle);
+ }
+
+ @Deprecated public abstract class RoleControllerService extends android.app.Service {
+ ctor @Deprecated public RoleControllerService();
+ method @Deprecated @WorkerThread public abstract boolean onAddRoleHolder(@NonNull String, @NonNull String, int);
+ method @Deprecated @Nullable public final android.os.IBinder onBind(@Nullable android.content.Intent);
+ method @Deprecated @WorkerThread public abstract boolean onClearRoleHolders(@NonNull String, int);
+ method @Deprecated @WorkerThread public abstract boolean onGrantDefaultRoles();
+ method @Deprecated public abstract boolean onIsApplicationQualifiedForRole(@NonNull String, @NonNull String);
+ method @Deprecated public boolean onIsApplicationVisibleForRole(@NonNull String, @NonNull String);
+ method @Deprecated public abstract boolean onIsRoleVisible(@NonNull String);
+ method @Deprecated @WorkerThread public abstract boolean onRemoveRoleHolder(@NonNull String, @NonNull String, int);
+ field @Deprecated public static final String SERVICE_INTERFACE = "android.app.role.RoleControllerService";
+ }
+
+ public final class RoleManager {
+ method @RequiresPermission(android.Manifest.permission.OBSERVE_ROLE_HOLDERS) public void addOnRoleHoldersChangedListenerAsUser(@NonNull java.util.concurrent.Executor, @NonNull android.app.role.OnRoleHoldersChangedListener, @NonNull android.os.UserHandle);
+ method @RequiresPermission(android.Manifest.permission.MANAGE_ROLE_HOLDERS) public void addRoleHolderAsUser(@NonNull String, @NonNull String, int, @NonNull android.os.UserHandle, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Boolean>);
+ method @Deprecated @RequiresPermission("com.android.permissioncontroller.permission.MANAGE_ROLES_FROM_CONTROLLER") public boolean addRoleHolderFromController(@NonNull String, @NonNull String);
+ method @RequiresPermission(android.Manifest.permission.MANAGE_ROLE_HOLDERS) public void clearRoleHoldersAsUser(@NonNull String, int, @NonNull android.os.UserHandle, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Boolean>);
+ method @Deprecated @NonNull @RequiresPermission("com.android.permissioncontroller.permission.MANAGE_ROLES_FROM_CONTROLLER") public java.util.List<java.lang.String> getHeldRolesFromController(@NonNull String);
+ method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_ROLE_HOLDERS) public java.util.List<java.lang.String> getRoleHolders(@NonNull String);
+ method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_ROLE_HOLDERS) public java.util.List<java.lang.String> getRoleHoldersAsUser(@NonNull String, @NonNull android.os.UserHandle);
+ method @RequiresPermission(android.Manifest.permission.MANAGE_ROLE_HOLDERS) public void isApplicationVisibleForRole(@NonNull String, @NonNull String, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Boolean>);
+ method @RequiresPermission(android.Manifest.permission.MANAGE_ROLE_HOLDERS) public boolean isBypassingRoleQualification();
+ method @RequiresPermission(android.Manifest.permission.MANAGE_ROLE_HOLDERS) public void isRoleVisible(@NonNull String, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Boolean>);
+ method @RequiresPermission(android.Manifest.permission.OBSERVE_ROLE_HOLDERS) public void removeOnRoleHoldersChangedListenerAsUser(@NonNull android.app.role.OnRoleHoldersChangedListener, @NonNull android.os.UserHandle);
+ method @RequiresPermission(android.Manifest.permission.MANAGE_ROLE_HOLDERS) public void removeRoleHolderAsUser(@NonNull String, @NonNull String, int, @NonNull android.os.UserHandle, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Boolean>);
+ method @Deprecated @RequiresPermission("com.android.permissioncontroller.permission.MANAGE_ROLES_FROM_CONTROLLER") public boolean removeRoleHolderFromController(@NonNull String, @NonNull String);
+ method @RequiresPermission(android.Manifest.permission.BYPASS_ROLE_QUALIFICATION) public void setBypassingRoleQualification(boolean);
+ method @Deprecated @RequiresPermission("com.android.permissioncontroller.permission.MANAGE_ROLES_FROM_CONTROLLER") public void setRoleNamesFromController(@NonNull java.util.List<java.lang.String>);
+ field public static final int MANAGE_HOLDERS_FLAG_DONT_KILL_APP = 1; // 0x1
+ field public static final String ROLE_DEVICE_POLICY_MANAGEMENT = "android.app.role.DEVICE_POLICY_MANAGEMENT";
+ field public static final String ROLE_SYSTEM_ACTIVITY_RECOGNIZER = "android.app.role.SYSTEM_ACTIVITY_RECOGNIZER";
+ field public static final String ROLE_SYSTEM_SUPERVISION = "android.app.role.SYSTEM_SUPERVISION";
+ field public static final String ROLE_SYSTEM_WELLBEING = "android.app.role.SYSTEM_WELLBEING";
+ }
+
+}
+
+package android.safetycenter {
+
+ public final class SafetyCenterData implements android.os.Parcelable {
+ ctor public SafetyCenterData(@NonNull android.safetycenter.SafetyCenterStatus, @NonNull java.util.List<android.safetycenter.SafetyCenterIssue>, @NonNull java.util.List<android.safetycenter.SafetyCenterEntryOrGroup>, @NonNull java.util.List<android.safetycenter.SafetyCenterStaticEntryGroup>);
+ method public int describeContents();
+ method @NonNull public java.util.List<android.safetycenter.SafetyCenterEntryOrGroup> getEntriesOrGroups();
+ method @NonNull public java.util.List<android.safetycenter.SafetyCenterIssue> getIssues();
+ method @NonNull public java.util.List<android.safetycenter.SafetyCenterStaticEntryGroup> getStaticEntryGroups();
+ method @NonNull public android.safetycenter.SafetyCenterStatus getStatus();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.safetycenter.SafetyCenterData> CREATOR;
+ }
+
+ public final class SafetyCenterEntry implements android.os.Parcelable {
+ method public int describeContents();
+ method @Nullable public android.safetycenter.SafetyCenterEntry.IconAction getIconAction();
+ method @NonNull public String getId();
+ method @Nullable public android.app.PendingIntent getPendingIntent();
+ method public int getSeverityLevel();
+ method public int getSeverityUnspecifiedIconType();
+ method @Nullable public CharSequence getSummary();
+ method @NonNull public CharSequence getTitle();
+ method public boolean isEnabled();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.safetycenter.SafetyCenterEntry> CREATOR;
+ field public static final int ENTRY_SEVERITY_LEVEL_CRITICAL_WARNING = 3400; // 0xd48
+ field public static final int ENTRY_SEVERITY_LEVEL_OK = 3200; // 0xc80
+ field public static final int ENTRY_SEVERITY_LEVEL_RECOMMENDATION = 3300; // 0xce4
+ field public static final int ENTRY_SEVERITY_LEVEL_UNKNOWN = 3000; // 0xbb8
+ field public static final int ENTRY_SEVERITY_LEVEL_UNSPECIFIED = 3100; // 0xc1c
+ field public static final int SEVERITY_UNSPECIFIED_ICON_TYPE_NO_ICON = 0; // 0x0
+ field public static final int SEVERITY_UNSPECIFIED_ICON_TYPE_NO_RECOMMENDATION = 2; // 0x2
+ field public static final int SEVERITY_UNSPECIFIED_ICON_TYPE_PRIVACY = 1; // 0x1
+ }
+
+ public static final class SafetyCenterEntry.Builder {
+ ctor public SafetyCenterEntry.Builder(@NonNull String, @NonNull CharSequence);
+ ctor public SafetyCenterEntry.Builder(@NonNull android.safetycenter.SafetyCenterEntry);
+ method @NonNull public android.safetycenter.SafetyCenterEntry build();
+ method @NonNull public android.safetycenter.SafetyCenterEntry.Builder setEnabled(boolean);
+ method @NonNull public android.safetycenter.SafetyCenterEntry.Builder setIconAction(@Nullable android.safetycenter.SafetyCenterEntry.IconAction);
+ method @NonNull public android.safetycenter.SafetyCenterEntry.Builder setIconAction(int, @NonNull android.app.PendingIntent);
+ method @NonNull public android.safetycenter.SafetyCenterEntry.Builder setId(@NonNull String);
+ method @NonNull public android.safetycenter.SafetyCenterEntry.Builder setPendingIntent(@Nullable android.app.PendingIntent);
+ method @NonNull public android.safetycenter.SafetyCenterEntry.Builder setSeverityLevel(int);
+ method @NonNull public android.safetycenter.SafetyCenterEntry.Builder setSeverityUnspecifiedIconType(int);
+ method @NonNull public android.safetycenter.SafetyCenterEntry.Builder setSummary(@Nullable CharSequence);
+ method @NonNull public android.safetycenter.SafetyCenterEntry.Builder setTitle(@NonNull CharSequence);
+ }
+
+ public static final class SafetyCenterEntry.IconAction implements android.os.Parcelable {
+ ctor public SafetyCenterEntry.IconAction(int, @NonNull android.app.PendingIntent);
+ method public int describeContents();
+ method @NonNull public android.app.PendingIntent getPendingIntent();
+ method public int getType();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.safetycenter.SafetyCenterEntry.IconAction> CREATOR;
+ field public static final int ICON_ACTION_TYPE_GEAR = 30100; // 0x7594
+ field public static final int ICON_ACTION_TYPE_INFO = 30200; // 0x75f8
+ }
+
+ public final class SafetyCenterEntryGroup implements android.os.Parcelable {
+ method public int describeContents();
+ method @NonNull public java.util.List<android.safetycenter.SafetyCenterEntry> getEntries();
+ method @NonNull public String getId();
+ method public int getSeverityLevel();
+ method public int getSeverityUnspecifiedIconType();
+ method @Nullable public CharSequence getSummary();
+ method @NonNull public CharSequence getTitle();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.safetycenter.SafetyCenterEntryGroup> CREATOR;
+ }
+
+ public static final class SafetyCenterEntryGroup.Builder {
+ ctor public SafetyCenterEntryGroup.Builder(@NonNull String, @NonNull CharSequence);
+ ctor public SafetyCenterEntryGroup.Builder(@NonNull android.safetycenter.SafetyCenterEntryGroup);
+ method @NonNull public android.safetycenter.SafetyCenterEntryGroup build();
+ method @NonNull public android.safetycenter.SafetyCenterEntryGroup.Builder setEntries(@NonNull java.util.List<android.safetycenter.SafetyCenterEntry>);
+ method @NonNull public android.safetycenter.SafetyCenterEntryGroup.Builder setId(@NonNull String);
+ method @NonNull public android.safetycenter.SafetyCenterEntryGroup.Builder setSeverityLevel(int);
+ method @NonNull public android.safetycenter.SafetyCenterEntryGroup.Builder setSeverityUnspecifiedIconType(int);
+ method @NonNull public android.safetycenter.SafetyCenterEntryGroup.Builder setSummary(@Nullable CharSequence);
+ method @NonNull public android.safetycenter.SafetyCenterEntryGroup.Builder setTitle(@NonNull CharSequence);
+ }
+
+ public final class SafetyCenterEntryOrGroup implements android.os.Parcelable {
+ ctor public SafetyCenterEntryOrGroup(@NonNull android.safetycenter.SafetyCenterEntry);
+ ctor public SafetyCenterEntryOrGroup(@NonNull android.safetycenter.SafetyCenterEntryGroup);
+ method public int describeContents();
+ method @Nullable public android.safetycenter.SafetyCenterEntry getEntry();
+ method @Nullable public android.safetycenter.SafetyCenterEntryGroup getEntryGroup();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.safetycenter.SafetyCenterEntryOrGroup> CREATOR;
+ }
+
+ public final class SafetyCenterErrorDetails implements android.os.Parcelable {
+ ctor public SafetyCenterErrorDetails(@NonNull CharSequence);
+ method public int describeContents();
+ method @NonNull public CharSequence getErrorMessage();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.safetycenter.SafetyCenterErrorDetails> CREATOR;
+ }
+
+ public final class SafetyCenterIssue implements android.os.Parcelable {
+ method public int describeContents();
+ method @NonNull public java.util.List<android.safetycenter.SafetyCenterIssue.Action> getActions();
+ method @NonNull public String getId();
+ method public int getSeverityLevel();
+ method @Nullable public CharSequence getSubtitle();
+ method @NonNull public CharSequence getSummary();
+ method @NonNull public CharSequence getTitle();
+ method public boolean isDismissible();
+ method public boolean shouldConfirmDismissal();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.safetycenter.SafetyCenterIssue> CREATOR;
+ field public static final int ISSUE_SEVERITY_LEVEL_CRITICAL_WARNING = 2300; // 0x8fc
+ field public static final int ISSUE_SEVERITY_LEVEL_OK = 2100; // 0x834
+ field public static final int ISSUE_SEVERITY_LEVEL_RECOMMENDATION = 2200; // 0x898
+ }
+
+ public static final class SafetyCenterIssue.Action implements android.os.Parcelable {
+ method public int describeContents();
+ method @NonNull public String getId();
+ method @NonNull public CharSequence getLabel();
+ method @NonNull public android.app.PendingIntent getPendingIntent();
+ method @Nullable public CharSequence getSuccessMessage();
+ method public boolean isInFlight();
+ method public boolean willResolve();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.safetycenter.SafetyCenterIssue.Action> CREATOR;
+ }
+
+ public static final class SafetyCenterIssue.Action.Builder {
+ ctor public SafetyCenterIssue.Action.Builder(@NonNull String, @NonNull CharSequence, @NonNull android.app.PendingIntent);
+ method @NonNull public android.safetycenter.SafetyCenterIssue.Action build();
+ method @NonNull public android.safetycenter.SafetyCenterIssue.Action.Builder setId(@NonNull String);
+ method @NonNull public android.safetycenter.SafetyCenterIssue.Action.Builder setIsInFlight(boolean);
+ method @NonNull public android.safetycenter.SafetyCenterIssue.Action.Builder setLabel(@NonNull CharSequence);
+ method @NonNull public android.safetycenter.SafetyCenterIssue.Action.Builder setPendingIntent(@NonNull android.app.PendingIntent);
+ method @NonNull public android.safetycenter.SafetyCenterIssue.Action.Builder setSuccessMessage(@Nullable CharSequence);
+ method @NonNull public android.safetycenter.SafetyCenterIssue.Action.Builder setWillResolve(boolean);
+ }
+
+ public static final class SafetyCenterIssue.Builder {
+ ctor public SafetyCenterIssue.Builder(@NonNull String, @NonNull CharSequence, @NonNull CharSequence);
+ ctor public SafetyCenterIssue.Builder(@NonNull android.safetycenter.SafetyCenterIssue);
+ method @NonNull public android.safetycenter.SafetyCenterIssue build();
+ method @NonNull public android.safetycenter.SafetyCenterIssue.Builder setActions(@NonNull java.util.List<android.safetycenter.SafetyCenterIssue.Action>);
+ method @NonNull public android.safetycenter.SafetyCenterIssue.Builder setDismissible(boolean);
+ method @NonNull public android.safetycenter.SafetyCenterIssue.Builder setId(@NonNull String);
+ method @NonNull public android.safetycenter.SafetyCenterIssue.Builder setSeverityLevel(int);
+ method @NonNull public android.safetycenter.SafetyCenterIssue.Builder setShouldConfirmDismissal(boolean);
+ method @NonNull public android.safetycenter.SafetyCenterIssue.Builder setSubtitle(@Nullable CharSequence);
+ method @NonNull public android.safetycenter.SafetyCenterIssue.Builder setSummary(@NonNull CharSequence);
+ method @NonNull public android.safetycenter.SafetyCenterIssue.Builder setTitle(@NonNull CharSequence);
+ }
+
+ public final class SafetyCenterManager {
+ method @RequiresPermission(android.Manifest.permission.MANAGE_SAFETY_CENTER) public void addOnSafetyCenterDataChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.safetycenter.SafetyCenterManager.OnSafetyCenterDataChangedListener);
+ method @RequiresPermission(android.Manifest.permission.MANAGE_SAFETY_CENTER) public void clearAllSafetySourceDataForTests();
+ method @RequiresPermission(android.Manifest.permission.MANAGE_SAFETY_CENTER) public void clearSafetyCenterConfigForTests();
+ method @RequiresPermission(android.Manifest.permission.MANAGE_SAFETY_CENTER) public void dismissSafetyCenterIssue(@NonNull String);
+ method @RequiresPermission(android.Manifest.permission.MANAGE_SAFETY_CENTER) public void executeSafetyCenterIssueAction(@NonNull String, @NonNull String);
+ method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_SAFETY_CENTER) public android.safetycenter.config.SafetyCenterConfig getSafetyCenterConfig();
+ method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_SAFETY_CENTER) public android.safetycenter.SafetyCenterData getSafetyCenterData();
+ method @Nullable @RequiresPermission(android.Manifest.permission.SEND_SAFETY_CENTER_UPDATE) public android.safetycenter.SafetySourceData getSafetySourceData(@NonNull String);
+ method @RequiresPermission(anyOf={android.Manifest.permission.READ_SAFETY_CENTER_STATUS, android.Manifest.permission.SEND_SAFETY_CENTER_UPDATE}) public boolean isSafetyCenterEnabled();
+ method @RequiresPermission(android.Manifest.permission.MANAGE_SAFETY_CENTER) public void refreshSafetySources(int);
+ method @RequiresPermission(android.Manifest.permission.MANAGE_SAFETY_CENTER) public void removeOnSafetyCenterDataChangedListener(@NonNull android.safetycenter.SafetyCenterManager.OnSafetyCenterDataChangedListener);
+ method @RequiresPermission(android.Manifest.permission.SEND_SAFETY_CENTER_UPDATE) public void reportSafetySourceError(@NonNull String, @NonNull android.safetycenter.SafetySourceErrorDetails);
+ method @RequiresPermission(android.Manifest.permission.MANAGE_SAFETY_CENTER) public void setSafetyCenterConfigForTests(@NonNull android.safetycenter.config.SafetyCenterConfig);
+ method @RequiresPermission(android.Manifest.permission.SEND_SAFETY_CENTER_UPDATE) public void setSafetySourceData(@NonNull String, @Nullable android.safetycenter.SafetySourceData, @NonNull android.safetycenter.SafetyEvent);
+ field public static final String ACTION_REFRESH_SAFETY_SOURCES = "android.safetycenter.action.REFRESH_SAFETY_SOURCES";
+ field public static final String ACTION_SAFETY_CENTER_ENABLED_CHANGED = "android.safetycenter.action.SAFETY_CENTER_ENABLED_CHANGED";
+ field public static final int EXTRA_REFRESH_REQUEST_TYPE_FETCH_FRESH_DATA = 0; // 0x0
+ field public static final int EXTRA_REFRESH_REQUEST_TYPE_GET_DATA = 1; // 0x1
+ field public static final String EXTRA_REFRESH_SAFETY_SOURCES_BROADCAST_ID = "android.safetycenter.extra.REFRESH_SAFETY_SOURCES_BROADCAST_ID";
+ field public static final String EXTRA_REFRESH_SAFETY_SOURCES_REQUEST_TYPE = "android.safetycenter.extra.REFRESH_SAFETY_SOURCES_REQUEST_TYPE";
+ field public static final String EXTRA_REFRESH_SAFETY_SOURCE_IDS = "android.safetycenter.extra.REFRESH_SAFETY_SOURCE_IDS";
+ field public static final String EXTRA_SAFETY_SOURCE_ID = "android.safetycenter.extra.SAFETY_SOURCE_ID";
+ field public static final String EXTRA_SAFETY_SOURCE_ISSUE_ID = "android.safetycenter.extra.SAFETY_SOURCE_ISSUE_ID";
+ field public static final String EXTRA_SAFETY_SOURCE_USER_HANDLE = "android.safetycenter.extra.SAFETY_SOURCE_USER_HANDLE";
+ field public static final int REFRESH_REASON_DEVICE_LOCALE_CHANGE = 400; // 0x190
+ field public static final int REFRESH_REASON_DEVICE_REBOOT = 300; // 0x12c
+ field public static final int REFRESH_REASON_OTHER = 600; // 0x258
+ field public static final int REFRESH_REASON_PAGE_OPEN = 100; // 0x64
+ field public static final int REFRESH_REASON_RESCAN_BUTTON_CLICK = 200; // 0xc8
+ field public static final int REFRESH_REASON_SAFETY_CENTER_ENABLED = 500; // 0x1f4
+ }
+
+ public static interface SafetyCenterManager.OnSafetyCenterDataChangedListener {
+ method public default void onError(@NonNull android.safetycenter.SafetyCenterErrorDetails);
+ method public void onSafetyCenterDataChanged(@NonNull android.safetycenter.SafetyCenterData);
+ }
+
+ public final class SafetyCenterStaticEntry implements android.os.Parcelable {
+ method public int describeContents();
+ method @Nullable public android.app.PendingIntent getPendingIntent();
+ method @Nullable public CharSequence getSummary();
+ method @NonNull public CharSequence getTitle();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.safetycenter.SafetyCenterStaticEntry> CREATOR;
+ }
+
+ public static final class SafetyCenterStaticEntry.Builder {
+ ctor public SafetyCenterStaticEntry.Builder(@NonNull CharSequence);
+ ctor public SafetyCenterStaticEntry.Builder(@NonNull android.safetycenter.SafetyCenterStaticEntry);
+ method @NonNull public android.safetycenter.SafetyCenterStaticEntry build();
+ method @NonNull public android.safetycenter.SafetyCenterStaticEntry.Builder setPendingIntent(@Nullable android.app.PendingIntent);
+ method @NonNull public android.safetycenter.SafetyCenterStaticEntry.Builder setSummary(@Nullable CharSequence);
+ method @NonNull public android.safetycenter.SafetyCenterStaticEntry.Builder setTitle(@NonNull CharSequence);
+ }
+
+ public final class SafetyCenterStaticEntryGroup implements android.os.Parcelable {
+ ctor public SafetyCenterStaticEntryGroup(@NonNull CharSequence, @NonNull java.util.List<android.safetycenter.SafetyCenterStaticEntry>);
+ method public int describeContents();
+ method @NonNull public java.util.List<android.safetycenter.SafetyCenterStaticEntry> getStaticEntries();
+ method @NonNull public CharSequence getTitle();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.safetycenter.SafetyCenterStaticEntryGroup> CREATOR;
+ }
+
+ public final class SafetyCenterStatus implements android.os.Parcelable {
+ method public int describeContents();
+ method public int getRefreshStatus();
+ method public int getSeverityLevel();
+ method @NonNull public CharSequence getSummary();
+ method @NonNull public CharSequence getTitle();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.safetycenter.SafetyCenterStatus> CREATOR;
+ field public static final int OVERALL_SEVERITY_LEVEL_CRITICAL_WARNING = 1300; // 0x514
+ field public static final int OVERALL_SEVERITY_LEVEL_OK = 1100; // 0x44c
+ field public static final int OVERALL_SEVERITY_LEVEL_RECOMMENDATION = 1200; // 0x4b0
+ field public static final int OVERALL_SEVERITY_LEVEL_UNKNOWN = 1000; // 0x3e8
+ field public static final int REFRESH_STATUS_DATA_FETCH_IN_PROGRESS = 10100; // 0x2774
+ field public static final int REFRESH_STATUS_FULL_RESCAN_IN_PROGRESS = 10200; // 0x27d8
+ field public static final int REFRESH_STATUS_NONE = 0; // 0x0
+ }
+
+ public static final class SafetyCenterStatus.Builder {
+ ctor public SafetyCenterStatus.Builder(@NonNull CharSequence, @NonNull CharSequence);
+ ctor public SafetyCenterStatus.Builder(@NonNull android.safetycenter.SafetyCenterStatus);
+ method @NonNull public android.safetycenter.SafetyCenterStatus build();
+ method @NonNull public android.safetycenter.SafetyCenterStatus.Builder setRefreshStatus(int);
+ method @NonNull public android.safetycenter.SafetyCenterStatus.Builder setSeverityLevel(int);
+ method @NonNull public android.safetycenter.SafetyCenterStatus.Builder setSummary(@NonNull CharSequence);
+ method @NonNull public android.safetycenter.SafetyCenterStatus.Builder setTitle(@NonNull CharSequence);
+ }
+
+ public final class SafetyEvent implements android.os.Parcelable {
+ method public int describeContents();
+ method @Nullable public String getRefreshBroadcastId();
+ method @Nullable public String getSafetySourceIssueActionId();
+ method @Nullable public String getSafetySourceIssueId();
+ method public int getType();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.safetycenter.SafetyEvent> CREATOR;
+ field public static final int SAFETY_EVENT_TYPE_DEVICE_LOCALE_CHANGED = 500; // 0x1f4
+ field public static final int SAFETY_EVENT_TYPE_DEVICE_REBOOTED = 600; // 0x258
+ field public static final int SAFETY_EVENT_TYPE_REFRESH_REQUESTED = 200; // 0xc8
+ field public static final int SAFETY_EVENT_TYPE_RESOLVING_ACTION_FAILED = 400; // 0x190
+ field public static final int SAFETY_EVENT_TYPE_RESOLVING_ACTION_SUCCEEDED = 300; // 0x12c
+ field public static final int SAFETY_EVENT_TYPE_SOURCE_STATE_CHANGED = 100; // 0x64
+ }
+
+ public static final class SafetyEvent.Builder {
+ ctor public SafetyEvent.Builder(int);
+ method @NonNull public android.safetycenter.SafetyEvent build();
+ method @NonNull public android.safetycenter.SafetyEvent.Builder setRefreshBroadcastId(@Nullable String);
+ method @NonNull public android.safetycenter.SafetyEvent.Builder setSafetySourceIssueActionId(@Nullable String);
+ method @NonNull public android.safetycenter.SafetyEvent.Builder setSafetySourceIssueId(@Nullable String);
+ }
+
+ public final class SafetySourceData implements android.os.Parcelable {
+ method public int describeContents();
+ method @NonNull public java.util.List<android.safetycenter.SafetySourceIssue> getIssues();
+ method @Nullable public android.safetycenter.SafetySourceStatus getStatus();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.safetycenter.SafetySourceData> CREATOR;
+ field public static final int SEVERITY_LEVEL_CRITICAL_WARNING = 400; // 0x190
+ field public static final int SEVERITY_LEVEL_INFORMATION = 200; // 0xc8
+ field public static final int SEVERITY_LEVEL_RECOMMENDATION = 300; // 0x12c
+ field public static final int SEVERITY_LEVEL_UNSPECIFIED = 100; // 0x64
+ }
+
+ public static final class SafetySourceData.Builder {
+ ctor public SafetySourceData.Builder();
+ method @NonNull public android.safetycenter.SafetySourceData.Builder addIssue(@NonNull android.safetycenter.SafetySourceIssue);
+ method @NonNull public android.safetycenter.SafetySourceData build();
+ method @NonNull public android.safetycenter.SafetySourceData.Builder clearIssues();
+ method @NonNull public android.safetycenter.SafetySourceData.Builder setStatus(@Nullable android.safetycenter.SafetySourceStatus);
+ }
+
+ public final class SafetySourceErrorDetails implements android.os.Parcelable {
+ ctor public SafetySourceErrorDetails(@NonNull android.safetycenter.SafetyEvent);
+ method public int describeContents();
+ method @NonNull public android.safetycenter.SafetyEvent getSafetyEvent();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.safetycenter.SafetySourceErrorDetails> CREATOR;
+ }
+
+ public final class SafetySourceIssue implements android.os.Parcelable {
+ method public int describeContents();
+ method @NonNull public java.util.List<android.safetycenter.SafetySourceIssue.Action> getActions();
+ method @NonNull public String getId();
+ method public int getIssueCategory();
+ method @NonNull public String getIssueTypeId();
+ method @Nullable public android.app.PendingIntent getOnDismissPendingIntent();
+ method public int getSeverityLevel();
+ method @Nullable public CharSequence getSubtitle();
+ method @NonNull public CharSequence getSummary();
+ method @NonNull public CharSequence getTitle();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.safetycenter.SafetySourceIssue> CREATOR;
+ field public static final int ISSUE_CATEGORY_ACCOUNT = 200; // 0xc8
+ field public static final int ISSUE_CATEGORY_DEVICE = 100; // 0x64
+ field public static final int ISSUE_CATEGORY_GENERAL = 300; // 0x12c
+ }
+
+ public static final class SafetySourceIssue.Action implements android.os.Parcelable {
+ method public int describeContents();
+ method @NonNull public String getId();
+ method @NonNull public CharSequence getLabel();
+ method @NonNull public android.app.PendingIntent getPendingIntent();
+ method @Nullable public CharSequence getSuccessMessage();
+ method public boolean willResolve();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.safetycenter.SafetySourceIssue.Action> CREATOR;
+ }
+
+ public static final class SafetySourceIssue.Action.Builder {
+ ctor public SafetySourceIssue.Action.Builder(@NonNull String, @NonNull CharSequence, @NonNull android.app.PendingIntent);
+ method @NonNull public android.safetycenter.SafetySourceIssue.Action build();
+ method @NonNull public android.safetycenter.SafetySourceIssue.Action.Builder setSuccessMessage(@Nullable CharSequence);
+ method @NonNull public android.safetycenter.SafetySourceIssue.Action.Builder setWillResolve(boolean);
+ }
+
+ public static final class SafetySourceIssue.Builder {
+ ctor public SafetySourceIssue.Builder(@NonNull String, @NonNull CharSequence, @NonNull CharSequence, int, @NonNull String);
+ method @NonNull public android.safetycenter.SafetySourceIssue.Builder addAction(@NonNull android.safetycenter.SafetySourceIssue.Action);
+ method @NonNull public android.safetycenter.SafetySourceIssue build();
+ method @NonNull public android.safetycenter.SafetySourceIssue.Builder clearActions();
+ method @NonNull public android.safetycenter.SafetySourceIssue.Builder setIssueCategory(int);
+ method @NonNull public android.safetycenter.SafetySourceIssue.Builder setOnDismissPendingIntent(@Nullable android.app.PendingIntent);
+ method @NonNull public android.safetycenter.SafetySourceIssue.Builder setSubtitle(@Nullable CharSequence);
+ }
+
+ public final class SafetySourceStatus implements android.os.Parcelable {
+ method public int describeContents();
+ method @Nullable public android.safetycenter.SafetySourceStatus.IconAction getIconAction();
+ method @Nullable public android.app.PendingIntent getPendingIntent();
+ method public int getSeverityLevel();
+ method @NonNull public CharSequence getSummary();
+ method @NonNull public CharSequence getTitle();
+ method public boolean isEnabled();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.safetycenter.SafetySourceStatus> CREATOR;
+ }
+
+ public static final class SafetySourceStatus.Builder {
+ ctor public SafetySourceStatus.Builder(@NonNull CharSequence, @NonNull CharSequence, int);
+ method @NonNull public android.safetycenter.SafetySourceStatus build();
+ method @NonNull public android.safetycenter.SafetySourceStatus.Builder setEnabled(boolean);
+ method @NonNull public android.safetycenter.SafetySourceStatus.Builder setIconAction(@Nullable android.safetycenter.SafetySourceStatus.IconAction);
+ method @NonNull public android.safetycenter.SafetySourceStatus.Builder setPendingIntent(@Nullable android.app.PendingIntent);
+ }
+
+ public static final class SafetySourceStatus.IconAction implements android.os.Parcelable {
+ ctor public SafetySourceStatus.IconAction(int, @NonNull android.app.PendingIntent);
+ method public int describeContents();
+ method public int getIconType();
+ method @NonNull public android.app.PendingIntent getPendingIntent();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.safetycenter.SafetySourceStatus.IconAction> CREATOR;
+ field public static final int ICON_TYPE_GEAR = 100; // 0x64
+ field public static final int ICON_TYPE_INFO = 200; // 0xc8
+ }
+
+}
+
+package android.safetycenter.config {
+
+ public final class SafetyCenterConfig implements android.os.Parcelable {
+ method public int describeContents();
+ method @NonNull public java.util.List<android.safetycenter.config.SafetySourcesGroup> getSafetySourcesGroups();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.safetycenter.config.SafetyCenterConfig> CREATOR;
+ }
+
+ public static final class SafetyCenterConfig.Builder {
+ ctor public SafetyCenterConfig.Builder();
+ method @NonNull public android.safetycenter.config.SafetyCenterConfig.Builder addSafetySourcesGroup(@NonNull android.safetycenter.config.SafetySourcesGroup);
+ method @NonNull public android.safetycenter.config.SafetyCenterConfig build();
+ }
+
+ public final class SafetySource implements android.os.Parcelable {
+ method public int describeContents();
+ method @NonNull public String getId();
+ method public int getInitialDisplayState();
+ method @Nullable public String getIntentAction();
+ method public int getMaxSeverityLevel();
+ method @NonNull public String getPackageName();
+ method public int getProfile();
+ method @StringRes public int getSearchTermsResId();
+ method @StringRes public int getSummaryResId();
+ method @StringRes public int getTitleForWorkResId();
+ method @StringRes public int getTitleResId();
+ method public int getType();
+ method public boolean isLoggingAllowed();
+ method public boolean isRefreshOnPageOpenAllowed();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.safetycenter.config.SafetySource> CREATOR;
+ field public static final int INITIAL_DISPLAY_STATE_DISABLED = 1; // 0x1
+ field public static final int INITIAL_DISPLAY_STATE_ENABLED = 0; // 0x0
+ field public static final int INITIAL_DISPLAY_STATE_HIDDEN = 2; // 0x2
+ field public static final int PROFILE_ALL = 2; // 0x2
+ field public static final int PROFILE_NONE = 0; // 0x0
+ field public static final int PROFILE_PRIMARY = 1; // 0x1
+ field public static final int SAFETY_SOURCE_TYPE_DYNAMIC = 2; // 0x2
+ field public static final int SAFETY_SOURCE_TYPE_ISSUE_ONLY = 3; // 0x3
+ field public static final int SAFETY_SOURCE_TYPE_STATIC = 1; // 0x1
+ }
+
+ public static final class SafetySource.Builder {
+ ctor public SafetySource.Builder(int);
+ method @NonNull public android.safetycenter.config.SafetySource build();
+ method @NonNull public android.safetycenter.config.SafetySource.Builder setId(@Nullable String);
+ method @NonNull public android.safetycenter.config.SafetySource.Builder setInitialDisplayState(int);
+ method @NonNull public android.safetycenter.config.SafetySource.Builder setIntentAction(@Nullable String);
+ method @NonNull public android.safetycenter.config.SafetySource.Builder setLoggingAllowed(boolean);
+ method @NonNull public android.safetycenter.config.SafetySource.Builder setMaxSeverityLevel(int);
+ method @NonNull public android.safetycenter.config.SafetySource.Builder setPackageName(@Nullable String);
+ method @NonNull public android.safetycenter.config.SafetySource.Builder setProfile(int);
+ method @NonNull public android.safetycenter.config.SafetySource.Builder setRefreshOnPageOpenAllowed(boolean);
+ method @NonNull public android.safetycenter.config.SafetySource.Builder setSearchTermsResId(@StringRes int);
+ method @NonNull public android.safetycenter.config.SafetySource.Builder setSummaryResId(@StringRes int);
+ method @NonNull public android.safetycenter.config.SafetySource.Builder setTitleForWorkResId(@StringRes int);
+ method @NonNull public android.safetycenter.config.SafetySource.Builder setTitleResId(@StringRes int);
+ }
+
+ public final class SafetySourcesGroup implements android.os.Parcelable {
+ method public int describeContents();
+ method @NonNull public String getId();
+ method @NonNull public java.util.List<android.safetycenter.config.SafetySource> getSafetySources();
+ method public int getStatelessIconType();
+ method @StringRes public int getSummaryResId();
+ method @StringRes public int getTitleResId();
+ method public int getType();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.safetycenter.config.SafetySourcesGroup> CREATOR;
+ field public static final int SAFETY_SOURCES_GROUP_TYPE_COLLAPSIBLE = 0; // 0x0
+ field public static final int SAFETY_SOURCES_GROUP_TYPE_HIDDEN = 2; // 0x2
+ field public static final int SAFETY_SOURCES_GROUP_TYPE_RIGID = 1; // 0x1
+ field public static final int STATELESS_ICON_TYPE_NONE = 0; // 0x0
+ field public static final int STATELESS_ICON_TYPE_PRIVACY = 1; // 0x1
+ }
+
+ public static final class SafetySourcesGroup.Builder {
+ ctor public SafetySourcesGroup.Builder();
+ method @NonNull public android.safetycenter.config.SafetySourcesGroup.Builder addSafetySource(@NonNull android.safetycenter.config.SafetySource);
+ method @NonNull public android.safetycenter.config.SafetySourcesGroup build();
+ method @NonNull public android.safetycenter.config.SafetySourcesGroup.Builder setId(@Nullable String);
+ method @NonNull public android.safetycenter.config.SafetySourcesGroup.Builder setStatelessIconType(int);
+ method @NonNull public android.safetycenter.config.SafetySourcesGroup.Builder setSummaryResId(@StringRes int);
+ method @NonNull public android.safetycenter.config.SafetySourcesGroup.Builder setTitleResId(@StringRes int);
+ }
+
+}
+
diff --git a/extensions/3/system/api/framework-permission.txt b/extensions/3/system/api/framework-permission.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/system/api/framework-permission.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/system/api/framework-scheduling-removed.txt b/extensions/3/system/api/framework-scheduling-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/system/api/framework-scheduling-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/system/api/framework-scheduling.txt b/extensions/3/system/api/framework-scheduling.txt
new file mode 100644
index 000000000..5b76cd49b
--- /dev/null
+++ b/extensions/3/system/api/framework-scheduling.txt
@@ -0,0 +1,26 @@
+// Signature format: 2.0
+package android.scheduling {
+
+ public final class RebootReadinessManager {
+ method @RequiresPermission(android.Manifest.permission.SIGNAL_REBOOT_READINESS) public void addRequestRebootReadinessStatusListener(@NonNull java.util.concurrent.Executor, @NonNull android.scheduling.RebootReadinessManager.RequestRebootReadinessStatusListener);
+ method @RequiresPermission(android.Manifest.permission.REBOOT) public void cancelPendingReboot();
+ method @RequiresPermission(android.Manifest.permission.REBOOT) public boolean isReadyToReboot();
+ method @RequiresPermission(android.Manifest.permission.REBOOT) public void markRebootPending();
+ method @RequiresPermission(android.Manifest.permission.SIGNAL_REBOOT_READINESS) public void removeRequestRebootReadinessStatusListener(@NonNull android.scheduling.RebootReadinessManager.RequestRebootReadinessStatusListener);
+ field public static final String ACTION_REBOOT_READY = "android.scheduling.action.REBOOT_READY";
+ field public static final String EXTRA_IS_READY_TO_REBOOT = "android.scheduling.extra.IS_READY_TO_REBOOT";
+ }
+
+ public static final class RebootReadinessManager.RebootReadinessStatus {
+ ctor public RebootReadinessManager.RebootReadinessStatus(boolean, long, @NonNull String);
+ method public long getEstimatedFinishTime();
+ method @NonNull public String getLogSubsystemName();
+ method public boolean isReadyToReboot();
+ }
+
+ public static interface RebootReadinessManager.RequestRebootReadinessStatusListener {
+ method @NonNull public android.scheduling.RebootReadinessManager.RebootReadinessStatus onRequestRebootReadinessStatus();
+ }
+
+}
+
diff --git a/extensions/3/system/api/framework-sdkextensions-removed.txt b/extensions/3/system/api/framework-sdkextensions-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/system/api/framework-sdkextensions-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/system/api/framework-sdkextensions.txt b/extensions/3/system/api/framework-sdkextensions.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/system/api/framework-sdkextensions.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/system/api/framework-sdksandbox-removed.txt b/extensions/3/system/api/framework-sdksandbox-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/system/api/framework-sdksandbox-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/system/api/framework-sdksandbox.txt b/extensions/3/system/api/framework-sdksandbox.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/system/api/framework-sdksandbox.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/system/api/framework-statsd-removed.txt b/extensions/3/system/api/framework-statsd-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/system/api/framework-statsd-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/system/api/framework-statsd.txt b/extensions/3/system/api/framework-statsd.txt
new file mode 100644
index 000000000..c432a7f87
--- /dev/null
+++ b/extensions/3/system/api/framework-statsd.txt
@@ -0,0 +1,124 @@
+// Signature format: 2.0
+package android.app {
+
+ public final class StatsManager {
+ method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public void addConfig(long, byte[]) throws android.app.StatsManager.StatsUnavailableException;
+ method @Deprecated @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public boolean addConfiguration(long, byte[]);
+ method @RequiresPermission(android.Manifest.permission.REGISTER_STATS_PULL_ATOM) public void clearPullAtomCallback(int);
+ method @Deprecated @Nullable @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public byte[] getData(long);
+ method @Deprecated @Nullable @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public byte[] getMetadata();
+ method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public long[] getRegisteredExperimentIds() throws android.app.StatsManager.StatsUnavailableException;
+ method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public byte[] getReports(long) throws android.app.StatsManager.StatsUnavailableException;
+ method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public byte[] getStatsMetadata() throws android.app.StatsManager.StatsUnavailableException;
+ method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public void removeConfig(long) throws android.app.StatsManager.StatsUnavailableException;
+ method @Deprecated @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public boolean removeConfiguration(long);
+ method @NonNull @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public long[] setActiveConfigsChangedOperation(@Nullable android.app.PendingIntent) throws android.app.StatsManager.StatsUnavailableException;
+ method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public void setBroadcastSubscriber(android.app.PendingIntent, long, long) throws android.app.StatsManager.StatsUnavailableException;
+ method @Deprecated @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public boolean setBroadcastSubscriber(long, long, android.app.PendingIntent);
+ method @Deprecated @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public boolean setDataFetchOperation(long, android.app.PendingIntent);
+ method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public void setFetchReportsOperation(android.app.PendingIntent, long) throws android.app.StatsManager.StatsUnavailableException;
+ method @RequiresPermission(android.Manifest.permission.REGISTER_STATS_PULL_ATOM) public void setPullAtomCallback(int, @Nullable android.app.StatsManager.PullAtomMetadata, @NonNull java.util.concurrent.Executor, @NonNull android.app.StatsManager.StatsPullAtomCallback);
+ field public static final String ACTION_STATSD_STARTED = "android.app.action.STATSD_STARTED";
+ field public static final String EXTRA_STATS_ACTIVE_CONFIG_KEYS = "android.app.extra.STATS_ACTIVE_CONFIG_KEYS";
+ field public static final String EXTRA_STATS_BROADCAST_SUBSCRIBER_COOKIES = "android.app.extra.STATS_BROADCAST_SUBSCRIBER_COOKIES";
+ field public static final String EXTRA_STATS_CONFIG_KEY = "android.app.extra.STATS_CONFIG_KEY";
+ field public static final String EXTRA_STATS_CONFIG_UID = "android.app.extra.STATS_CONFIG_UID";
+ field public static final String EXTRA_STATS_DIMENSIONS_VALUE = "android.app.extra.STATS_DIMENSIONS_VALUE";
+ field public static final String EXTRA_STATS_SUBSCRIPTION_ID = "android.app.extra.STATS_SUBSCRIPTION_ID";
+ field public static final String EXTRA_STATS_SUBSCRIPTION_RULE_ID = "android.app.extra.STATS_SUBSCRIPTION_RULE_ID";
+ field public static final int PULL_SKIP = 1; // 0x1
+ field public static final int PULL_SUCCESS = 0; // 0x0
+ }
+
+ public static class StatsManager.PullAtomMetadata {
+ method @Nullable public int[] getAdditiveFields();
+ method public long getCoolDownMillis();
+ method public long getTimeoutMillis();
+ }
+
+ public static class StatsManager.PullAtomMetadata.Builder {
+ ctor public StatsManager.PullAtomMetadata.Builder();
+ method @NonNull public android.app.StatsManager.PullAtomMetadata build();
+ method @NonNull public android.app.StatsManager.PullAtomMetadata.Builder setAdditiveFields(@NonNull int[]);
+ method @NonNull public android.app.StatsManager.PullAtomMetadata.Builder setCoolDownMillis(long);
+ method @NonNull public android.app.StatsManager.PullAtomMetadata.Builder setTimeoutMillis(long);
+ }
+
+ public static interface StatsManager.StatsPullAtomCallback {
+ method public int onPullAtom(int, @NonNull java.util.List<android.util.StatsEvent>);
+ }
+
+ public static class StatsManager.StatsUnavailableException extends android.util.AndroidException {
+ ctor public StatsManager.StatsUnavailableException(String);
+ ctor public StatsManager.StatsUnavailableException(String, Throwable);
+ }
+
+}
+
+package android.os {
+
+ public final class StatsDimensionsValue implements android.os.Parcelable {
+ method public int describeContents();
+ method public boolean getBooleanValue();
+ method public int getField();
+ method public float getFloatValue();
+ method public int getIntValue();
+ method public long getLongValue();
+ method public String getStringValue();
+ method public java.util.List<android.os.StatsDimensionsValue> getTupleValueList();
+ method public int getValueType();
+ method public boolean isValueType(int);
+ method public void writeToParcel(android.os.Parcel, int);
+ field public static final int BOOLEAN_VALUE_TYPE = 5; // 0x5
+ field @NonNull public static final android.os.Parcelable.Creator<android.os.StatsDimensionsValue> CREATOR;
+ field public static final int FLOAT_VALUE_TYPE = 6; // 0x6
+ field public static final int INT_VALUE_TYPE = 3; // 0x3
+ field public static final int LONG_VALUE_TYPE = 4; // 0x4
+ field public static final int STRING_VALUE_TYPE = 2; // 0x2
+ field public static final int TUPLE_VALUE_TYPE = 7; // 0x7
+ }
+
+}
+
+package android.util {
+
+ public final class StatsEvent {
+ method @NonNull public static android.util.StatsEvent.Builder newBuilder();
+ }
+
+ public static final class StatsEvent.Builder {
+ method @NonNull public android.util.StatsEvent.Builder addBooleanAnnotation(byte, boolean);
+ method @NonNull public android.util.StatsEvent.Builder addIntAnnotation(byte, int);
+ method @NonNull public android.util.StatsEvent build();
+ method @NonNull public android.util.StatsEvent.Builder setAtomId(int);
+ method @NonNull public android.util.StatsEvent.Builder usePooledBuffer();
+ method @NonNull public android.util.StatsEvent.Builder writeAttributionChain(@NonNull int[], @NonNull String[]);
+ method @NonNull public android.util.StatsEvent.Builder writeBoolean(boolean);
+ method @NonNull public android.util.StatsEvent.Builder writeBooleanArray(@NonNull boolean[]);
+ method @NonNull public android.util.StatsEvent.Builder writeByteArray(@NonNull byte[]);
+ method @NonNull public android.util.StatsEvent.Builder writeFloat(float);
+ method @NonNull public android.util.StatsEvent.Builder writeFloatArray(@NonNull float[]);
+ method @NonNull public android.util.StatsEvent.Builder writeInt(int);
+ method @NonNull public android.util.StatsEvent.Builder writeIntArray(@NonNull int[]);
+ method @NonNull public android.util.StatsEvent.Builder writeKeyValuePairs(@Nullable android.util.SparseIntArray, @Nullable android.util.SparseLongArray, @Nullable android.util.SparseArray<java.lang.String>, @Nullable android.util.SparseArray<java.lang.Float>);
+ method @NonNull public android.util.StatsEvent.Builder writeLong(long);
+ method @NonNull public android.util.StatsEvent.Builder writeLongArray(@NonNull long[]);
+ method @NonNull public android.util.StatsEvent.Builder writeString(@NonNull String);
+ method @NonNull public android.util.StatsEvent.Builder writeStringArray(@NonNull String[]);
+ }
+
+ public final class StatsLog {
+ method public static void write(@NonNull android.util.StatsEvent);
+ method @Deprecated public static void writeRaw(@NonNull byte[], int);
+ field public static final byte ANNOTATION_ID_DEFAULT_STATE = 6; // 0x6
+ field public static final byte ANNOTATION_ID_EXCLUSIVE_STATE = 4; // 0x4
+ field public static final byte ANNOTATION_ID_IS_UID = 1; // 0x1
+ field public static final byte ANNOTATION_ID_PRIMARY_FIELD = 3; // 0x3
+ field public static final byte ANNOTATION_ID_PRIMARY_FIELD_FIRST_UID = 5; // 0x5
+ field public static final byte ANNOTATION_ID_STATE_NESTED = 8; // 0x8
+ field public static final byte ANNOTATION_ID_TRIGGER_STATE_RESET = 7; // 0x7
+ field public static final byte ANNOTATION_ID_TRUNCATE_TIMESTAMP = 2; // 0x2
+ }
+
+}
+
diff --git a/extensions/3/system/api/framework-tethering-removed.txt b/extensions/3/system/api/framework-tethering-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/system/api/framework-tethering-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/system/api/framework-tethering.txt b/extensions/3/system/api/framework-tethering.txt
new file mode 100644
index 000000000..844ff6471
--- /dev/null
+++ b/extensions/3/system/api/framework-tethering.txt
@@ -0,0 +1,117 @@
+// Signature format: 2.0
+package android.net {
+
+ public final class TetheredClient implements android.os.Parcelable {
+ ctor public TetheredClient(@NonNull android.net.MacAddress, @NonNull java.util.Collection<android.net.TetheredClient.AddressInfo>, int);
+ method public int describeContents();
+ method @NonNull public java.util.List<android.net.TetheredClient.AddressInfo> getAddresses();
+ method @NonNull public android.net.MacAddress getMacAddress();
+ method public int getTetheringType();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.TetheredClient> CREATOR;
+ }
+
+ public static final class TetheredClient.AddressInfo implements android.os.Parcelable {
+ method public int describeContents();
+ method @NonNull public android.net.LinkAddress getAddress();
+ method @Nullable public String getHostname();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.TetheredClient.AddressInfo> CREATOR;
+ }
+
+ public final class TetheringInterface implements android.os.Parcelable {
+ ctor public TetheringInterface(int, @NonNull String);
+ method public int describeContents();
+ method @NonNull public String getInterface();
+ method public int getType();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.TetheringInterface> CREATOR;
+ }
+
+ public class TetheringManager {
+ method @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public void registerTetheringEventCallback(@NonNull java.util.concurrent.Executor, @NonNull android.net.TetheringManager.TetheringEventCallback);
+ method @RequiresPermission(anyOf={android.Manifest.permission.TETHER_PRIVILEGED, android.Manifest.permission.WRITE_SETTINGS}) public void requestLatestTetheringEntitlementResult(int, boolean, @NonNull java.util.concurrent.Executor, @NonNull android.net.TetheringManager.OnTetheringEntitlementResultListener);
+ method @RequiresPermission(anyOf={android.Manifest.permission.TETHER_PRIVILEGED, android.Manifest.permission.WRITE_SETTINGS}) public void startTethering(@NonNull android.net.TetheringManager.TetheringRequest, @NonNull java.util.concurrent.Executor, @NonNull android.net.TetheringManager.StartTetheringCallback);
+ method @RequiresPermission(anyOf={android.Manifest.permission.TETHER_PRIVILEGED, android.Manifest.permission.WRITE_SETTINGS}) public void stopAllTethering();
+ method @RequiresPermission(anyOf={android.Manifest.permission.TETHER_PRIVILEGED, android.Manifest.permission.WRITE_SETTINGS}) public void stopTethering(int);
+ method @RequiresPermission(anyOf={android.Manifest.permission.TETHER_PRIVILEGED, android.Manifest.permission.ACCESS_NETWORK_STATE}) public void unregisterTetheringEventCallback(@NonNull android.net.TetheringManager.TetheringEventCallback);
+ field @Deprecated public static final String ACTION_TETHER_STATE_CHANGED = "android.net.conn.TETHER_STATE_CHANGED";
+ field public static final int CONNECTIVITY_SCOPE_GLOBAL = 1; // 0x1
+ field public static final int CONNECTIVITY_SCOPE_LOCAL = 2; // 0x2
+ field public static final String EXTRA_ACTIVE_LOCAL_ONLY = "android.net.extra.ACTIVE_LOCAL_ONLY";
+ field public static final String EXTRA_ACTIVE_TETHER = "tetherArray";
+ field public static final String EXTRA_AVAILABLE_TETHER = "availableArray";
+ field public static final String EXTRA_ERRORED_TETHER = "erroredArray";
+ field public static final int TETHERING_BLUETOOTH = 2; // 0x2
+ field public static final int TETHERING_ETHERNET = 5; // 0x5
+ field public static final int TETHERING_INVALID = -1; // 0xffffffff
+ field public static final int TETHERING_NCM = 4; // 0x4
+ field public static final int TETHERING_USB = 1; // 0x1
+ field public static final int TETHERING_WIFI = 0; // 0x0
+ field public static final int TETHERING_WIFI_P2P = 3; // 0x3
+ field public static final int TETHER_ERROR_DHCPSERVER_ERROR = 12; // 0xc
+ field public static final int TETHER_ERROR_DISABLE_FORWARDING_ERROR = 9; // 0x9
+ field public static final int TETHER_ERROR_ENABLE_FORWARDING_ERROR = 8; // 0x8
+ field public static final int TETHER_ERROR_ENTITLEMENT_UNKNOWN = 13; // 0xd
+ field public static final int TETHER_ERROR_IFACE_CFG_ERROR = 10; // 0xa
+ field public static final int TETHER_ERROR_INTERNAL_ERROR = 5; // 0x5
+ field public static final int TETHER_ERROR_NO_ACCESS_TETHERING_PERMISSION = 15; // 0xf
+ field public static final int TETHER_ERROR_NO_CHANGE_TETHERING_PERMISSION = 14; // 0xe
+ field public static final int TETHER_ERROR_NO_ERROR = 0; // 0x0
+ field public static final int TETHER_ERROR_PROVISIONING_FAILED = 11; // 0xb
+ field public static final int TETHER_ERROR_SERVICE_UNAVAIL = 2; // 0x2
+ field public static final int TETHER_ERROR_TETHER_IFACE_ERROR = 6; // 0x6
+ field public static final int TETHER_ERROR_UNAVAIL_IFACE = 4; // 0x4
+ field public static final int TETHER_ERROR_UNKNOWN_IFACE = 1; // 0x1
+ field public static final int TETHER_ERROR_UNKNOWN_TYPE = 16; // 0x10
+ field public static final int TETHER_ERROR_UNSUPPORTED = 3; // 0x3
+ field public static final int TETHER_ERROR_UNTETHER_IFACE_ERROR = 7; // 0x7
+ field public static final int TETHER_HARDWARE_OFFLOAD_FAILED = 2; // 0x2
+ field public static final int TETHER_HARDWARE_OFFLOAD_STARTED = 1; // 0x1
+ field public static final int TETHER_HARDWARE_OFFLOAD_STOPPED = 0; // 0x0
+ }
+
+ public static interface TetheringManager.OnTetheringEntitlementResultListener {
+ method public void onTetheringEntitlementResult(int);
+ }
+
+ public static interface TetheringManager.StartTetheringCallback {
+ method public default void onTetheringFailed(int);
+ method public default void onTetheringStarted();
+ }
+
+ public static interface TetheringManager.TetheringEventCallback {
+ method public default void onClientsChanged(@NonNull java.util.Collection<android.net.TetheredClient>);
+ method public default void onError(@NonNull String, int);
+ method public default void onError(@NonNull android.net.TetheringInterface, int);
+ method public default void onLocalOnlyInterfacesChanged(@NonNull java.util.List<java.lang.String>);
+ method public default void onLocalOnlyInterfacesChanged(@NonNull java.util.Set<android.net.TetheringInterface>);
+ method public default void onOffloadStatusChanged(int);
+ method public default void onTetherableInterfacesChanged(@NonNull java.util.List<java.lang.String>);
+ method public default void onTetherableInterfacesChanged(@NonNull java.util.Set<android.net.TetheringInterface>);
+ method public default void onTetheredInterfacesChanged(@NonNull java.util.List<java.lang.String>);
+ method public default void onTetheredInterfacesChanged(@NonNull java.util.Set<android.net.TetheringInterface>);
+ method public default void onTetheringSupported(boolean);
+ method public default void onUpstreamChanged(@Nullable android.net.Network);
+ }
+
+ public static class TetheringManager.TetheringRequest {
+ method @Nullable public android.net.LinkAddress getClientStaticIpv4Address();
+ method public int getConnectivityScope();
+ method @Nullable public android.net.LinkAddress getLocalIpv4Address();
+ method public boolean getShouldShowEntitlementUi();
+ method public int getTetheringType();
+ method public boolean isExemptFromEntitlementCheck();
+ }
+
+ public static class TetheringManager.TetheringRequest.Builder {
+ ctor public TetheringManager.TetheringRequest.Builder(int);
+ method @NonNull public android.net.TetheringManager.TetheringRequest build();
+ method @NonNull @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public android.net.TetheringManager.TetheringRequest.Builder setConnectivityScope(int);
+ method @NonNull @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public android.net.TetheringManager.TetheringRequest.Builder setExemptFromEntitlementCheck(boolean);
+ method @NonNull @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public android.net.TetheringManager.TetheringRequest.Builder setShouldShowEntitlementUi(boolean);
+ method @NonNull @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public android.net.TetheringManager.TetheringRequest.Builder setStaticIpv4Addresses(@NonNull android.net.LinkAddress, @NonNull android.net.LinkAddress);
+ }
+
+}
+
diff --git a/extensions/3/system/api/framework-uwb-removed.txt b/extensions/3/system/api/framework-uwb-removed.txt
new file mode 100644
index 000000000..d802177e2
--- /dev/null
+++ b/extensions/3/system/api/framework-uwb-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/extensions/3/system/api/framework-uwb.txt b/extensions/3/system/api/framework-uwb.txt
new file mode 100644
index 000000000..bc51295c3
--- /dev/null
+++ b/extensions/3/system/api/framework-uwb.txt
@@ -0,0 +1,230 @@
+// Signature format: 2.0
+package android.uwb {
+
+ public final class AngleMeasurement implements android.os.Parcelable {
+ ctor public AngleMeasurement(@FloatRange(from=-3.141592653589793, to=3.141592653589793) double, @FloatRange(from=0.0, to=3.141592653589793) double, @FloatRange(from=0.0, to=1.0) double);
+ method public int describeContents();
+ method @FloatRange(from=0.0, to=1.0) public double getConfidenceLevel();
+ method @FloatRange(from=0.0, to=3.141592653589793) public double getErrorRadians();
+ method @FloatRange(from=-3.141592653589793, to=3.141592653589793) public double getRadians();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.uwb.AngleMeasurement> CREATOR;
+ }
+
+ public final class AngleOfArrivalMeasurement implements android.os.Parcelable {
+ method public int describeContents();
+ method @Nullable public android.uwb.AngleMeasurement getAltitude();
+ method @NonNull public android.uwb.AngleMeasurement getAzimuth();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.uwb.AngleOfArrivalMeasurement> CREATOR;
+ }
+
+ public static final class AngleOfArrivalMeasurement.Builder {
+ ctor public AngleOfArrivalMeasurement.Builder(@NonNull android.uwb.AngleMeasurement);
+ method @NonNull public android.uwb.AngleOfArrivalMeasurement build();
+ method @NonNull public android.uwb.AngleOfArrivalMeasurement.Builder setAltitude(@NonNull android.uwb.AngleMeasurement);
+ }
+
+ public final class DistanceMeasurement implements android.os.Parcelable {
+ method public int describeContents();
+ method @FloatRange(from=0.0, to=1.0) public double getConfidenceLevel();
+ method @FloatRange(from=0.0) public double getErrorMeters();
+ method public double getMeters();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.uwb.DistanceMeasurement> CREATOR;
+ }
+
+ public static final class DistanceMeasurement.Builder {
+ ctor public DistanceMeasurement.Builder();
+ method @NonNull public android.uwb.DistanceMeasurement build();
+ method @NonNull public android.uwb.DistanceMeasurement.Builder setConfidenceLevel(@FloatRange(from=0.0, to=1.0) double);
+ method @NonNull public android.uwb.DistanceMeasurement.Builder setErrorMeters(@FloatRange(from=0.0) double);
+ method @NonNull public android.uwb.DistanceMeasurement.Builder setMeters(double);
+ }
+
+ public final class RangingMeasurement implements android.os.Parcelable {
+ method public int describeContents();
+ method @Nullable public android.uwb.AngleOfArrivalMeasurement getAngleOfArrivalMeasurement();
+ method @Nullable public android.uwb.AngleOfArrivalMeasurement getDestinationAngleOfArrivalMeasurement();
+ method @Nullable public android.uwb.DistanceMeasurement getDistanceMeasurement();
+ method public long getElapsedRealtimeNanos();
+ method public int getLineOfSight();
+ method public int getMeasurementFocus();
+ method @NonNull public android.uwb.UwbAddress getRemoteDeviceAddress();
+ method @IntRange(from=android.uwb.RangingMeasurement.RSSI_UNKNOWN, to=android.uwb.RangingMeasurement.RSSI_MAX) public int getRssiDbm();
+ method public int getStatus();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.uwb.RangingMeasurement> CREATOR;
+ field public static final int LOS = 0; // 0x0
+ field public static final int LOS_UNDETERMINED = 255; // 0xff
+ field public static final int MEASUREMENT_FOCUS_ANGLE_OF_ARRIVAL_AZIMUTH = 2; // 0x2
+ field public static final int MEASUREMENT_FOCUS_ANGLE_OF_ARRIVAL_ELEVATION = 3; // 0x3
+ field public static final int MEASUREMENT_FOCUS_NONE = 0; // 0x0
+ field public static final int MEASUREMENT_FOCUS_RANGE = 1; // 0x1
+ field public static final int NLOS = 1; // 0x1
+ field public static final int RANGING_STATUS_FAILURE_OUT_OF_RANGE = 1; // 0x1
+ field public static final int RANGING_STATUS_FAILURE_UNKNOWN_ERROR = -1; // 0xffffffff
+ field public static final int RANGING_STATUS_SUCCESS = 0; // 0x0
+ field public static final int RSSI_MAX = -1; // 0xffffffff
+ field public static final int RSSI_MIN = -127; // 0xffffff81
+ field public static final int RSSI_UNKNOWN = -128; // 0xffffff80
+ }
+
+ public static final class RangingMeasurement.Builder {
+ ctor public RangingMeasurement.Builder();
+ method @NonNull public android.uwb.RangingMeasurement build();
+ method @NonNull public android.uwb.RangingMeasurement.Builder setAngleOfArrivalMeasurement(@NonNull android.uwb.AngleOfArrivalMeasurement);
+ method @NonNull public android.uwb.RangingMeasurement.Builder setDestinationAngleOfArrivalMeasurement(@NonNull android.uwb.AngleOfArrivalMeasurement);
+ method @NonNull public android.uwb.RangingMeasurement.Builder setDistanceMeasurement(@NonNull android.uwb.DistanceMeasurement);
+ method @NonNull public android.uwb.RangingMeasurement.Builder setElapsedRealtimeNanos(long);
+ method @NonNull public android.uwb.RangingMeasurement.Builder setLineOfSight(int);
+ method @NonNull public android.uwb.RangingMeasurement.Builder setMeasurementFocus(int);
+ method @NonNull public android.uwb.RangingMeasurement.Builder setRemoteDeviceAddress(@NonNull android.uwb.UwbAddress);
+ method @NonNull public android.uwb.RangingMeasurement.Builder setRssiDbm(@IntRange(from=android.uwb.RangingMeasurement.RSSI_UNKNOWN, to=android.uwb.RangingMeasurement.RSSI_MAX) int);
+ method @NonNull public android.uwb.RangingMeasurement.Builder setStatus(int);
+ }
+
+ public final class RangingReport implements android.os.Parcelable {
+ method public int describeContents();
+ method @NonNull public java.util.List<android.uwb.RangingMeasurement> getMeasurements();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.uwb.RangingReport> CREATOR;
+ }
+
+ public static final class RangingReport.Builder {
+ ctor public RangingReport.Builder();
+ method @NonNull public android.uwb.RangingReport.Builder addMeasurement(@NonNull android.uwb.RangingMeasurement);
+ method @NonNull public android.uwb.RangingReport.Builder addMeasurements(@NonNull java.util.List<android.uwb.RangingMeasurement>);
+ method @NonNull public android.uwb.RangingReport build();
+ }
+
+ public final class RangingSession implements java.lang.AutoCloseable {
+ method @RequiresPermission(android.Manifest.permission.UWB_PRIVILEGED) public void addControlee(@NonNull android.os.PersistableBundle);
+ method @RequiresPermission(android.Manifest.permission.UWB_PRIVILEGED) public void close();
+ method @RequiresPermission(android.Manifest.permission.UWB_PRIVILEGED) public void pause(@NonNull android.os.PersistableBundle);
+ method @RequiresPermission(android.Manifest.permission.UWB_PRIVILEGED) public void reconfigure(@NonNull android.os.PersistableBundle);
+ method @RequiresPermission(android.Manifest.permission.UWB_PRIVILEGED) public void removeControlee(@NonNull android.os.PersistableBundle);
+ method @RequiresPermission(android.Manifest.permission.UWB_PRIVILEGED) public void resume(@NonNull android.os.PersistableBundle);
+ method @RequiresPermission(android.Manifest.permission.UWB_PRIVILEGED) public void sendData(@NonNull android.uwb.UwbAddress, @NonNull android.os.PersistableBundle, @NonNull byte[]);
+ method @RequiresPermission(android.Manifest.permission.UWB_PRIVILEGED) public void start(@NonNull android.os.PersistableBundle);
+ method @RequiresPermission(android.Manifest.permission.UWB_PRIVILEGED) public void stop();
+ }
+
+ public static interface RangingSession.Callback {
+ method public void onClosed(int, @NonNull android.os.PersistableBundle);
+ method public default void onControleeAddFailed(int, @NonNull android.os.PersistableBundle);
+ method public default void onControleeAdded(@NonNull android.os.PersistableBundle);
+ method public default void onControleeRemoveFailed(int, @NonNull android.os.PersistableBundle);
+ method public default void onControleeRemoved(@NonNull android.os.PersistableBundle);
+ method public default void onDataReceiveFailed(@NonNull android.uwb.UwbAddress, int, @NonNull android.os.PersistableBundle);
+ method public default void onDataReceived(@NonNull android.uwb.UwbAddress, @NonNull android.os.PersistableBundle, @NonNull byte[]);
+ method public default void onDataSendFailed(@NonNull android.uwb.UwbAddress, int, @NonNull android.os.PersistableBundle);
+ method public default void onDataSent(@NonNull android.uwb.UwbAddress, @NonNull android.os.PersistableBundle);
+ method public void onOpenFailed(int, @NonNull android.os.PersistableBundle);
+ method public void onOpened(@NonNull android.uwb.RangingSession);
+ method public default void onPauseFailed(int, @NonNull android.os.PersistableBundle);
+ method public default void onPaused(@NonNull android.os.PersistableBundle);
+ method public void onReconfigureFailed(int, @NonNull android.os.PersistableBundle);
+ method public void onReconfigured(@NonNull android.os.PersistableBundle);
+ method public void onReportReceived(@NonNull android.uwb.RangingReport);
+ method public default void onResumeFailed(int, @NonNull android.os.PersistableBundle);
+ method public default void onResumed(@NonNull android.os.PersistableBundle);
+ method public default void onServiceConnected(@NonNull android.os.PersistableBundle);
+ method public default void onServiceDiscovered(@NonNull android.os.PersistableBundle);
+ method public void onStartFailed(int, @NonNull android.os.PersistableBundle);
+ method public void onStarted(@NonNull android.os.PersistableBundle);
+ method public void onStopFailed(int, @NonNull android.os.PersistableBundle);
+ method public void onStopped(int, @NonNull android.os.PersistableBundle);
+ field public static final int CONTROLEE_FAILURE_REASON_MAX_CONTROLEE_REACHED = 0; // 0x0
+ field public static final int DATA_FAILURE_REASON_DATA_SIZE_TOO_LARGE = 10; // 0xa
+ field public static final int REASON_BAD_PARAMETERS = 3; // 0x3
+ field public static final int REASON_GENERIC_ERROR = 4; // 0x4
+ field public static final int REASON_LOCAL_REQUEST = 1; // 0x1
+ field public static final int REASON_MAX_RR_RETRY_REACHED = 9; // 0x9
+ field public static final int REASON_MAX_SESSIONS_REACHED = 5; // 0x5
+ field public static final int REASON_PROTOCOL_SPECIFIC_ERROR = 7; // 0x7
+ field public static final int REASON_REMOTE_REQUEST = 2; // 0x2
+ field public static final int REASON_SERVICE_CONNECTION_FAILURE = 11; // 0xb
+ field public static final int REASON_SERVICE_DISCOVERY_FAILURE = 10; // 0xa
+ field public static final int REASON_SE_INTERACTION_FAILURE = 13; // 0xd
+ field public static final int REASON_SE_NOT_SUPPORTED = 12; // 0xc
+ field public static final int REASON_SYSTEM_POLICY = 6; // 0x6
+ field public static final int REASON_UNKNOWN = 0; // 0x0
+ }
+
+ public final class UwbAddress implements android.os.Parcelable {
+ method public int describeContents();
+ method @NonNull public static android.uwb.UwbAddress fromBytes(@NonNull byte[]);
+ method public int size();
+ method @NonNull public byte[] toBytes();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.uwb.UwbAddress> CREATOR;
+ field public static final int EXTENDED_ADDRESS_BYTE_LENGTH = 8; // 0x8
+ field public static final int SHORT_ADDRESS_BYTE_LENGTH = 2; // 0x2
+ }
+
+ public final class UwbManager {
+ method @NonNull @RequiresPermission(android.Manifest.permission.UWB_PRIVILEGED) public android.os.PersistableBundle addServiceProfile(@NonNull android.os.PersistableBundle);
+ method @RequiresPermission(android.Manifest.permission.UWB_PRIVILEGED) public long elapsedRealtimeResolutionNanos();
+ method @RequiresPermission(android.Manifest.permission.UWB_PRIVILEGED) public long elapsedRealtimeResolutionNanos(@NonNull String);
+ method public int getAdapterState();
+ method @NonNull @RequiresPermission(android.Manifest.permission.UWB_PRIVILEGED) public android.os.PersistableBundle getAdfCertificateInfo(@NonNull android.os.PersistableBundle);
+ method @NonNull @RequiresPermission(android.Manifest.permission.UWB_PRIVILEGED) public android.os.PersistableBundle getAdfProvisioningAuthorities(@NonNull android.os.PersistableBundle);
+ method @NonNull @RequiresPermission(android.Manifest.permission.UWB_PRIVILEGED) public android.os.PersistableBundle getAllServiceProfiles();
+ method @NonNull @RequiresPermission(android.Manifest.permission.UWB_PRIVILEGED) public java.util.List<android.os.PersistableBundle> getChipInfos();
+ method @NonNull @RequiresPermission(android.Manifest.permission.UWB_PRIVILEGED) public String getDefaultChipId();
+ method @NonNull @RequiresPermission(android.Manifest.permission.UWB_PRIVILEGED) public android.os.PersistableBundle getSpecificationInfo();
+ method @NonNull @RequiresPermission(android.Manifest.permission.UWB_PRIVILEGED) public android.os.PersistableBundle getSpecificationInfo(@NonNull String);
+ method public boolean isUwbEnabled();
+ method @NonNull @RequiresPermission(allOf={android.Manifest.permission.UWB_PRIVILEGED, android.Manifest.permission.UWB_RANGING}) public android.os.CancellationSignal openRangingSession(@NonNull android.os.PersistableBundle, @NonNull java.util.concurrent.Executor, @NonNull android.uwb.RangingSession.Callback);
+ method @NonNull @RequiresPermission(allOf={android.Manifest.permission.UWB_PRIVILEGED, android.Manifest.permission.UWB_RANGING}) public android.os.CancellationSignal openRangingSession(@NonNull android.os.PersistableBundle, @NonNull java.util.concurrent.Executor, @NonNull android.uwb.RangingSession.Callback, @NonNull String);
+ method public void provisionProfileAdfByScript(@NonNull android.os.PersistableBundle, @NonNull java.util.concurrent.Executor, @NonNull android.uwb.UwbManager.AdfProvisionStateCallback);
+ method @RequiresPermission(android.Manifest.permission.UWB_PRIVILEGED) public void registerAdapterStateCallback(@NonNull java.util.concurrent.Executor, @NonNull android.uwb.UwbManager.AdapterStateCallback);
+ method @RequiresPermission(android.Manifest.permission.UWB_PRIVILEGED) public void registerUwbVendorUciCallback(@NonNull java.util.concurrent.Executor, @NonNull android.uwb.UwbManager.UwbVendorUciCallback);
+ method @RequiresPermission(android.Manifest.permission.UWB_PRIVILEGED) public int removeProfileAdf(@NonNull android.os.PersistableBundle);
+ method @RequiresPermission(android.Manifest.permission.UWB_PRIVILEGED) public int removeServiceProfile(@NonNull android.os.PersistableBundle);
+ method @NonNull @RequiresPermission(android.Manifest.permission.UWB_PRIVILEGED) public int sendVendorUciMessage(@IntRange(from=9, to=15) int, int, @NonNull byte[]);
+ method @RequiresPermission(android.Manifest.permission.UWB_PRIVILEGED) public void setUwbEnabled(boolean);
+ method @RequiresPermission(android.Manifest.permission.UWB_PRIVILEGED) public void unregisterAdapterStateCallback(@NonNull android.uwb.UwbManager.AdapterStateCallback);
+ method public void unregisterUwbVendorUciCallback(@NonNull android.uwb.UwbManager.UwbVendorUciCallback);
+ field public static final int REMOVE_PROFILE_ADF_ERROR_INTERNAL = 2; // 0x2
+ field public static final int REMOVE_PROFILE_ADF_ERROR_UNKNOWN_SERVICE = 1; // 0x1
+ field public static final int REMOVE_PROFILE_ADF_SUCCESS = 0; // 0x0
+ field public static final int REMOVE_SERVICE_PROFILE_ERROR_INTERNAL = 2; // 0x2
+ field public static final int REMOVE_SERVICE_PROFILE_ERROR_UNKNOWN_SERVICE = 1; // 0x1
+ field public static final int REMOVE_SERVICE_PROFILE_SUCCESS = 0; // 0x0
+ field public static final int SEND_VENDOR_UCI_ERROR_HW = 1; // 0x1
+ field public static final int SEND_VENDOR_UCI_ERROR_INVALID_ARGS = 3; // 0x3
+ field public static final int SEND_VENDOR_UCI_ERROR_INVALID_GID = 4; // 0x4
+ field public static final int SEND_VENDOR_UCI_ERROR_OFF = 2; // 0x2
+ field public static final int SEND_VENDOR_UCI_SUCCESS = 0; // 0x0
+ }
+
+ public static interface UwbManager.AdapterStateCallback {
+ method public void onStateChanged(int, int);
+ field public static final int STATE_CHANGED_REASON_ALL_SESSIONS_CLOSED = 1; // 0x1
+ field public static final int STATE_CHANGED_REASON_ERROR_UNKNOWN = 4; // 0x4
+ field public static final int STATE_CHANGED_REASON_SESSION_STARTED = 0; // 0x0
+ field public static final int STATE_CHANGED_REASON_SYSTEM_BOOT = 3; // 0x3
+ field public static final int STATE_CHANGED_REASON_SYSTEM_POLICY = 2; // 0x2
+ field public static final int STATE_DISABLED = 0; // 0x0
+ field public static final int STATE_ENABLED_ACTIVE = 2; // 0x2
+ field public static final int STATE_ENABLED_INACTIVE = 1; // 0x1
+ }
+
+ public abstract static class UwbManager.AdfProvisionStateCallback {
+ ctor public UwbManager.AdfProvisionStateCallback();
+ method public abstract void onProfileAdfsProvisionFailed(int, @NonNull android.os.PersistableBundle);
+ method public abstract void onProfileAdfsProvisioned(@NonNull android.os.PersistableBundle);
+ field public static final int REASON_INVALID_OID = 1; // 0x1
+ field public static final int REASON_SE_FAILURE = 2; // 0x2
+ field public static final int REASON_UNKNOWN = 3; // 0x3
+ }
+
+ public static interface UwbManager.UwbVendorUciCallback {
+ method public void onVendorUciNotification(@IntRange(from=9, to=15) int, int, @NonNull byte[]);
+ method public void onVendorUciResponse(@IntRange(from=9, to=15) int, int, @NonNull byte[]);
+ }
+
+}
+
diff --git a/extensions/3/system/api/framework-wifi-removed.txt b/extensions/3/system/api/framework-wifi-removed.txt
new file mode 100644
index 000000000..a2d0dff3e
--- /dev/null
+++ b/extensions/3/system/api/framework-wifi-removed.txt
@@ -0,0 +1,16 @@
+// Signature format: 2.0
+package android.net.wifi {
+
+ @Deprecated public class BatchedScanResult implements android.os.Parcelable {
+ ctor public BatchedScanResult();
+ ctor public BatchedScanResult(android.net.wifi.BatchedScanResult);
+ field public final java.util.List<android.net.wifi.ScanResult> scanResults;
+ field public boolean truncated;
+ }
+
+ public final class ScanResult implements android.os.Parcelable {
+ field public boolean untrusted;
+ }
+
+}
+
diff --git a/extensions/3/system/api/framework-wifi.txt b/extensions/3/system/api/framework-wifi.txt
new file mode 100644
index 000000000..2249e02e1
--- /dev/null
+++ b/extensions/3/system/api/framework-wifi.txt
@@ -0,0 +1,1276 @@
+// Signature format: 2.0
+package android.net.wifi {
+
+ public final class CoexUnsafeChannel implements android.os.Parcelable {
+ ctor public CoexUnsafeChannel(int, int);
+ ctor public CoexUnsafeChannel(int, int, int);
+ method public int getBand();
+ method public int getChannel();
+ method public int getPowerCapDbm();
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.CoexUnsafeChannel> CREATOR;
+ field public static final int POWER_CAP_NONE = 2147483647; // 0x7fffffff
+ }
+
+ public abstract class EasyConnectStatusCallback {
+ ctor public EasyConnectStatusCallback();
+ method public void onBootstrapUriGenerated(@NonNull android.net.Uri);
+ method public abstract void onConfiguratorSuccess(int);
+ method public abstract void onEnrolleeSuccess(int);
+ method public void onFailure(int);
+ method public void onFailure(int, @Nullable String, @NonNull android.util.SparseArray<int[]>, @NonNull int[]);
+ method public abstract void onProgress(int);
+ field public static final int EASY_CONNECT_EVENT_PROGRESS_AUTHENTICATION_SUCCESS = 0; // 0x0
+ field public static final int EASY_CONNECT_EVENT_PROGRESS_CONFIGURATION_ACCEPTED = 3; // 0x3
+ field public static final int EASY_CONNECT_EVENT_PROGRESS_CONFIGURATION_SENT_WAITING_RESPONSE = 2; // 0x2
+ field public static final int EASY_CONNECT_EVENT_PROGRESS_RESPONSE_PENDING = 1; // 0x1
+ field public static final int EASY_CONNECT_EVENT_SUCCESS_CONFIGURATION_APPLIED = 1; // 0x1
+ field public static final int EASY_CONNECT_EVENT_SUCCESS_CONFIGURATION_SENT = 0; // 0x0
+ }
+
+ @Deprecated public class RttManager {
+ method @Deprecated @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void disableResponder(android.net.wifi.RttManager.ResponderCallback);
+ method @Deprecated @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void enableResponder(android.net.wifi.RttManager.ResponderCallback);
+ method @Deprecated public android.net.wifi.RttManager.Capabilities getCapabilities();
+ method @Deprecated @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public android.net.wifi.RttManager.RttCapabilities getRttCapabilities();
+ method @Deprecated @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void startRanging(android.net.wifi.RttManager.RttParams[], android.net.wifi.RttManager.RttListener);
+ method @Deprecated @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void stopRanging(android.net.wifi.RttManager.RttListener);
+ field @Deprecated public static final int BASE = 160256; // 0x27200
+ field @Deprecated public static final int CMD_OP_ABORTED = 160260; // 0x27204
+ field @Deprecated public static final int CMD_OP_DISABLE_RESPONDER = 160262; // 0x27206
+ field @Deprecated public static final int CMD_OP_ENABLE_RESPONDER = 160261; // 0x27205
+ field @Deprecated public static final int CMD_OP_ENALBE_RESPONDER_FAILED = 160264; // 0x27208
+ field @Deprecated public static final int CMD_OP_ENALBE_RESPONDER_SUCCEEDED = 160263; // 0x27207
+ field @Deprecated public static final int CMD_OP_FAILED = 160258; // 0x27202
+ field @Deprecated public static final int CMD_OP_START_RANGING = 160256; // 0x27200
+ field @Deprecated public static final int CMD_OP_STOP_RANGING = 160257; // 0x27201
+ field @Deprecated public static final int CMD_OP_SUCCEEDED = 160259; // 0x27203
+ field @Deprecated public static final String DESCRIPTION_KEY = "android.net.wifi.RttManager.Description";
+ field @Deprecated public static final int PREAMBLE_HT = 2; // 0x2
+ field @Deprecated public static final int PREAMBLE_LEGACY = 1; // 0x1
+ field @Deprecated public static final int PREAMBLE_VHT = 4; // 0x4
+ field @Deprecated public static final int REASON_INITIATOR_NOT_ALLOWED_WHEN_RESPONDER_ON = -6; // 0xfffffffa
+ field @Deprecated public static final int REASON_INVALID_LISTENER = -3; // 0xfffffffd
+ field @Deprecated public static final int REASON_INVALID_REQUEST = -4; // 0xfffffffc
+ field @Deprecated public static final int REASON_NOT_AVAILABLE = -2; // 0xfffffffe
+ field @Deprecated public static final int REASON_PERMISSION_DENIED = -5; // 0xfffffffb
+ field @Deprecated public static final int REASON_UNSPECIFIED = -1; // 0xffffffff
+ field @Deprecated public static final int RTT_BW_10_SUPPORT = 2; // 0x2
+ field @Deprecated public static final int RTT_BW_160_SUPPORT = 32; // 0x20
+ field @Deprecated public static final int RTT_BW_20_SUPPORT = 4; // 0x4
+ field @Deprecated public static final int RTT_BW_40_SUPPORT = 8; // 0x8
+ field @Deprecated public static final int RTT_BW_5_SUPPORT = 1; // 0x1
+ field @Deprecated public static final int RTT_BW_80_SUPPORT = 16; // 0x10
+ field @Deprecated public static final int RTT_CHANNEL_WIDTH_10 = 6; // 0x6
+ field @Deprecated public static final int RTT_CHANNEL_WIDTH_160 = 3; // 0x3
+ field @Deprecated public static final int RTT_CHANNEL_WIDTH_20 = 0; // 0x0
+ field @Deprecated public static final int RTT_CHANNEL_WIDTH_40 = 1; // 0x1
+ field @Deprecated public static final int RTT_CHANNEL_WIDTH_5 = 5; // 0x5
+ field @Deprecated public static final int RTT_CHANNEL_WIDTH_80 = 2; // 0x2
+ field @Deprecated public static final int RTT_CHANNEL_WIDTH_80P80 = 4; // 0x4
+ field @Deprecated public static final int RTT_CHANNEL_WIDTH_UNSPECIFIED = -1; // 0xffffffff
+ field @Deprecated public static final int RTT_PEER_NAN = 5; // 0x5
+ field @Deprecated public static final int RTT_PEER_P2P_CLIENT = 4; // 0x4
+ field @Deprecated public static final int RTT_PEER_P2P_GO = 3; // 0x3
+ field @Deprecated public static final int RTT_PEER_TYPE_AP = 1; // 0x1
+ field @Deprecated public static final int RTT_PEER_TYPE_STA = 2; // 0x2
+ field @Deprecated public static final int RTT_PEER_TYPE_UNSPECIFIED = 0; // 0x0
+ field @Deprecated public static final int RTT_STATUS_ABORTED = 8; // 0x8
+ field @Deprecated public static final int RTT_STATUS_FAILURE = 1; // 0x1
+ field @Deprecated public static final int RTT_STATUS_FAIL_AP_ON_DIFF_CHANNEL = 6; // 0x6
+ field @Deprecated public static final int RTT_STATUS_FAIL_BUSY_TRY_LATER = 12; // 0xc
+ field @Deprecated public static final int RTT_STATUS_FAIL_FTM_PARAM_OVERRIDE = 15; // 0xf
+ field @Deprecated public static final int RTT_STATUS_FAIL_INVALID_TS = 9; // 0x9
+ field @Deprecated public static final int RTT_STATUS_FAIL_NOT_SCHEDULED_YET = 4; // 0x4
+ field @Deprecated public static final int RTT_STATUS_FAIL_NO_CAPABILITY = 7; // 0x7
+ field @Deprecated public static final int RTT_STATUS_FAIL_NO_RSP = 2; // 0x2
+ field @Deprecated public static final int RTT_STATUS_FAIL_PROTOCOL = 10; // 0xa
+ field @Deprecated public static final int RTT_STATUS_FAIL_REJECTED = 3; // 0x3
+ field @Deprecated public static final int RTT_STATUS_FAIL_SCHEDULE = 11; // 0xb
+ field @Deprecated public static final int RTT_STATUS_FAIL_TM_TIMEOUT = 5; // 0x5
+ field @Deprecated public static final int RTT_STATUS_INVALID_REQ = 13; // 0xd
+ field @Deprecated public static final int RTT_STATUS_NO_WIFI = 14; // 0xe
+ field @Deprecated public static final int RTT_STATUS_SUCCESS = 0; // 0x0
+ field @Deprecated public static final int RTT_TYPE_11_MC = 4; // 0x4
+ field @Deprecated public static final int RTT_TYPE_11_V = 2; // 0x2
+ field @Deprecated public static final int RTT_TYPE_ONE_SIDED = 1; // 0x1
+ field @Deprecated public static final int RTT_TYPE_TWO_SIDED = 2; // 0x2
+ field @Deprecated public static final int RTT_TYPE_UNSPECIFIED = 0; // 0x0
+ }
+
+ @Deprecated public class RttManager.Capabilities {
+ ctor @Deprecated public RttManager.Capabilities();
+ field @Deprecated public int supportedPeerType;
+ field @Deprecated public int supportedType;
+ }
+
+ @Deprecated public static class RttManager.ParcelableRttParams implements android.os.Parcelable {
+ field @Deprecated @NonNull public android.net.wifi.RttManager.RttParams[] mParams;
+ }
+
+ @Deprecated public static class RttManager.ParcelableRttResults implements android.os.Parcelable {
+ ctor @Deprecated public RttManager.ParcelableRttResults(android.net.wifi.RttManager.RttResult[]);
+ field @Deprecated public android.net.wifi.RttManager.RttResult[] mResults;
+ }
+
+ @Deprecated public abstract static class RttManager.ResponderCallback {
+ ctor @Deprecated public RttManager.ResponderCallback();
+ method @Deprecated public abstract void onResponderEnableFailure(int);
+ method @Deprecated public abstract void onResponderEnabled(android.net.wifi.RttManager.ResponderConfig);
+ }
+
+ @Deprecated public static class RttManager.ResponderConfig implements android.os.Parcelable {
+ ctor @Deprecated public RttManager.ResponderConfig();
+ method @Deprecated public int describeContents();
+ method @Deprecated public void writeToParcel(android.os.Parcel, int);
+ field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.RttManager.ResponderConfig> CREATOR;
+ field @Deprecated public int centerFreq0;
+ field @Deprecated public int centerFreq1;
+ field @Deprecated public int channelWidth;
+ field @Deprecated public int frequency;
+ field @Deprecated public String macAddress;
+ field @Deprecated public int preamble;
+ }
+
+ @Deprecated public static class RttManager.RttCapabilities implements android.os.Parcelable {
+ ctor @Deprecated public RttManager.RttCapabilities();
+ field @Deprecated public int bwSupported;
+ field @Deprecated public boolean lciSupported;
+ field @Deprecated public boolean lcrSupported;
+ field @Deprecated public int mcVersion;
+ field @Deprecated public boolean oneSidedRttSupported;
+ field @Deprecated public int preambleSupported;
+ field @Deprecated public boolean responderSupported;
+ field @Deprecated public boolean secureRttSupported;
+ field @Deprecated public boolean supportedPeerType;
+ field @Deprecated public boolean supportedType;
+ field @Deprecated public boolean twoSided11McRttSupported;
+ }
+
+ @Deprecated public static interface RttManager.RttListener {
+ method @Deprecated public void onAborted();
+ method @Deprecated public void onFailure(int, String);
+ method @Deprecated public void onSuccess(android.net.wifi.RttManager.RttResult[]);
+ }
+
+ @Deprecated public static class RttManager.RttParams {
+ ctor @Deprecated public RttManager.RttParams();
+ field @Deprecated public boolean LCIRequest;
+ field @Deprecated public boolean LCRRequest;
+ field @Deprecated public int bandwidth;
+ field @Deprecated public String bssid;
+ field @Deprecated public int burstTimeout;
+ field @Deprecated public int centerFreq0;
+ field @Deprecated public int centerFreq1;
+ field @Deprecated public int channelWidth;
+ field @Deprecated public int deviceType;
+ field @Deprecated public int frequency;
+ field @Deprecated public int interval;
+ field @Deprecated public int numRetriesPerFTMR;
+ field @Deprecated public int numRetriesPerMeasurementFrame;
+ field @Deprecated public int numSamplesPerBurst;
+ field @Deprecated public int num_retries;
+ field @Deprecated public int num_samples;
+ field @Deprecated public int numberBurst;
+ field @Deprecated public int preamble;
+ field @Deprecated public int requestType;
+ field @Deprecated public boolean secure;
+ }
+
+ @Deprecated public static class RttManager.RttResult {
+ ctor @Deprecated public RttManager.RttResult();
+ field @Deprecated public android.net.wifi.RttManager.WifiInformationElement LCI;
+ field @Deprecated public android.net.wifi.RttManager.WifiInformationElement LCR;
+ field @Deprecated public String bssid;
+ field @Deprecated public int burstDuration;
+ field @Deprecated public int burstNumber;
+ field @Deprecated public int distance;
+ field @Deprecated public int distanceSpread;
+ field @Deprecated public int distanceStandardDeviation;
+ field @Deprecated public int distance_cm;
+ field @Deprecated public int distance_sd_cm;
+ field @Deprecated public int distance_spread_cm;
+ field @Deprecated public int frameNumberPerBurstPeer;
+ field @Deprecated public int measurementFrameNumber;
+ field @Deprecated public int measurementType;
+ field @Deprecated public int negotiatedBurstNum;
+ field @Deprecated public int requestType;
+ field @Deprecated public int retryAfterDuration;
+ field @Deprecated public int rssi;
+ field @Deprecated public int rssiSpread;
+ field @Deprecated public int rssi_spread;
+ field @Deprecated public long rtt;
+ field @Deprecated public long rttSpread;
+ field @Deprecated public long rttStandardDeviation;
+ field @Deprecated public long rtt_ns;
+ field @Deprecated public long rtt_sd_ns;
+ field @Deprecated public long rtt_spread_ns;
+ field @Deprecated public int rxRate;
+ field @Deprecated public boolean secure;
+ field @Deprecated public int status;
+ field @Deprecated public int successMeasurementFrameNumber;
+ field @Deprecated public long ts;
+ field @Deprecated public int txRate;
+ field @Deprecated public int tx_rate;
+ }
+
+ @Deprecated public static class RttManager.WifiInformationElement {
+ ctor @Deprecated public RttManager.WifiInformationElement();
+ field @Deprecated public byte[] data;
+ field @Deprecated public byte id;
+ }
+
+ public final class ScanResult implements android.os.Parcelable {
+ method public int getBand();
+ method public void setWifiSsid(@NonNull android.net.wifi.WifiSsid);
+ field public static final int CIPHER_BIP_CMAC_256 = 9; // 0x9
+ field public static final int CIPHER_BIP_GMAC_128 = 7; // 0x7
+ field public static final int CIPHER_BIP_GMAC_256 = 8; // 0x8
+ field public static final int CIPHER_CCMP = 3; // 0x3
+ field public static final int CIPHER_GCMP_128 = 6; // 0x6
+ field public static final int CIPHER_GCMP_256 = 4; // 0x4
+ field public static final int CIPHER_NONE = 0; // 0x0
+ field public static final int CIPHER_NO_GROUP_ADDRESSED = 1; // 0x1
+ field public static final int CIPHER_SMS4 = 5; // 0x5
+ field public static final int CIPHER_TKIP = 2; // 0x2
+ field public static final int KEY_MGMT_EAP = 2; // 0x2
+ field public static final int KEY_MGMT_EAP_SHA256 = 6; // 0x6
+ field public static final int KEY_MGMT_EAP_SUITE_B_192 = 10; // 0xa
+ field public static final int KEY_MGMT_FT_EAP = 4; // 0x4
+ field public static final int KEY_MGMT_FT_PSK = 3; // 0x3
+ field public static final int KEY_MGMT_FT_SAE = 11; // 0xb
+ field public static final int KEY_MGMT_NONE = 0; // 0x0
+ field public static final int KEY_MGMT_OSEN = 7; // 0x7
+ field public static final int KEY_MGMT_OWE = 9; // 0x9
+ field public static final int KEY_MGMT_OWE_TRANSITION = 12; // 0xc
+ field public static final int KEY_MGMT_PSK = 1; // 0x1
+ field public static final int KEY_MGMT_PSK_SHA256 = 5; // 0x5
+ field public static final int KEY_MGMT_SAE = 8; // 0x8
+ field public static final int KEY_MGMT_WAPI_CERT = 14; // 0xe
+ field public static final int KEY_MGMT_WAPI_PSK = 13; // 0xd
+ field public static final int PROTOCOL_NONE = 0; // 0x0
+ field public static final int PROTOCOL_OSEN = 3; // 0x3
+ field public static final int PROTOCOL_RSN = 2; // 0x2
+ field public static final int PROTOCOL_WAPI = 4; // 0x4
+ field public static final int PROTOCOL_WPA = 1; // 0x1
+ }
+
+ public final class SoftApCapability implements android.os.Parcelable {
+ method public boolean areFeaturesSupported(long);
+ method public int describeContents();
+ method public int getMaxSupportedClients();
+ method @NonNull public int[] getSupportedChannelList(int);
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.SoftApCapability> CREATOR;
+ field public static final long SOFTAP_FEATURE_ACS_OFFLOAD = 1L; // 0x1L
+ field public static final long SOFTAP_FEATURE_BAND_24G_SUPPORTED = 32L; // 0x20L
+ field public static final long SOFTAP_FEATURE_BAND_5G_SUPPORTED = 64L; // 0x40L
+ field public static final long SOFTAP_FEATURE_BAND_60G_SUPPORTED = 256L; // 0x100L
+ field public static final long SOFTAP_FEATURE_BAND_6G_SUPPORTED = 128L; // 0x80L
+ field public static final long SOFTAP_FEATURE_CLIENT_FORCE_DISCONNECT = 2L; // 0x2L
+ field public static final long SOFTAP_FEATURE_IEEE80211_AX = 16L; // 0x10L
+ field public static final long SOFTAP_FEATURE_IEEE80211_BE = 512L; // 0x200L
+ field public static final long SOFTAP_FEATURE_MAC_ADDRESS_CUSTOMIZATION = 8L; // 0x8L
+ field public static final long SOFTAP_FEATURE_WPA3_OWE = 2048L; // 0x800L
+ field public static final long SOFTAP_FEATURE_WPA3_OWE_TRANSITION = 1024L; // 0x400L
+ field public static final long SOFTAP_FEATURE_WPA3_SAE = 4L; // 0x4L
+ }
+
+ public final class SoftApConfiguration implements android.os.Parcelable {
+ method @NonNull public int[] getAllowedAcsChannels(int);
+ method @NonNull public java.util.List<android.net.MacAddress> getAllowedClientList();
+ method @Deprecated public int getBand();
+ method @NonNull public java.util.List<android.net.MacAddress> getBlockedClientList();
+ method public long getBridgedModeOpportunisticShutdownTimeoutMillis();
+ method @Deprecated public int getChannel();
+ method @NonNull public android.util.SparseIntArray getChannels();
+ method public int getMacRandomizationSetting();
+ method public int getMaxChannelBandwidth();
+ method public int getMaxNumberOfClients();
+ method @NonNull public android.net.MacAddress getPersistentRandomizedMacAddress();
+ method public long getShutdownTimeoutMillis();
+ method @NonNull public java.util.List<android.net.wifi.ScanResult.InformationElement> getVendorElements();
+ method public boolean isAutoShutdownEnabled();
+ method public boolean isBridgedModeOpportunisticShutdownEnabled();
+ method public boolean isClientControlByUserEnabled();
+ method public boolean isIeee80211axEnabled();
+ method public boolean isIeee80211beEnabled();
+ method public boolean isUserConfiguration();
+ method @Nullable public android.net.wifi.WifiConfiguration toWifiConfiguration();
+ field public static final int BAND_2GHZ = 1; // 0x1
+ field public static final int BAND_5GHZ = 2; // 0x2
+ field public static final int BAND_60GHZ = 8; // 0x8
+ field public static final int BAND_6GHZ = 4; // 0x4
+ field @Deprecated public static final int BAND_ANY = 7; // 0x7
+ field public static final long DEFAULT_TIMEOUT = -1L; // 0xffffffffffffffffL
+ field public static final int RANDOMIZATION_NONE = 0; // 0x0
+ field public static final int RANDOMIZATION_NON_PERSISTENT = 2; // 0x2
+ field public static final int RANDOMIZATION_PERSISTENT = 1; // 0x1
+ }
+
+ public static final class SoftApConfiguration.Builder {
+ ctor public SoftApConfiguration.Builder();
+ ctor public SoftApConfiguration.Builder(@NonNull android.net.wifi.SoftApConfiguration);
+ method @NonNull public android.net.wifi.SoftApConfiguration build();
+ method @NonNull public android.net.wifi.SoftApConfiguration.Builder setAllowedAcsChannels(int, @NonNull int[]);
+ method @NonNull public android.net.wifi.SoftApConfiguration.Builder setAllowedClientList(@NonNull java.util.List<android.net.MacAddress>);
+ method @NonNull public android.net.wifi.SoftApConfiguration.Builder setAutoShutdownEnabled(boolean);
+ method @NonNull public android.net.wifi.SoftApConfiguration.Builder setBand(int);
+ method @NonNull public android.net.wifi.SoftApConfiguration.Builder setBands(@NonNull int[]);
+ method @NonNull public android.net.wifi.SoftApConfiguration.Builder setBlockedClientList(@NonNull java.util.List<android.net.MacAddress>);
+ method @NonNull public android.net.wifi.SoftApConfiguration.Builder setBridgedModeOpportunisticShutdownEnabled(boolean);
+ method @NonNull public android.net.wifi.SoftApConfiguration.Builder setBridgedModeOpportunisticShutdownTimeoutMillis(@IntRange(from=0xffffffff) long);
+ method @NonNull public android.net.wifi.SoftApConfiguration.Builder setBssid(@Nullable android.net.MacAddress);
+ method @NonNull public android.net.wifi.SoftApConfiguration.Builder setChannel(int, int);
+ method @NonNull public android.net.wifi.SoftApConfiguration.Builder setChannels(@NonNull android.util.SparseIntArray);
+ method @NonNull public android.net.wifi.SoftApConfiguration.Builder setClientControlByUserEnabled(boolean);
+ method @NonNull public android.net.wifi.SoftApConfiguration.Builder setHiddenSsid(boolean);
+ method @NonNull public android.net.wifi.SoftApConfiguration.Builder setIeee80211axEnabled(boolean);
+ method @NonNull public android.net.wifi.SoftApConfiguration.Builder setIeee80211beEnabled(boolean);
+ method @NonNull public android.net.wifi.SoftApConfiguration.Builder setMacRandomizationSetting(int);
+ method @NonNull public android.net.wifi.SoftApConfiguration.Builder setMaxChannelBandwidth(int);
+ method @NonNull public android.net.wifi.SoftApConfiguration.Builder setMaxNumberOfClients(@IntRange(from=0) int);
+ method @NonNull public android.net.wifi.SoftApConfiguration.Builder setPassphrase(@Nullable String, int);
+ method @NonNull public android.net.wifi.SoftApConfiguration.Builder setShutdownTimeoutMillis(@IntRange(from=0xffffffff) long);
+ method @Deprecated @NonNull public android.net.wifi.SoftApConfiguration.Builder setSsid(@Nullable String);
+ method @NonNull public android.net.wifi.SoftApConfiguration.Builder setVendorElements(@NonNull java.util.List<android.net.wifi.ScanResult.InformationElement>);
+ method @NonNull public android.net.wifi.SoftApConfiguration.Builder setWifiSsid(@Nullable android.net.wifi.WifiSsid);
+ }
+
+ public final class SoftApInfo implements android.os.Parcelable {
+ method public int describeContents();
+ method public long getAutoShutdownTimeoutMillis();
+ method public int getBandwidth();
+ method @Nullable public android.net.MacAddress getBssid();
+ method public int getFrequency();
+ method public int getWifiStandard();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field public static final int CHANNEL_WIDTH_160MHZ = 6; // 0x6
+ field public static final int CHANNEL_WIDTH_20MHZ = 2; // 0x2
+ field public static final int CHANNEL_WIDTH_20MHZ_NOHT = 1; // 0x1
+ field public static final int CHANNEL_WIDTH_2160MHZ = 7; // 0x7
+ field public static final int CHANNEL_WIDTH_320MHZ = 11; // 0xb
+ field public static final int CHANNEL_WIDTH_40MHZ = 3; // 0x3
+ field public static final int CHANNEL_WIDTH_4320MHZ = 8; // 0x8
+ field public static final int CHANNEL_WIDTH_6480MHZ = 9; // 0x9
+ field public static final int CHANNEL_WIDTH_80MHZ = 4; // 0x4
+ field public static final int CHANNEL_WIDTH_80MHZ_PLUS_MHZ = 5; // 0x5
+ field public static final int CHANNEL_WIDTH_8640MHZ = 10; // 0xa
+ field public static final int CHANNEL_WIDTH_AUTO = -1; // 0xffffffff
+ field public static final int CHANNEL_WIDTH_INVALID = 0; // 0x0
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.SoftApInfo> CREATOR;
+ }
+
+ public final class WifiAvailableChannel implements android.os.Parcelable {
+ ctor public WifiAvailableChannel(int, int);
+ method public int describeContents();
+ method public int getFrequencyMhz();
+ method public int getOperationalModes();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.WifiAvailableChannel> CREATOR;
+ field public static final int OP_MODE_SAP = 2; // 0x2
+ field public static final int OP_MODE_STA = 1; // 0x1
+ field public static final int OP_MODE_TDLS = 32; // 0x20
+ field public static final int OP_MODE_WIFI_AWARE = 16; // 0x10
+ field public static final int OP_MODE_WIFI_DIRECT_CLI = 4; // 0x4
+ field public static final int OP_MODE_WIFI_DIRECT_GO = 8; // 0x8
+ }
+
+ public final class WifiClient implements android.os.Parcelable {
+ method public int describeContents();
+ method @NonNull public android.net.MacAddress getMacAddress();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.WifiClient> CREATOR;
+ }
+
+ @Deprecated public class WifiConfiguration implements android.os.Parcelable {
+ method @Deprecated @NonNull public java.util.Set<java.lang.String> getAllNetworkKeys();
+ method @Deprecated public int getAuthType();
+ method @Deprecated @Nullable public java.util.List<android.net.MacAddress> getBssidAllowlist();
+ method @Deprecated public int getDeletionPriority();
+ method @Deprecated @NonNull public byte[] getDppCSignKey();
+ method @Deprecated @NonNull public byte[] getDppConnector();
+ method @Deprecated @NonNull public byte[] getDppNetAccessKey();
+ method @Deprecated @NonNull public byte[] getDppPrivateEcKey();
+ method @Deprecated @NonNull public android.net.IpConfiguration getIpConfiguration();
+ method @Deprecated @NonNull public android.net.wifi.WifiConfiguration.NetworkSelectionStatus getNetworkSelectionStatus();
+ method @Deprecated @NonNull public String getPrintableSsid();
+ method @Deprecated @NonNull public String getProfileKey();
+ method @Deprecated public int getRecentFailureReason();
+ method @Deprecated public boolean hasNoInternetAccess();
+ method @Deprecated public boolean isEphemeral();
+ method @Deprecated public static boolean isMetered(@Nullable android.net.wifi.WifiConfiguration, @Nullable android.net.wifi.WifiInfo);
+ method @Deprecated public boolean isNoInternetAccessExpected();
+ method @Deprecated public boolean isRepeaterEnabled();
+ method @Deprecated public void setBssidAllowlist(@Nullable java.util.List<android.net.MacAddress>);
+ method @Deprecated public void setDeletionPriority(int) throws java.lang.IllegalArgumentException;
+ method @Deprecated public void setNetworkSelectionStatus(@NonNull android.net.wifi.WifiConfiguration.NetworkSelectionStatus);
+ method @Deprecated @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public void setRepeaterEnabled(boolean);
+ field @Deprecated public static final int INVALID_NETWORK_ID = -1; // 0xffffffff
+ field @Deprecated public static final int METERED_OVERRIDE_METERED = 1; // 0x1
+ field @Deprecated public static final int METERED_OVERRIDE_NONE = 0; // 0x0
+ field @Deprecated public static final int METERED_OVERRIDE_NOT_METERED = 2; // 0x2
+ field @Deprecated public static final int RECENT_FAILURE_AP_UNABLE_TO_HANDLE_NEW_STA = 17; // 0x11
+ field @Deprecated public static final int RECENT_FAILURE_DISCONNECTION_AP_BUSY = 1004; // 0x3ec
+ field @Deprecated public static final int RECENT_FAILURE_MBO_ASSOC_DISALLOWED_AIR_INTERFACE_OVERLOADED = 1007; // 0x3ef
+ field @Deprecated public static final int RECENT_FAILURE_MBO_ASSOC_DISALLOWED_AUTH_SERVER_OVERLOADED = 1008; // 0x3f0
+ field @Deprecated public static final int RECENT_FAILURE_MBO_ASSOC_DISALLOWED_INSUFFICIENT_RSSI = 1009; // 0x3f1
+ field @Deprecated public static final int RECENT_FAILURE_MBO_ASSOC_DISALLOWED_MAX_NUM_STA_ASSOCIATED = 1006; // 0x3ee
+ field @Deprecated public static final int RECENT_FAILURE_MBO_ASSOC_DISALLOWED_UNSPECIFIED = 1005; // 0x3ed
+ field @Deprecated public static final int RECENT_FAILURE_NETWORK_NOT_FOUND = 1011; // 0x3f3
+ field @Deprecated public static final int RECENT_FAILURE_NONE = 0; // 0x0
+ field @Deprecated public static final int RECENT_FAILURE_OCE_RSSI_BASED_ASSOCIATION_REJECTION = 1010; // 0x3f2
+ field @Deprecated public static final int RECENT_FAILURE_POOR_CHANNEL_CONDITIONS = 1003; // 0x3eb
+ field @Deprecated public static final int RECENT_FAILURE_REFUSED_TEMPORARILY = 1002; // 0x3ea
+ field @Deprecated public boolean allowAutojoin;
+ field @Deprecated public int carrierId;
+ field @Deprecated public boolean carrierMerged;
+ field @Deprecated public String creatorName;
+ field @Deprecated public int creatorUid;
+ field @Deprecated public boolean fromWifiNetworkSpecifier;
+ field @Deprecated public boolean fromWifiNetworkSuggestion;
+ field @Deprecated public int lastConnectUid;
+ field @Deprecated public String lastUpdateName;
+ field @Deprecated public int lastUpdateUid;
+ field @Deprecated public int macRandomizationSetting;
+ field @Deprecated public boolean meteredHint;
+ field @Deprecated public int meteredOverride;
+ field @Deprecated public int numAssociation;
+ field @Deprecated public int numScorerOverride;
+ field @Deprecated public int numScorerOverrideAndSwitchedNetwork;
+ field @Deprecated public boolean requirePmf;
+ field @Deprecated public boolean shared;
+ field @Deprecated public int subscriptionId;
+ field @Deprecated public boolean useExternalScores;
+ }
+
+ @Deprecated public static class WifiConfiguration.KeyMgmt {
+ field @Deprecated public static final int WAPI_CERT = 14; // 0xe
+ field @Deprecated public static final int WAPI_PSK = 13; // 0xd
+ field @Deprecated public static final int WPA2_PSK = 4; // 0x4
+ }
+
+ @Deprecated public static class WifiConfiguration.NetworkSelectionStatus {
+ method @Deprecated public int getDisableReasonCounter(int);
+ method @Deprecated public long getDisableTime();
+ method @Deprecated public static int getMaxNetworkSelectionDisableReason();
+ method @Deprecated public int getNetworkSelectionDisableReason();
+ method @Deprecated @Nullable public static String getNetworkSelectionDisableReasonString(int);
+ method @Deprecated public int getNetworkSelectionStatus();
+ method @Deprecated @NonNull public String getNetworkStatusString();
+ method @Deprecated public boolean hasEverConnected();
+ field @Deprecated public static final int DISABLED_ASSOCIATION_REJECTION = 1; // 0x1
+ field @Deprecated public static final int DISABLED_AUTHENTICATION_FAILURE = 2; // 0x2
+ field @Deprecated public static final int DISABLED_AUTHENTICATION_NO_CREDENTIALS = 5; // 0x5
+ field @Deprecated public static final int DISABLED_AUTHENTICATION_NO_SUBSCRIPTION = 9; // 0x9
+ field @Deprecated public static final int DISABLED_AUTHENTICATION_PRIVATE_EAP_ERROR = 10; // 0xa
+ field @Deprecated public static final int DISABLED_BY_WIFI_MANAGER = 7; // 0x7
+ field @Deprecated public static final int DISABLED_BY_WRONG_PASSWORD = 8; // 0x8
+ field @Deprecated public static final int DISABLED_CONSECUTIVE_FAILURES = 12; // 0xc
+ field @Deprecated public static final int DISABLED_DHCP_FAILURE = 3; // 0x3
+ field @Deprecated public static final int DISABLED_NETWORK_NOT_FOUND = 11; // 0xb
+ field @Deprecated public static final int DISABLED_NONE = 0; // 0x0
+ field @Deprecated public static final int DISABLED_NO_INTERNET_PERMANENT = 6; // 0x6
+ field @Deprecated public static final int DISABLED_NO_INTERNET_TEMPORARY = 4; // 0x4
+ field @Deprecated public static final int NETWORK_SELECTION_ENABLED = 0; // 0x0
+ field @Deprecated public static final int NETWORK_SELECTION_PERMANENTLY_DISABLED = 2; // 0x2
+ field @Deprecated public static final int NETWORK_SELECTION_TEMPORARY_DISABLED = 1; // 0x1
+ }
+
+ @Deprecated public static final class WifiConfiguration.NetworkSelectionStatus.Builder {
+ ctor @Deprecated public WifiConfiguration.NetworkSelectionStatus.Builder();
+ method @Deprecated @NonNull public android.net.wifi.WifiConfiguration.NetworkSelectionStatus build();
+ method @Deprecated @NonNull public android.net.wifi.WifiConfiguration.NetworkSelectionStatus.Builder setNetworkSelectionDisableReason(int);
+ method @Deprecated @NonNull public android.net.wifi.WifiConfiguration.NetworkSelectionStatus.Builder setNetworkSelectionStatus(int);
+ }
+
+ public final class WifiConnectedSessionInfo implements android.os.Parcelable {
+ method public int describeContents();
+ method public int getSessionId();
+ method public boolean isUserSelected();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.WifiConnectedSessionInfo> CREATOR;
+ }
+
+ public static final class WifiConnectedSessionInfo.Builder {
+ ctor public WifiConnectedSessionInfo.Builder(int);
+ method @NonNull public android.net.wifi.WifiConnectedSessionInfo build();
+ method @NonNull public android.net.wifi.WifiConnectedSessionInfo.Builder setUserSelected(boolean);
+ }
+
+ public class WifiEnterpriseConfig implements android.os.Parcelable {
+ method @Nullable public String[] getCaCertificateAliases();
+ method @NonNull public String getCaPath();
+ method @NonNull public String getClientCertificateAlias();
+ method public int getOcsp();
+ method @NonNull public String getWapiCertSuite();
+ method public void setCaCertificateAliases(@Nullable String[]);
+ method public void setCaPath(@NonNull String);
+ method public void setClientCertificateAlias(@NonNull String);
+ method public void setOcsp(int);
+ method public void setWapiCertSuite(@NonNull String);
+ field public static final int OCSP_NONE = 0; // 0x0
+ field public static final int OCSP_REQUEST_CERT_STATUS = 1; // 0x1
+ field public static final int OCSP_REQUIRE_ALL_NON_TRUSTED_CERTS_STATUS = 3; // 0x3
+ field public static final int OCSP_REQUIRE_CERT_STATUS = 2; // 0x2
+ }
+
+ public class WifiFrameworkInitializer {
+ method public static void registerServiceWrappers();
+ }
+
+ public class WifiInfo implements android.os.Parcelable android.net.TransportInfo {
+ method public double getLostTxPacketsPerSecond();
+ method @Nullable public String getNetworkKey();
+ method @Nullable public String getRequestingPackageName();
+ method public double getRetriedTxPacketsPerSecond();
+ method public int getScore();
+ method public double getSuccessfulRxPacketsPerSecond();
+ method public double getSuccessfulTxPacketsPerSecond();
+ method public boolean isCarrierMerged();
+ method public boolean isEphemeral();
+ method public boolean isOemPaid();
+ method public boolean isOemPrivate();
+ method public boolean isOsuAp();
+ method public boolean isPasspointAp();
+ method @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public boolean isPrimary();
+ method public boolean isTrusted();
+ method @Nullable public static String sanitizeSsid(@Nullable String);
+ field public static final String DEFAULT_MAC_ADDRESS = "02:00:00:00:00:00";
+ field public static final int INVALID_RSSI = -127; // 0xffffff81
+ }
+
+ public class WifiManager {
+ method @RequiresPermission(android.Manifest.permission.WIFI_UPDATE_USABILITY_STATS_SCORE) public void addOnWifiUsabilityStatsListener(@NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.WifiManager.OnWifiUsabilityStatsListener);
+ method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public void addWifiVerboseLoggingStatusChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.WifiManager.WifiVerboseLoggingStatusChangedListener);
+ method @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public void allowAutojoin(int, boolean);
+ method @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public void allowAutojoinPasspoint(@NonNull String, boolean);
+ method public void clearExternalPnoScanRequest();
+ method @RequiresPermission(android.Manifest.permission.MANAGE_WIFI_COUNTRY_CODE) public void clearOverrideCountryCode();
+ method @RequiresPermission(android.Manifest.permission.WIFI_UPDATE_USABILITY_STATS_SCORE) public void clearWifiConnectedNetworkScorer();
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD, android.Manifest.permission.NETWORK_STACK}) public void connect(@NonNull android.net.wifi.WifiConfiguration, @Nullable android.net.wifi.WifiManager.ActionListener);
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD, android.Manifest.permission.NETWORK_STACK}) public void connect(int, @Nullable android.net.wifi.WifiManager.ActionListener);
+ method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD, android.Manifest.permission.NETWORK_STACK}) public void disable(int, @Nullable android.net.wifi.WifiManager.ActionListener);
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_STACK}) public void disableEphemeralNetwork(@NonNull String);
+ method @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public void factoryReset();
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD, android.Manifest.permission.NETWORK_STACK}) public void forget(int, @Nullable android.net.wifi.WifiManager.ActionListener);
+ method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public java.util.List<android.util.Pair<android.net.wifi.WifiConfiguration,java.util.Map<java.lang.Integer,java.util.List<android.net.wifi.ScanResult>>>> getAllMatchingWifiConfigs(@NonNull java.util.List<android.net.wifi.ScanResult>);
+ method @NonNull @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public java.util.List<android.net.wifi.WifiAvailableChannel> getAllowedChannels(int, int);
+ method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.ACCESS_COARSE_LOCATION}) public String getCountryCode();
+ method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public android.net.Network getCurrentNetwork();
+ method public static int getEasyConnectMaxAllowedResponderDeviceInfoLength();
+ method @NonNull @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public String[] getFactoryMacAddresses();
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void getLastCallerInfoForApi(int, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.BiConsumer<java.lang.String,java.lang.Boolean>);
+ method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public java.util.Map<android.net.wifi.hotspot2.OsuProvider,java.util.List<android.net.wifi.ScanResult>> getMatchingOsuProviders(@Nullable java.util.List<android.net.wifi.ScanResult>);
+ method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public java.util.Map<android.net.wifi.hotspot2.OsuProvider,android.net.wifi.hotspot2.PasspointConfiguration> getMatchingPasspointConfigsForOsuProviders(@NonNull java.util.Set<android.net.wifi.hotspot2.OsuProvider>);
+ method @NonNull @RequiresPermission(allOf={android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.ACCESS_WIFI_STATE}) public java.util.Map<android.net.wifi.WifiNetworkSuggestion,java.util.List<android.net.wifi.ScanResult>> getMatchingScanResults(@NonNull java.util.List<android.net.wifi.WifiNetworkSuggestion>, @Nullable java.util.List<android.net.wifi.ScanResult>);
+ method @NonNull @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public java.util.Set<java.lang.String> getOemPrivilegedWifiAdminPackages();
+ method @RequiresPermission(allOf={android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.NEARBY_WIFI_DEVICES, android.Manifest.permission.ACCESS_WIFI_STATE, android.Manifest.permission.READ_WIFI_CREDENTIAL}, conditional=true) public java.util.List<android.net.wifi.WifiConfiguration> getPrivilegedConfiguredNetworks();
+ method @Nullable @RequiresPermission(allOf={android.Manifest.permission.NEARBY_WIFI_DEVICES, android.Manifest.permission.ACCESS_WIFI_STATE, android.Manifest.permission.READ_WIFI_CREDENTIAL}, conditional=true) public android.net.wifi.WifiConfiguration getPrivilegedConnectedNetwork();
+ method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.OVERRIDE_WIFI_CONFIG}) public android.net.wifi.SoftApConfiguration getSoftApConfiguration();
+ method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.MANAGE_WIFI_NETWORK_SELECTION}, conditional=true) public java.util.Set<android.net.wifi.WifiSsid> getSsidsAllowlist();
+ method @NonNull @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public java.util.List<android.net.wifi.WifiAvailableChannel> getUsableChannels(int, int);
+ method public int getVerboseLoggingLevel();
+ method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public void getWifiActivityEnergyInfoAsync(@NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.WifiManager.OnWifiActivityEnergyInfoListener);
+ method @Deprecated @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public android.net.wifi.WifiConfiguration getWifiApConfiguration();
+ method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public int getWifiApState();
+ method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public java.util.List<android.net.wifi.WifiConfiguration> getWifiConfigForMatchedNetworkSuggestionsSharedWithUser(@NonNull java.util.List<android.net.wifi.ScanResult>);
+ method public boolean isApMacRandomizationSupported();
+ method public boolean isConnectedMacRandomizationSupported();
+ method @Deprecated public boolean isDeviceToDeviceRttSupported();
+ method public boolean isPortableHotspotSupported();
+ method public boolean isStaConcurrencyForRestrictedConnectionsSupported();
+ method public boolean isVerboseLoggingEnabled();
+ method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public boolean isWifiApEnabled();
+ method public boolean isWifiScannerSupported();
+ method @RequiresPermission(android.Manifest.permission.MANAGE_DEVICE_ADMINS) public void notifyMinimumRequiredWifiSecurityLevelChanged(int);
+ method @RequiresPermission(android.Manifest.permission.MANAGE_DEVICE_ADMINS) public void notifyWifiSsidPolicyChanged(@NonNull android.app.admin.WifiSsidPolicy);
+ method @RequiresPermission(android.Manifest.permission.ACCESS_COARSE_LOCATION) public void registerActiveCountryCodeChangedCallback(@NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.WifiManager.ActiveCountryCodeChangedCallback);
+ method @RequiresPermission(android.Manifest.permission.WIFI_ACCESS_COEX_UNSAFE_CHANNELS) public void registerCoexCallback(@NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.WifiManager.CoexCallback);
+ method @RequiresPermission(android.Manifest.permission.NEARBY_WIFI_DEVICES) public void registerLocalOnlyHotspotSoftApCallback(@NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.WifiManager.SoftApCallback);
+ method @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public void registerNetworkRequestMatchCallback(@NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.WifiManager.NetworkRequestMatchCallback);
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.OVERRIDE_WIFI_CONFIG}) public void registerSoftApCallback(@NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.WifiManager.SoftApCallback);
+ method @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public void registerTrafficStateCallback(@NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.WifiManager.TrafficStateCallback);
+ method @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public void removeAppState(int, @NonNull String);
+ method @RequiresPermission(android.Manifest.permission.WIFI_UPDATE_USABILITY_STATS_SCORE) public void removeOnWifiUsabilityStatsListener(@NonNull android.net.wifi.WifiManager.OnWifiUsabilityStatsListener);
+ method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public void removeWifiVerboseLoggingStatusChangedListener(@NonNull android.net.wifi.WifiManager.WifiVerboseLoggingStatusChangedListener);
+ method @RequiresPermission(android.Manifest.permission.RESTART_WIFI_SUBSYSTEM) public void restartWifiSubsystem();
+ method @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public void restoreBackupData(@NonNull byte[]);
+ method @Nullable @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public android.net.wifi.SoftApConfiguration restoreSoftApBackupData(@NonNull byte[]);
+ method @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public void restoreSupplicantBackupData(@NonNull byte[], @NonNull byte[]);
+ method @NonNull @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public byte[] retrieveBackupData();
+ method @NonNull @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public byte[] retrieveSoftApBackupData();
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD, android.Manifest.permission.NETWORK_STACK}) public void save(@NonNull android.net.wifi.WifiConfiguration, @Nullable android.net.wifi.WifiManager.ActionListener);
+ method @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public void setAutoWakeupEnabled(boolean);
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public void setCarrierNetworkOffloadEnabled(int, boolean, boolean);
+ method @RequiresPermission(android.Manifest.permission.WIFI_UPDATE_COEX_UNSAFE_CHANNELS) public void setCoexUnsafeChannels(@NonNull java.util.List<android.net.wifi.CoexUnsafeChannel>, int);
+ method @RequiresPermission(android.Manifest.permission.MANAGE_WIFI_COUNTRY_CODE) public void setDefaultCountryCode(@NonNull String);
+ method @RequiresPermission(android.Manifest.permission.WIFI_SET_DEVICE_MOBILITY_STATE) public void setDeviceMobilityState(int);
+ method @RequiresPermission(allOf={android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.REQUEST_COMPANION_PROFILE_AUTOMOTIVE_PROJECTION}) public void setExternalPnoScanRequest(@NonNull java.util.List<android.net.wifi.WifiSsid>, @Nullable int[], @NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.WifiManager.PnoScanResultsCallback);
+ method @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public void setMacRandomizationSettingPasspointEnabled(@NonNull String, boolean);
+ method @RequiresPermission(android.Manifest.permission.MANAGE_WIFI_COUNTRY_CODE) public void setOverrideCountryCode(@NonNull String);
+ method @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public void setPasspointMeteredOverride(@NonNull String, int);
+ method @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public void setScanAlwaysAvailable(boolean);
+ method @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public void setScanThrottleEnabled(boolean);
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.MANAGE_WIFI_NETWORK_SELECTION}) public void setScreenOnScanSchedule(@Nullable java.util.List<android.net.wifi.WifiManager.ScreenOnScanSchedule>);
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.OVERRIDE_WIFI_CONFIG}) public boolean setSoftApConfiguration(@NonNull android.net.wifi.SoftApConfiguration);
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.MANAGE_WIFI_NETWORK_SELECTION}, conditional=true) public void setSsidsAllowlist(@NonNull java.util.Set<android.net.wifi.WifiSsid>);
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public boolean setStaConcurrencyForMultiInternetMode(int);
+ method @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public void setVerboseLoggingEnabled(boolean);
+ method @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public void setVerboseLoggingLevel(int);
+ method @Deprecated @RequiresPermission(android.Manifest.permission.CHANGE_WIFI_STATE) public boolean setWifiApConfiguration(android.net.wifi.WifiConfiguration);
+ method @RequiresPermission(android.Manifest.permission.WIFI_UPDATE_USABILITY_STATS_SCORE) public boolean setWifiConnectedNetworkScorer(@NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.WifiManager.WifiConnectedNetworkScorer);
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public void setWifiPasspointEnabled(boolean);
+ method @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public boolean setWifiScoringEnabled(boolean);
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public void startEasyConnectAsConfiguratorInitiator(@NonNull String, int, int, @NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.EasyConnectStatusCallback);
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public void startEasyConnectAsEnrolleeInitiator(@NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.EasyConnectStatusCallback);
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public void startEasyConnectAsEnrolleeResponder(@Nullable String, int, @NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.EasyConnectStatusCallback);
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD, android.Manifest.permission.NEARBY_WIFI_DEVICES}) public void startLocalOnlyHotspot(@NonNull android.net.wifi.SoftApConfiguration, @Nullable java.util.concurrent.Executor, @Nullable android.net.wifi.WifiManager.LocalOnlyHotspotCallback);
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public void startRestrictingAutoJoinToSubscriptionId(int);
+ method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public boolean startScan(android.os.WorkSource);
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public void startSubscriptionProvisioning(@NonNull android.net.wifi.hotspot2.OsuProvider, @NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.hotspot2.ProvisioningCallback);
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public boolean startTetheredHotspot(@Nullable android.net.wifi.SoftApConfiguration);
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public void stopEasyConnectSession();
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public void stopRestrictingAutoJoinToSubscriptionId();
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public boolean stopSoftAp();
+ method public void unregisterActiveCountryCodeChangedCallback(@NonNull android.net.wifi.WifiManager.ActiveCountryCodeChangedCallback);
+ method @RequiresPermission(android.Manifest.permission.WIFI_ACCESS_COEX_UNSAFE_CHANNELS) public void unregisterCoexCallback(@NonNull android.net.wifi.WifiManager.CoexCallback);
+ method @RequiresPermission(android.Manifest.permission.NEARBY_WIFI_DEVICES) public void unregisterLocalOnlyHotspotSoftApCallback(@NonNull android.net.wifi.WifiManager.SoftApCallback);
+ method @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public void unregisterNetworkRequestMatchCallback(@NonNull android.net.wifi.WifiManager.NetworkRequestMatchCallback);
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.OVERRIDE_WIFI_CONFIG}) public void unregisterSoftApCallback(@NonNull android.net.wifi.WifiManager.SoftApCallback);
+ method @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public void unregisterTrafficStateCallback(@NonNull android.net.wifi.WifiManager.TrafficStateCallback);
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void updateInterfaceIpState(@Nullable String, int);
+ method @RequiresPermission(android.Manifest.permission.WIFI_UPDATE_USABILITY_STATS_SCORE) public void updateWifiUsabilityScore(int, int, int);
+ field public static final String ACTION_LINK_CONFIGURATION_CHANGED = "android.net.wifi.LINK_CONFIGURATION_CHANGED";
+ field @RequiresPermission(android.Manifest.permission.NETWORK_CARRIER_PROVISIONING) public static final String ACTION_NETWORK_SETTINGS_RESET = "android.net.wifi.action.NETWORK_SETTINGS_RESET";
+ field public static final String ACTION_PASSPOINT_LAUNCH_OSU_VIEW = "android.net.wifi.action.PASSPOINT_LAUNCH_OSU_VIEW";
+ field @RequiresPermission(android.Manifest.permission.NETWORK_CARRIER_PROVISIONING) public static final String ACTION_REFRESH_USER_PROVISIONING = "android.net.wifi.action.REFRESH_USER_PROVISIONING";
+ field public static final String ACTION_REQUEST_DISABLE = "android.net.wifi.action.REQUEST_DISABLE";
+ field public static final String ACTION_REQUEST_ENABLE = "android.net.wifi.action.REQUEST_ENABLE";
+ field public static final int API_AUTOJOIN_GLOBAL = 5; // 0x5
+ field public static final int API_SCANNING_ENABLED = 1; // 0x1
+ field public static final int API_SET_SCAN_SCHEDULE = 6; // 0x6
+ field public static final int API_SOFT_AP = 3; // 0x3
+ field public static final int API_TETHERED_HOTSPOT = 4; // 0x4
+ field public static final int API_WIFI_ENABLED = 2; // 0x2
+ field public static final int CHANGE_REASON_ADDED = 0; // 0x0
+ field public static final int CHANGE_REASON_CONFIG_CHANGE = 2; // 0x2
+ field public static final int CHANGE_REASON_REMOVED = 1; // 0x1
+ field public static final int COEX_RESTRICTION_SOFTAP = 2; // 0x2
+ field public static final int COEX_RESTRICTION_WIFI_AWARE = 4; // 0x4
+ field public static final int COEX_RESTRICTION_WIFI_DIRECT = 1; // 0x1
+ field public static final String CONFIGURED_NETWORKS_CHANGED_ACTION = "android.net.wifi.CONFIGURED_NETWORKS_CHANGE";
+ field public static final int DEVICE_MOBILITY_STATE_HIGH_MVMT = 1; // 0x1
+ field public static final int DEVICE_MOBILITY_STATE_LOW_MVMT = 2; // 0x2
+ field public static final int DEVICE_MOBILITY_STATE_STATIONARY = 3; // 0x3
+ field public static final int DEVICE_MOBILITY_STATE_UNKNOWN = 0; // 0x0
+ field public static final int EASY_CONNECT_CRYPTOGRAPHY_CURVE_BRAINPOOLP256R1 = 3; // 0x3
+ field public static final int EASY_CONNECT_CRYPTOGRAPHY_CURVE_BRAINPOOLP384R1 = 4; // 0x4
+ field public static final int EASY_CONNECT_CRYPTOGRAPHY_CURVE_BRAINPOOLP512R1 = 5; // 0x5
+ field public static final int EASY_CONNECT_CRYPTOGRAPHY_CURVE_PRIME256V1 = 0; // 0x0
+ field public static final int EASY_CONNECT_CRYPTOGRAPHY_CURVE_SECP384R1 = 1; // 0x1
+ field public static final int EASY_CONNECT_CRYPTOGRAPHY_CURVE_SECP521R1 = 2; // 0x2
+ field public static final int EASY_CONNECT_NETWORK_ROLE_AP = 1; // 0x1
+ field public static final int EASY_CONNECT_NETWORK_ROLE_STA = 0; // 0x0
+ field public static final String EXTRA_CHANGE_REASON = "changeReason";
+ field @Deprecated public static final String EXTRA_LINK_PROPERTIES = "android.net.wifi.extra.LINK_PROPERTIES";
+ field @Deprecated public static final String EXTRA_MULTIPLE_NETWORKS_CHANGED = "multipleChanges";
+ field public static final String EXTRA_OSU_NETWORK = "android.net.wifi.extra.OSU_NETWORK";
+ field public static final String EXTRA_PREVIOUS_WIFI_AP_STATE = "previous_wifi_state";
+ field public static final String EXTRA_URL = "android.net.wifi.extra.URL";
+ field public static final String EXTRA_WIFI_AP_FAILURE_REASON = "android.net.wifi.extra.WIFI_AP_FAILURE_REASON";
+ field public static final String EXTRA_WIFI_AP_INTERFACE_NAME = "android.net.wifi.extra.WIFI_AP_INTERFACE_NAME";
+ field public static final String EXTRA_WIFI_AP_MODE = "android.net.wifi.extra.WIFI_AP_MODE";
+ field public static final String EXTRA_WIFI_AP_STATE = "wifi_state";
+ field @Deprecated public static final String EXTRA_WIFI_CONFIGURATION = "wifiConfiguration";
+ field public static final String EXTRA_WIFI_CREDENTIAL_EVENT_TYPE = "et";
+ field public static final String EXTRA_WIFI_CREDENTIAL_SSID = "ssid";
+ field public static final int IFACE_IP_MODE_CONFIGURATION_ERROR = 0; // 0x0
+ field public static final int IFACE_IP_MODE_LOCAL_ONLY = 2; // 0x2
+ field public static final int IFACE_IP_MODE_TETHERED = 1; // 0x1
+ field public static final int IFACE_IP_MODE_UNSPECIFIED = -1; // 0xffffffff
+ field public static final int PASSPOINT_HOME_NETWORK = 0; // 0x0
+ field public static final int PASSPOINT_ROAMING_NETWORK = 1; // 0x1
+ field public static final int SAP_CLIENT_BLOCK_REASON_CODE_BLOCKED_BY_USER = 0; // 0x0
+ field public static final int SAP_CLIENT_BLOCK_REASON_CODE_NO_MORE_STAS = 1; // 0x1
+ field public static final int SAP_START_FAILURE_GENERAL = 0; // 0x0
+ field public static final int SAP_START_FAILURE_NO_CHANNEL = 1; // 0x1
+ field public static final int SAP_START_FAILURE_UNSUPPORTED_CONFIGURATION = 2; // 0x2
+ field public static final int VERBOSE_LOGGING_LEVEL_DISABLED = 0; // 0x0
+ field public static final int VERBOSE_LOGGING_LEVEL_ENABLED = 1; // 0x1
+ field public static final int VERBOSE_LOGGING_LEVEL_ENABLED_SHOW_KEY = 2; // 0x2
+ field @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public static final String WIFI_AP_STATE_CHANGED_ACTION = "android.net.wifi.WIFI_AP_STATE_CHANGED";
+ field public static final int WIFI_AP_STATE_DISABLED = 11; // 0xb
+ field public static final int WIFI_AP_STATE_DISABLING = 10; // 0xa
+ field public static final int WIFI_AP_STATE_ENABLED = 13; // 0xd
+ field public static final int WIFI_AP_STATE_ENABLING = 12; // 0xc
+ field public static final int WIFI_AP_STATE_FAILED = 14; // 0xe
+ field public static final String WIFI_CREDENTIAL_CHANGED_ACTION = "android.net.wifi.WIFI_CREDENTIAL_CHANGED";
+ field public static final int WIFI_CREDENTIAL_FORGOT = 1; // 0x1
+ field public static final int WIFI_CREDENTIAL_SAVED = 0; // 0x0
+ }
+
+ public static interface WifiManager.ActionListener {
+ method public void onFailure(int);
+ method public void onSuccess();
+ field public static final int FAILURE_BUSY = 2; // 0x2
+ field public static final int FAILURE_INTERNAL_ERROR = 0; // 0x0
+ field public static final int FAILURE_INVALID_ARGS = 3; // 0x3
+ field public static final int FAILURE_IN_PROGRESS = 1; // 0x1
+ field public static final int FAILURE_NOT_AUTHORIZED = 4; // 0x4
+ }
+
+ public static interface WifiManager.ActiveCountryCodeChangedCallback {
+ method public void onActiveCountryCodeChanged(@NonNull String);
+ method public void onCountryCodeInactive();
+ }
+
+ public abstract static class WifiManager.CoexCallback {
+ ctor public WifiManager.CoexCallback();
+ method public abstract void onCoexUnsafeChannelsChanged(@NonNull java.util.List<android.net.wifi.CoexUnsafeChannel>, int);
+ }
+
+ public static interface WifiManager.NetworkRequestMatchCallback {
+ method public default void onAbort();
+ method public default void onMatch(@NonNull java.util.List<android.net.wifi.ScanResult>);
+ method public default void onUserSelectionCallbackRegistration(@NonNull android.net.wifi.WifiManager.NetworkRequestUserSelectionCallback);
+ method public default void onUserSelectionConnectFailure(@NonNull android.net.wifi.WifiConfiguration);
+ method public default void onUserSelectionConnectSuccess(@NonNull android.net.wifi.WifiConfiguration);
+ }
+
+ public static interface WifiManager.NetworkRequestUserSelectionCallback {
+ method public default void reject();
+ method public default void select(@NonNull android.net.wifi.WifiConfiguration);
+ }
+
+ public static interface WifiManager.OnWifiActivityEnergyInfoListener {
+ method public void onWifiActivityEnergyInfo(@Nullable android.os.connectivity.WifiActivityEnergyInfo);
+ }
+
+ public static interface WifiManager.OnWifiUsabilityStatsListener {
+ method public void onWifiUsabilityStats(int, boolean, @NonNull android.net.wifi.WifiUsabilityStatsEntry);
+ }
+
+ public static interface WifiManager.PnoScanResultsCallback {
+ method public void onRegisterFailed(int);
+ method public void onRegisterSuccess();
+ method public void onRemoved(int);
+ method public void onScanResultsAvailable(@NonNull java.util.List<android.net.wifi.ScanResult>);
+ field public static final int REGISTER_PNO_CALLBACK_ALREADY_REGISTERED = 1; // 0x1
+ field public static final int REGISTER_PNO_CALLBACK_PNO_NOT_SUPPORTED = 3; // 0x3
+ field public static final int REGISTER_PNO_CALLBACK_RESOURCE_BUSY = 2; // 0x2
+ field public static final int REGISTER_PNO_CALLBACK_UNKNOWN = 0; // 0x0
+ field public static final int REMOVE_PNO_CALLBACK_RESULTS_DELIVERED = 1; // 0x1
+ field public static final int REMOVE_PNO_CALLBACK_UNKNOWN = 0; // 0x0
+ field public static final int REMOVE_PNO_CALLBACK_UNREGISTERED = 2; // 0x2
+ }
+
+ public static interface WifiManager.ScoreUpdateObserver {
+ method public default void blocklistCurrentBssid(int);
+ method public void notifyScoreUpdate(int, int);
+ method public default void notifyStatusUpdate(int, boolean);
+ method public default void requestNudOperation(int);
+ method public void triggerUpdateOfWifiUsabilityStats(int);
+ }
+
+ public static class WifiManager.ScreenOnScanSchedule {
+ ctor public WifiManager.ScreenOnScanSchedule(@NonNull java.time.Duration, int);
+ method @NonNull public java.time.Duration getScanInterval();
+ method public int getScanType();
+ }
+
+ public static interface WifiManager.SoftApCallback {
+ method public default void onBlockedClientConnecting(@NonNull android.net.wifi.WifiClient, int);
+ method public default void onCapabilityChanged(@NonNull android.net.wifi.SoftApCapability);
+ method @Deprecated public default void onConnectedClientsChanged(@NonNull java.util.List<android.net.wifi.WifiClient>);
+ method public default void onConnectedClientsChanged(@NonNull android.net.wifi.SoftApInfo, @NonNull java.util.List<android.net.wifi.WifiClient>);
+ method @Deprecated public default void onInfoChanged(@NonNull android.net.wifi.SoftApInfo);
+ method public default void onInfoChanged(@NonNull java.util.List<android.net.wifi.SoftApInfo>);
+ method public default void onStateChanged(int, int);
+ }
+
+ public static interface WifiManager.TrafficStateCallback {
+ method public void onStateChanged(int);
+ field public static final int DATA_ACTIVITY_IN = 1; // 0x1
+ field public static final int DATA_ACTIVITY_INOUT = 3; // 0x3
+ field public static final int DATA_ACTIVITY_NONE = 0; // 0x0
+ field public static final int DATA_ACTIVITY_OUT = 2; // 0x2
+ }
+
+ public static interface WifiManager.WifiConnectedNetworkScorer {
+ method public void onSetScoreUpdateObserver(@NonNull android.net.wifi.WifiManager.ScoreUpdateObserver);
+ method @Deprecated public default void onStart(int);
+ method public default void onStart(@NonNull android.net.wifi.WifiConnectedSessionInfo);
+ method public void onStop(int);
+ }
+
+ public static interface WifiManager.WifiVerboseLoggingStatusChangedListener {
+ method public void onWifiVerboseLoggingStatusChanged(boolean);
+ }
+
+ @Deprecated public class WifiNetworkConnectionStatistics implements android.os.Parcelable {
+ ctor @Deprecated public WifiNetworkConnectionStatistics(int, int);
+ ctor @Deprecated public WifiNetworkConnectionStatistics();
+ ctor @Deprecated public WifiNetworkConnectionStatistics(android.net.wifi.WifiNetworkConnectionStatistics);
+ method @Deprecated public int describeContents();
+ method @Deprecated public void writeToParcel(android.os.Parcel, int);
+ field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.WifiNetworkConnectionStatistics> CREATOR;
+ field @Deprecated public int numConnection;
+ field @Deprecated public int numUsage;
+ }
+
+ public final class WifiNetworkSuggestion implements android.os.Parcelable {
+ method public int getCarrierId();
+ method @NonNull public android.net.wifi.WifiConfiguration getWifiConfiguration();
+ method public boolean isOemPaid();
+ method public boolean isOemPrivate();
+ }
+
+ public static final class WifiNetworkSuggestion.Builder {
+ method @NonNull @RequiresPermission(android.Manifest.permission.NETWORK_CARRIER_PROVISIONING) public android.net.wifi.WifiNetworkSuggestion.Builder setCarrierId(int);
+ method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setOemPaid(boolean);
+ method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setOemPrivate(boolean);
+ }
+
+ public class WifiScanner {
+ method @Deprecated public void configureWifiChange(int, int, int, int, int, android.net.wifi.WifiScanner.BssidInfo[]);
+ method @Deprecated public void configureWifiChange(android.net.wifi.WifiScanner.WifiChangeSettings);
+ method @NonNull @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public java.util.List<java.lang.Integer> getAvailableChannels(int);
+ method @Deprecated @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public boolean getScanResults();
+ method @NonNull @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public java.util.List<android.net.wifi.ScanResult> getSingleScanResults();
+ method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public boolean isScanning();
+ method @RequiresPermission(anyOf={android.Manifest.permission.LOCATION_HARDWARE, android.Manifest.permission.NETWORK_STACK}) public void registerScanListener(@NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.WifiScanner.ScanListener);
+ method @RequiresPermission(android.Manifest.permission.NETWORK_STACK) public void setScanningEnabled(boolean);
+ method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void startBackgroundScan(android.net.wifi.WifiScanner.ScanSettings, android.net.wifi.WifiScanner.ScanListener);
+ method @Deprecated @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void startBackgroundScan(android.net.wifi.WifiScanner.ScanSettings, android.net.wifi.WifiScanner.ScanListener, android.os.WorkSource);
+ method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void startScan(android.net.wifi.WifiScanner.ScanSettings, android.net.wifi.WifiScanner.ScanListener);
+ method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void startScan(android.net.wifi.WifiScanner.ScanSettings, android.net.wifi.WifiScanner.ScanListener, android.os.WorkSource);
+ method @Deprecated public void startTrackingBssids(android.net.wifi.WifiScanner.BssidInfo[], int, android.net.wifi.WifiScanner.BssidListener);
+ method @Deprecated public void startTrackingWifiChange(android.net.wifi.WifiScanner.WifiChangeListener);
+ method @Deprecated @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void stopBackgroundScan(android.net.wifi.WifiScanner.ScanListener);
+ method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void stopScan(android.net.wifi.WifiScanner.ScanListener);
+ method @Deprecated public void stopTrackingBssids(android.net.wifi.WifiScanner.BssidListener);
+ method @Deprecated public void stopTrackingWifiChange(android.net.wifi.WifiScanner.WifiChangeListener);
+ method public void unregisterScanListener(@NonNull android.net.wifi.WifiScanner.ScanListener);
+ field public static final int MAX_SCAN_PERIOD_MS = 1024000; // 0xfa000
+ field public static final int MIN_SCAN_PERIOD_MS = 1000; // 0x3e8
+ field public static final int REASON_DUPLICATE_REQEUST = -5; // 0xfffffffb
+ field public static final int REASON_INVALID_LISTENER = -2; // 0xfffffffe
+ field public static final int REASON_INVALID_REQUEST = -3; // 0xfffffffd
+ field public static final int REASON_NOT_AUTHORIZED = -4; // 0xfffffffc
+ field public static final int REASON_SUCCEEDED = 0; // 0x0
+ field public static final int REASON_UNSPECIFIED = -1; // 0xffffffff
+ field @Deprecated public static final int REPORT_EVENT_AFTER_BUFFER_FULL = 0; // 0x0
+ field public static final int REPORT_EVENT_AFTER_EACH_SCAN = 1; // 0x1
+ field public static final int REPORT_EVENT_FULL_SCAN_RESULT = 2; // 0x2
+ field public static final int REPORT_EVENT_NO_BATCH = 4; // 0x4
+ field public static final int SCAN_TYPE_HIGH_ACCURACY = 2; // 0x2
+ field public static final int SCAN_TYPE_LOW_LATENCY = 0; // 0x0
+ field public static final int SCAN_TYPE_LOW_POWER = 1; // 0x1
+ field public static final int WIFI_BAND_24_5_6_GHZ = 11; // 0xb
+ field public static final int WIFI_BAND_24_5_WITH_DFS_6_GHZ = 15; // 0xf
+ field public static final int WIFI_BAND_24_GHZ = 1; // 0x1
+ field public static final int WIFI_BAND_5_GHZ = 2; // 0x2
+ field public static final int WIFI_BAND_5_GHZ_DFS_ONLY = 4; // 0x4
+ field public static final int WIFI_BAND_5_GHZ_WITH_DFS = 6; // 0x6
+ field public static final int WIFI_BAND_60_GHZ = 16; // 0x10
+ field public static final int WIFI_BAND_6_GHZ = 8; // 0x8
+ field public static final int WIFI_BAND_BOTH = 3; // 0x3
+ field public static final int WIFI_BAND_BOTH_WITH_DFS = 7; // 0x7
+ field public static final int WIFI_BAND_UNSPECIFIED = 0; // 0x0
+ field public static final int WIFI_RNR_ENABLED = 1; // 0x1
+ field public static final int WIFI_RNR_ENABLED_IF_WIFI_BAND_6_GHZ_SCANNED = 0; // 0x0
+ field public static final int WIFI_RNR_NOT_NEEDED = 2; // 0x2
+ }
+
+ public static interface WifiScanner.ActionListener {
+ method public void onFailure(int, String);
+ method public void onSuccess();
+ }
+
+ @Deprecated public static class WifiScanner.BssidInfo {
+ ctor @Deprecated public WifiScanner.BssidInfo();
+ field @Deprecated public String bssid;
+ field @Deprecated public int frequencyHint;
+ field @Deprecated public int high;
+ field @Deprecated public int low;
+ }
+
+ @Deprecated public static interface WifiScanner.BssidListener extends android.net.wifi.WifiScanner.ActionListener {
+ method @Deprecated public void onFound(android.net.wifi.ScanResult[]);
+ method @Deprecated public void onLost(android.net.wifi.ScanResult[]);
+ }
+
+ public static class WifiScanner.ChannelSpec {
+ ctor public WifiScanner.ChannelSpec(int);
+ field public int frequency;
+ }
+
+ @Deprecated public static class WifiScanner.HotlistSettings implements android.os.Parcelable {
+ ctor @Deprecated public WifiScanner.HotlistSettings();
+ field @Deprecated public int apLostThreshold;
+ field @Deprecated public android.net.wifi.WifiScanner.BssidInfo[] bssidInfos;
+ }
+
+ public static class WifiScanner.ParcelableScanData implements android.os.Parcelable {
+ ctor public WifiScanner.ParcelableScanData(android.net.wifi.WifiScanner.ScanData[]);
+ method public android.net.wifi.WifiScanner.ScanData[] getResults();
+ field public android.net.wifi.WifiScanner.ScanData[] mResults;
+ }
+
+ public static class WifiScanner.ParcelableScanResults implements android.os.Parcelable {
+ ctor public WifiScanner.ParcelableScanResults(android.net.wifi.ScanResult[]);
+ method public android.net.wifi.ScanResult[] getResults();
+ field public android.net.wifi.ScanResult[] mResults;
+ }
+
+ public static class WifiScanner.ScanData implements android.os.Parcelable {
+ ctor public WifiScanner.ScanData(int, int, android.net.wifi.ScanResult[]);
+ ctor public WifiScanner.ScanData(android.net.wifi.WifiScanner.ScanData);
+ method public int getFlags();
+ method public int getId();
+ method public android.net.wifi.ScanResult[] getResults();
+ method public int getScannedBands();
+ }
+
+ public static interface WifiScanner.ScanListener extends android.net.wifi.WifiScanner.ActionListener {
+ method public void onFullResult(android.net.wifi.ScanResult);
+ method @Deprecated public void onPeriodChanged(int);
+ method public void onResults(android.net.wifi.WifiScanner.ScanData[]);
+ }
+
+ public static class WifiScanner.ScanSettings implements android.os.Parcelable {
+ ctor public WifiScanner.ScanSettings();
+ method public int getRnrSetting();
+ method public boolean is6GhzPscOnlyEnabled();
+ method public void set6GhzPscOnlyEnabled(boolean);
+ method public void setRnrSetting(int);
+ field public int band;
+ field public android.net.wifi.WifiScanner.ChannelSpec[] channels;
+ field @NonNull @RequiresPermission(android.Manifest.permission.NETWORK_STACK) public final java.util.List<android.net.wifi.WifiScanner.ScanSettings.HiddenNetwork> hiddenNetworks;
+ field public boolean hideFromAppOps;
+ field public boolean ignoreLocationSettings;
+ field @Deprecated public int maxPeriodInMs;
+ field @Deprecated public int maxScansToCache;
+ field @Deprecated public int numBssidsPerScan;
+ field @Deprecated public int periodInMs;
+ field @Deprecated public int reportEvents;
+ field @Deprecated public int stepCount;
+ field @RequiresPermission(android.Manifest.permission.NETWORK_STACK) public int type;
+ }
+
+ public static class WifiScanner.ScanSettings.HiddenNetwork {
+ ctor public WifiScanner.ScanSettings.HiddenNetwork(@NonNull String);
+ field @NonNull public final String ssid;
+ }
+
+ @Deprecated public static interface WifiScanner.WifiChangeListener extends android.net.wifi.WifiScanner.ActionListener {
+ method @Deprecated public void onChanging(android.net.wifi.ScanResult[]);
+ method @Deprecated public void onQuiescence(android.net.wifi.ScanResult[]);
+ }
+
+ @Deprecated public static class WifiScanner.WifiChangeSettings implements android.os.Parcelable {
+ ctor @Deprecated public WifiScanner.WifiChangeSettings();
+ field @Deprecated public android.net.wifi.WifiScanner.BssidInfo[] bssidInfos;
+ field @Deprecated public int lostApSampleSize;
+ field @Deprecated public int minApsBreachingThreshold;
+ field @Deprecated public int periodInMs;
+ field @Deprecated public int rssiSampleSize;
+ field @Deprecated public int unchangedSampleSize;
+ }
+
+ public final class WifiUsabilityStatsEntry implements android.os.Parcelable {
+ method public int describeContents();
+ method public int getCellularDataNetworkType();
+ method public int getCellularSignalStrengthDb();
+ method public int getCellularSignalStrengthDbm();
+ method @IntRange(from=0xffffffff, to=255) public int getChannelUtilizationRatio();
+ method @NonNull public android.net.wifi.WifiUsabilityStatsEntry.ContentionTimeStats getContentionTimeStats(int);
+ method public int getLinkSpeedMbps();
+ method public int getProbeElapsedTimeSinceLastUpdateMillis();
+ method public int getProbeMcsRateSinceLastUpdate();
+ method public int getProbeStatusSinceLastUpdate();
+ method @NonNull public java.util.List<android.net.wifi.WifiUsabilityStatsEntry.RateStats> getRateStats();
+ method public int getRssi();
+ method public int getRxLinkSpeedMbps();
+ method @IntRange(from=0, to=100) public int getTimeSliceDutyCycleInPercent();
+ method public long getTimeStampMillis();
+ method public long getTotalBackgroundScanTimeMillis();
+ method public long getTotalBeaconRx();
+ method public long getTotalCcaBusyFreqTimeMillis();
+ method public long getTotalHotspot2ScanTimeMillis();
+ method public long getTotalNanScanTimeMillis();
+ method public long getTotalPnoScanTimeMillis();
+ method public long getTotalRadioOnFreqTimeMillis();
+ method public long getTotalRadioOnTimeMillis();
+ method public long getTotalRadioRxTimeMillis();
+ method public long getTotalRadioTxTimeMillis();
+ method public long getTotalRoamScanTimeMillis();
+ method public long getTotalRxSuccess();
+ method public long getTotalScanTimeMillis();
+ method public long getTotalTxBad();
+ method public long getTotalTxRetries();
+ method public long getTotalTxSuccess();
+ method @NonNull public java.util.List<android.net.wifi.WifiUsabilityStatsEntry.RadioStats> getWifiLinkLayerRadioStats();
+ method public boolean isCellularDataAvailable();
+ method public boolean isSameRegisteredCell();
+ method public boolean isThroughputSufficient();
+ method public boolean isWifiScoringEnabled();
+ method public void writeToParcel(android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.WifiUsabilityStatsEntry> CREATOR;
+ field public static final int NUM_WME_ACCESS_CATEGORIES = 4; // 0x4
+ field public static final int PROBE_STATUS_FAILURE = 3; // 0x3
+ field public static final int PROBE_STATUS_NO_PROBE = 1; // 0x1
+ field public static final int PROBE_STATUS_SUCCESS = 2; // 0x2
+ field public static final int PROBE_STATUS_UNKNOWN = 0; // 0x0
+ field public static final int WIFI_BANDWIDTH_10_MHZ = 6; // 0x6
+ field public static final int WIFI_BANDWIDTH_160_MHZ = 3; // 0x3
+ field public static final int WIFI_BANDWIDTH_20_MHZ = 0; // 0x0
+ field public static final int WIFI_BANDWIDTH_320_MHZ = 7; // 0x7
+ field public static final int WIFI_BANDWIDTH_40_MHZ = 1; // 0x1
+ field public static final int WIFI_BANDWIDTH_5_MHZ = 5; // 0x5
+ field public static final int WIFI_BANDWIDTH_80P80_MHZ = 4; // 0x4
+ field public static final int WIFI_BANDWIDTH_80_MHZ = 2; // 0x2
+ field public static final int WIFI_BANDWIDTH_INVALID = -1; // 0xffffffff
+ field public static final int WIFI_PREAMBLE_CCK = 1; // 0x1
+ field public static final int WIFI_PREAMBLE_EHT = 6; // 0x6
+ field public static final int WIFI_PREAMBLE_HE = 5; // 0x5
+ field public static final int WIFI_PREAMBLE_HT = 2; // 0x2
+ field public static final int WIFI_PREAMBLE_INVALID = -1; // 0xffffffff
+ field public static final int WIFI_PREAMBLE_OFDM = 0; // 0x0
+ field public static final int WIFI_PREAMBLE_VHT = 3; // 0x3
+ field public static final int WIFI_SPATIAL_STREAMS_FOUR = 4; // 0x4
+ field public static final int WIFI_SPATIAL_STREAMS_INVALID = -1; // 0xffffffff
+ field public static final int WIFI_SPATIAL_STREAMS_ONE = 1; // 0x1
+ field public static final int WIFI_SPATIAL_STREAMS_THREE = 3; // 0x3
+ field public static final int WIFI_SPATIAL_STREAMS_TWO = 2; // 0x2
+ field public static final int WME_ACCESS_CATEGORY_BE = 0; // 0x0
+ field public static final int WME_ACCESS_CATEGORY_BK = 1; // 0x1
+ field public static final int WME_ACCESS_CATEGORY_VI = 2; // 0x2
+ field public static final int WME_ACCESS_CATEGORY_VO = 3; // 0x3
+ }
+
+ public static final class WifiUsabilityStatsEntry.ContentionTimeStats implements android.os.Parcelable {
+ ctor public WifiUsabilityStatsEntry.ContentionTimeStats(long, long, long, long);
+ method public int describeContents();
+ method public long getContentionNumSamples();
+ method public long getContentionTimeAvgMicros();
+ method public long getContentionTimeMaxMicros();
+ method public long getContentionTimeMinMicros();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.WifiUsabilityStatsEntry.ContentionTimeStats> CREATOR;
+ }
+
+ public static final class WifiUsabilityStatsEntry.RadioStats implements android.os.Parcelable {
+ ctor public WifiUsabilityStatsEntry.RadioStats(int, long, long, long, long, long, long, long, long, long);
+ method public int describeContents();
+ method public long getRadioId();
+ method public long getTotalBackgroundScanTimeMillis();
+ method public long getTotalHotspot2ScanTimeMillis();
+ method public long getTotalNanScanTimeMillis();
+ method public long getTotalPnoScanTimeMillis();
+ method public long getTotalRadioOnTimeMillis();
+ method public long getTotalRadioRxTimeMillis();
+ method public long getTotalRadioTxTimeMillis();
+ method public long getTotalRoamScanTimeMillis();
+ method public long getTotalScanTimeMillis();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.WifiUsabilityStatsEntry.RadioStats> CREATOR;
+ }
+
+ public static final class WifiUsabilityStatsEntry.RateStats implements android.os.Parcelable {
+ ctor public WifiUsabilityStatsEntry.RateStats(int, int, int, int, int, int, int, int, int);
+ method public int describeContents();
+ method public int getBandwidthInMhz();
+ method public int getBitRateInKbps();
+ method public int getMpduLost();
+ method public int getNumberOfSpatialStreams();
+ method public int getPreamble();
+ method public int getRateMcsIdx();
+ method public int getRetries();
+ method public int getRxMpdu();
+ method public int getTxMpdu();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.WifiUsabilityStatsEntry.RateStats> CREATOR;
+ }
+
+}
+
+package android.net.wifi.aware {
+
+ public final class AwareParams implements android.os.Parcelable {
+ ctor public AwareParams();
+ method public int describeContents();
+ method public int getDiscoveryBeaconIntervalMillis();
+ method public int getDiscoveryWindowWakeInterval24Ghz();
+ method public int getDiscoveryWindowWakeInterval5Ghz();
+ method public int getMacRandomizationIntervalSeconds();
+ method public int getNumSpatialStreamsInDiscovery();
+ method public boolean isDwEarlyTerminationEnabled();
+ method public void setDiscoveryBeaconIntervalMillis(@IntRange(from=1) int);
+ method public void setDiscoveryWindowWakeInterval24Ghz(@IntRange(from=1, to=5) int);
+ method public void setDiscoveryWindowWakeInterval5Ghz(@IntRange(from=0, to=5) int);
+ method public void setDwEarlyTerminationEnabled(boolean);
+ method public void setMacRandomizationIntervalSeconds(@IntRange(from=1, to=1800) int);
+ method public void setNumSpatialStreamsInDiscovery(@IntRange(from=1) int);
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.aware.AwareParams> CREATOR;
+ field public static final int UNSET_PARAMETER = -1; // 0xffffffff
+ }
+
+ public class DiscoverySession implements java.lang.AutoCloseable {
+ method @Deprecated public android.net.NetworkSpecifier createNetworkSpecifierPmk(@NonNull android.net.wifi.aware.PeerHandle, @NonNull byte[]);
+ }
+
+ public class WifiAwareManager {
+ method @RequiresPermission(allOf={android.Manifest.permission.CHANGE_WIFI_STATE, android.Manifest.permission.OVERRIDE_WIFI_CONFIG}) public void enableInstantCommunicationMode(boolean);
+ method @RequiresPermission(allOf={android.Manifest.permission.OVERRIDE_WIFI_CONFIG, android.Manifest.permission.CHANGE_WIFI_STATE}) public void setAwareParams(@Nullable android.net.wifi.aware.AwareParams);
+ }
+
+ public class WifiAwareSession implements java.lang.AutoCloseable {
+ method @Deprecated public android.net.NetworkSpecifier createNetworkSpecifierPmk(int, @NonNull byte[], @NonNull byte[]);
+ }
+
+}
+
+package android.net.wifi.hotspot2 {
+
+ public final class OsuProvider implements android.os.Parcelable {
+ method public int describeContents();
+ method @Nullable public String getFriendlyName();
+ method @Nullable public android.net.Uri getServerUri();
+ method public void writeToParcel(android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.hotspot2.OsuProvider> CREATOR;
+ }
+
+ public final class PasspointConfiguration implements android.os.Parcelable {
+ method public int getMeteredOverride();
+ method public boolean isAutojoinEnabled();
+ method public boolean isMacRandomizationEnabled();
+ }
+
+ public abstract class ProvisioningCallback {
+ ctor public ProvisioningCallback();
+ method public abstract void onProvisioningComplete();
+ method public abstract void onProvisioningFailure(int);
+ method public abstract void onProvisioningStatus(int);
+ field public static final int OSU_FAILURE_ADD_PASSPOINT_CONFIGURATION = 22; // 0x16
+ field public static final int OSU_FAILURE_AP_CONNECTION = 1; // 0x1
+ field public static final int OSU_FAILURE_INVALID_URL_FORMAT_FOR_OSU = 8; // 0x8
+ field public static final int OSU_FAILURE_NO_AAA_SERVER_TRUST_ROOT_NODE = 17; // 0x11
+ field public static final int OSU_FAILURE_NO_AAA_TRUST_ROOT_CERTIFICATE = 21; // 0x15
+ field public static final int OSU_FAILURE_NO_OSU_ACTIVITY_FOUND = 14; // 0xe
+ field public static final int OSU_FAILURE_NO_POLICY_SERVER_TRUST_ROOT_NODE = 19; // 0x13
+ field public static final int OSU_FAILURE_NO_PPS_MO = 16; // 0x10
+ field public static final int OSU_FAILURE_NO_REMEDIATION_SERVER_TRUST_ROOT_NODE = 18; // 0x12
+ field public static final int OSU_FAILURE_OSU_PROVIDER_NOT_FOUND = 23; // 0x17
+ field public static final int OSU_FAILURE_PROVISIONING_ABORTED = 6; // 0x6
+ field public static final int OSU_FAILURE_PROVISIONING_NOT_AVAILABLE = 7; // 0x7
+ field public static final int OSU_FAILURE_RETRIEVE_TRUST_ROOT_CERTIFICATES = 20; // 0x14
+ field public static final int OSU_FAILURE_SERVER_CONNECTION = 3; // 0x3
+ field public static final int OSU_FAILURE_SERVER_URL_INVALID = 2; // 0x2
+ field public static final int OSU_FAILURE_SERVER_VALIDATION = 4; // 0x4
+ field public static final int OSU_FAILURE_SERVICE_PROVIDER_VERIFICATION = 5; // 0x5
+ field public static final int OSU_FAILURE_SOAP_MESSAGE_EXCHANGE = 11; // 0xb
+ field public static final int OSU_FAILURE_START_REDIRECT_LISTENER = 12; // 0xc
+ field public static final int OSU_FAILURE_TIMED_OUT_REDIRECT_LISTENER = 13; // 0xd
+ field public static final int OSU_FAILURE_UNEXPECTED_COMMAND_TYPE = 9; // 0x9
+ field public static final int OSU_FAILURE_UNEXPECTED_SOAP_MESSAGE_STATUS = 15; // 0xf
+ field public static final int OSU_FAILURE_UNEXPECTED_SOAP_MESSAGE_TYPE = 10; // 0xa
+ field public static final int OSU_STATUS_AP_CONNECTED = 2; // 0x2
+ field public static final int OSU_STATUS_AP_CONNECTING = 1; // 0x1
+ field public static final int OSU_STATUS_INIT_SOAP_EXCHANGE = 6; // 0x6
+ field public static final int OSU_STATUS_REDIRECT_RESPONSE_RECEIVED = 8; // 0x8
+ field public static final int OSU_STATUS_RETRIEVING_TRUST_ROOT_CERTS = 11; // 0xb
+ field public static final int OSU_STATUS_SECOND_SOAP_EXCHANGE = 9; // 0x9
+ field public static final int OSU_STATUS_SERVER_CONNECTED = 5; // 0x5
+ field public static final int OSU_STATUS_SERVER_CONNECTING = 3; // 0x3
+ field public static final int OSU_STATUS_SERVER_VALIDATED = 4; // 0x4
+ field public static final int OSU_STATUS_THIRD_SOAP_EXCHANGE = 10; // 0xa
+ field public static final int OSU_STATUS_WAITING_FOR_REDIRECT_RESPONSE = 7; // 0x7
+ }
+
+}
+
+package android.net.wifi.p2p {
+
+ public final class WifiP2pGroupList implements android.os.Parcelable {
+ method public int describeContents();
+ method @NonNull public java.util.List<android.net.wifi.p2p.WifiP2pGroup> getGroupList();
+ method public void writeToParcel(@NonNull android.os.Parcel, int);
+ field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.p2p.WifiP2pGroupList> CREATOR;
+ }
+
+ public class WifiP2pManager {
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_STACK, android.Manifest.permission.OVERRIDE_WIFI_CONFIG}) public void deletePersistentGroup(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, int, @Nullable android.net.wifi.p2p.WifiP2pManager.ActionListener);
+ method @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public void factoryReset(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, @Nullable android.net.wifi.p2p.WifiP2pManager.ActionListener);
+ method @RequiresPermission(allOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_STACK, android.Manifest.permission.READ_WIFI_CREDENTIAL, android.Manifest.permission.NEARBY_WIFI_DEVICES, android.Manifest.permission.ACCESS_FINE_LOCATION}, conditional=true) public void requestPersistentGroupInfo(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, @Nullable android.net.wifi.p2p.WifiP2pManager.PersistentGroupInfoListener);
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_STACK, android.Manifest.permission.OVERRIDE_WIFI_CONFIG}) public void setDeviceName(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, @NonNull String, @Nullable android.net.wifi.p2p.WifiP2pManager.ActionListener);
+ method @RequiresPermission(android.Manifest.permission.CONFIGURE_WIFI_DISPLAY) public void setMiracastMode(int);
+ method @RequiresPermission(android.Manifest.permission.CONFIGURE_WIFI_DISPLAY) public void setWfdInfo(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, @NonNull android.net.wifi.p2p.WifiP2pWfdInfo, @Nullable android.net.wifi.p2p.WifiP2pManager.ActionListener);
+ method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_STACK, android.Manifest.permission.OVERRIDE_WIFI_CONFIG}) public void setWifiP2pChannels(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, int, int, @Nullable android.net.wifi.p2p.WifiP2pManager.ActionListener);
+ field public static final String ACTION_WIFI_P2P_PERSISTENT_GROUPS_CHANGED = "android.net.wifi.p2p.action.WIFI_P2P_PERSISTENT_GROUPS_CHANGED";
+ field public static final int MIRACAST_DISABLED = 0; // 0x0
+ field public static final int MIRACAST_SINK = 2; // 0x2
+ field public static final int MIRACAST_SOURCE = 1; // 0x1
+ }
+
+ public static interface WifiP2pManager.PersistentGroupInfoListener {
+ method public void onPersistentGroupInfoAvailable(@NonNull android.net.wifi.p2p.WifiP2pGroupList);
+ }
+
+}
+
+package android.net.wifi.rtt {
+
+ public final class RangingRequest implements android.os.Parcelable {
+ method @NonNull public java.util.List<android.net.wifi.rtt.ResponderConfig> getRttResponders();
+ }
+
+ public final class RangingResult implements android.os.Parcelable {
+ method @NonNull public byte[] getLci();
+ method @NonNull public byte[] getLcr();
+ }
+
+ public final class ResponderConfig implements android.os.Parcelable {
+ ctor public ResponderConfig(@NonNull android.net.MacAddress, int, boolean, int, int, int, int, int);
+ ctor public ResponderConfig(@NonNull android.net.wifi.aware.PeerHandle, int, boolean, int, int, int, int, int);
+ method @NonNull public static android.net.wifi.rtt.ResponderConfig fromWifiAwarePeerHandleWithDefaults(@NonNull android.net.wifi.aware.PeerHandle);
+ method @NonNull public static android.net.wifi.rtt.ResponderConfig fromWifiAwarePeerMacAddressWithDefaults(@NonNull android.net.MacAddress);
+ field public static final int CHANNEL_WIDTH_160MHZ = 3; // 0x3
+ field public static final int CHANNEL_WIDTH_20MHZ = 0; // 0x0
+ field public static final int CHANNEL_WIDTH_320MHZ = 5; // 0x5
+ field public static final int CHANNEL_WIDTH_40MHZ = 1; // 0x1
+ field public static final int CHANNEL_WIDTH_80MHZ = 2; // 0x2
+ field public static final int CHANNEL_WIDTH_80MHZ_PLUS_MHZ = 4; // 0x4
+ field public static final int PREAMBLE_EHT = 4; // 0x4
+ field public static final int PREAMBLE_HE = 3; // 0x3
+ field public static final int PREAMBLE_HT = 1; // 0x1
+ field public static final int PREAMBLE_LEGACY = 0; // 0x0
+ field public static final int PREAMBLE_VHT = 2; // 0x2
+ field public static final int RESPONDER_AP = 0; // 0x0
+ field public static final int RESPONDER_AWARE = 4; // 0x4
+ field public static final int RESPONDER_P2P_CLIENT = 3; // 0x3
+ field public static final int RESPONDER_P2P_GO = 2; // 0x2
+ field public static final int RESPONDER_STA = 1; // 0x1
+ field public final int centerFreq0;
+ field public final int centerFreq1;
+ field public final int channelWidth;
+ field public final int frequency;
+ field @Nullable public final android.net.MacAddress macAddress;
+ field @Nullable public final android.net.wifi.aware.PeerHandle peerHandle;
+ field public final int preamble;
+ field public final int responderType;
+ field public final boolean supports80211mc;
+ }
+
+ public final class ResponderLocation implements android.os.Parcelable {
+ method public boolean getExtraInfoOnAssociationIndication();
+ }
+
+ public class WifiRttManager {
+ method @RequiresPermission(allOf={android.Manifest.permission.LOCATION_HARDWARE}) public void cancelRanging(@Nullable android.os.WorkSource);
+ method @RequiresPermission(allOf={android.Manifest.permission.LOCATION_HARDWARE, android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.CHANGE_WIFI_STATE, android.Manifest.permission.ACCESS_WIFI_STATE, android.Manifest.permission.NEARBY_WIFI_DEVICES}, conditional=true) public void startRanging(@Nullable android.os.WorkSource, @NonNull android.net.wifi.rtt.RangingRequest, @NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.rtt.RangingResultCallback);
+ }
+
+}
+