예제 #1
0
        public UserInput(string fullCommand_)
        {
            fullCommand = fullCommand_;
            command     = ParseCommand(fullCommand_);
            string parameterString = SeperateParameters(fullCommand);

            stringParameters   = ParseStringParameters(parameterString);
            intParameters      = ParseIntParameters(parameterString);
            invalidCommandType = CommandValidity();
        }
예제 #2
0
        public InvalidCommandType CommandValidity()
        {
            int parameterCount       = stringParameters.Count + intParameters.Count;
            InvalidCommandType valid = InvalidCommandType.validCommand;

            switch (command)
            {
            case "create":
                if (parameterCount >= 1)
                {
                    return(valid);
                }
                else if (parameterCount < 1)
                {
                    return(InvalidCommandType.tooFewParamaters);
                }
                else
                {
                    return(InvalidCommandType.wrongFormat);
                }

            case "read":
                if (parameterCount == 0)
                {
                    return(valid);
                }
                else if (parameterCount > 0)
                {
                    return(InvalidCommandType.tooManyParameters);
                }
                else if (parameterCount < 0)
                {
                    return(InvalidCommandType.tooFewParamaters);
                }
                else
                {
                    return(InvalidCommandType.wrongFormat);
                }

            case "update":
                if (parameterCount == 2)
                {
                    return(valid);
                }
                else if (parameterCount > 2)
                {
                    return(InvalidCommandType.tooManyParameters);
                }
                else if (parameterCount < 2)
                {
                    return(InvalidCommandType.tooFewParamaters);
                }
                else
                {
                    return(InvalidCommandType.wrongFormat);
                }

            case "delete":
                if (parameterCount >= 1)
                {
                    return(valid);
                }
                else if (parameterCount < 1)
                {
                    return(InvalidCommandType.tooFewParamaters);
                }
                else
                {
                    return(InvalidCommandType.wrongFormat);
                }

            case "quit":
                if (parameterCount == 0)
                {
                    return(valid);
                }
                else if (parameterCount > 0)
                {
                    return(InvalidCommandType.tooManyParameters);
                }
                else
                {
                    return(InvalidCommandType.wrongFormat);
                }

            default:
                return(InvalidCommandType.invalidCommand);
            }
        }