Extension API: Comments from API review council are addressed
Addressed all comments from API review council by renaming ScoreChangeCallback, the methods in ScoreChangeCallback, and the methods in WifiConnectedNetworkScorer. Bug: 150878285 Bug: 135573686 Bug: 122133502 Test: atest android.net.wifi Signed-off-by: Mingguang Xu <mingguangxu@google.com> Change-Id: I823b52a95c2501c7431295573747f2228d1f50b0
This commit is contained in:
@@ -7453,9 +7453,9 @@ package android.net.wifi {
|
||||
method public void onWifiUsabilityStats(int, boolean, @NonNull android.net.wifi.WifiUsabilityStatsEntry);
|
||||
}
|
||||
|
||||
public static interface WifiManager.ScoreChangeCallback {
|
||||
method public void onScoreChange(int, int);
|
||||
method public void onTriggerUpdateOfWifiUsabilityStats(int);
|
||||
public static interface WifiManager.ScoreUpdateObserver {
|
||||
method public void notifyScoreUpdate(int, int);
|
||||
method public void triggerUpdateOfWifiUsabilityStats(int);
|
||||
}
|
||||
|
||||
public static interface WifiManager.SoftApCallback {
|
||||
@@ -7475,9 +7475,9 @@ package android.net.wifi {
|
||||
}
|
||||
|
||||
public static interface WifiManager.WifiConnectedNetworkScorer {
|
||||
method public void setScoreChangeCallback(@NonNull android.net.wifi.WifiManager.ScoreChangeCallback);
|
||||
method public void start(int);
|
||||
method public void stop(int);
|
||||
method public void onSetScoreUpdateObserver(@NonNull android.net.wifi.WifiManager.ScoreUpdateObserver);
|
||||
method public void onStart(int);
|
||||
method public void onStop(int);
|
||||
}
|
||||
|
||||
public final class WifiMigration {
|
||||
|
||||
@@ -21,9 +21,9 @@ package android.net.wifi;
|
||||
*
|
||||
* @hide
|
||||
*/
|
||||
oneway interface IScoreChangeCallback
|
||||
oneway interface IScoreUpdateObserver
|
||||
{
|
||||
void onScoreChange(int sessionId, int score);
|
||||
void notifyScoreUpdate(int sessionId, int score);
|
||||
|
||||
void onTriggerUpdateOfWifiUsabilityStats(int sessionId);
|
||||
void triggerUpdateOfWifiUsabilityStats(int sessionId);
|
||||
}
|
||||
@@ -16,7 +16,7 @@
|
||||
|
||||
package android.net.wifi;
|
||||
|
||||
import android.net.wifi.IScoreChangeCallback;
|
||||
import android.net.wifi.IScoreUpdateObserver;
|
||||
|
||||
/**
|
||||
* Interface for Wi-Fi connected network scorer.
|
||||
@@ -25,9 +25,9 @@ import android.net.wifi.IScoreChangeCallback;
|
||||
*/
|
||||
oneway interface IWifiConnectedNetworkScorer
|
||||
{
|
||||
void start(int sessionId);
|
||||
void onStart(int sessionId);
|
||||
|
||||
void stop(int sessionId);
|
||||
void onStop(int sessionId);
|
||||
|
||||
void setScoreChangeCallback(IScoreChangeCallback cbImpl);
|
||||
void onSetScoreUpdateObserver(IScoreUpdateObserver observerImpl);
|
||||
}
|
||||
|
||||
@@ -5986,22 +5986,22 @@ public class WifiManager {
|
||||
}
|
||||
|
||||
/**
|
||||
* Callback interface for framework to receive network status changes and trigger of updating
|
||||
* Callback interface for framework to receive network status updates and trigger of updating
|
||||
* {@link WifiUsabilityStatsEntry}.
|
||||
*
|
||||
* @hide
|
||||
*/
|
||||
@SystemApi
|
||||
public interface ScoreChangeCallback {
|
||||
public interface ScoreUpdateObserver {
|
||||
/**
|
||||
* Called by applications to indicate network status.
|
||||
*
|
||||
* @param sessionId The ID to indicate current Wi-Fi network connection obtained from
|
||||
* {@link WifiConnectedNetworkScorer#start(int)}.
|
||||
* {@link WifiConnectedNetworkScorer#onStart(int)}.
|
||||
* @param score The score representing link quality of current Wi-Fi network connection.
|
||||
* Populated by connected network scorer in applications..
|
||||
*/
|
||||
void onScoreChange(int sessionId, int score);
|
||||
void notifyScoreUpdate(int sessionId, int score);
|
||||
|
||||
/**
|
||||
* Called by applications to trigger an update of {@link WifiUsabilityStatsEntry}.
|
||||
@@ -6009,36 +6009,36 @@ public class WifiManager {
|
||||
* {@link addOnWifiUsabilityStatsListener(Executor, OnWifiUsabilityStatsListener)}.
|
||||
*
|
||||
* @param sessionId The ID to indicate current Wi-Fi network connection obtained from
|
||||
* {@link WifiConnectedNetworkScorer#start(int)}.
|
||||
* {@link WifiConnectedNetworkScorer#onStart(int)}.
|
||||
*/
|
||||
void onTriggerUpdateOfWifiUsabilityStats(int sessionId);
|
||||
void triggerUpdateOfWifiUsabilityStats(int sessionId);
|
||||
}
|
||||
|
||||
/**
|
||||
* Callback proxy for {@link ScoreChangeCallback} objects.
|
||||
* Callback proxy for {@link ScoreUpdateObserver} objects.
|
||||
*
|
||||
* @hide
|
||||
*/
|
||||
private class ScoreChangeCallbackProxy implements ScoreChangeCallback {
|
||||
private final IScoreChangeCallback mScoreChangeCallback;
|
||||
private class ScoreUpdateObserverProxy implements ScoreUpdateObserver {
|
||||
private final IScoreUpdateObserver mScoreUpdateObserver;
|
||||
|
||||
private ScoreChangeCallbackProxy(IScoreChangeCallback callback) {
|
||||
mScoreChangeCallback = callback;
|
||||
private ScoreUpdateObserverProxy(IScoreUpdateObserver observer) {
|
||||
mScoreUpdateObserver = observer;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onScoreChange(int sessionId, int score) {
|
||||
public void notifyScoreUpdate(int sessionId, int score) {
|
||||
try {
|
||||
mScoreChangeCallback.onScoreChange(sessionId, score);
|
||||
mScoreUpdateObserver.notifyScoreUpdate(sessionId, score);
|
||||
} catch (RemoteException e) {
|
||||
throw e.rethrowFromSystemServer();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTriggerUpdateOfWifiUsabilityStats(int sessionId) {
|
||||
public void triggerUpdateOfWifiUsabilityStats(int sessionId) {
|
||||
try {
|
||||
mScoreChangeCallback.onTriggerUpdateOfWifiUsabilityStats(sessionId);
|
||||
mScoreUpdateObserver.triggerUpdateOfWifiUsabilityStats(sessionId);
|
||||
} catch (RemoteException e) {
|
||||
throw e.rethrowFromSystemServer();
|
||||
}
|
||||
@@ -6058,21 +6058,21 @@ public class WifiManager {
|
||||
* Called by framework to indicate the start of a network connection.
|
||||
* @param sessionId The ID to indicate current Wi-Fi network connection.
|
||||
*/
|
||||
void start(int sessionId);
|
||||
void onStart(int sessionId);
|
||||
|
||||
/**
|
||||
* Called by framework to indicate the end of a network connection.
|
||||
* @param sessionId The ID to indicate current Wi-Fi network connection obtained from
|
||||
* {@link WifiConnectedNetworkScorer#start(int)}.
|
||||
* {@link WifiConnectedNetworkScorer#onStart(int)}.
|
||||
*/
|
||||
void stop(int sessionId);
|
||||
void onStop(int sessionId);
|
||||
|
||||
/**
|
||||
* Framework sets callback for score change events after application sets its scorer.
|
||||
* @param cbImpl The instance for {@link WifiManager#ScoreChangeCallback}. Should be
|
||||
* @param observerImpl The instance for {@link WifiManager#ScoreUpdateObserver}. Should be
|
||||
* implemented and instantiated by framework.
|
||||
*/
|
||||
void setScoreChangeCallback(@NonNull ScoreChangeCallback cbImpl);
|
||||
void onSetScoreUpdateObserver(@NonNull ScoreUpdateObserver observerImpl);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -6090,32 +6090,32 @@ public class WifiManager {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void start(int sessionId) {
|
||||
public void onStart(int sessionId) {
|
||||
if (mVerboseLoggingEnabled) {
|
||||
Log.v(TAG, "WifiConnectedNetworkScorer: " + "start: sessionId=" + sessionId);
|
||||
Log.v(TAG, "WifiConnectedNetworkScorer: " + "onStart: sessionId=" + sessionId);
|
||||
}
|
||||
Binder.clearCallingIdentity();
|
||||
mExecutor.execute(() -> mScorer.start(sessionId));
|
||||
mExecutor.execute(() -> mScorer.onStart(sessionId));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void stop(int sessionId) {
|
||||
public void onStop(int sessionId) {
|
||||
if (mVerboseLoggingEnabled) {
|
||||
Log.v(TAG, "WifiConnectedNetworkScorer: " + "stop: sessionId=" + sessionId);
|
||||
Log.v(TAG, "WifiConnectedNetworkScorer: " + "onStop: sessionId=" + sessionId);
|
||||
}
|
||||
Binder.clearCallingIdentity();
|
||||
mExecutor.execute(() -> mScorer.stop(sessionId));
|
||||
mExecutor.execute(() -> mScorer.onStop(sessionId));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setScoreChangeCallback(IScoreChangeCallback cbImpl) {
|
||||
public void onSetScoreUpdateObserver(IScoreUpdateObserver observerImpl) {
|
||||
if (mVerboseLoggingEnabled) {
|
||||
Log.v(TAG, "WifiConnectedNetworkScorer: "
|
||||
+ "setScoreChangeCallback: cbImpl=" + cbImpl);
|
||||
+ "onSetScoreUpdateObserver: observerImpl=" + observerImpl);
|
||||
}
|
||||
Binder.clearCallingIdentity();
|
||||
mExecutor.execute(() -> mScorer.setScoreChangeCallback(
|
||||
new ScoreChangeCallbackProxy(cbImpl)));
|
||||
mExecutor.execute(() -> mScorer.onSetScoreUpdateObserver(
|
||||
new ScoreUpdateObserverProxy(observerImpl)));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -2349,23 +2349,24 @@ public class WifiManagerTest {
|
||||
}
|
||||
|
||||
/**
|
||||
* Verify that Wi-Fi connected scorer receives score change callback after registeration.
|
||||
* Verify that Wi-Fi connected scorer receives score update observer after registeration.
|
||||
*/
|
||||
@Test
|
||||
public void verifyScorerReceiveScoreChangeCallbackAfterRegistration() throws Exception {
|
||||
public void verifyScorerReceiveScoreUpdateObserverAfterRegistration() throws Exception {
|
||||
mExecutor = new SynchronousExecutor();
|
||||
mWifiManager.setWifiConnectedNetworkScorer(mExecutor, mWifiConnectedNetworkScorer);
|
||||
ArgumentCaptor<IWifiConnectedNetworkScorer.Stub> scorerCaptor =
|
||||
ArgumentCaptor.forClass(IWifiConnectedNetworkScorer.Stub.class);
|
||||
verify(mWifiService).setWifiConnectedNetworkScorer(any(IBinder.class),
|
||||
scorerCaptor.capture());
|
||||
scorerCaptor.getValue().setScoreChangeCallback(any());
|
||||
scorerCaptor.getValue().onSetScoreUpdateObserver(any());
|
||||
mLooper.dispatchAll();
|
||||
verify(mWifiConnectedNetworkScorer).setScoreChangeCallback(any());
|
||||
verify(mWifiConnectedNetworkScorer).onSetScoreUpdateObserver(any());
|
||||
}
|
||||
|
||||
/**
|
||||
* Verify that Wi-Fi connected scorer receives session ID when start/stop methods are called.
|
||||
* Verify that Wi-Fi connected scorer receives session ID when onStart/onStop methods
|
||||
* are called.
|
||||
*/
|
||||
@Test
|
||||
public void verifyScorerReceiveSessionIdWhenStartStopIsCalled() throws Exception {
|
||||
@@ -2375,11 +2376,11 @@ public class WifiManagerTest {
|
||||
ArgumentCaptor.forClass(IWifiConnectedNetworkScorer.Stub.class);
|
||||
verify(mWifiService).setWifiConnectedNetworkScorer(any(IBinder.class),
|
||||
callbackCaptor.capture());
|
||||
callbackCaptor.getValue().start(0);
|
||||
callbackCaptor.getValue().stop(10);
|
||||
callbackCaptor.getValue().onStart(0);
|
||||
callbackCaptor.getValue().onStop(10);
|
||||
mLooper.dispatchAll();
|
||||
verify(mWifiConnectedNetworkScorer).start(0);
|
||||
verify(mWifiConnectedNetworkScorer).stop(10);
|
||||
verify(mWifiConnectedNetworkScorer).onStart(0);
|
||||
verify(mWifiConnectedNetworkScorer).onStop(10);
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
Reference in New Issue
Block a user