This CL exposes EthernetManager APIs that settings and other
system components can use to modify and monitor Ethernet state.
The new APIs are similar to the existing @hide methods but
pass on more information and meet API guidelines:
1. Add an InterfaceStateListener interface, and
addInterfaceStateListener and removeInterfaceStateListener
methods that meet API guidelines (e.g., take Executor, take
SAM parameter last, etc.) This new listener passes interface
state (absent, up, down), role (client or server) and IP
configuration.
2. Implement the legacy Listener type as a subinterface of the
new interface. Hopefully existing callers should be able to
use it unchanged.
3. Expose setIncludeTestInterfaces as module-lib api instead of
TestApi, since modules cannot expose TestApi methods.
Bug: 210586283
Test: m
Test: atest EthernetServiceTests
Test: atest EthernetTetheringTest
Change-Id: I88240a546ab51d128ed83775499f2bcabab74db0
Merged-In: I88240a546ab51d128ed83775499f2bcabab74db0
Renaming InternalNetwork* files and classes related to ethernet network
management to EthernetNetwork* as ethernet is the only trasnport these
particular files are used with.
Bug: 210485380
Test: atest EthernetServiceTests
Change-Id: Ieb3915c032ef5fcd6b36eb09878119de7668bb4b
Private methods added to EthernetManager for network management to be
made public when ready.
Bug: 210485380
Test: make, flash and boot
Change-Id: I7f484d373e05225c98bf0e6111afdc12be31764f
ethernet-service is going to be moved into Connectivity mainline module.
Move all ethernet related files in f/b/ to f/b/packages/ConnectivityT so
that it's easier to migrate these files to Connectivity module finally
after clearing the hidden API usages. Below files to be moved:
Ethernet framework related files:
- EthernetManager.java
- EthernetNetworkSpecifier.java
- IEthernetManager.aidl
- IEthernetServiceListener.aidl
- ITetheredInterfaceCallback.aidl
Ethernet service related files:
- IpConfigStore.java(EthernetConfigStore has dependency on the class)
For the ethernet-service related files, keep it as-is temproraliy and
fix the hiden API dependencies in f/opt/net/ethernet/. After this work
is done, then migrating the whole of ethernet folder to Connectivity
module completely.
This CL also fixes some minor errors of code style format to pass the
code style check.
Bug: 210586283
Test: build pass
atest FrameworksNetTests
atest EthernetServiceTests
Change-Id: Ib359d29d5221105f648bc4194c6d6dbe4cc6e3e5