Merge "Remove constructors and defer creating the Handler to onBind." into udc-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
a09612850a
@@ -10152,7 +10152,6 @@ package android.net.wifi.sharedconnectivity.service {
|
|||||||
|
|
||||||
public abstract class SharedConnectivityService extends android.app.Service {
|
public abstract class SharedConnectivityService extends android.app.Service {
|
||||||
ctor public SharedConnectivityService();
|
ctor public SharedConnectivityService();
|
||||||
ctor public SharedConnectivityService(@NonNull android.os.Handler);
|
|
||||||
method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent);
|
method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent);
|
||||||
method public abstract void onConnectKnownNetwork(@NonNull android.net.wifi.sharedconnectivity.app.KnownNetwork);
|
method public abstract void onConnectKnownNetwork(@NonNull android.net.wifi.sharedconnectivity.app.KnownNetwork);
|
||||||
method public abstract void onConnectTetherNetwork(@NonNull android.net.wifi.sharedconnectivity.app.TetherNetwork);
|
method public abstract void onConnectTetherNetwork(@NonNull android.net.wifi.sharedconnectivity.app.TetherNetwork);
|
||||||
|
|||||||
@@ -59,7 +59,7 @@ public abstract class SharedConnectivityService extends Service {
|
|||||||
private static final String TAG = SharedConnectivityService.class.getSimpleName();
|
private static final String TAG = SharedConnectivityService.class.getSimpleName();
|
||||||
private static final boolean DEBUG = true;
|
private static final boolean DEBUG = true;
|
||||||
|
|
||||||
private final Handler mHandler;
|
private Handler mHandler;
|
||||||
private final List<ISharedConnectivityCallback> mCallbacks = new ArrayList<>();
|
private final List<ISharedConnectivityCallback> mCallbacks = new ArrayList<>();
|
||||||
// Used to find DeathRecipient when unregistering a callback to call unlinkToDeath.
|
// Used to find DeathRecipient when unregistering a callback to call unlinkToDeath.
|
||||||
private final Map<ISharedConnectivityCallback, DeathRecipient> mDeathRecipientMap =
|
private final Map<ISharedConnectivityCallback, DeathRecipient> mDeathRecipientMap =
|
||||||
@@ -71,14 +71,6 @@ public abstract class SharedConnectivityService extends Service {
|
|||||||
private TetherNetworkConnectionStatus mTetherNetworkConnectionStatus;
|
private TetherNetworkConnectionStatus mTetherNetworkConnectionStatus;
|
||||||
private KnownNetworkConnectionStatus mKnownNetworkConnectionStatus;
|
private KnownNetworkConnectionStatus mKnownNetworkConnectionStatus;
|
||||||
|
|
||||||
public SharedConnectivityService() {
|
|
||||||
mHandler = new Handler(getMainLooper());
|
|
||||||
}
|
|
||||||
|
|
||||||
public SharedConnectivityService(@NonNull Handler handler) {
|
|
||||||
mHandler = handler;
|
|
||||||
}
|
|
||||||
|
|
||||||
private final class DeathRecipient implements IBinder.DeathRecipient {
|
private final class DeathRecipient implements IBinder.DeathRecipient {
|
||||||
ISharedConnectivityCallback mCallback;
|
ISharedConnectivityCallback mCallback;
|
||||||
|
|
||||||
@@ -97,6 +89,7 @@ public abstract class SharedConnectivityService extends Service {
|
|||||||
@Nullable
|
@Nullable
|
||||||
public final IBinder onBind(@NonNull Intent intent) {
|
public final IBinder onBind(@NonNull Intent intent) {
|
||||||
if (DEBUG) Log.i(TAG, "onBind intent=" + intent);
|
if (DEBUG) Log.i(TAG, "onBind intent=" + intent);
|
||||||
|
mHandler = new Handler(getMainLooper());
|
||||||
return new ISharedConnectivityService.Stub() {
|
return new ISharedConnectivityService.Stub() {
|
||||||
@Override
|
@Override
|
||||||
public void registerCallback(ISharedConnectivityCallback callback) {
|
public void registerCallback(ISharedConnectivityCallback callback) {
|
||||||
|
|||||||
@@ -17,16 +17,21 @@
|
|||||||
package android.net.wifi.sharedconnectivity.service;
|
package android.net.wifi.sharedconnectivity.service;
|
||||||
|
|
||||||
import static org.junit.Assert.assertNotNull;
|
import static org.junit.Assert.assertNotNull;
|
||||||
|
import static org.mockito.Mockito.when;
|
||||||
|
|
||||||
|
import android.content.Context;
|
||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
import android.net.wifi.sharedconnectivity.app.KnownNetwork;
|
import android.net.wifi.sharedconnectivity.app.KnownNetwork;
|
||||||
import android.net.wifi.sharedconnectivity.app.TetherNetwork;
|
import android.net.wifi.sharedconnectivity.app.TetherNetwork;
|
||||||
import android.os.Handler;
|
import android.os.Looper;
|
||||||
import android.os.test.TestLooper;
|
|
||||||
|
|
||||||
|
import androidx.annotation.NonNull;
|
||||||
import androidx.test.filters.SmallTest;
|
import androidx.test.filters.SmallTest;
|
||||||
|
|
||||||
|
import org.junit.Before;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
|
import org.mockito.Mock;
|
||||||
|
import org.mockito.MockitoAnnotations;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Unit tests for {@link android.net.wifi.sharedconnectivity.service.SharedConnectivityService}.
|
* Unit tests for {@link android.net.wifi.sharedconnectivity.service.SharedConnectivityService}.
|
||||||
@@ -34,6 +39,33 @@ import org.junit.Test;
|
|||||||
@SmallTest
|
@SmallTest
|
||||||
public class SharedConnectivityServiceTest {
|
public class SharedConnectivityServiceTest {
|
||||||
|
|
||||||
|
@Mock
|
||||||
|
Context mContext;
|
||||||
|
|
||||||
|
static class FakeSharedConnectivityService extends SharedConnectivityService {
|
||||||
|
public void attachBaseContext(Context context) {
|
||||||
|
super.attachBaseContext(context);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onConnectTetherNetwork(@NonNull TetherNetwork network) {}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onDisconnectTetherNetwork(@NonNull TetherNetwork network) {}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onConnectKnownNetwork(@NonNull KnownNetwork network) {}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onForgetKnownNetwork(@NonNull KnownNetwork network) {}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Before
|
||||||
|
public void setUp() {
|
||||||
|
MockitoAnnotations.initMocks(this);
|
||||||
|
when(mContext.getMainLooper()).thenReturn(Looper.getMainLooper());
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Verifies service returns
|
* Verifies service returns
|
||||||
*/
|
*/
|
||||||
@@ -51,18 +83,8 @@ public class SharedConnectivityServiceTest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private SharedConnectivityService createService() {
|
private SharedConnectivityService createService() {
|
||||||
return new SharedConnectivityService(new Handler(new TestLooper().getLooper())) {
|
FakeSharedConnectivityService service = new FakeSharedConnectivityService();
|
||||||
@Override
|
service.attachBaseContext(mContext);
|
||||||
public void onConnectTetherNetwork(TetherNetwork network) {}
|
return service;
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onDisconnectTetherNetwork(TetherNetwork network) {}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onConnectKnownNetwork(KnownNetwork network) {}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onForgetKnownNetwork(KnownNetwork network) {}
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user