public void Run() { int responseCode = 0; do { Command command = CommandReader.Read(); IAction action = ActionInitializer.GetAction(command); if (action == null) { CLIDisplay.DisplayText("Action is not recognized"); continue; } if (action.TryDo(out responseCode)) { } else { } }while (responseCode >= 0); }
override public bool TryDo(out int responseCode) { string currentDir = Directory.GetCurrentDirectory(); CLIDisplay.DisplayText(currentDir); responseCode = 0; return(true); }
override public bool TryDo(out int responseCode) { List <string> itemNames = GetDirectoryItemNames(Directory.GetCurrentDirectory()); if (itemNames != null) { CLIDisplay.DisplayListWithQuotations(itemNames, " "); } else { CLIDisplay.DisplayText("Directory doesn't exist"); } responseCode = 0; return(true); }
override public bool TryDo(out int responseCode) { responseCode = 0; string arg; if (Args != null && Args.Count > 0) { arg = Args.Peek(); } else { responseCode = 1; return(false); } if (arg == "..") { Directory.SetCurrentDirectory(Directory.GetParent(Directory.GetCurrentDirectory()).FullName); } else if (Directory.Exists(arg)) { ChangeDirTo(arg); } else { string dir = ConcatDirectories(Directory.GetCurrentDirectory(), arg); if (Directory.Exists(dir)) { ChangeDirTo(dir); } else { CLIDisplay.DisplayText("There is no such directory"); return(false); } } return(true); }