justinmclean commented on code in PR #5793:
URL: https://github.com/apache/gravitino/pull/5793#discussion_r1875321828
##########
clients/cli/src/main/java/org/apache/gravitino/cli/GravitinoCommandLine.java:
##########
@@ -538,87 +679,93 @@ private void handleColumnCommand() {
Command.setAuthenticationMode(auth, userName);
- if (CommandActions.LIST.equals(command)) {
- newListColumns(url, ignore, metalake, catalog, schema, table).handle();
- } else if (CommandActions.CREATE.equals(command)) {
- String datatype = line.getOptionValue(GravitinoOptions.DATATYPE);
- String comment = line.getOptionValue(GravitinoOptions.COMMENT);
- String position = line.getOptionValue(GravitinoOptions.POSITION);
- boolean nullable = true;
- boolean autoIncrement = false;
- String defaultValue = line.getOptionValue(GravitinoOptions.DEFAULT);
-
- if (line.hasOption(GravitinoOptions.NULL)) {
- nullable = line.getOptionValue(GravitinoOptions.NULL).equals("true");
- }
-
- if (line.hasOption(GravitinoOptions.AUTO)) {
- autoIncrement =
line.getOptionValue(GravitinoOptions.AUTO).equals("true");
- }
-
- newAddColumn(
- url,
- ignore,
- metalake,
- catalog,
- schema,
- table,
- column,
- datatype,
- comment,
- position,
- nullable,
- autoIncrement,
- defaultValue)
- .handle();
- } else if (CommandActions.DELETE.equals(command)) {
- newDeleteColumn(url, ignore, metalake, catalog, schema, table,
column).handle();
- } else if (CommandActions.UPDATE.equals(command)) {
- if (line.hasOption(GravitinoOptions.COMMENT)) {
- String comment = line.getOptionValue(GravitinoOptions.COMMENT);
- newUpdateColumnComment(url, ignore, metalake, catalog, schema, table,
column, comment)
- .handle();
- }
- if (line.hasOption(GravitinoOptions.RENAME)) {
- String newName = line.getOptionValue(GravitinoOptions.RENAME);
- newUpdateColumnName(url, ignore, metalake, catalog, schema, table,
column, newName)
- .handle();
- }
- if (line.hasOption(GravitinoOptions.DATATYPE)) {
- String datatype = line.getOptionValue(GravitinoOptions.DATATYPE);
- newUpdateColumnDatatype(url, ignore, metalake, catalog, schema, table,
column, datatype)
- .handle();
- }
- if (line.hasOption(GravitinoOptions.POSITION)) {
- String position = line.getOptionValue(GravitinoOptions.POSITION);
- newUpdateColumnPosition(url, ignore, metalake, catalog, schema, table,
column, position)
- .handle();
- }
- if (line.hasOption(GravitinoOptions.NULL)) {
- if (line.getOptionValue(GravitinoOptions.NULL).equals("true")) {
- newUpdateColumnNullability(url, ignore, metalake, catalog, schema,
table, column, true)
- .handle();
- } else if (line.getOptionValue(GravitinoOptions.NULL).equals("false"))
{
- newUpdateColumnNullability(url, ignore, metalake, catalog, schema,
table, column, false)
+ switch (command) {
+ case CommandActions.LIST:
+ newListColumns(url, ignore, metalake, catalog, schema, table).handle();
+ break;
+
+ case CommandActions.CREATE:
+ {
+ String datatype = line.getOptionValue(GravitinoOptions.DATATYPE);
+ String comment = line.getOptionValue(GravitinoOptions.COMMENT);
+ String position = line.getOptionValue(GravitinoOptions.POSITION);
+ boolean nullable =
+ !line.hasOption(GravitinoOptions.NULL)
+ || line.getOptionValue(GravitinoOptions.NULL).equals("true");
+ boolean autoIncrement =
+ line.hasOption(GravitinoOptions.AUTO)
+ && line.getOptionValue(GravitinoOptions.AUTO).equals("true");
+ String defaultValue = line.getOptionValue(GravitinoOptions.DEFAULT);
+
+ newAddColumn(
+ url,
+ ignore,
+ metalake,
+ catalog,
+ schema,
+ table,
+ column,
+ datatype,
+ comment,
+ position,
+ nullable,
+ autoIncrement,
+ defaultValue)
.handle();
+ break;
}
- }
- if (line.hasOption(GravitinoOptions.AUTO)) {
- if (line.getOptionValue(GravitinoOptions.AUTO).equals("true")) {
- newUpdateColumnAutoIncrement(url, ignore, metalake, catalog, schema,
table, column, true)
- .handle();
- } else if (line.getOptionValue(GravitinoOptions.AUTO).equals("false"))
{
- newUpdateColumnAutoIncrement(url, ignore, metalake, catalog, schema,
table, column, false)
- .handle();
+
+ case CommandActions.DELETE:
+ newDeleteColumn(url, ignore, metalake, catalog, schema, table,
column).handle();
+ break;
+
+ case CommandActions.UPDATE:
+ {
Review Comment:
No. they cannot, due to variable scope issues. Unfortunately, variables in a
cases scope is the switch block not just the case itself.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]