From d92d403e769cd8b87fcdcedd914ceb86b6927547 Mon Sep 17 00:00:00 2001 From: Lorenzo Colitti Date: Fri, 12 Feb 2021 12:40:52 +0900 Subject: [PATCH] Expose VpnTransportInfo as module-lib API. This information originates in non-mainline system server code and needs to be passed to the connectivity mainline code. Bug: 173331190 Test: already covered by CTS tests Change-Id: Ic612b6a51f7ec13e2213c8754312cf716130c876 --- core/api/module-lib-current.txt | 8 ++++++++ .../src}/android/net/VpnTransportInfo.java | 14 ++++++++++++-- 2 files changed, 20 insertions(+), 2 deletions(-) rename {core/java => packages/Connectivity/framework/src}/android/net/VpnTransportInfo.java (88%) diff --git a/core/api/module-lib-current.txt b/core/api/module-lib-current.txt index c7d96effba11a..1fb5de3170dbd 100644 --- a/core/api/module-lib-current.txt +++ b/core/api/module-lib-current.txt @@ -72,6 +72,14 @@ package android.net { field @NonNull public final java.util.List underlyingIfaces; } + public final class VpnTransportInfo implements android.os.Parcelable android.net.TransportInfo { + ctor public VpnTransportInfo(int); + method public int describeContents(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public final int type; + } + } package android.os { diff --git a/core/java/android/net/VpnTransportInfo.java b/packages/Connectivity/framework/src/android/net/VpnTransportInfo.java similarity index 88% rename from core/java/android/net/VpnTransportInfo.java rename to packages/Connectivity/framework/src/android/net/VpnTransportInfo.java index 082fa58f8ac28..0242ba08742cb 100644 --- a/core/java/android/net/VpnTransportInfo.java +++ b/packages/Connectivity/framework/src/android/net/VpnTransportInfo.java @@ -16,8 +16,10 @@ package android.net; +import static android.annotation.SystemApi.Client.MODULE_LIBRARIES; + import android.annotation.NonNull; -import android.annotation.Nullable; +import android.annotation.SystemApi; import android.os.Parcel; import android.os.Parcelable; import android.util.SparseArray; @@ -26,7 +28,15 @@ import com.android.internal.util.MessageUtils; import java.util.Objects; -/** @hide */ +/** + * Container for VPN-specific transport information. + * + * @see android.net.TransportInfo + * @see NetworkCapabilities#getTransportInfo() + * + * @hide + */ +@SystemApi(client = MODULE_LIBRARIES) public final class VpnTransportInfo implements TransportInfo, Parcelable { private static final SparseArray sTypeToString = MessageUtils.findMessageNames(new Class[]{VpnManager.class}, new String[]{"TYPE_VPN_"});