blob: 758ac8ddf84f7171f599564d16865a166cc723b8 [file] [log] [blame]
// Copyright 2019 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
package org.chromium.net;
import org.chromium.base.annotations.CalledByNative;
import org.chromium.base.annotations.JNINamespace;
import java.net.InetAddress;
import java.util.List;
/**
* Class to access DNS server configuration.
*/
@JNINamespace("net::android")
public class DnsStatus {
private final List<InetAddress> mDnsServers;
private final boolean mPrivateDnsActive;
private final String mPrivateDnsServerName;
public DnsStatus(
List<InetAddress> dnsServers, boolean privateDnsActive, String privateDnsServerName) {
mDnsServers = dnsServers;
mPrivateDnsActive = privateDnsActive;
mPrivateDnsServerName = (privateDnsServerName != null) ? privateDnsServerName : "";
}
@CalledByNative
public byte[][] getDnsServers() {
byte[][] dnsServers = new byte[mDnsServers.size()][];
for (int i = 0; i < mDnsServers.size(); i++) {
dnsServers[i] = mDnsServers.get(i).getAddress();
}
return dnsServers;
}
@CalledByNative
public boolean getPrivateDnsActive() {
return mPrivateDnsActive;
}
@CalledByNative
public String getPrivateDnsServerName() {
return mPrivateDnsServerName;
}
}