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);
        }
Esempio n. 2
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);
        }