justinmclean commented on code in PR #5793:
URL: https://github.com/apache/gravitino/pull/5793#discussion_r1875329017
##########
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:
In this case, comment is defined in both the create and update cases, if
they were to be removed the code will not compile.
--
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]