HDFS-3249. Use ToolRunner.confirmPrompt in NameNode. Contributed by Todd Lipcon.
git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/branches/branch-2@1324563 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
f47d418e07
commit
3272a1c2f8
|
@ -239,6 +239,8 @@ Release 2.0.0 - UNRELEASED
|
||||||
HDFS-3247. Improve bootstrapStandby behavior when original NN is not active
|
HDFS-3247. Improve bootstrapStandby behavior when original NN is not active
|
||||||
(todd)
|
(todd)
|
||||||
|
|
||||||
|
HDFS-3249. Use ToolRunner.confirmPrompt in NameNode (todd)
|
||||||
|
|
||||||
OPTIMIZATIONS
|
OPTIMIZATIONS
|
||||||
|
|
||||||
HDFS-2477. Optimize computing the diff between a block report and the
|
HDFS-2477. Optimize computing the diff between a block report and the
|
||||||
|
|
|
@ -72,6 +72,7 @@ import org.apache.hadoop.security.authorize.RefreshAuthorizationPolicyProtocol;
|
||||||
import org.apache.hadoop.tools.GetUserMappingsProtocol;
|
import org.apache.hadoop.tools.GetUserMappingsProtocol;
|
||||||
import org.apache.hadoop.util.ServicePlugin;
|
import org.apache.hadoop.util.ServicePlugin;
|
||||||
import org.apache.hadoop.util.StringUtils;
|
import org.apache.hadoop.util.StringUtils;
|
||||||
|
import static org.apache.hadoop.util.ToolRunner.confirmPrompt;
|
||||||
|
|
||||||
import com.google.common.annotations.VisibleForTesting;
|
import com.google.common.annotations.VisibleForTesting;
|
||||||
import com.google.common.collect.Lists;
|
import com.google.common.collect.Lists;
|
||||||
|
@ -971,34 +972,6 @@ public class NameNode {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Print out a prompt to the user, and return true if the user
|
|
||||||
* responds with "Y" or "yes".
|
|
||||||
*/
|
|
||||||
static boolean confirmPrompt(String prompt) throws IOException {
|
|
||||||
while (true) {
|
|
||||||
System.err.print(prompt + " (Y or N) ");
|
|
||||||
StringBuilder responseBuilder = new StringBuilder();
|
|
||||||
while (true) {
|
|
||||||
int c = System.in.read();
|
|
||||||
if (c == -1 || c == '\r' || c == '\n') {
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
responseBuilder.append((char)c);
|
|
||||||
}
|
|
||||||
|
|
||||||
String response = responseBuilder.toString();
|
|
||||||
if (response.equalsIgnoreCase("y") ||
|
|
||||||
response.equalsIgnoreCase("yes")) {
|
|
||||||
return true;
|
|
||||||
} else if (response.equalsIgnoreCase("n") ||
|
|
||||||
response.equalsIgnoreCase("no")) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
// else ask them again
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public static NameNode createNameNode(String argv[], Configuration conf)
|
public static NameNode createNameNode(String argv[], Configuration conf)
|
||||||
throws IOException {
|
throws IOException {
|
||||||
if (conf == null)
|
if (conf == null)
|
||||||
|
|
Loading…
Reference in New Issue