X-Git-Url: http://dolda2000.com/gitweb/?a=blobdiff_plain;f=src%2Fkaka%2Fcakelight%2FCommands.java;h=a5b612cf99a071c598d6bdb0bc7dfb938edb653b;hb=e4738966c601bac22b7f7cbad375bd172913bde9;hp=f527c123c1877df1b8eb391593261fd9eed84266;hpb=cc124c322996f68454baf4405b2959c84e771296;p=kaka%2Fcakelight.git diff --git a/src/kaka/cakelight/Commands.java b/src/kaka/cakelight/Commands.java index f527c12..a5b612c 100644 --- a/src/kaka/cakelight/Commands.java +++ b/src/kaka/cakelight/Commands.java @@ -2,6 +2,7 @@ package kaka.cakelight; import kaka.cakelight.mode.AmbientMode; import kaka.cakelight.mode.SingleColorMode; +import kaka.cakelight.mode.SunriseMode; import kaka.cakelight.mode.TwoColorNoiseMode; import kaka.cakelight.mode.VideoMode; @@ -24,10 +25,19 @@ class Commands { }; } + static Console.Command help() { + return command(new String[] {"?", "h", "help"}, (console, args) -> { + for (Console.Command c : console.getCommands()) { + System.out.println(String.join("|", c.getNames())); + } + return true; + }); + } + static Console.Command quit() { return command(new String[] {"q", "quit"}, (console, args) -> { - console.getCakelight().turnOff(); - console.out("stopping cakelight"); + console.quit(); + console.out("terminating"); return true; }); } @@ -132,4 +142,17 @@ class Commands { } }); } + + static Console.Command sunriseMode() { + return command(new String[] {"sunrise"}, (console, args) -> { + if (args.length == 1) { + int durationSeconds = Integer.parseInt(args[0]); + console.getCakelight().setMode(new SunriseMode(durationSeconds)); + console.out("setting sunrise mode with duration " + durationSeconds); + return true; + } else { + return false; + } + }); + } }