Move NetworkAgent#register to a new method.
Calling IPC in a constructor is unusual and confusing, and can be considered bad form. There are multiple reasons for this : • Users can't obtain an instance of the class without calling the constructor, but they can't always afford an IPC where they need this, forcing them to know about the implementation detail and sometimes design around it. • On a related but generalized note, constructors should usually be fast for the same range of reasons. • Having a separate method to register the agent simply gives more flexibility to the app. • It's also a lot easier to test. But also we can't fix it without an update to the API, so here it is. Another reason for doing this is consistency with the NetworkProvider API. Bug: 138306002 Bug: 139268426 Test: atest FrameworksNetTests FrameworksWifiTests FrameworksTelephonyTests Change-Id: I1ee5c7b1353d581e487c8a8a159009bebd781643 Merged-In: I1ee5c7b1353d581e487c8a8a159009bebd781643 (clean cherry-pick from internal branch)
Loading
Please register or sign in to comment