summaryrefslogtreecommitdiff
path: root/wifi/java/src
diff options
context:
space:
mode:
author Isaac Katzenelson <isaackatz@google.com> 2023-02-13 03:41:39 +0000
committer Isaac Katzenelson <isaackatz@google.com> 2023-02-14 05:57:44 +0000
commitad5e0ec675958b2dc88a70c46e4502c5d12dc70e (patch)
treee5aaddfba83ee872669aeffcc01588ae7256ef00 /wifi/java/src
parente09f92c2d5d8b6d45c2428408ed1fc433dc8a87b (diff)
Added network objects to ConnectionStatus classes.
Fixed parceling issues across all classes. Bug: 268748251 API-Coverage-Bug: 265968015 Test: atest TetherNetworkConnectionStatusTest KnownNetworkConnectionStatusTest Change-Id: I1a5f33d638137d6131261b30f24d71ef5720690d
Diffstat (limited to 'wifi/java/src')
-rw-r--r--wifi/java/src/android/net/wifi/sharedconnectivity/app/DeviceInfo.java14
-rw-r--r--wifi/java/src/android/net/wifi/sharedconnectivity/app/KnownNetwork.java16
-rw-r--r--wifi/java/src/android/net/wifi/sharedconnectivity/app/KnownNetworkConnectionStatus.java51
-rw-r--r--wifi/java/src/android/net/wifi/sharedconnectivity/app/SharedConnectivitySettingsState.java14
-rw-r--r--wifi/java/src/android/net/wifi/sharedconnectivity/app/TetherNetwork.java19
-rw-r--r--wifi/java/src/android/net/wifi/sharedconnectivity/app/TetherNetworkConnectionStatus.java68
6 files changed, 149 insertions, 33 deletions
diff --git a/wifi/java/src/android/net/wifi/sharedconnectivity/app/DeviceInfo.java b/wifi/java/src/android/net/wifi/sharedconnectivity/app/DeviceInfo.java
index 9aad9aafbd7e..52abf33bc761 100644
--- a/wifi/java/src/android/net/wifi/sharedconnectivity/app/DeviceInfo.java
+++ b/wifi/java/src/android/net/wifi/sharedconnectivity/app/DeviceInfo.java
@@ -270,12 +270,22 @@ public final class DeviceInfo implements Parcelable {
return 0;
}
+ /**
+ * Creates a {@link DeviceInfo} object from a parcel.
+ *
+ * @hide
+ */
+ @NonNull
+ public static DeviceInfo readFromParcel(@NonNull Parcel in) {
+ return new DeviceInfo(in.readInt(), in.readString(), in.readString(), in.readInt(),
+ in.readInt());
+ }
+
@NonNull
public static final Creator<DeviceInfo> CREATOR = new Creator<DeviceInfo>() {
@Override
public DeviceInfo createFromParcel(Parcel in) {
- return new DeviceInfo(in.readInt(), in.readString(), in.readString(), in.readInt(),
- in.readInt());
+ return readFromParcel(in);
}
@Override
diff --git a/wifi/java/src/android/net/wifi/sharedconnectivity/app/KnownNetwork.java b/wifi/java/src/android/net/wifi/sharedconnectivity/app/KnownNetwork.java
index b219e86ec407..161c83ce2fab 100644
--- a/wifi/java/src/android/net/wifi/sharedconnectivity/app/KnownNetwork.java
+++ b/wifi/java/src/android/net/wifi/sharedconnectivity/app/KnownNetwork.java
@@ -228,15 +228,25 @@ public final class KnownNetwork implements Parcelable {
dest.writeInt(mNetworkSource);
dest.writeString(mSsid);
dest.writeIntArray(mSecurityTypes);
- dest.writeTypedObject(mDeviceInfo, 0);
+ mDeviceInfo.writeToParcel(dest, flags);
+ }
+
+ /**
+ * Creates a {@link KnownNetwork} object from a parcel.
+ *
+ * @hide
+ */
+ @NonNull
+ public static KnownNetwork readFromParcel(@NonNull Parcel in) {
+ return new KnownNetwork(in.readInt(), in.readString(), in.createIntArray(),
+ DeviceInfo.readFromParcel(in));
}
@NonNull
public static final Creator<KnownNetwork> CREATOR = new Creator<>() {
@Override
public KnownNetwork createFromParcel(Parcel in) {
- return new KnownNetwork(in.readInt(), in.readString(), in.createIntArray(),
- in.readTypedObject(DeviceInfo.CREATOR));
+ return readFromParcel(in);
}
@Override
diff --git a/wifi/java/src/android/net/wifi/sharedconnectivity/app/KnownNetworkConnectionStatus.java b/wifi/java/src/android/net/wifi/sharedconnectivity/app/KnownNetworkConnectionStatus.java
index 2cefb8e9f5ae..b2f04ff49195 100644
--- a/wifi/java/src/android/net/wifi/sharedconnectivity/app/KnownNetworkConnectionStatus.java
+++ b/wifi/java/src/android/net/wifi/sharedconnectivity/app/KnownNetworkConnectionStatus.java
@@ -63,6 +63,7 @@ public final class KnownNetworkConnectionStatus implements Parcelable {
public @interface ConnectionStatus {}
@ConnectionStatus private final int mStatus;
+ private final KnownNetwork mKnownNetwork;
private final Bundle mExtras;
/**
@@ -70,6 +71,7 @@ public final class KnownNetworkConnectionStatus implements Parcelable {
*/
public static final class Builder {
@ConnectionStatus private int mStatus;
+ private KnownNetwork mKnownNetwork;
private Bundle mExtras;
public Builder() {}
@@ -86,6 +88,17 @@ public final class KnownNetworkConnectionStatus implements Parcelable {
}
/**
+ * Sets the {@link KnownNetwork} object of the connection.
+ *
+ * @return Returns the Builder object.
+ */
+ @NonNull
+ public Builder setKnownNetwork(@NonNull KnownNetwork knownNetwork) {
+ mKnownNetwork = knownNetwork;
+ return this;
+ }
+
+ /**
* Sets the extras bundle
*
* @return Returns the Builder object.
@@ -103,12 +116,14 @@ public final class KnownNetworkConnectionStatus implements Parcelable {
*/
@NonNull
public KnownNetworkConnectionStatus build() {
- return new KnownNetworkConnectionStatus(mStatus, mExtras);
+ return new KnownNetworkConnectionStatus(mStatus, mKnownNetwork, mExtras);
}
}
- private KnownNetworkConnectionStatus(@ConnectionStatus int status, Bundle extras) {
+ private KnownNetworkConnectionStatus(@ConnectionStatus int status, KnownNetwork knownNetwork,
+ Bundle extras) {
mStatus = status;
+ mKnownNetwork = knownNetwork;
mExtras = extras;
}
@@ -123,6 +138,16 @@ public final class KnownNetworkConnectionStatus implements Parcelable {
}
/**
+ * Gets the {@link KnownNetwork} object of the connection.
+ *
+ * @return Returns a KnownNetwork object.
+ */
+ @NonNull
+ public KnownNetwork getKnownNetwork() {
+ return mKnownNetwork;
+ }
+
+ /**
* Gets the extras Bundle.
*
* @return Returns a Bundle object.
@@ -136,12 +161,13 @@ public final class KnownNetworkConnectionStatus implements Parcelable {
public boolean equals(Object obj) {
if (!(obj instanceof KnownNetworkConnectionStatus)) return false;
KnownNetworkConnectionStatus other = (KnownNetworkConnectionStatus) obj;
- return mStatus == other.getStatus();
+ return mStatus == other.getStatus()
+ && Objects.equals(mKnownNetwork, other.getKnownNetwork());
}
@Override
public int hashCode() {
- return Objects.hash(mStatus);
+ return Objects.hash(mStatus, mKnownNetwork);
}
@Override
@@ -152,15 +178,27 @@ public final class KnownNetworkConnectionStatus implements Parcelable {
@Override
public void writeToParcel(@NonNull Parcel dest, int flags) {
dest.writeInt(mStatus);
+ mKnownNetwork.writeToParcel(dest, flags);
dest.writeBundle(mExtras);
}
+ /**
+ * Creates a {@link KnownNetworkConnectionStatus} object from a parcel.
+ *
+ * @hide
+ */
+ @NonNull
+ public static KnownNetworkConnectionStatus readFromParcel(@NonNull Parcel in) {
+ return new KnownNetworkConnectionStatus(in.readInt(),
+ KnownNetwork.readFromParcel(in),
+ in.readBundle());
+ }
+
@NonNull
public static final Creator<KnownNetworkConnectionStatus> CREATOR = new Creator<>() {
@Override
public KnownNetworkConnectionStatus createFromParcel(Parcel in) {
- return new KnownNetworkConnectionStatus(in.readInt(),
- in.readBundle(getClass().getClassLoader()));
+ return readFromParcel(in);
}
@Override
@@ -173,6 +211,7 @@ public final class KnownNetworkConnectionStatus implements Parcelable {
public String toString() {
return new StringBuilder("KnownNetworkConnectionStatus[")
.append("status=").append(mStatus)
+ .append("known network=").append(mKnownNetwork.toString())
.append("extras=").append(mExtras.toString())
.append("]").toString();
}
diff --git a/wifi/java/src/android/net/wifi/sharedconnectivity/app/SharedConnectivitySettingsState.java b/wifi/java/src/android/net/wifi/sharedconnectivity/app/SharedConnectivitySettingsState.java
index 87f5efd5e0c8..4809befb8d20 100644
--- a/wifi/java/src/android/net/wifi/sharedconnectivity/app/SharedConnectivitySettingsState.java
+++ b/wifi/java/src/android/net/wifi/sharedconnectivity/app/SharedConnectivitySettingsState.java
@@ -128,12 +128,22 @@ public final class SharedConnectivitySettingsState implements Parcelable {
dest.writeBundle(mExtras);
}
+ /**
+ * Creates a {@link SharedConnectivitySettingsState} object from a parcel.
+ *
+ * @hide
+ */
+ @NonNull
+ public static SharedConnectivitySettingsState readFromParcel(@NonNull Parcel in) {
+ return new SharedConnectivitySettingsState(in.readBoolean(),
+ in.readBundle());
+ }
+
@NonNull
public static final Creator<SharedConnectivitySettingsState> CREATOR = new Creator<>() {
@Override
public SharedConnectivitySettingsState createFromParcel(Parcel in) {
- return new SharedConnectivitySettingsState(in.readBoolean(),
- in.readBundle(getClass().getClassLoader()));
+ return readFromParcel(in);
}
@Override
diff --git a/wifi/java/src/android/net/wifi/sharedconnectivity/app/TetherNetwork.java b/wifi/java/src/android/net/wifi/sharedconnectivity/app/TetherNetwork.java
index 3eff72416b12..af4fd4a2cc76 100644
--- a/wifi/java/src/android/net/wifi/sharedconnectivity/app/TetherNetwork.java
+++ b/wifi/java/src/android/net/wifi/sharedconnectivity/app/TetherNetwork.java
@@ -328,7 +328,7 @@ public final class TetherNetwork implements Parcelable {
@Override
public void writeToParcel(@NonNull Parcel dest, int flags) {
dest.writeLong(mDeviceId);
- dest.writeTypedObject(mDeviceInfo, 0);
+ mDeviceInfo.writeToParcel(dest, flags);
dest.writeInt(mNetworkType);
dest.writeString(mNetworkName);
dest.writeString(mHotspotSsid);
@@ -336,14 +336,23 @@ public final class TetherNetwork implements Parcelable {
dest.writeIntArray(mHotspotSecurityTypes);
}
+ /**
+ * Creates a {@link TetherNetwork} object from a parcel.
+ *
+ * @hide
+ */
+ @NonNull
+ public static TetherNetwork readFromParcel(@NonNull Parcel in) {
+ return new TetherNetwork(in.readLong(), DeviceInfo.readFromParcel(in),
+ in.readInt(), in.readString(), in.readString(), in.readString(),
+ in.createIntArray());
+ }
+
@NonNull
public static final Creator<TetherNetwork> CREATOR = new Creator<>() {
@Override
public TetherNetwork createFromParcel(Parcel in) {
- return new TetherNetwork(in.readLong(), in.readTypedObject(
- android.net.wifi.sharedconnectivity.app.DeviceInfo.CREATOR),
- in.readInt(), in.readString(), in.readString(), in.readString(),
- in.createIntArray());
+ return readFromParcel(in);
}
@Override
diff --git a/wifi/java/src/android/net/wifi/sharedconnectivity/app/TetherNetworkConnectionStatus.java b/wifi/java/src/android/net/wifi/sharedconnectivity/app/TetherNetworkConnectionStatus.java
index 86202bb6674d..3cf44ed3ed32 100644
--- a/wifi/java/src/android/net/wifi/sharedconnectivity/app/TetherNetworkConnectionStatus.java
+++ b/wifi/java/src/android/net/wifi/sharedconnectivity/app/TetherNetworkConnectionStatus.java
@@ -105,6 +105,7 @@ public final class TetherNetworkConnectionStatus implements Parcelable {
public @interface ConnectionStatus {}
@ConnectionStatus private final int mStatus;
+ private final TetherNetwork mTetherNetwork;
private final Bundle mExtras;
/**
@@ -112,6 +113,7 @@ public final class TetherNetworkConnectionStatus implements Parcelable {
*/
public static final class Builder {
@ConnectionStatus private int mStatus;
+ private TetherNetwork mTetherNetwork;
private Bundle mExtras;
public Builder() {}
@@ -128,6 +130,17 @@ public final class TetherNetworkConnectionStatus implements Parcelable {
}
/**
+ * Sets the {@link TetherNetwork} object of the connection.
+ *
+ * @return Returns the Builder object.
+ */
+ @NonNull
+ public Builder setTetherNetwork(@NonNull TetherNetwork tetherNetwork) {
+ mTetherNetwork = tetherNetwork;
+ return this;
+ }
+
+ /**
* Sets the extras bundle
*
* @return Returns the Builder object.
@@ -145,12 +158,14 @@ public final class TetherNetworkConnectionStatus implements Parcelable {
*/
@NonNull
public TetherNetworkConnectionStatus build() {
- return new TetherNetworkConnectionStatus(mStatus, mExtras);
+ return new TetherNetworkConnectionStatus(mStatus, mTetherNetwork, mExtras);
}
}
- private TetherNetworkConnectionStatus(@ConnectionStatus int status, Bundle extras) {
+ private TetherNetworkConnectionStatus(@ConnectionStatus int status, TetherNetwork tetherNetwork,
+ Bundle extras) {
mStatus = status;
+ mTetherNetwork = tetherNetwork;
mExtras = extras;
}
@@ -165,6 +180,16 @@ public final class TetherNetworkConnectionStatus implements Parcelable {
}
/**
+ * Gets the {@link TetherNetwork} object of the connection.
+ *
+ * @return Returns a TetherNetwork object.
+ */
+ @NonNull
+ public TetherNetwork getTetherNetwork() {
+ return mTetherNetwork;
+ }
+
+ /**
* Gets the extras Bundle.
*
* @return Returns a Bundle object.
@@ -178,12 +203,13 @@ public final class TetherNetworkConnectionStatus implements Parcelable {
public boolean equals(Object obj) {
if (!(obj instanceof TetherNetworkConnectionStatus)) return false;
TetherNetworkConnectionStatus other = (TetherNetworkConnectionStatus) obj;
- return mStatus == other.getStatus();
+ return mStatus == other.getStatus()
+ && Objects.equals(mTetherNetwork, other.getTetherNetwork());
}
@Override
public int hashCode() {
- return Objects.hash(mStatus);
+ return Objects.hash(mStatus, mTetherNetwork);
}
@Override
@@ -194,27 +220,39 @@ public final class TetherNetworkConnectionStatus implements Parcelable {
@Override
public void writeToParcel(@NonNull Parcel dest, int flags) {
dest.writeInt(mStatus);
+ mTetherNetwork.writeToParcel(dest, flags);
dest.writeBundle(mExtras);
}
+ /**
+ * Creates a {@link TetherNetworkConnectionStatus} object from a parcel.
+ *
+ * @hide
+ */
+ @NonNull
+ public static TetherNetworkConnectionStatus readFromParcel(@NonNull Parcel in) {
+ return new TetherNetworkConnectionStatus(in.readInt(),
+ TetherNetwork.readFromParcel(in), in.readBundle());
+ }
+
@NonNull
public static final Creator<TetherNetworkConnectionStatus> CREATOR = new Creator<>() {
- @Override
- public TetherNetworkConnectionStatus createFromParcel(Parcel in) {
- return new TetherNetworkConnectionStatus(in.readInt(),
- in.readBundle(getClass().getClassLoader()));
- }
-
- @Override
- public TetherNetworkConnectionStatus[] newArray(int size) {
- return new TetherNetworkConnectionStatus[size];
- }
- };
+ @Override
+ public TetherNetworkConnectionStatus createFromParcel(Parcel in) {
+ return readFromParcel(in);
+ }
+
+ @Override
+ public TetherNetworkConnectionStatus[] newArray(int size) {
+ return new TetherNetworkConnectionStatus[size];
+ }
+ };
@Override
public String toString() {
return new StringBuilder("TetherNetworkConnectionStatus[")
.append("status=").append(mStatus)
+ .append("tether network=").append(mTetherNetwork.toString())
.append("extras=").append(mExtras.toString())
.append("]").toString();
}