code: @Override
     public boolean promptRequiredMissingValues(ShellImpl shell) throws InterruptedException
     {
        Map<String, InputComponent<?, ?>> inputs = getController().getInputs();
        if (hasMissingRequiredInputValues(inputs.values()))
        {
           UIOutput output = shell.getOutput();
           if (!getContext().isInteractive())
           {
              output.error(output.out(), NON_INTERACTIVE_MODE_MESSAGE);
              return false;
           }
           output.info(output.out(), INTERACTIVE_MODE_MESSAGE);
           promptRequiredMissingValues(shell, inputs.values());
        }
        return true;
     }
docs: Prompts for required missing values