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

Commit f09a1662 authored by Pavel Grafov's avatar Pavel Grafov
Browse files

Use List instead of array in network logging API.

Bug: 37625453
Test: runtest --path frameworks/base/services/tests/servicestests/src/com/android/server/devicepolicy/NetworkEventTest.java
Test: ts-tradefed run cts -m CtsDevicePolicyManagerTestCases -t com.android.cts.devicepolicy.DeviceOwnerTest#testNetworkLoggingWithSingleUser
Change-Id: Icba7e3178202e0e650689d98c4010a9b40c6a53c
parent 0c215009
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -6532,7 +6532,7 @@ package android.app.admin {
  public final class DnsEvent extends android.app.admin.NetworkEvent implements android.os.Parcelable {
    method public java.lang.String getHostname();
    method public java.net.InetAddress[] getInetAddresses();
    method public java.util.List<java.net.InetAddress> getInetAddresses();
    method public int getTotalResolvedAddressCount();
    method public void writeToParcel(android.os.Parcel, int);
    field public static final android.os.Parcelable.Creator<android.app.admin.DnsEvent> CREATOR;
+1 −1
Original line number Diff line number Diff line
@@ -6780,7 +6780,7 @@ package android.app.admin {
  public final class DnsEvent extends android.app.admin.NetworkEvent implements android.os.Parcelable {
    method public java.lang.String getHostname();
    method public java.net.InetAddress[] getInetAddresses();
    method public java.util.List<java.net.InetAddress> getInetAddresses();
    method public int getTotalResolvedAddressCount();
    method public void writeToParcel(android.os.Parcel, int);
    field public static final android.os.Parcelable.Creator<android.app.admin.DnsEvent> CREATOR;
+1 −1
Original line number Diff line number Diff line
@@ -6562,7 +6562,7 @@ package android.app.admin {
  public final class DnsEvent extends android.app.admin.NetworkEvent implements android.os.Parcelable {
    method public java.lang.String getHostname();
    method public java.net.InetAddress[] getInetAddresses();
    method public java.util.List<java.net.InetAddress> getInetAddresses();
    method public int getTotalResolvedAddressCount();
    method public void writeToParcel(android.os.Parcel, int);
    field public static final android.os.Parcelable.Creator<android.app.admin.DnsEvent> CREATOR;
+11 −7
Original line number Diff line number Diff line
@@ -21,6 +21,9 @@ import android.os.Parcelable;

import java.net.InetAddress;
import java.net.UnknownHostException;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

/**
 * A class that represents a DNS lookup event.
@@ -62,16 +65,17 @@ public final class DnsEvent extends NetworkEvent implements Parcelable {
    }

    /** Returns (possibly a subset of) the IP addresses returned. */
    public InetAddress[] getInetAddresses() {
        final int length = ipAddresses != null ? ipAddresses.length : 0;
        final InetAddress[] inetAddresses = new InetAddress[length];
        for (int i = 0; i < length; i++) {
    public List<InetAddress> getInetAddresses() {
        if (ipAddresses == null || ipAddresses.length == 0) {
            return Collections.emptyList();
        }
        final List<InetAddress> inetAddresses = new ArrayList<>(ipAddresses.length);
        for (final String ipAddress : ipAddresses) {
            try {
                // ipAddress is already an address, not a host name, no DNS resolution will happen.
                inetAddresses[i] = InetAddress.getByName(ipAddresses[i]);
                inetAddresses.add(InetAddress.getByName(ipAddress));
            } catch (UnknownHostException e) {
                // Should never happen as we aren't passing a host name.
                inetAddresses[i] = InetAddress.getLoopbackAddress();
            }
        }
        return inetAddresses;
@@ -79,7 +83,7 @@ public final class DnsEvent extends NetworkEvent implements Parcelable {

    /**
     * Returns the number of IP addresses returned from the DNS lookup event. May be different from
     * the length of the array returned by {@link #getInetAddresses()} if there were too many
     * the length of the list returned by {@link #getInetAddresses()} if there were too many
     * addresses to log.
     */
    public int getTotalResolvedAddressCount() {
+4 −3
Original line number Diff line number Diff line
@@ -53,9 +53,10 @@ public class NetworkEventTest extends DpmTestBase {
        DnsEvent unparceledEvent = p.readParcelable(NetworkEventTest.class.getClassLoader());
        p.recycle();
        assertEquals(event.getHostname(), unparceledEvent.getHostname());
        assertEquals(event.getInetAddresses()[0], unparceledEvent.getInetAddresses()[0]);
        assertEquals(event.getInetAddresses()[1], unparceledEvent.getInetAddresses()[1]);
        assertEquals(event.getTotalResolvedAddressCount(), unparceledEvent.getTotalResolvedAddressCount());
        assertEquals(event.getInetAddresses().get(0), unparceledEvent.getInetAddresses().get(0));
        assertEquals(event.getInetAddresses().get(1), unparceledEvent.getInetAddresses().get(1));
        assertEquals(event.getTotalResolvedAddressCount(),
                unparceledEvent.getTotalResolvedAddressCount());
        assertEquals(event.getPackageName(), unparceledEvent.getPackageName());
        assertEquals(event.getTimestamp(), unparceledEvent.getTimestamp());
    }