View Javadoc

1   package org.codehaus.groovy.sandbox.ui;
2   
3   import java.io.BufferedReader;
4   import java.io.IOException;
5   import java.io.InputStreamReader;
6   
7   /***
8    * Pure Java prompt using just System.in.
9    */
10  public class JavaPrompt implements Prompt {
11    private String prompt;
12    private BufferedReader input;
13    
14    public JavaPrompt() {
15      // make a buffered reader to support readLine
16      this.input = new BufferedReader(new InputStreamReader(System.in));
17    }
18    
19    public String readLine() throws IOException {
20      System.out.print(prompt);
21      System.out.flush();
22      
23      return input.readLine();
24    }
25    
26    public String getPrompt() {
27      return prompt;
28    }
29    
30    public void setPrompt(String prompt) {
31      this.prompt = prompt;
32    }
33  
34    public void setCompleter(Completer completer) {
35      // completer not supported
36    }
37    
38    public void close() {
39      try {
40        input.close();
41      } catch (IOException e) {
42        e.printStackTrace();
43      }
44    }
45  }