Пример #1
0
        public LowercaseResponse ProcessRequest(LowercaseRequest request)
        {
            LowercaseResponse response = new LowercaseResponse();
            HelperFunctions   helper   = new HelperFunctions();

            String changeString = request.stringToModify;

            if (request.firstCharOnly)
            {
                int count = 0;
                //Find the total amount of white spaces
                for (int i = 0; i < changeString.Length; i++)
                {
                    if (changeString[i] == ' ')
                    {
                        count++;
                    }
                    else
                    {
                        break;
                    }
                }

                changeString = changeString.TrimStart();
                Console.WriteLine(changeString);

                if (changeString.Length >= 1)
                {
                    char changeStringChar = changeString[0];
                    changeStringChar = Char.ToLower(changeStringChar);
                    changeString     = changeString.Remove(0, 1);
                    changeString     = changeString.Insert(0, changeStringChar.ToString());
                }

                for (int x = 0; x < count; x++)
                {
                    //reinsert white spaces
                    changeString = changeString.Insert(0, " ");
                    //changeString = " " + changeString;
                }
            }
            else
            {
                changeString = changeString.ToLower();
            }

            if (request.trimPrecedingWhiteSpace)
            {
                changeString = changeString.TrimStart();
            }

            if (request.trimTrailingWhiteSpace)
            {
                changeString = changeString.TrimEnd();
            }

            response.modifiedString = changeString;
            response.originalString = request.stringToModify;
            return(response);
        }
Пример #2
0
 public void ValidateRequest(LowercaseRequest request)
 {
     if (request.firstCharOnly && request.stringToModify.StartsWith(' ') && !request.trimPrecedingWhiteSpace)
     {
         throw new Exception("Cannot convert the first char to lowercase if it is a space. Set Trim Preceding White Space true, or remove the preceding spaces from the request");
     }
 }
Пример #3
0
        public IActionResult LowercaseControl([FromBody] LowercaseRequest lowercaseRequest)
        {
            LowercaseResponse lowResponse;

            try
            {
                _low.ValidateRequest(lowercaseRequest);
                string[] words = lowercaseRequest.stringToModify.Split(' ');

                Thread thread1 = new Thread(() => ControllerHelperFunctions.databaseWordTransaction(words, _DB));
                thread1.Start();

                lowResponse = _low.ProcessRequest(lowercaseRequest);
            }
            catch (Exception e)
            {
                return(StatusCode(500, e.Message));
            }

            return(StatusCode(200, lowResponse));
        }
Пример #4
0
 public void Setup()
 {
     request  = new LowercaseRequest();
     cap      = new Lowercase();
     response = new LowercaseResponse();
 }