Merge "Add new shell commands for DeviceStateChanged CTS test" into sc-v2-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
4c80c3bda3
@@ -27,7 +27,9 @@ import android.os.Binder;
|
||||
import android.os.ShellCommand;
|
||||
|
||||
import java.io.PrintWriter;
|
||||
import java.util.Arrays;
|
||||
import java.util.Optional;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* ShellCommands for {@link DeviceStateManagerService}.
|
||||
@@ -56,14 +58,18 @@ public class DeviceStateManagerShellCommand extends ShellCommand {
|
||||
switch (cmd) {
|
||||
case "state":
|
||||
return runState(pw);
|
||||
case "print-state":
|
||||
return runPrintState(pw);
|
||||
case "print-states":
|
||||
return runPrintStates(pw);
|
||||
case "print-states-simple":
|
||||
return runPrintStatesSimple(pw);
|
||||
default:
|
||||
return handleDefaultCommands(cmd);
|
||||
}
|
||||
}
|
||||
|
||||
private void printState(PrintWriter pw) {
|
||||
private void printAllStates(PrintWriter pw) {
|
||||
Optional<DeviceState> committedState = mService.getCommittedState();
|
||||
Optional<DeviceState> baseState = mService.getBaseState();
|
||||
Optional<DeviceState> overrideState = mService.getOverrideState();
|
||||
@@ -79,7 +85,8 @@ public class DeviceStateManagerShellCommand extends ShellCommand {
|
||||
private int runState(PrintWriter pw) {
|
||||
final String nextArg = getNextArg();
|
||||
if (nextArg == null) {
|
||||
printState(pw);
|
||||
printAllStates(pw);
|
||||
return 0;
|
||||
}
|
||||
|
||||
final Context context = mService.getContext();
|
||||
@@ -123,6 +130,16 @@ public class DeviceStateManagerShellCommand extends ShellCommand {
|
||||
return 0;
|
||||
}
|
||||
|
||||
private int runPrintState(PrintWriter pw) {
|
||||
Optional<DeviceState> deviceState = mService.getCommittedState();
|
||||
if (deviceState.isPresent()) {
|
||||
pw.println(deviceState.get().getIdentifier());
|
||||
return 0;
|
||||
}
|
||||
getErrPrintWriter().println("Error: device state not available.");
|
||||
return 1;
|
||||
}
|
||||
|
||||
private int runPrintStates(PrintWriter pw) {
|
||||
DeviceState[] states = mService.getSupportedStates();
|
||||
pw.print("Supported states: [\n");
|
||||
@@ -133,6 +150,14 @@ public class DeviceStateManagerShellCommand extends ShellCommand {
|
||||
return 0;
|
||||
}
|
||||
|
||||
private int runPrintStatesSimple(PrintWriter pw) {
|
||||
pw.print(Arrays.stream(mService.getSupportedStates())
|
||||
.map(DeviceState::getIdentifier)
|
||||
.map(Object::toString)
|
||||
.collect(Collectors.joining(",")));
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onHelp() {
|
||||
PrintWriter pw = getOutPrintWriter();
|
||||
@@ -141,8 +166,12 @@ public class DeviceStateManagerShellCommand extends ShellCommand {
|
||||
pw.println(" Print this help text.");
|
||||
pw.println(" state [reset|OVERRIDE_DEVICE_STATE]");
|
||||
pw.println(" Return or override device state.");
|
||||
pw.println(" print-state");
|
||||
pw.println(" Return the current device state.");
|
||||
pw.println(" print-states");
|
||||
pw.println(" Return list of currently supported device states.");
|
||||
pw.println(" print-states-simple");
|
||||
pw.println(" Return the currently supported device states in comma separated format.");
|
||||
}
|
||||
|
||||
private static String toString(@NonNull Optional<DeviceState> state) {
|
||||
|
||||
Reference in New Issue
Block a user