Update prompt for dynamic value
Signed-off-by: Emmanuel Bigeon <emmanuel@bigeon.fr>
This commit is contained in:
@@ -112,7 +112,7 @@ of Emmanuel Bigeon. -->
|
||||
<dependency>
|
||||
<groupId>fr.bigeon</groupId>
|
||||
<artifactId>gclc</artifactId>
|
||||
<version>2.0.1</version>
|
||||
<version>2.0.4-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>fr.bigeon</groupId>
|
||||
|
||||
@@ -46,6 +46,8 @@ import java.util.logging.Logger;
|
||||
|
||||
import fr.bigeon.gclc.manager.ConsoleInput;
|
||||
import fr.bigeon.gclc.manager.ReadingRunnable;
|
||||
import fr.bigeon.gclc.tools.ConstantString;
|
||||
import fr.bigeon.gclc.tools.StringProvider;
|
||||
|
||||
/** A console input where the stream can be plugged.
|
||||
* <p>
|
||||
@@ -68,7 +70,7 @@ public final class PluggableConsoleInput implements ConsoleInput {
|
||||
/** If the element is closed. */
|
||||
private boolean closed = false;
|
||||
/** The default prompt. */
|
||||
private String prompt = "> "; //$NON-NLS-1$
|
||||
private StringProvider prompt = new ConstantString("> "); //$NON-NLS-1$
|
||||
/** If the input is plugged or buffering. */
|
||||
private boolean connected = false;
|
||||
/** The current connexion (if any). */
|
||||
@@ -141,7 +143,7 @@ public final class PluggableConsoleInput implements ConsoleInput {
|
||||
/* (non-Javadoc)
|
||||
* @see fr.bigeon.gclc.manager.ConsoleInput#getPrompt() */
|
||||
@Override
|
||||
public String getPrompt() {
|
||||
public StringProvider getPrompt() {
|
||||
return prompt;
|
||||
}
|
||||
|
||||
@@ -170,14 +172,14 @@ public final class PluggableConsoleInput implements ConsoleInput {
|
||||
* @see fr.bigeon.gclc.manager.ConsoleInput#prompt() */
|
||||
@Override
|
||||
public String prompt() throws IOException {
|
||||
return prompt(prompt);
|
||||
return prompt(prompt.apply());
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see fr.bigeon.gclc.manager.ConsoleInput#prompt(long) */
|
||||
@Override
|
||||
public String prompt(final long timeout) throws IOException {
|
||||
return prompt(prompt, timeout);
|
||||
return prompt(prompt.apply(), timeout);
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
@@ -251,12 +253,15 @@ public final class PluggableConsoleInput implements ConsoleInput {
|
||||
return res;
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see fr.bigeon.gclc.manager.ConsoleInput#setPrompt(java.lang.String) */
|
||||
@Override
|
||||
public void setPrompt(final String prompt) {
|
||||
public void setPrompt(final StringProvider prompt) {
|
||||
this.prompt = prompt;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setPrompt(String prompt) {
|
||||
setPrompt(new ConstantString(prompt));
|
||||
}
|
||||
|
||||
/** Wait for a hint or connexion.
|
||||
*
|
||||
|
||||
Reference in New Issue
Block a user