From 1edd4554e5181827f5a256198b91246e258a350a Mon Sep 17 00:00:00 2001 From: Xiao Ma Date: Thu, 17 Mar 2022 05:56:09 +0000 Subject: [PATCH] Add getInterfaceList module-lib API in EthernetManager. Bug: 171872016 Test: m Merged-In: Ib0e6c8f67c6ded7d17bb9e0ff49e7ff495c8819d Change-Id: I94fd147d0f8cf09cb7445fd2b5bc8e4528e8390e --- .../src/android/net/EthernetManager.java | 17 +++++++++++++++++ .../src/android/net/IEthernetManager.aidl | 3 +++ 2 files changed, 20 insertions(+) diff --git a/framework-t/src/android/net/EthernetManager.java b/framework-t/src/android/net/EthernetManager.java index 217d670743..fc9f1c6366 100644 --- a/framework-t/src/android/net/EthernetManager.java +++ b/framework-t/src/android/net/EthernetManager.java @@ -39,6 +39,7 @@ import com.android.modules.utils.BackgroundThread; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.util.ArrayList; +import java.util.List; import java.util.Objects; import java.util.concurrent.Executor; import java.util.function.IntConsumer; @@ -712,4 +713,20 @@ public class EthernetManager { maybeRemoveServiceListener(); } } + + /** + * Returns an array of existing Ethernet interface names regardless whether the interface + * is available or not currently. + * @hide + */ + @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) + @SystemApi(client = MODULE_LIBRARIES) + @NonNull + public List getInterfaceList() { + try { + return mService.getInterfaceList(); + } catch (RemoteException e) { + throw e.rethrowAsRuntimeException(); + } + } } diff --git a/framework-t/src/android/net/IEthernetManager.aidl b/framework-t/src/android/net/IEthernetManager.aidl index 44e27e26f5..42e4c1ac55 100644 --- a/framework-t/src/android/net/IEthernetManager.aidl +++ b/framework-t/src/android/net/IEthernetManager.aidl @@ -23,6 +23,8 @@ import android.net.EthernetNetworkUpdateRequest; import android.net.INetworkInterfaceOutcomeReceiver; import android.net.ITetheredInterfaceCallback; +import java.util.List; + /** * Interface that answers queries about, and allows changing * ethernet configuration. @@ -44,4 +46,5 @@ interface IEthernetManager void connectNetwork(String iface, in INetworkInterfaceOutcomeReceiver listener); void disconnectNetwork(String iface, in INetworkInterfaceOutcomeReceiver listener); void setEthernetEnabled(boolean enabled); + List getInterfaceList(); }