字串輸入
字串輸入元件請求使用者輸入簡單的文字,如果內容包含敏感資訊,則可以選擇性地遮蔽值。以下列表顯示了一個示例。
@ShellComponent
public class ComponentCommands extends AbstractShellComponent {
@ShellMethod(key = "component string", value = "String input", group = "Components")
public String stringInput(boolean mask) {
StringInput component = new StringInput(getTerminal(), "Enter value", "myvalue");
component.setResourceLoader(getResourceLoader());
component.setTemplateExecutor(getTemplateExecutor());
if (mask) {
component.setMaskCharacter('*');
}
StringInputContext context = component.run(StringInputContext.empty());
return "Got value " + context.getResultValue();
}
}
以下截圖顯示了字串輸入元件的典型輸出。
上下文物件是 StringInputContext。下表列出了其上下文變數。
| 鍵 | 描述 |
|---|---|
|
預設值,如果已設定。否則為 null。 |
|
被遮蔽的輸入值 |
|
被遮蔽的結果值 |
|
掩碼字元,如果已設定。否則為 null。 |
|
如果設定了掩碼字元,則為 |
|
父上下文變數(參見TextComponentContext 模板變數)。 |