public static bool GetValue(InputItem item, IConsoleInInterface consoleIn, IConsoleAdapter consoleOut) { var redirected = consoleIn.InputIsRedirected; var displayPrompt = ConstructPromptText.FromItem(item); do { consoleOut.Wrap(displayPrompt); object value; if (ReadValue.UsingReadLine(item, consoleIn, consoleOut, out value)) { item.Value = value; return true; } } while (!redirected); return false; }
internal static bool UsingReadLine(InputItem item, IConsoleInInterface consoleIn, IConsoleAdapter consoleOut, out object value) { var input = consoleIn.ReadLine(); return ConvertInput(item, consoleOut, out value, input) && ApplyValidations(item, value, consoleOut); }