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

Commit ab936b5f authored by Patrick Rohr's avatar Patrick Rohr Committed by Automerger Merge Worker
Browse files

Merge "Add Nullable IpConfiguration to ethernet update request" am: bc1479af...

Merge "Add Nullable IpConfiguration to ethernet update request" am: bc1479af am: 3c088fc9 am: b0045381 am: 9b582baf

Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2025283

Change-Id: I08200e8092dba48e7caa251945415b2448908840
parents 69c2493c 9b582baf
Loading
Loading
Loading
Loading
+19 −9
Original line number Diff line number Diff line
@@ -33,17 +33,20 @@ import java.util.Objects;
 */
@SystemApi
public final class EthernetNetworkUpdateRequest implements Parcelable {
    @NonNull
    @Nullable
    private final IpConfiguration mIpConfig;
    @Nullable
    private final NetworkCapabilities mNetworkCapabilities;

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

    /**
@@ -57,9 +60,8 @@ public final class EthernetNetworkUpdateRequest implements Parcelable {
        return mNetworkCapabilities == null ? null : new NetworkCapabilities(mNetworkCapabilities);
    }

    private EthernetNetworkUpdateRequest(@NonNull final IpConfiguration ipConfig,
    private EthernetNetworkUpdateRequest(@Nullable final IpConfiguration ipConfig,
            @Nullable final NetworkCapabilities networkCapabilities) {
        Objects.requireNonNull(ipConfig);
        mIpConfig = ipConfig;
        mNetworkCapabilities = networkCapabilities;
    }
@@ -90,7 +92,8 @@ public final class EthernetNetworkUpdateRequest implements Parcelable {
         */
        public Builder(@NonNull final EthernetNetworkUpdateRequest request) {
            Objects.requireNonNull(request);
            mBuilderIpConfig = new IpConfiguration(request.mIpConfig);
            mBuilderIpConfig = null == request.mIpConfig
                    ? null : new IpConfiguration(request.mIpConfig);
            mBuilderNetworkCapabilities = null == request.mNetworkCapabilities
                    ? null : new NetworkCapabilities(request.mNetworkCapabilities);
        }
@@ -101,8 +104,8 @@ public final class EthernetNetworkUpdateRequest implements Parcelable {
         * @return The builder to facilitate chaining.
         */
        @NonNull
        public Builder setIpConfiguration(@NonNull final IpConfiguration ipConfig) {
            mBuilderIpConfig = new IpConfiguration(ipConfig);
        public Builder setIpConfiguration(@Nullable final IpConfiguration ipConfig) {
            mBuilderIpConfig = ipConfig == null ? null : new IpConfiguration(ipConfig);
            return this;
        }

@@ -119,9 +122,16 @@ public final class EthernetNetworkUpdateRequest implements Parcelable {

        /**
         * Build {@link EthernetNetworkUpdateRequest} return the current update request.
         *
         * @throws IllegalStateException when both mBuilderNetworkCapabilities and mBuilderIpConfig
         *                               are null.
         */
        @NonNull
        public EthernetNetworkUpdateRequest build() {
            if (mBuilderIpConfig == null && mBuilderNetworkCapabilities == null) {
                throw new IllegalStateException(
                        "Cannot construct an empty EthernetNetworkUpdateRequest");
            }
            return new EthernetNetworkUpdateRequest(mBuilderIpConfig, mBuilderNetworkCapabilities);
        }
    }