1// Signature format: 2.0 2package android.net.vcn { 3 4 public final class VcnCellUnderlyingNetworkTemplate extends android.net.vcn.VcnUnderlyingNetworkTemplate { 5 method public int getCbs(); 6 method public int getDun(); 7 method public int getIms(); 8 method public int getInternet(); 9 method public int getMms(); 10 method @NonNull public java.util.Set<java.lang.String> getOperatorPlmnIds(); 11 method public int getOpportunistic(); 12 method public int getRcs(); 13 method public int getRoaming(); 14 method @NonNull public java.util.Set<java.lang.Integer> getSimSpecificCarrierIds(); 15 } 16 17 public static final class VcnCellUnderlyingNetworkTemplate.Builder { 18 ctor public VcnCellUnderlyingNetworkTemplate.Builder(); 19 method @NonNull public android.net.vcn.VcnCellUnderlyingNetworkTemplate build(); 20 method @NonNull public android.net.vcn.VcnCellUnderlyingNetworkTemplate.Builder setCbs(int); 21 method @NonNull public android.net.vcn.VcnCellUnderlyingNetworkTemplate.Builder setDun(int); 22 method @NonNull public android.net.vcn.VcnCellUnderlyingNetworkTemplate.Builder setIms(int); 23 method @NonNull public android.net.vcn.VcnCellUnderlyingNetworkTemplate.Builder setInternet(int); 24 method @NonNull public android.net.vcn.VcnCellUnderlyingNetworkTemplate.Builder setMetered(int); 25 method @NonNull public android.net.vcn.VcnCellUnderlyingNetworkTemplate.Builder setMinDownstreamBandwidthKbps(int, int); 26 method @NonNull public android.net.vcn.VcnCellUnderlyingNetworkTemplate.Builder setMinUpstreamBandwidthKbps(int, int); 27 method @NonNull public android.net.vcn.VcnCellUnderlyingNetworkTemplate.Builder setMms(int); 28 method @NonNull public android.net.vcn.VcnCellUnderlyingNetworkTemplate.Builder setOperatorPlmnIds(@NonNull java.util.Set<java.lang.String>); 29 method @NonNull public android.net.vcn.VcnCellUnderlyingNetworkTemplate.Builder setOpportunistic(int); 30 method @NonNull public android.net.vcn.VcnCellUnderlyingNetworkTemplate.Builder setRcs(int); 31 method @NonNull public android.net.vcn.VcnCellUnderlyingNetworkTemplate.Builder setRoaming(int); 32 method @NonNull public android.net.vcn.VcnCellUnderlyingNetworkTemplate.Builder setSimSpecificCarrierIds(@NonNull java.util.Set<java.lang.Integer>); 33 } 34 35 public final class VcnConfig implements android.os.Parcelable { 36 method public int describeContents(); 37 method @NonNull public java.util.Set<android.net.vcn.VcnGatewayConnectionConfig> getGatewayConnectionConfigs(); 38 method @NonNull public java.util.Set<java.lang.Integer> getRestrictedUnderlyingNetworkTransports(); 39 method public void writeToParcel(@NonNull android.os.Parcel, int); 40 field @NonNull public static final android.os.Parcelable.Creator<android.net.vcn.VcnConfig> CREATOR; 41 } 42 43 public static final class VcnConfig.Builder { 44 ctor public VcnConfig.Builder(@NonNull android.content.Context); 45 method @NonNull public android.net.vcn.VcnConfig.Builder addGatewayConnectionConfig(@NonNull android.net.vcn.VcnGatewayConnectionConfig); 46 method @NonNull public android.net.vcn.VcnConfig build(); 47 method @NonNull public android.net.vcn.VcnConfig.Builder setRestrictedUnderlyingNetworkTransports(@NonNull java.util.Set<java.lang.Integer>); 48 } 49 50 public final class VcnGatewayConnectionConfig { 51 method @NonNull public int[] getExposedCapabilities(); 52 method @NonNull public String getGatewayConnectionName(); 53 method @IntRange(from=0x500) public int getMaxMtu(); 54 method public int getMinUdpPort4500NatTimeoutSeconds(); 55 method @NonNull public long[] getRetryIntervalsMillis(); 56 method @NonNull public java.util.List<android.net.vcn.VcnUnderlyingNetworkTemplate> getVcnUnderlyingNetworkPriorities(); 57 method public boolean hasGatewayOption(int); 58 method @FlaggedApi("android.net.vcn.safe_mode_config") public boolean isSafeModeEnabled(); 59 field @FlaggedApi("android.net.vcn.mainline_vcn_module_api") public static final int MIN_UDP_PORT_4500_NAT_TIMEOUT_UNSET = -1; // 0xffffffff 60 field public static final int VCN_GATEWAY_OPTION_ENABLE_DATA_STALL_RECOVERY_WITH_MOBILITY = 0; // 0x0 61 } 62 63 public static final class VcnGatewayConnectionConfig.Builder { 64 ctor public VcnGatewayConnectionConfig.Builder(@NonNull String, @NonNull android.net.ipsec.ike.IkeTunnelConnectionParams); 65 method @NonNull public android.net.vcn.VcnGatewayConnectionConfig.Builder addExposedCapability(int); 66 method @NonNull public android.net.vcn.VcnGatewayConnectionConfig.Builder addGatewayOption(int); 67 method @NonNull public android.net.vcn.VcnGatewayConnectionConfig build(); 68 method @NonNull public android.net.vcn.VcnGatewayConnectionConfig.Builder removeExposedCapability(int); 69 method @NonNull public android.net.vcn.VcnGatewayConnectionConfig.Builder removeGatewayOption(int); 70 method @NonNull public android.net.vcn.VcnGatewayConnectionConfig.Builder setMaxMtu(@IntRange(from=0x500) int); 71 method @NonNull public android.net.vcn.VcnGatewayConnectionConfig.Builder setMinUdpPort4500NatTimeoutSeconds(@IntRange(from=0x78) int); 72 method @NonNull public android.net.vcn.VcnGatewayConnectionConfig.Builder setRetryIntervalsMillis(@NonNull long[]); 73 method @FlaggedApi("android.net.vcn.safe_mode_config") @NonNull public android.net.vcn.VcnGatewayConnectionConfig.Builder setSafeModeEnabled(boolean); 74 method @NonNull public android.net.vcn.VcnGatewayConnectionConfig.Builder setVcnUnderlyingNetworkPriorities(@NonNull java.util.List<android.net.vcn.VcnUnderlyingNetworkTemplate>); 75 } 76 77 public class VcnManager { 78 method @RequiresPermission("carrier privileges") public void clearVcnConfig(@NonNull android.os.ParcelUuid) throws java.io.IOException; 79 method @NonNull public java.util.List<android.os.ParcelUuid> getConfiguredSubscriptionGroups(); 80 method public void registerVcnStatusCallback(@NonNull android.os.ParcelUuid, @NonNull java.util.concurrent.Executor, @NonNull android.net.vcn.VcnManager.VcnStatusCallback); 81 method @RequiresPermission("carrier privileges") public void setVcnConfig(@NonNull android.os.ParcelUuid, @NonNull android.net.vcn.VcnConfig) throws java.io.IOException; 82 method public void unregisterVcnStatusCallback(@NonNull android.net.vcn.VcnManager.VcnStatusCallback); 83 field public static final int VCN_ERROR_CODE_CONFIG_ERROR = 1; // 0x1 84 field public static final int VCN_ERROR_CODE_INTERNAL_ERROR = 0; // 0x0 85 field public static final int VCN_ERROR_CODE_NETWORK_ERROR = 2; // 0x2 86 field public static final int VCN_STATUS_CODE_ACTIVE = 2; // 0x2 87 field public static final int VCN_STATUS_CODE_INACTIVE = 1; // 0x1 88 field public static final int VCN_STATUS_CODE_NOT_CONFIGURED = 0; // 0x0 89 field public static final int VCN_STATUS_CODE_SAFE_MODE = 3; // 0x3 90 } 91 92 public abstract static class VcnManager.VcnStatusCallback { 93 ctor public VcnManager.VcnStatusCallback(); 94 method public abstract void onGatewayConnectionError(@NonNull String, int, @Nullable Throwable); 95 method public abstract void onStatusChanged(int); 96 } 97 98 public abstract class VcnUnderlyingNetworkTemplate { 99 method public int getMetered(); 100 method public int getMinEntryDownstreamBandwidthKbps(); 101 method public int getMinEntryUpstreamBandwidthKbps(); 102 method public int getMinExitDownstreamBandwidthKbps(); 103 method public int getMinExitUpstreamBandwidthKbps(); 104 field public static final int MATCH_ANY = 0; // 0x0 105 field public static final int MATCH_FORBIDDEN = 2; // 0x2 106 field public static final int MATCH_REQUIRED = 1; // 0x1 107 } 108 109 public final class VcnWifiUnderlyingNetworkTemplate extends android.net.vcn.VcnUnderlyingNetworkTemplate { 110 method @NonNull public java.util.Set<java.lang.String> getSsids(); 111 } 112 113 public static final class VcnWifiUnderlyingNetworkTemplate.Builder { 114 ctor public VcnWifiUnderlyingNetworkTemplate.Builder(); 115 method @NonNull public android.net.vcn.VcnWifiUnderlyingNetworkTemplate build(); 116 method @NonNull public android.net.vcn.VcnWifiUnderlyingNetworkTemplate.Builder setMetered(int); 117 method @NonNull public android.net.vcn.VcnWifiUnderlyingNetworkTemplate.Builder setMinDownstreamBandwidthKbps(int, int); 118 method @NonNull public android.net.vcn.VcnWifiUnderlyingNetworkTemplate.Builder setMinUpstreamBandwidthKbps(int, int); 119 method @NonNull public android.net.vcn.VcnWifiUnderlyingNetworkTemplate.Builder setSsids(@NonNull java.util.Set<java.lang.String>); 120 } 121 122} 123 124