Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e1c9ad94 authored by Patrick Rohr's avatar Patrick Rohr Committed by Gerrit Code Review
Browse files

Merge "Allowing for null net caps in updateConfiguration"

parents 1004623b 8be52bc1
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -7089,7 +7089,7 @@ package android.net {
  public final class EthernetNetworkUpdateRequest implements android.os.Parcelable {
    method public int describeContents();
    method @NonNull public android.net.IpConfiguration getIpConfiguration();
    method @NonNull public android.net.NetworkCapabilities getNetworkCapabilities();
    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;
  }
@@ -7099,7 +7099,7 @@ package android.net {
    ctor public EthernetNetworkUpdateRequest.Builder(@NonNull android.net.EthernetNetworkUpdateRequest);
    method @NonNull public android.net.EthernetNetworkUpdateRequest build();
    method @NonNull public android.net.EthernetNetworkUpdateRequest.Builder setIpConfiguration(@NonNull android.net.IpConfiguration);
    method @NonNull public android.net.EthernetNetworkUpdateRequest.Builder setNetworkCapabilities(@NonNull android.net.NetworkCapabilities);
    method @NonNull public android.net.EthernetNetworkUpdateRequest.Builder setNetworkCapabilities(@Nullable android.net.NetworkCapabilities);
  }
  public final class MatchAllNetworkSpecifier extends android.net.NetworkSpecifier implements android.os.Parcelable {
+32 −17
Original line number Diff line number Diff line
@@ -24,36 +24,52 @@ import android.os.Parcelable;

import java.util.Objects;

/** @hide */
/**
 * Represents a request to update an existing Ethernet interface.
 *
 * @see EthernetManager#updateConfiguration
 *
 * @hide
 */
@SystemApi
public final class EthernetNetworkUpdateRequest implements Parcelable {
    @NonNull
    private final IpConfiguration mIpConfig;
    @NonNull
    @Nullable
    private final NetworkCapabilities mNetworkCapabilities;

    /**
     * @return the new {@link IpConfiguration}.
     */
    @NonNull
    public IpConfiguration getIpConfiguration() {
        return new IpConfiguration(mIpConfig);
    }

    @NonNull
    /**
     * Setting the {@link NetworkCapabilities} is optional in {@link EthernetNetworkUpdateRequest}.
     * When set to null, the existing NetworkCapabilities are not updated.
     *
     * @return the new {@link NetworkCapabilities} or null.
     */
    @Nullable
    public NetworkCapabilities getNetworkCapabilities() {
        return new NetworkCapabilities(mNetworkCapabilities);
        return mNetworkCapabilities == null ? null : new NetworkCapabilities(mNetworkCapabilities);
    }

    private EthernetNetworkUpdateRequest(@NonNull final IpConfiguration ipConfig,
            @NonNull final NetworkCapabilities networkCapabilities) {
            @Nullable final NetworkCapabilities networkCapabilities) {
        Objects.requireNonNull(ipConfig);
        Objects.requireNonNull(networkCapabilities);
        mIpConfig = new IpConfiguration(ipConfig);
        mNetworkCapabilities = new NetworkCapabilities(networkCapabilities);
        mIpConfig = ipConfig;
        mNetworkCapabilities = networkCapabilities;
    }

    private EthernetNetworkUpdateRequest(@NonNull final Parcel source) {
        Objects.requireNonNull(source);
        mIpConfig = IpConfiguration.CREATOR.createFromParcel(source);
        mNetworkCapabilities = NetworkCapabilities.CREATOR.createFromParcel(source);
        mIpConfig = source.readParcelable(IpConfiguration.class.getClassLoader(),
                IpConfiguration.class);
        mNetworkCapabilities = source.readParcelable(NetworkCapabilities.class.getClassLoader(),
                NetworkCapabilities.class);
    }

    /**
@@ -75,7 +91,8 @@ public final class EthernetNetworkUpdateRequest implements Parcelable {
        public Builder(@NonNull final EthernetNetworkUpdateRequest request) {
            Objects.requireNonNull(request);
            mBuilderIpConfig = new IpConfiguration(request.mIpConfig);
            mBuilderNetworkCapabilities = new NetworkCapabilities(request.mNetworkCapabilities);
            mBuilderNetworkCapabilities = null == request.mNetworkCapabilities
                    ? null : new NetworkCapabilities(request.mNetworkCapabilities);
        }

        /**
@@ -85,7 +102,6 @@ public final class EthernetNetworkUpdateRequest implements Parcelable {
         */
        @NonNull
        public Builder setIpConfiguration(@NonNull final IpConfiguration ipConfig) {
            Objects.requireNonNull(ipConfig);
            mBuilderIpConfig = new IpConfiguration(ipConfig);
            return this;
        }
@@ -96,9 +112,8 @@ public final class EthernetNetworkUpdateRequest implements Parcelable {
         * @return The builder to facilitate chaining.
         */
        @NonNull
        public Builder setNetworkCapabilities(@NonNull final NetworkCapabilities nc) {
            Objects.requireNonNull(nc);
            mBuilderNetworkCapabilities = new NetworkCapabilities(nc);
        public Builder setNetworkCapabilities(@Nullable final NetworkCapabilities nc) {
            mBuilderNetworkCapabilities = nc == null ? null : new NetworkCapabilities(nc);
            return this;
        }

@@ -135,8 +150,8 @@ public final class EthernetNetworkUpdateRequest implements Parcelable {

    @Override
    public void writeToParcel(@NonNull Parcel dest, int flags) {
        mIpConfig.writeToParcel(dest, flags);
        mNetworkCapabilities.writeToParcel(dest, flags);
        dest.writeParcelable(mIpConfig, flags);
        dest.writeParcelable(mNetworkCapabilities, flags);
    }

    @Override