diff options
| author | 2019-04-02 20:17:33 -0700 | |
|---|---|---|
| committer | 2019-04-02 20:17:33 -0700 | |
| commit | 1bbafc446f86bf6615fdf423e9d6e8acdb21400f (patch) | |
| tree | ffa3ffa44dbecdfe21fa2bfe02755e522f0bef13 | |
| parent | d092f8a2345724cd82d35d298ad7c0caa0abf754 (diff) | |
| parent | 3db9cfe660260cdb778b2ac34b66f4334ba03cab (diff) | |
Merge "Make CaptivePortalProbeSpec and CaptivePortalProbeResult as a library"
am: 3db9cfe660
Change-Id: I33db2bd452f5b30b382f8e0e913862ad6bcc099e
| -rw-r--r-- | api/system-current.txt | 31 | ||||
| -rw-r--r-- | api/test-current.txt | 31 | ||||
| -rw-r--r-- | packages/CaptivePortalLogin/Android.bp | 1 | ||||
| -rw-r--r-- | packages/NetworkStack/Android.bp | 10 | ||||
| -rw-r--r-- | packages/NetworkStack/common/CaptivePortalProbeResult.java (renamed from core/java/android/net/captiveportal/CaptivePortalProbeResult.java) | 8 | ||||
| -rw-r--r-- | packages/NetworkStack/common/CaptivePortalProbeSpec.java (renamed from core/java/android/net/captiveportal/CaptivePortalProbeSpec.java) | 18 | ||||
| -rw-r--r-- | packages/NetworkStack/tests/src/android/net/captiveportal/CaptivePortalProbeSpecTest.java (renamed from tests/net/java/android/net/captiveportal/CaptivePortalProbeSpecTest.java) | 0 |
7 files changed, 22 insertions, 77 deletions
diff --git a/api/system-current.txt b/api/system-current.txt index 1a783dae65e0..1493f7211c45 100644 --- a/api/system-current.txt +++ b/api/system-current.txt @@ -3328,37 +3328,6 @@ package android.net.apf { } -package android.net.captiveportal { - - public final class CaptivePortalProbeResult { - ctor public CaptivePortalProbeResult(int); - ctor public CaptivePortalProbeResult(int, @Nullable String, @Nullable String); - ctor public CaptivePortalProbeResult(int, @Nullable String, @Nullable String, @Nullable android.net.captiveportal.CaptivePortalProbeSpec); - method public boolean isFailed(); - method public boolean isPartialConnectivity(); - method public boolean isPortal(); - method public boolean isSuccessful(); - field @NonNull public static final android.net.captiveportal.CaptivePortalProbeResult FAILED; - field public static final int FAILED_CODE = 599; // 0x257 - field public static final android.net.captiveportal.CaptivePortalProbeResult PARTIAL; - field public static final int PORTAL_CODE = 302; // 0x12e - field @NonNull public static final android.net.captiveportal.CaptivePortalProbeResult SUCCESS; - field public static final int SUCCESS_CODE = 204; // 0xcc - field @Nullable public final String detectUrl; - field @Nullable public final android.net.captiveportal.CaptivePortalProbeSpec probeSpec; - field @Nullable public final String redirectUrl; - } - - public abstract class CaptivePortalProbeSpec { - method @NonNull public String getEncodedSpec(); - method @NonNull public abstract android.net.captiveportal.CaptivePortalProbeResult getResult(int, @Nullable String); - method @NonNull public java.net.URL getUrl(); - method @NonNull public static java.util.Collection<android.net.captiveportal.CaptivePortalProbeSpec> parseCaptivePortalProbeSpecs(@NonNull String); - method @Nullable public static android.net.captiveportal.CaptivePortalProbeSpec parseSpecOrNull(@Nullable String); - } - -} - package android.net.metrics { public final class ApfProgramEvent implements android.net.metrics.IpConnectivityLog.Event { diff --git a/api/test-current.txt b/api/test-current.txt index 86071584390e..13b3d96ed220 100644 --- a/api/test-current.txt +++ b/api/test-current.txt @@ -747,37 +747,6 @@ package android.net.apf { } -package android.net.captiveportal { - - public final class CaptivePortalProbeResult { - ctor public CaptivePortalProbeResult(int); - ctor public CaptivePortalProbeResult(int, @Nullable String, @Nullable String); - ctor public CaptivePortalProbeResult(int, @Nullable String, @Nullable String, @Nullable android.net.captiveportal.CaptivePortalProbeSpec); - method public boolean isFailed(); - method public boolean isPartialConnectivity(); - method public boolean isPortal(); - method public boolean isSuccessful(); - field @NonNull public static final android.net.captiveportal.CaptivePortalProbeResult FAILED; - field public static final int FAILED_CODE = 599; // 0x257 - field public static final android.net.captiveportal.CaptivePortalProbeResult PARTIAL; - field public static final int PORTAL_CODE = 302; // 0x12e - field @NonNull public static final android.net.captiveportal.CaptivePortalProbeResult SUCCESS; - field public static final int SUCCESS_CODE = 204; // 0xcc - field @Nullable public final String detectUrl; - field @Nullable public final android.net.captiveportal.CaptivePortalProbeSpec probeSpec; - field @Nullable public final String redirectUrl; - } - - public abstract class CaptivePortalProbeSpec { - method @NonNull public String getEncodedSpec(); - method @NonNull public abstract android.net.captiveportal.CaptivePortalProbeResult getResult(int, @Nullable String); - method @NonNull public java.net.URL getUrl(); - method @NonNull public static java.util.Collection<android.net.captiveportal.CaptivePortalProbeSpec> parseCaptivePortalProbeSpecs(@NonNull String); - method @Nullable public static android.net.captiveportal.CaptivePortalProbeSpec parseSpecOrNull(@Nullable String); - } - -} - package android.net.metrics { public final class ApfProgramEvent implements android.net.metrics.IpConnectivityLog.Event { diff --git a/packages/CaptivePortalLogin/Android.bp b/packages/CaptivePortalLogin/Android.bp index f545a61aff4f..732acca6094f 100644 --- a/packages/CaptivePortalLogin/Android.bp +++ b/packages/CaptivePortalLogin/Android.bp @@ -23,6 +23,7 @@ android_app { static_libs: [ "android-support-v4", "metrics-constants-protos", + "captiveportal-lib", ], manifest: "AndroidManifest.xml", } diff --git a/packages/NetworkStack/Android.bp b/packages/NetworkStack/Android.bp index d56f97f55f7e..57a3db586c53 100644 --- a/packages/NetworkStack/Android.bp +++ b/packages/NetworkStack/Android.bp @@ -14,6 +14,15 @@ // limitations under the License. // +java_library { + name: "captiveportal-lib", + srcs: ["common/**/*.java"], + libs: [ + "androidx.annotation_annotation", + ], + sdk_version: "system_current", +} + java_defaults { name: "NetworkStackCommon", sdk_version: "system_current", @@ -35,6 +44,7 @@ android_library { "networkstack-aidl-interfaces-java", "datastallprotosnano", "networkstackprotosnano", + "captiveportal-lib", ], manifest: "AndroidManifestBase.xml", } diff --git a/core/java/android/net/captiveportal/CaptivePortalProbeResult.java b/packages/NetworkStack/common/CaptivePortalProbeResult.java index a1d3de248a96..48cd48b30085 100644 --- a/core/java/android/net/captiveportal/CaptivePortalProbeResult.java +++ b/packages/NetworkStack/common/CaptivePortalProbeResult.java @@ -16,17 +16,13 @@ package android.net.captiveportal; -import android.annotation.NonNull; -import android.annotation.Nullable; -import android.annotation.SystemApi; -import android.annotation.TestApi; +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; /** * Result of calling isCaptivePortal(). * @hide */ -@SystemApi -@TestApi public final class CaptivePortalProbeResult { public static final int SUCCESS_CODE = 204; public static final int FAILED_CODE = 599; diff --git a/core/java/android/net/captiveportal/CaptivePortalProbeSpec.java b/packages/NetworkStack/common/CaptivePortalProbeSpec.java index b354607b8856..bf983a50ab51 100644 --- a/core/java/android/net/captiveportal/CaptivePortalProbeSpec.java +++ b/packages/NetworkStack/common/CaptivePortalProbeSpec.java @@ -19,16 +19,12 @@ package android.net.captiveportal; import static android.net.captiveportal.CaptivePortalProbeResult.PORTAL_CODE; import static android.net.captiveportal.CaptivePortalProbeResult.SUCCESS_CODE; -import static com.android.internal.util.Preconditions.checkNotNull; - -import android.annotation.NonNull; -import android.annotation.Nullable; -import android.annotation.SystemApi; -import android.annotation.TestApi; import android.text.TextUtils; import android.util.Log; -import com.android.internal.annotations.VisibleForTesting; +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.annotation.VisibleForTesting; import java.net.MalformedURLException; import java.net.URL; @@ -40,8 +36,6 @@ import java.util.regex.Pattern; import java.util.regex.PatternSyntaxException; /** @hide */ -@SystemApi -@TestApi public abstract class CaptivePortalProbeSpec { private static final String TAG = CaptivePortalProbeSpec.class.getSimpleName(); private static final String REGEX_SEPARATOR = "@@/@@"; @@ -192,4 +186,10 @@ public abstract class CaptivePortalProbeSpec { // No value is a match ("no location header" passes the location rule for non-redirects) return pattern == null || TextUtils.isEmpty(value) || pattern.matcher(value).matches(); } + + // Throws NullPointerException if the input is null. + private static <T> T checkNotNull(T object) { + if (object == null) throw new NullPointerException(); + return object; + } } diff --git a/tests/net/java/android/net/captiveportal/CaptivePortalProbeSpecTest.java b/packages/NetworkStack/tests/src/android/net/captiveportal/CaptivePortalProbeSpecTest.java index f948086ac79b..f948086ac79b 100644 --- a/tests/net/java/android/net/captiveportal/CaptivePortalProbeSpecTest.java +++ b/packages/NetworkStack/tests/src/android/net/captiveportal/CaptivePortalProbeSpecTest.java |