Skip to content

Commit 1a45d47

Browse files
HDFS-17213. RBF: In RouterAdmin class, "if else" is not as elegant as "switch case" in the admin command parameters section.
1 parent b871805 commit 1a45d47

File tree

2 files changed

+92
-53
lines changed

2 files changed

+92
-53
lines changed

hadoop-hdfs-project/hadoop-hdfs-rbf/src/main/java/org/apache/hadoop/hdfs/tools/federation/RouterAdmin.java

Lines changed: 54 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -161,59 +161,60 @@ private static String getUsage(String cmd) {
161161
}
162162
return usage.toString();
163163
}
164-
if (cmd.equals("-add")) {
165-
return "\t[-add <source> <nameservice1, nameservice2, ...> <destination> "
166-
+ "[-readonly] [-faulttolerant] "
167-
+ "[-order HASH|LOCAL|RANDOM|HASH_ALL|SPACE] "
168-
+ "-owner <owner> -group <group> -mode <mode>]";
169-
} else if (cmd.equals(ADD_ALL_COMMAND)) {
170-
return "\t[" + ADD_ALL_COMMAND + " "
171-
+ "<source1> <nameservice1,nameservice2,...> <destination1> "
172-
+ "[-readonly] [-faulttolerant] " + "[-order HASH|LOCAL|RANDOM|HASH_ALL|SPACE] "
173-
+ "-owner <owner1> -group <group1> -mode <mode1>"
174-
+ " , "
175-
+ "<source2> <nameservice1,nameservice2,...> <destination2> "
176-
+ "[-readonly] [-faulttolerant] " + "[-order HASH|LOCAL|RANDOM|HASH_ALL|SPACE] "
177-
+ "-owner <owner2> -group <group2> -mode <mode2>"
178-
+ " , ...]";
179-
} else if (cmd.equals("-update")) {
180-
return "\t[-update <source>"
181-
+ " [<nameservice1, nameservice2, ...> <destination>] "
182-
+ "[-readonly true|false] [-faulttolerant true|false] "
183-
+ "[-order HASH|LOCAL|RANDOM|HASH_ALL|SPACE] "
184-
+ "-owner <owner> -group <group> -mode <mode>]";
185-
} else if (cmd.equals("-rm")) {
186-
return "\t[-rm <source>]";
187-
} else if (cmd.equals("-ls")) {
188-
return "\t[-ls [-d] <path>]";
189-
} else if (cmd.equals("-getDestination")) {
190-
return "\t[-getDestination <path>]";
191-
} else if (cmd.equals("-setQuota")) {
192-
return "\t[-setQuota <path> -nsQuota <nsQuota> -ssQuota "
193-
+ "<quota in bytes or quota size string>]";
194-
} else if (cmd.equals("-setStorageTypeQuota")) {
195-
return "\t[-setStorageTypeQuota <path> -storageType <storage type> "
196-
+ "<quota in bytes or quota size string>]";
197-
} else if (cmd.equals("-clrQuota")) {
198-
return "\t[-clrQuota <path>]";
199-
} else if (cmd.equals("-clrStorageTypeQuota")) {
200-
return "\t[-clrStorageTypeQuota <path>]";
201-
} else if (cmd.equals("-safemode")) {
202-
return "\t[-safemode enter | leave | get]";
203-
} else if (cmd.equals("-nameservice")) {
204-
return "\t[-nameservice enable | disable <nameservice>]";
205-
} else if (cmd.equals("-getDisabledNameservices")) {
206-
return "\t[-getDisabledNameservices]";
207-
} else if (cmd.equals("-refresh")) {
208-
return "\t[-refresh]";
209-
} else if (cmd.equals("-refreshRouterArgs")) {
210-
return "\t[-refreshRouterArgs <host:ipc_port> <key> [arg1..argn]]";
211-
} else if (cmd.equals("-refreshSuperUserGroupsConfiguration")) {
212-
return "\t[-refreshSuperUserGroupsConfiguration]";
213-
} else if (cmd.equals("-refreshCallQueue")) {
214-
return "\t[-refreshCallQueue]";
215-
} else if (cmd.equals(DUMP_COMMAND)) {
216-
return "\t[" + DUMP_COMMAND + "]";
164+
switch (cmd) {
165+
case "-add":
166+
return "\t[-add <source> <nameservice1, nameservice2, ...> <destination> "
167+
+ "[-readonly] [-faulttolerant] "
168+
+ "[-order HASH|LOCAL|RANDOM|HASH_ALL|SPACE] "
169+
+ "-owner <owner> -group <group> -mode <mode>]";
170+
case ADD_ALL_COMMAND:
171+
return "\t[" + ADD_ALL_COMMAND + " "
172+
+ "<source1> <nameservice1,nameservice2,...> <destination1> "
173+
+ "[-readonly] [-faulttolerant] " + "[-order HASH|LOCAL|RANDOM|HASH_ALL|SPACE] "
174+
+ "-owner <owner1> -group <group1> -mode <mode1>"
175+
+ " , "
176+
+ "<source2> <nameservice1,nameservice2,...> <destination2> "
177+
+ "[-readonly] [-faulttolerant] " + "[-order HASH|LOCAL|RANDOM|HASH_ALL|SPACE] "
178+
+ "-owner <owner2> -group <group2> -mode <mode2>"
179+
+ " , ...]";
180+
case "-update":
181+
return "\t[-update <source>"
182+
+ " [<nameservice1, nameservice2, ...> <destination>] "
183+
+ "[-readonly true|false] [-faulttolerant true|false] "
184+
+ "[-order HASH|LOCAL|RANDOM|HASH_ALL|SPACE] "
185+
+ "-owner <owner> -group <group> -mode <mode>]";
186+
case "-rm":
187+
return "\t[-rm <source>]";
188+
case "-ls":
189+
return "\t[-ls [-d] <path>]";
190+
case "-getDestination":
191+
return "\t[-getDestination <path>]";
192+
case "-setQuota":
193+
return "\t[-setQuota <path> -nsQuota <nsQuota> -ssQuota "
194+
+ "<quota in bytes or quota size string>]";
195+
case "-setStorageTypeQuota":
196+
return "\t[-setStorageTypeQuota <path> -storageType <storage type> "
197+
+ "<quota in bytes or quota size string>]";
198+
case "-clrQuota":
199+
return "\t[-clrQuota <path>]";
200+
case "-clrStorageTypeQuota":
201+
return "\t[-clrStorageTypeQuota <path>]";
202+
case "-safemode":
203+
return "\t[-safemode enter | leave | get]";
204+
case "-nameservice":
205+
return "\t[-nameservice enable | disable <nameservice>]";
206+
case "-getDisabledNameservices":
207+
return "\t[-getDisabledNameservices]";
208+
case "-refresh":
209+
return "\t[-refresh]";
210+
case "-refreshRouterArgs":
211+
return "\t[-refreshRouterArgs <host:ipc_port> <key> [arg1..argn]]";
212+
case "-refreshSuperUserGroupsConfiguration":
213+
return "\t[-refreshSuperUserGroupsConfiguration]";
214+
case "-refreshCallQueue":
215+
return "\t[-refreshCallQueue]";
216+
case DUMP_COMMAND:
217+
return "\t[" + DUMP_COMMAND + "]";
217218
}
218219
return getUsage(null);
219220
}

hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/hdfs/server/federation/router/TestRouterAdminCLI.java

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1925,6 +1925,44 @@ public void testAddMultipleMountPointsFailure() throws Exception {
19251925
err.toString().contains("Cannot add mount points: [/testAddMultiMountPoints-01"));
19261926
}
19271927

1928+
@Test
1929+
public void testGetUsage() throws Exception {
1930+
1931+
System.setOut(new PrintStream(out));
1932+
System.setErr(new PrintStream(err));
1933+
1934+
assertEquals(-1, ToolRunner.run(admin, new String[]{}));
1935+
assertEquals(-1, ToolRunner.run(admin, new String[]{"-helloworld"}));
1936+
1937+
assertEquals(-1, ToolRunner.run(admin, new String[]{"-add", "-err"}));
1938+
assertEquals(-1, ToolRunner.run(admin, new String[]{"-addAll", "-err"}));
1939+
assertEquals(-1, ToolRunner.run(admin, new String[]{"-update", "-err"}));
1940+
assertEquals(-1, ToolRunner.run(admin, new String[]{"-rm"}));
1941+
assertEquals(-1, ToolRunner.run(admin, new String[]{"-ls", "/a", "b", "/c"}));
1942+
assertEquals(-1, ToolRunner.run(admin, new String[]{"-getDestination"}));
1943+
assertEquals(-1, ToolRunner.run(admin, new String[]{"-setQuota", "-err"}));
1944+
assertEquals(-1, ToolRunner.run(admin,
1945+
new String[]{"-setStorageTypeQuota", "-err"}));
1946+
assertEquals(-1, ToolRunner.run(admin, new String[]{"-clrQuota", "-err"}));
1947+
assertEquals(-1, ToolRunner.run(admin,
1948+
new String[]{"-clrStorageTypeQuota", "-err"}));
1949+
assertEquals(-1, ToolRunner.run(admin, new String[]{"-safemode", "-err"}));
1950+
assertEquals(-1, ToolRunner.run(admin, new String[]{"-nameservice", "-err"}));
1951+
assertEquals(-1, ToolRunner.run(admin, new String[]{"-refreshRouterArgs"}));
1952+
assertEquals(-1, ToolRunner.run(admin,
1953+
new String[]{"-refreshSuperUserGroupsConfiguration", "-err"}));
1954+
assertEquals(-1, ToolRunner.run(admin,
1955+
new String[]{"-refreshCallQueue", "-err"}));
1956+
assertEquals(-1, ToolRunner.run(admin, new String[]{"-dumpState", "-err"}));
1957+
assertEquals(-1, ToolRunner.run(admin,
1958+
new String[]{"-getDisabledNameservices", "-err"}));
1959+
1960+
assertEquals(0, ToolRunner.run(admin, new String[]{"-refresh"}));
1961+
assertEquals(0, ToolRunner.run(admin, new String[]{"-ls", "/"}));
1962+
assertEquals(0, ToolRunner.run(admin, new String[]{"-getDestination", "/"}));
1963+
}
1964+
1965+
19281966
private void addMountTable(String src, String nsId, String dst)
19291967
throws Exception {
19301968
String[] argv = new String[] {"-add", src, nsId, dst};

0 commit comments

Comments
 (0)