Update gclc version
Signed-off-by: Emmanuel Bigeon <emmanuel@bigeon.fr>
This commit is contained in:
parent
80933bb636
commit
4c1e28b04f
@ -49,7 +49,7 @@
|
|||||||
<dependency>
|
<dependency>
|
||||||
<groupId>net.bigeon</groupId>
|
<groupId>net.bigeon</groupId>
|
||||||
<artifactId>gclc</artifactId>
|
<artifactId>gclc</artifactId>
|
||||||
<version>2.0.11</version>
|
<version>2.0.12</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>net.bigeon.test</groupId>
|
<groupId>net.bigeon.test</groupId>
|
||||||
|
@ -68,10 +68,10 @@ package net.bigeon.gclc.process.io;
|
|||||||
* #L%
|
* #L%
|
||||||
*/
|
*/
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
|
import java.util.function.Supplier;
|
||||||
|
|
||||||
import net.bigeon.gclc.manager.ConsoleInput;
|
import net.bigeon.gclc.manager.ConsoleInput;
|
||||||
import net.bigeon.gclc.tools.ConstantString;
|
import net.bigeon.gclc.tools.ConstantString;
|
||||||
import net.bigeon.gclc.tools.StringProvider;
|
|
||||||
|
|
||||||
/** A console input that can be connected to and diconnected from.
|
/** A console input that can be connected to and diconnected from.
|
||||||
*
|
*
|
||||||
@ -84,7 +84,7 @@ public final class ConnectingConsoleInput implements ConsoleInput {
|
|||||||
/** If the input is closed. */
|
/** If the input is closed. */
|
||||||
private boolean close = false;
|
private boolean close = false;
|
||||||
/** The prompt string. */
|
/** The prompt string. */
|
||||||
private StringProvider prompt = EMPTY_STRING;
|
private Supplier<String> prompt = EMPTY_STRING;
|
||||||
/** If the input is currently in prompting state.
|
/** If the input is currently in prompting state.
|
||||||
* <p>
|
* <p>
|
||||||
* To change it you should be in a promptLock. */
|
* To change it you should be in a promptLock. */
|
||||||
@ -139,7 +139,7 @@ public final class ConnectingConsoleInput implements ConsoleInput {
|
|||||||
/* (non-Javadoc)
|
/* (non-Javadoc)
|
||||||
* @see fr.bigeon.gclc.manager.ConsoleInput#getPrompt() */
|
* @see fr.bigeon.gclc.manager.ConsoleInput#getPrompt() */
|
||||||
@Override
|
@Override
|
||||||
public StringProvider getPrompt() {
|
public Supplier<String> getPrompt() {
|
||||||
return prompt;
|
return prompt;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -170,14 +170,14 @@ public final class ConnectingConsoleInput 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.apply());
|
return prompt(prompt.get());
|
||||||
}
|
}
|
||||||
|
|
||||||
/* (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.apply(), timeout);
|
return prompt(prompt.get(), timeout);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* (non-Javadoc)
|
/* (non-Javadoc)
|
||||||
@ -282,7 +282,7 @@ public final class ConnectingConsoleInput implements ConsoleInput {
|
|||||||
* @see fr.bigeon.gclc.manager.ConsoleInput#setPrompt(fr.bigeon.gclc.tools.
|
* @see fr.bigeon.gclc.manager.ConsoleInput#setPrompt(fr.bigeon.gclc.tools.
|
||||||
* StringProvider) */
|
* StringProvider) */
|
||||||
@Override
|
@Override
|
||||||
public void setPrompt(final StringProvider string) {
|
public void setPrompt(final Supplier<String> string) {
|
||||||
prompt = string;
|
prompt = string;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -66,7 +66,7 @@ public class ConnectingConsoleInputTest {
|
|||||||
final ConnectingConsoleInput in = new ConnectingConsoleInput();
|
final ConnectingConsoleInput in = new ConnectingConsoleInput();
|
||||||
in.setPrompt("test");
|
in.setPrompt("test");
|
||||||
assertEquals("Prompt should be set correctly", "test",
|
assertEquals("Prompt should be set correctly", "test",
|
||||||
((ConstantString) in.getPrompt()).apply());
|
((ConstantString) in.getPrompt()).get());
|
||||||
final ConstantString prompt = new ConstantString("other");
|
final ConstantString prompt = new ConstantString("other");
|
||||||
in.setPrompt(prompt);
|
in.setPrompt(prompt);
|
||||||
assertEquals("Prompt should be set correctly", prompt, in.getPrompt());
|
assertEquals("Prompt should be set correctly", prompt, in.getPrompt());
|
||||||
|
@ -47,7 +47,7 @@
|
|||||||
<dependency>
|
<dependency>
|
||||||
<groupId>net.bigeon</groupId>
|
<groupId>net.bigeon</groupId>
|
||||||
<artifactId>gclc</artifactId>
|
<artifactId>gclc</artifactId>
|
||||||
<version>2.0.11</version>
|
<version>2.0.12</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>net.bigeon</groupId>
|
<groupId>net.bigeon</groupId>
|
||||||
|
@ -43,12 +43,12 @@ import java.io.InputStream;
|
|||||||
import java.io.InputStreamReader;
|
import java.io.InputStreamReader;
|
||||||
import java.io.PrintStream;
|
import java.io.PrintStream;
|
||||||
import java.nio.charset.StandardCharsets;
|
import java.nio.charset.StandardCharsets;
|
||||||
|
import java.util.function.Supplier;
|
||||||
import java.util.logging.Level;
|
import java.util.logging.Level;
|
||||||
import java.util.logging.Logger;
|
import java.util.logging.Logger;
|
||||||
|
|
||||||
import net.bigeon.gclc.manager.ConsoleInput;
|
import net.bigeon.gclc.manager.ConsoleInput;
|
||||||
import net.bigeon.gclc.tools.ConstantString;
|
import net.bigeon.gclc.tools.ConstantString;
|
||||||
import net.bigeon.gclc.tools.StringProvider;
|
|
||||||
import net.bigeon.gclc.utils.ReadingRunnable;
|
import net.bigeon.gclc.utils.ReadingRunnable;
|
||||||
|
|
||||||
/** A console input where the stream can be plugged.
|
/** A console input where the stream can be plugged.
|
||||||
@ -75,7 +75,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 StringProvider prompt = new ConstantString("> "); //$NON-NLS-1$
|
private Supplier<String> 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). */
|
||||||
@ -146,7 +146,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 StringProvider getPrompt() {
|
public Supplier<String> getPrompt() {
|
||||||
return prompt;
|
return prompt;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -175,14 +175,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.apply());
|
return prompt(prompt.get());
|
||||||
}
|
}
|
||||||
|
|
||||||
/* (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.apply(), timeout);
|
return prompt(prompt.get(), timeout);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* (non-Javadoc)
|
/* (non-Javadoc)
|
||||||
@ -264,7 +264,7 @@ public final class PluggableConsoleInput implements ConsoleInput {
|
|||||||
* @see net.bigeon.gclc.manager.ConsoleInput#setPrompt(net.bigeon.gclc.tools.
|
* @see net.bigeon.gclc.manager.ConsoleInput#setPrompt(net.bigeon.gclc.tools.
|
||||||
* StringProvider) */
|
* StringProvider) */
|
||||||
@Override
|
@Override
|
||||||
public void setPrompt(final StringProvider prompt) {
|
public void setPrompt(final Supplier<String> prompt) {
|
||||||
this.prompt = prompt;
|
this.prompt = prompt;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -90,7 +90,7 @@ public class PluggableConsoleInputTest {
|
|||||||
|
|
||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
Object obj = new Object();
|
final Object obj = new Object();
|
||||||
synchronized (obj) {
|
synchronized (obj) {
|
||||||
obj.wait(100);
|
obj.wait(100);
|
||||||
}
|
}
|
||||||
@ -115,7 +115,7 @@ public class PluggableConsoleInputTest {
|
|||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
try {
|
try {
|
||||||
Object obj = new Object();
|
final Object obj = new Object();
|
||||||
synchronized (obj) {
|
synchronized (obj) {
|
||||||
obj.wait(200);
|
obj.wait(200);
|
||||||
}
|
}
|
||||||
@ -168,7 +168,7 @@ public class PluggableConsoleInputTest {
|
|||||||
});
|
});
|
||||||
th.start();
|
th.start();
|
||||||
|
|
||||||
Object obj = new Object();
|
final Object obj = new Object();
|
||||||
synchronized (obj) {
|
synchronized (obj) {
|
||||||
while (!input.isPrompting()) {
|
while (!input.isPrompting()) {
|
||||||
obj.wait(10);
|
obj.wait(10);
|
||||||
@ -211,8 +211,8 @@ public class PluggableConsoleInputTest {
|
|||||||
@Test
|
@Test
|
||||||
public final void testGetPrompt() {
|
public final void testGetPrompt() {
|
||||||
final PluggableConsoleInput input = new PluggableConsoleInput();
|
final PluggableConsoleInput input = new PluggableConsoleInput();
|
||||||
assertEquals("Default prompt invalid", "> ", input.getPrompt().apply());
|
assertEquals("Default prompt invalid", "> ", input.getPrompt().get());
|
||||||
input.setPrompt("test");
|
input.setPrompt("test");
|
||||||
assertEquals("Prompt setting failed", "test", input.getPrompt().apply());
|
assertEquals("Prompt setting failed", "test", input.getPrompt().get());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -48,7 +48,7 @@
|
|||||||
<dependency>
|
<dependency>
|
||||||
<groupId>net.bigeon</groupId>
|
<groupId>net.bigeon</groupId>
|
||||||
<artifactId>gclc</artifactId>
|
<artifactId>gclc</artifactId>
|
||||||
<version>2.0.11</version>
|
<version>2.0.12</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>net.bigeon</groupId>
|
<groupId>net.bigeon</groupId>
|
||||||
|
@ -69,6 +69,7 @@ package net.bigeon.gclc.swt;
|
|||||||
* #L%
|
* #L%
|
||||||
*/
|
*/
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
|
import java.util.function.Supplier;
|
||||||
import java.util.logging.Level;
|
import java.util.logging.Level;
|
||||||
import java.util.logging.Logger;
|
import java.util.logging.Logger;
|
||||||
|
|
||||||
@ -84,7 +85,6 @@ import net.bigeon.gclc.ConsoleApplication;
|
|||||||
import net.bigeon.gclc.manager.ConsoleInput;
|
import net.bigeon.gclc.manager.ConsoleInput;
|
||||||
import net.bigeon.gclc.manager.ConsoleOutput;
|
import net.bigeon.gclc.manager.ConsoleOutput;
|
||||||
import net.bigeon.gclc.tools.ConstantString;
|
import net.bigeon.gclc.tools.ConstantString;
|
||||||
import net.bigeon.gclc.tools.StringProvider;
|
|
||||||
|
|
||||||
/** A SWT component to connect to gclc {@link ConsoleApplication}.
|
/** A SWT component to connect to gclc {@link ConsoleApplication}.
|
||||||
* <p>
|
* <p>
|
||||||
@ -111,7 +111,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 StringProvider prompt = new ConstantString("> "); //$NON-NLS-1$
|
private Supplier<String> 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. */
|
||||||
@ -135,7 +135,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.apply());
|
lblPromptlabel.setText(prompt.get());
|
||||||
|
|
||||||
consoleInput = new Text(this, SWT.BORDER);
|
consoleInput = new Text(this, SWT.BORDER);
|
||||||
consoleInput.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1));
|
consoleInput.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1));
|
||||||
@ -175,7 +175,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 StringProvider getPrompt() {
|
public Supplier<String> getPrompt() {
|
||||||
return prompt;
|
return prompt;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -255,7 +255,7 @@ public final class SWTConsole extends Composite
|
|||||||
@Override
|
@Override
|
||||||
public String prompt() throws IOException {
|
public String prompt() throws IOException {
|
||||||
synchronized (promptLock) {
|
synchronized (promptLock) {
|
||||||
initPrompt(prompt.apply());
|
initPrompt(prompt.get());
|
||||||
promptLock.notifyAll();
|
promptLock.notifyAll();
|
||||||
try {
|
try {
|
||||||
while (prompting) {
|
while (prompting) {
|
||||||
@ -303,7 +303,7 @@ public final class SWTConsole extends Composite
|
|||||||
@Override
|
@Override
|
||||||
public String prompt(final long timeout) throws IOException {
|
public String prompt(final long timeout) throws IOException {
|
||||||
synchronized (promptLock) {
|
synchronized (promptLock) {
|
||||||
initPrompt(prompt.apply());
|
initPrompt(prompt.get());
|
||||||
promptLock.notifyAll();
|
promptLock.notifyAll();
|
||||||
try {
|
try {
|
||||||
waitPromptResolution(timeout);
|
waitPromptResolution(timeout);
|
||||||
@ -386,7 +386,7 @@ public final class SWTConsole extends Composite
|
|||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
if (!consoleOutput.isDisposed()) {
|
if (!consoleOutput.isDisposed()) {
|
||||||
lblPromptlabel.setText(prompt.apply());
|
lblPromptlabel.setText(prompt.get());
|
||||||
// relayout
|
// relayout
|
||||||
SWTConsole.this.layout();
|
SWTConsole.this.layout();
|
||||||
}
|
}
|
||||||
@ -419,14 +419,14 @@ 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 StringProvider prompt) {
|
public void setPrompt(final Supplier<String> 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.apply());
|
lblPromptlabel.setText(prompt.get());
|
||||||
// relayout
|
// relayout
|
||||||
SWTConsole.this.layout();
|
SWTConsole.this.layout();
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user