Merge "NsdService: more cleanups"

This commit is contained in:
Hugo Benichi
2017-05-10 00:37:10 +00:00
committed by Gerrit Code Review

View File

@@ -99,11 +99,7 @@ public class NsdService extends INsdManager.Stub {
ContentObserver contentObserver = new ContentObserver(this.getHandler()) { ContentObserver contentObserver = new ContentObserver(this.getHandler()) {
@Override @Override
public void onChange(boolean selfChange) { public void onChange(boolean selfChange) {
if (isNsdEnabled()) { notifyEnabled(isNsdEnabled());
mNsdStateMachine.sendMessage(NsdManager.ENABLE);
} else {
mNsdStateMachine.sendMessage(NsdManager.DISABLE);
}
} }
}; };
@@ -117,11 +113,8 @@ public class NsdService extends INsdManager.Stub {
addState(mDefaultState); addState(mDefaultState);
addState(mDisabledState, mDefaultState); addState(mDisabledState, mDefaultState);
addState(mEnabledState, mDefaultState); addState(mEnabledState, mDefaultState);
if (isNsdEnabled()) { State initialState = isNsdEnabled() ? mEnabledState : mDisabledState;
setInitialState(mEnabledState); setInitialState(initialState);
} else {
setInitialState(mDisabledState);
}
setLogRecSize(25); setLogRecSize(25);
registerForNsdSetting(); registerForNsdSetting();
} }
@@ -570,25 +563,22 @@ public class NsdService extends INsdManager.Stub {
return new Messenger(mNsdStateMachine.getHandler()); return new Messenger(mNsdStateMachine.getHandler());
} }
public void setEnabled(boolean enable) { public void setEnabled(boolean isEnabled) {
mContext.enforceCallingOrSelfPermission(android.Manifest.permission.CONNECTIVITY_INTERNAL, mContext.enforceCallingOrSelfPermission(android.Manifest.permission.CONNECTIVITY_INTERNAL,
"NsdService"); "NsdService");
mNsdSettings.putEnabledStatus(enable); mNsdSettings.putEnabledStatus(isEnabled);
if (enable) { notifyEnabled(isEnabled);
mNsdStateMachine.sendMessage(NsdManager.ENABLE);
} else {
mNsdStateMachine.sendMessage(NsdManager.DISABLE);
}
} }
private void sendNsdStateChangeBroadcast(boolean enabled) { private void notifyEnabled(boolean isEnabled) {
mNsdStateMachine.sendMessage(isEnabled ? NsdManager.ENABLE : NsdManager.DISABLE);
}
private void sendNsdStateChangeBroadcast(boolean isEnabled) {
final Intent intent = new Intent(NsdManager.ACTION_NSD_STATE_CHANGED); final Intent intent = new Intent(NsdManager.ACTION_NSD_STATE_CHANGED);
intent.addFlags(Intent.FLAG_RECEIVER_REGISTERED_ONLY_BEFORE_BOOT); intent.addFlags(Intent.FLAG_RECEIVER_REGISTERED_ONLY_BEFORE_BOOT);
if (enabled) { int nsdState = isEnabled ? NsdManager.NSD_STATE_ENABLED : NsdManager.NSD_STATE_DISABLED;
intent.putExtra(NsdManager.EXTRA_NSD_STATE, NsdManager.NSD_STATE_ENABLED); intent.putExtra(NsdManager.EXTRA_NSD_STATE, nsdState);
} else {
intent.putExtra(NsdManager.EXTRA_NSD_STATE, NsdManager.NSD_STATE_DISABLED);
}
mContext.sendStickyBroadcastAsUser(intent, UserHandle.ALL); mContext.sendStickyBroadcastAsUser(intent, UserHandle.ALL);
} }