1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.mycore.frontend.cli;
20
21 import java.io.BufferedReader;
22 import java.io.IOException;
23 import java.io.InputStreamReader;
24 import java.nio.charset.Charset;
25
26
27
28
29
30
31 public class MCRCommandPrompt {
32
33 private BufferedReader console;
34
35 private String systemName;
36
37 public MCRCommandPrompt(String systemName) {
38 this.systemName = systemName;
39 this.console = new BufferedReader(new InputStreamReader(System.in, Charset.defaultCharset()));
40 }
41
42 public String readCommand() {
43 String line = "";
44 do {
45 line = readLine();
46 } while (line.isEmpty());
47 return line;
48 }
49
50 private String readLine() {
51 System.out.print(systemName + "> ");
52
53 try {
54 String input = console.readLine();
55 if (input != null) {
56 return input.trim().replaceAll("\\s+", " ");
57 } else {
58
59 System.out.println("quit");
60 return "quit";
61 }
62 } catch (IOException ignored) {
63 return "";
64 }
65 }
66
67 }