Update prompt for dynamic value
Signed-off-by: Emmanuel Bigeon <emmanuel@bigeon.fr>
This commit is contained in:
parent
f8a37e7eee
commit
7517251d1c
@ -112,7 +112,7 @@ of Emmanuel Bigeon. -->
|
|||||||
<dependency>
|
<dependency>
|
||||||
<groupId>fr.bigeon</groupId>
|
<groupId>fr.bigeon</groupId>
|
||||||
<artifactId>gclc</artifactId>
|
<artifactId>gclc</artifactId>
|
||||||
<version>2.0.1</version>
|
<version>2.0.4-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>fr.bigeon</groupId>
|
<groupId>fr.bigeon</groupId>
|
||||||
|
@ -46,6 +46,8 @@ import java.util.logging.Logger;
|
|||||||
|
|
||||||
import fr.bigeon.gclc.manager.ConsoleInput;
|
import fr.bigeon.gclc.manager.ConsoleInput;
|
||||||
import fr.bigeon.gclc.manager.ReadingRunnable;
|
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.
|
/** A console input where the stream can be plugged.
|
||||||
* <p>
|
* <p>
|
||||||
@ -68,7 +70,7 @@ public final class PluggableConsoleInput implements ConsoleInput {
|
|||||||
/** If the element is closed. */
|
/** If the element is closed. */
|
||||||
private boolean closed = false;
|
private boolean closed = false;
|
||||||
/** The default prompt. */
|
/** The default prompt. */
|
||||||
private String prompt = "> "; //$NON-NLS-1$
|
private StringProvider prompt = new ConstantString("> "); //$NON-NLS-1$
|
||||||
/** If the input is plugged or buffering. */
|
/** If the input is plugged or buffering. */
|
||||||
private boolean connected = false;
|
private boolean connected = false;
|
||||||
/** The current connexion (if any). */
|
/** The current connexion (if any). */
|
||||||
@ -141,7 +143,7 @@ public final class PluggableConsoleInput implements ConsoleInput {
|
|||||||
/* (non-Javadoc)
|
/* (non-Javadoc)
|
||||||
* @see fr.bigeon.gclc.manager.ConsoleInput#getPrompt() */
|
* @see fr.bigeon.gclc.manager.ConsoleInput#getPrompt() */
|
||||||
@Override
|
@Override
|
||||||
public String getPrompt() {
|
public StringProvider getPrompt() {
|
||||||
return prompt;
|
return prompt;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -170,14 +172,14 @@ public final class PluggableConsoleInput implements ConsoleInput {
|
|||||||
* @see fr.bigeon.gclc.manager.ConsoleInput#prompt() */
|
* @see fr.bigeon.gclc.manager.ConsoleInput#prompt() */
|
||||||
@Override
|
@Override
|
||||||
public String prompt() throws IOException {
|
public String prompt() throws IOException {
|
||||||
return prompt(prompt);
|
return prompt(prompt.apply());
|
||||||
}
|
}
|
||||||
|
|
||||||
/* (non-Javadoc)
|
/* (non-Javadoc)
|
||||||
* @see fr.bigeon.gclc.manager.ConsoleInput#prompt(long) */
|
* @see fr.bigeon.gclc.manager.ConsoleInput#prompt(long) */
|
||||||
@Override
|
@Override
|
||||||
public String prompt(final long timeout) throws IOException {
|
public String prompt(final long timeout) throws IOException {
|
||||||
return prompt(prompt, timeout);
|
return prompt(prompt.apply(), timeout);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* (non-Javadoc)
|
/* (non-Javadoc)
|
||||||
@ -251,12 +253,15 @@ public final class PluggableConsoleInput implements ConsoleInput {
|
|||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* (non-Javadoc)
|
|
||||||
* @see fr.bigeon.gclc.manager.ConsoleInput#setPrompt(java.lang.String) */
|
|
||||||
@Override
|
@Override
|
||||||
public void setPrompt(final String prompt) {
|
public void setPrompt(final StringProvider prompt) {
|
||||||
this.prompt = prompt;
|
this.prompt = prompt;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void setPrompt(String prompt) {
|
||||||
|
setPrompt(new ConstantString(prompt));
|
||||||
|
}
|
||||||
|
|
||||||
/** Wait for a hint or connexion.
|
/** Wait for a hint or connexion.
|
||||||
*
|
*
|
||||||
|
@ -82,7 +82,7 @@
|
|||||||
<dependency>
|
<dependency>
|
||||||
<groupId>fr.bigeon</groupId>
|
<groupId>fr.bigeon</groupId>
|
||||||
<artifactId>gclc</artifactId>
|
<artifactId>gclc</artifactId>
|
||||||
<version>2.0.1</version>
|
<version>2.0.4-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>fr.bigeon</groupId>
|
<groupId>fr.bigeon</groupId>
|
||||||
|
@ -50,6 +50,8 @@ import org.eclipse.swt.widgets.Text;
|
|||||||
import fr.bigeon.gclc.ConsoleApplication;
|
import fr.bigeon.gclc.ConsoleApplication;
|
||||||
import fr.bigeon.gclc.manager.ConsoleInput;
|
import fr.bigeon.gclc.manager.ConsoleInput;
|
||||||
import fr.bigeon.gclc.manager.ConsoleOutput;
|
import fr.bigeon.gclc.manager.ConsoleOutput;
|
||||||
|
import fr.bigeon.gclc.tools.ConstantString;
|
||||||
|
import fr.bigeon.gclc.tools.StringProvider;
|
||||||
|
|
||||||
/** A SWT component to connect to gclc {@link ConsoleApplication}.
|
/** A SWT component to connect to gclc {@link ConsoleApplication}.
|
||||||
* <p>
|
* <p>
|
||||||
@ -73,7 +75,7 @@ public final class SWTConsole extends Composite
|
|||||||
/** The prompt label. */
|
/** The prompt label. */
|
||||||
private final Label lblPromptlabel;
|
private final Label lblPromptlabel;
|
||||||
/** The prompt text. */
|
/** The prompt text. */
|
||||||
private String prompt = ">"; //$NON-NLS-1$
|
private StringProvider prompt = new ConstantString("> "); //$NON-NLS-1$
|
||||||
/** The command entered by the user. */
|
/** The command entered by the user. */
|
||||||
private String command = null;
|
private String command = null;
|
||||||
/** If the prompt should be active. */
|
/** If the prompt should be active. */
|
||||||
@ -97,7 +99,7 @@ public final class SWTConsole extends Composite
|
|||||||
consoleOutput.setRedraw(true);
|
consoleOutput.setRedraw(true);
|
||||||
|
|
||||||
lblPromptlabel = new Label(this, SWT.NONE);
|
lblPromptlabel = new Label(this, SWT.NONE);
|
||||||
lblPromptlabel.setText(prompt);
|
lblPromptlabel.setText(prompt.apply());
|
||||||
|
|
||||||
consoleInput = new Text(this, SWT.BORDER);
|
consoleInput = new Text(this, SWT.BORDER);
|
||||||
consoleInput.setLayoutData(
|
consoleInput.setLayoutData(
|
||||||
@ -135,7 +137,7 @@ public final class SWTConsole extends Composite
|
|||||||
/* (non-Javadoc)
|
/* (non-Javadoc)
|
||||||
* @see fr.bigeon.gclc.ConsoleManager#getPrompt() */
|
* @see fr.bigeon.gclc.ConsoleManager#getPrompt() */
|
||||||
@Override
|
@Override
|
||||||
public String getPrompt() {
|
public StringProvider getPrompt() {
|
||||||
return prompt;
|
return prompt;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -216,6 +218,7 @@ public final class SWTConsole extends Composite
|
|||||||
public void run() {
|
public void run() {
|
||||||
if (!consoleInput.isDisposed()) {
|
if (!consoleInput.isDisposed()) {
|
||||||
consoleInput.setEnabled(true);
|
consoleInput.setEnabled(true);
|
||||||
|
lblPromptlabel.setText(prompt.apply());
|
||||||
consoleInput.setFocus();
|
consoleInput.setFocus();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -284,7 +287,7 @@ public final class SWTConsole extends Composite
|
|||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
if (!consoleOutput.isDisposed()) {
|
if (!consoleOutput.isDisposed()) {
|
||||||
lblPromptlabel.setText(prompt);
|
lblPromptlabel.setText(prompt.apply());
|
||||||
// relayout
|
// relayout
|
||||||
SWTConsole.this.layout();
|
SWTConsole.this.layout();
|
||||||
}
|
}
|
||||||
@ -323,20 +326,25 @@ public final class SWTConsole extends Composite
|
|||||||
/* (non-Javadoc)
|
/* (non-Javadoc)
|
||||||
* @see fr.bigeon.gclc.ConsoleManager#setPrompt(java.lang.String) */
|
* @see fr.bigeon.gclc.ConsoleManager#setPrompt(java.lang.String) */
|
||||||
@Override
|
@Override
|
||||||
public void setPrompt(final String prompt) {
|
public void setPrompt(final StringProvider prompt) {
|
||||||
this.prompt = prompt;
|
this.prompt = prompt;
|
||||||
Display.getDefault().syncExec(new Runnable() {
|
Display.getDefault().syncExec(new Runnable() {
|
||||||
@SuppressWarnings("synthetic-access")
|
@SuppressWarnings("synthetic-access")
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
if (!consoleOutput.isDisposed()) {
|
if (!consoleOutput.isDisposed()) {
|
||||||
lblPromptlabel.setText(prompt);
|
lblPromptlabel.setText(prompt.apply());
|
||||||
// relayout
|
// relayout
|
||||||
SWTConsole.this.layout();
|
SWTConsole.this.layout();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void setPrompt(String prompt) {
|
||||||
|
setPrompt(new ConstantString(prompt));
|
||||||
|
}
|
||||||
|
|
||||||
/** @param string the text */
|
/** @param string the text */
|
||||||
public void setText(final String string) {
|
public void setText(final String string) {
|
||||||
|
@ -41,6 +41,8 @@ package fr.bigeon.gclc.manager;
|
|||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.io.InterruptedIOException;
|
import java.io.InterruptedIOException;
|
||||||
|
|
||||||
|
import fr.bigeon.gclc.tools.StringProvider;
|
||||||
|
|
||||||
/** A console application input.
|
/** A console application input.
|
||||||
*
|
*
|
||||||
* @author Emmanuel Bigeon */
|
* @author Emmanuel Bigeon */
|
||||||
@ -55,7 +57,7 @@ public interface ConsoleInput extends AutoCloseable {
|
|||||||
/** Get the prompt string.
|
/** Get the prompt string.
|
||||||
*
|
*
|
||||||
* @return the prompt prefix */
|
* @return the prompt prefix */
|
||||||
String getPrompt();
|
StringProvider getPrompt();
|
||||||
|
|
||||||
/** Indicate to the input that is should interrompt the prompting, if
|
/** Indicate to the input that is should interrompt the prompting, if
|
||||||
* possible.
|
* possible.
|
||||||
@ -111,4 +113,6 @@ public interface ConsoleInput extends AutoCloseable {
|
|||||||
*
|
*
|
||||||
* @param prompt the prompt */
|
* @param prompt the prompt */
|
||||||
void setPrompt(String prompt);
|
void setPrompt(String prompt);
|
||||||
|
|
||||||
|
void setPrompt(StringProvider string);
|
||||||
}
|
}
|
||||||
|
@ -38,6 +38,9 @@
|
|||||||
*/
|
*/
|
||||||
package fr.bigeon.gclc.manager;
|
package fr.bigeon.gclc.manager;
|
||||||
|
|
||||||
|
import fr.bigeon.gclc.tools.ConstantString;
|
||||||
|
import fr.bigeon.gclc.tools.StringProvider;
|
||||||
|
|
||||||
/** A console input that return empty to all prompting.
|
/** A console input that return empty to all prompting.
|
||||||
*
|
*
|
||||||
* @author Emmanuel Bigeon */
|
* @author Emmanuel Bigeon */
|
||||||
@ -59,8 +62,8 @@ public final class EmptyInput implements ConsoleInput {
|
|||||||
/* (non-Javadoc)
|
/* (non-Javadoc)
|
||||||
* @see fr.bigeon.gclc.manager.ConsoleInput#getPrompt() */
|
* @see fr.bigeon.gclc.manager.ConsoleInput#getPrompt() */
|
||||||
@Override
|
@Override
|
||||||
public String getPrompt() {
|
public StringProvider getPrompt() {
|
||||||
return ""; //$NON-NLS-1$
|
return new ConstantString(""); //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
|
|
||||||
/* (non-Javadoc)
|
/* (non-Javadoc)
|
||||||
@ -114,4 +117,8 @@ public final class EmptyInput implements ConsoleInput {
|
|||||||
//
|
//
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void setPrompt(StringProvider string) {
|
||||||
|
//
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -44,6 +44,8 @@ import java.io.PipedOutputStream;
|
|||||||
import java.io.PrintStream;
|
import java.io.PrintStream;
|
||||||
import java.nio.charset.StandardCharsets;
|
import java.nio.charset.StandardCharsets;
|
||||||
|
|
||||||
|
import fr.bigeon.gclc.tools.StringProvider;
|
||||||
|
|
||||||
/** This console input allows to enter commands and retrieve the output as an
|
/** This console input allows to enter commands and retrieve the output as an
|
||||||
* input.
|
* input.
|
||||||
* <p>
|
* <p>
|
||||||
@ -87,7 +89,7 @@ public final class PipedConsoleInput
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getPrompt() {
|
public StringProvider getPrompt() {
|
||||||
return innerManager.getPrompt();
|
return innerManager.getPrompt();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -141,6 +143,11 @@ public final class PipedConsoleInput
|
|||||||
public void setPrompt(final String prompt) {
|
public void setPrompt(final String prompt) {
|
||||||
innerManager.setPrompt(prompt);
|
innerManager.setPrompt(prompt);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void setPrompt(StringProvider string) {
|
||||||
|
innerManager.setPrompt(string);
|
||||||
|
}
|
||||||
|
|
||||||
/** Type a message in the input.
|
/** Type a message in the input.
|
||||||
*
|
*
|
||||||
|
@ -45,6 +45,9 @@ import java.io.InputStreamReader;
|
|||||||
import java.io.PrintStream;
|
import java.io.PrintStream;
|
||||||
import java.nio.charset.Charset;
|
import java.nio.charset.Charset;
|
||||||
|
|
||||||
|
import fr.bigeon.gclc.tools.ConstantString;
|
||||||
|
import fr.bigeon.gclc.tools.StringProvider;
|
||||||
|
|
||||||
/** A console using the input stream and print stream.
|
/** A console using the input stream and print stream.
|
||||||
* <p>
|
* <p>
|
||||||
* The default constructor will use the system standart input and output.
|
* The default constructor will use the system standart input and output.
|
||||||
@ -53,10 +56,10 @@ import java.nio.charset.Charset;
|
|||||||
public final class StreamConsoleInput implements ConsoleInput {
|
public final class StreamConsoleInput implements ConsoleInput {
|
||||||
|
|
||||||
/** The default prompt. */
|
/** The default prompt. */
|
||||||
public static final String DEFAULT_PROMPT = "> "; //$NON-NLS-1$
|
public static final StringProvider DEFAULT_PROMPT = new ConstantString("> "); //$NON-NLS-1$
|
||||||
|
|
||||||
/** The command prompt. It can be changed. */
|
/** The command prompt. It can be changed. */
|
||||||
private String prompt = DEFAULT_PROMPT;
|
private StringProvider prompt = DEFAULT_PROMPT;
|
||||||
|
|
||||||
/** The print stream. */
|
/** The print stream. */
|
||||||
private final PrintStream out;
|
private final PrintStream out;
|
||||||
@ -115,7 +118,7 @@ public final class StreamConsoleInput implements ConsoleInput {
|
|||||||
/* (non-Javadoc)
|
/* (non-Javadoc)
|
||||||
* @see fr.bigeon.gclc.manager.ConsoleInput#getPrompt() */
|
* @see fr.bigeon.gclc.manager.ConsoleInput#getPrompt() */
|
||||||
@Override
|
@Override
|
||||||
public String getPrompt() {
|
public StringProvider getPrompt() {
|
||||||
return prompt;
|
return prompt;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -138,14 +141,14 @@ public final class StreamConsoleInput implements ConsoleInput {
|
|||||||
* @see fr.bigeon.gclc.ConsoleManager#prompt() */
|
* @see fr.bigeon.gclc.ConsoleManager#prompt() */
|
||||||
@Override
|
@Override
|
||||||
public String prompt() throws IOException {
|
public String prompt() throws IOException {
|
||||||
return prompt(prompt);
|
return prompt(prompt.apply());
|
||||||
}
|
}
|
||||||
|
|
||||||
/* (non-Javadoc)
|
/* (non-Javadoc)
|
||||||
* @see fr.bigeon.gclc.manager.ConsoleManager#prompt(long) */
|
* @see fr.bigeon.gclc.manager.ConsoleManager#prompt(long) */
|
||||||
@Override
|
@Override
|
||||||
public String prompt(final long timeout) throws IOException {
|
public String prompt(final long timeout) throws IOException {
|
||||||
return prompt(prompt, timeout);
|
return prompt(prompt.apply(), timeout);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* (non-Javadoc)
|
/* (non-Javadoc)
|
||||||
@ -177,7 +180,11 @@ public final class StreamConsoleInput implements ConsoleInput {
|
|||||||
* @see fr.bigeon.gclc.manager.ConsoleInput#setPrompt(java.lang.String) */
|
* @see fr.bigeon.gclc.manager.ConsoleInput#setPrompt(java.lang.String) */
|
||||||
@Override
|
@Override
|
||||||
public void setPrompt(final String prompt) {
|
public void setPrompt(final String prompt) {
|
||||||
this.prompt = prompt;
|
this.prompt = new ConstantString(prompt);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void setPrompt(StringProvider string) {
|
||||||
|
this.prompt = string;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
50
gclc/src/main/java/fr/bigeon/gclc/tools/ConstantString.java
Normal file
50
gclc/src/main/java/fr/bigeon/gclc/tools/ConstantString.java
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
/*
|
||||||
|
* Copyright Bigeon Emmanuel (2014)
|
||||||
|
*
|
||||||
|
* emmanuel@bigeon.fr
|
||||||
|
*
|
||||||
|
* This software is a computer program whose purpose is to
|
||||||
|
* provide a generic framework for console applications.
|
||||||
|
*
|
||||||
|
* This software is governed by the CeCILL license under French law and
|
||||||
|
* abiding by the rules of distribution of free software. You can use,
|
||||||
|
* modify and/or redistribute the software under the terms of the CeCILL
|
||||||
|
* license as circulated by CEA, CNRS and INRIA at the following URL
|
||||||
|
* "http://www.cecill.info".
|
||||||
|
*
|
||||||
|
* As a counterpart to the access to the source code and rights to copy,
|
||||||
|
* modify and redistribute granted by the license, users are provided only
|
||||||
|
* with a limited warranty and the software's author, the holder of the
|
||||||
|
* economic rights, and the successive licensors have only limited
|
||||||
|
* liability.
|
||||||
|
*
|
||||||
|
* In this respect, the user's attention is drawn to the risks associated
|
||||||
|
* with loading, using, modifying and/or developing or reproducing the
|
||||||
|
* software by the user in light of its specific status of free software,
|
||||||
|
* that may mean that it is complicated to manipulate, and that also
|
||||||
|
* therefore means that it is reserved for developers and experienced
|
||||||
|
* professionals having in-depth computer knowledge. Users are therefore
|
||||||
|
* encouraged to load and test the software's suitability as regards their
|
||||||
|
* requirements in conditions enabling the security of their systems and/or
|
||||||
|
* data to be ensured and, more generally, to use and operate it in the
|
||||||
|
* same conditions as regards security.
|
||||||
|
*
|
||||||
|
* The fact that you are presently reading this means that you have had
|
||||||
|
* knowledge of the CeCILL license and that you accept its terms.
|
||||||
|
*/
|
||||||
|
package fr.bigeon.gclc.tools;
|
||||||
|
|
||||||
|
public class ConstantString implements StringProvider {
|
||||||
|
private String string;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String apply() {
|
||||||
|
return string;
}
|
||||||
|
|
||||||
|
|
||||||
|
public ConstantString(String string) {
|
||||||
|
this.string = string;
|
||||||
|
}
|
||||||
|
}
|
49
gclc/src/main/java/fr/bigeon/gclc/tools/StringProvider.java
Normal file
49
gclc/src/main/java/fr/bigeon/gclc/tools/StringProvider.java
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
/*
|
||||||
|
* Copyright Bigeon Emmanuel (2014)
|
||||||
|
*
|
||||||
|
* emmanuel@bigeon.fr
|
||||||
|
*
|
||||||
|
* This software is a computer program whose purpose is to
|
||||||
|
* provide a generic framework for console applications.
|
||||||
|
*
|
||||||
|
* This software is governed by the CeCILL license under French law and
|
||||||
|
* abiding by the rules of distribution of free software. You can use,
|
||||||
|
* modify and/or redistribute the software under the terms of the CeCILL
|
||||||
|
* license as circulated by CEA, CNRS and INRIA at the following URL
|
||||||
|
* "http://www.cecill.info".
|
||||||
|
*
|
||||||
|
* As a counterpart to the access to the source code and rights to copy,
|
||||||
|
* modify and redistribute granted by the license, users are provided only
|
||||||
|
* with a limited warranty and the software's author, the holder of the
|
||||||
|
* economic rights, and the successive licensors have only limited
|
||||||
|
* liability.
|
||||||
|
*
|
||||||
|
* In this respect, the user's attention is drawn to the risks associated
|
||||||
|
* with loading, using, modifying and/or developing or reproducing the
|
||||||
|
* software by the user in light of its specific status of free software,
|
||||||
|
* that may mean that it is complicated to manipulate, and that also
|
||||||
|
* therefore means that it is reserved for developers and experienced
|
||||||
|
* professionals having in-depth computer knowledge. Users are therefore
|
||||||
|
* encouraged to load and test the software's suitability as regards their
|
||||||
|
* requirements in conditions enabling the security of their systems and/or
|
||||||
|
* data to be ensured and, more generally, to use and operate it in the
|
||||||
|
* same conditions as regards security.
|
||||||
|
*
|
||||||
|
* The fact that you are presently reading this means that you have had
|
||||||
|
* knowledge of the CeCILL license and that you accept its terms.
|
||||||
|
*/
|
||||||
|
package fr.bigeon.gclc.tools;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A string providing object.
|
||||||
|
* <p>
|
||||||
|
* Implementations of this interface will provide a string, this internal state
|
||||||
|
* of the object may be so that successive calls to the apply method return
|
||||||
|
* different results.
|
||||||
|
*
|
||||||
|
* @author Emmanuel
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public interface StringProvider {
|
||||||
|
String apply();
|
||||||
|
}
|
@ -141,7 +141,7 @@ public class SystemConsoleManagerTest {
|
|||||||
|
|
||||||
final String prt = "++";
|
final String prt = "++";
|
||||||
manager.setPrompt(prt);
|
manager.setPrompt(prt);
|
||||||
assertEquals(prt, manager.getPrompt());
|
assertEquals(prt, manager.getPrompt().apply());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user