This is an automated email from the ASF dual-hosted git repository.

healchow pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-inlong.git


The following commit(s) were added to refs/heads/master by this push:
     new 75c29aeae [INLONG-4398][Manager] Fix the status display is incomplete 
when the client queries data (#4399)
75c29aeae is described below

commit 75c29aeae4a48c65d2530ad083bdce1ceaec5175
Author: haifxu <[email protected]>
AuthorDate: Thu Jun 2 00:36:08 2022 +0800

    [INLONG-4398][Manager] Fix the status display is incomplete when the client 
queries data (#4399)
---
 .../inlong/manager/client/cli/CommandToolMain.java | 17 +++----------
 .../inlong/manager/client/cli/pojo/GroupInfo.java  |  9 ++++---
 .../inlong/manager/client/cli/pojo/SinkInfo.java   |  6 ++++-
 .../inlong/manager/client/cli/pojo/SourceInfo.java |  6 ++++-
 .../inlong/manager/client/cli/pojo/StreamInfo.java |  6 ++++-
 .../inlong/manager/client/cli/util/PrintUtils.java |  2 --
 .../GroupInfo.java => util/StatusAdapter.java}     | 28 ++++++++++------------
 .../client/api/enums/SimpleGroupStatus.java        |  1 +
 8 files changed, 36 insertions(+), 39 deletions(-)

diff --git 
a/inlong-manager/manager-client-tools/src/main/java/org/apache/inlong/manager/client/cli/CommandToolMain.java
 
b/inlong-manager/manager-client-tools/src/main/java/org/apache/inlong/manager/client/cli/CommandToolMain.java
index 04fc0b9a3..271016a4f 100644
--- 
a/inlong-manager/manager-client-tools/src/main/java/org/apache/inlong/manager/client/cli/CommandToolMain.java
+++ 
b/inlong-manager/manager-client-tools/src/main/java/org/apache/inlong/manager/client/cli/CommandToolMain.java
@@ -21,15 +21,12 @@ import com.beust.jcommander.JCommander;
 import com.beust.jcommander.Parameter;
 
 import java.util.Arrays;
-import java.util.HashMap;
-import java.util.Map;
 
 /**
  * Command tool main.
  */
 public class CommandToolMain {
 
-    protected final Map<String, Class<?>> commandMap = new HashMap<>();
     private final JCommander jcommander;
 
     @Parameter(names = {"-h", "--help"}, help = true, description = "Get all 
command about managerctl.")
@@ -40,17 +37,9 @@ public class CommandToolMain {
         jcommander.setProgramName("managerctl");
         jcommander.addObject(this);
 
-        commandMap.put("list", ListCommand.class);
-        commandMap.put("describe", DescribeCommand.class);
-        commandMap.put("create", CreateCommand.class);
-
-        for (Map.Entry<String, Class<?>> cmd : commandMap.entrySet()) {
-            try {
-                jcommander.addCommand(cmd.getKey(), 
cmd.getValue().getConstructor().newInstance());
-            } catch (Exception e) {
-                e.printStackTrace();
-            }
-        }
+        jcommander.addCommand("list", new ListCommand());
+        jcommander.addCommand("describe", new DescribeCommand());
+        jcommander.addCommand("create", new CreateCommand());
     }
 
     public static void main(String[] args) {
diff --git 
a/inlong-manager/manager-client-tools/src/main/java/org/apache/inlong/manager/client/cli/pojo/GroupInfo.java
 
b/inlong-manager/manager-client-tools/src/main/java/org/apache/inlong/manager/client/cli/pojo/GroupInfo.java
index f0631b13a..4e2bfb341 100644
--- 
a/inlong-manager/manager-client-tools/src/main/java/org/apache/inlong/manager/client/cli/pojo/GroupInfo.java
+++ 
b/inlong-manager/manager-client-tools/src/main/java/org/apache/inlong/manager/client/cli/pojo/GroupInfo.java
@@ -17,8 +17,9 @@
 
 package org.apache.inlong.manager.client.cli.pojo;
 
+import com.google.gson.annotations.JsonAdapter;
 import lombok.Data;
-import org.apache.inlong.manager.client.api.enums.SimpleGroupStatus;
+import org.apache.inlong.manager.client.cli.util.StatusAdapter;
 
 import java.util.Date;
 
@@ -31,11 +32,9 @@ public class GroupInfo {
     private Integer id;
     private String inlongGroupId;
     private String name;
+
+    @JsonAdapter(StatusAdapter.class)
     private String status;
     private Date modifyTime;
 
-    public void setStatus(String status) {
-        SimpleGroupStatus groupStatus = 
SimpleGroupStatus.parseStatusByCode(Integer.parseInt(status));
-        this.status = groupStatus.name() + " (" + status + ")";
-    }
 }
diff --git 
a/inlong-manager/manager-client-tools/src/main/java/org/apache/inlong/manager/client/cli/pojo/SinkInfo.java
 
b/inlong-manager/manager-client-tools/src/main/java/org/apache/inlong/manager/client/cli/pojo/SinkInfo.java
index b8c48b136..9f4be8411 100644
--- 
a/inlong-manager/manager-client-tools/src/main/java/org/apache/inlong/manager/client/cli/pojo/SinkInfo.java
+++ 
b/inlong-manager/manager-client-tools/src/main/java/org/apache/inlong/manager/client/cli/pojo/SinkInfo.java
@@ -17,7 +17,9 @@
 
 package org.apache.inlong.manager.client.cli.pojo;
 
+import com.google.gson.annotations.JsonAdapter;
 import lombok.Data;
+import org.apache.inlong.manager.client.cli.util.StatusAdapter;
 
 import java.util.Date;
 
@@ -28,10 +30,12 @@ import java.util.Date;
 public class SinkInfo {
 
     private Integer id;
-    private Integer status;
     private String inlongGroupId;
     private String inlongStreamId;
     private String sinkType;
     private String sinkName;
+
+    @JsonAdapter(StatusAdapter.class)
+    private String status;
     private Date modifyTime;
 }
diff --git 
a/inlong-manager/manager-client-tools/src/main/java/org/apache/inlong/manager/client/cli/pojo/SourceInfo.java
 
b/inlong-manager/manager-client-tools/src/main/java/org/apache/inlong/manager/client/cli/pojo/SourceInfo.java
index ab62eae42..155d81802 100644
--- 
a/inlong-manager/manager-client-tools/src/main/java/org/apache/inlong/manager/client/cli/pojo/SourceInfo.java
+++ 
b/inlong-manager/manager-client-tools/src/main/java/org/apache/inlong/manager/client/cli/pojo/SourceInfo.java
@@ -17,7 +17,9 @@
 
 package org.apache.inlong.manager.client.cli.pojo;
 
+import com.google.gson.annotations.JsonAdapter;
 import lombok.Data;
+import org.apache.inlong.manager.client.cli.util.StatusAdapter;
 
 import java.util.Date;
 
@@ -33,6 +35,8 @@ public class SourceInfo {
     private String sourceType;
     private String sourceName;
     private String serializationType;
-    private Integer status;
+
+    @JsonAdapter(StatusAdapter.class)
+    private String status;
     private Date modifyTime;
 }
diff --git 
a/inlong-manager/manager-client-tools/src/main/java/org/apache/inlong/manager/client/cli/pojo/StreamInfo.java
 
b/inlong-manager/manager-client-tools/src/main/java/org/apache/inlong/manager/client/cli/pojo/StreamInfo.java
index fc1c28201..5454aed22 100644
--- 
a/inlong-manager/manager-client-tools/src/main/java/org/apache/inlong/manager/client/cli/pojo/StreamInfo.java
+++ 
b/inlong-manager/manager-client-tools/src/main/java/org/apache/inlong/manager/client/cli/pojo/StreamInfo.java
@@ -17,7 +17,9 @@
 
 package org.apache.inlong.manager.client.cli.pojo;
 
+import com.google.gson.annotations.JsonAdapter;
 import lombok.Data;
+import org.apache.inlong.manager.client.cli.util.StatusAdapter;
 
 import java.util.Date;
 
@@ -33,6 +35,8 @@ public class StreamInfo {
     private String dataType;
     private String dataEncoding;
     private String dataSeparator;
-    private Integer status;
+
+    @JsonAdapter(StatusAdapter.class)
+    private String status;
     private Date modifyTime;
 }
diff --git 
a/inlong-manager/manager-client-tools/src/main/java/org/apache/inlong/manager/client/cli/util/PrintUtils.java
 
b/inlong-manager/manager-client-tools/src/main/java/org/apache/inlong/manager/client/cli/util/PrintUtils.java
index 897407900..79daf4c02 100644
--- 
a/inlong-manager/manager-client-tools/src/main/java/org/apache/inlong/manager/client/cli/util/PrintUtils.java
+++ 
b/inlong-manager/manager-client-tools/src/main/java/org/apache/inlong/manager/client/cli/util/PrintUtils.java
@@ -26,7 +26,6 @@ import org.apache.commons.lang3.StringUtils;
 import java.lang.reflect.Field;
 import java.text.SimpleDateFormat;
 import java.util.ArrayList;
-import java.util.Arrays;
 import java.util.Date;
 import java.util.List;
 
@@ -123,7 +122,6 @@ public class PrintUtils {
                 e.printStackTrace();
             }
         });
-        System.out.println(Arrays.toString(maxWidth));
         for (int i = 0; i < maxWidth.length; i++) {
             maxWidth[i] += 4;
         }
diff --git 
a/inlong-manager/manager-client-tools/src/main/java/org/apache/inlong/manager/client/cli/pojo/GroupInfo.java
 
b/inlong-manager/manager-client-tools/src/main/java/org/apache/inlong/manager/client/cli/util/StatusAdapter.java
similarity index 57%
copy from 
inlong-manager/manager-client-tools/src/main/java/org/apache/inlong/manager/client/cli/pojo/GroupInfo.java
copy to 
inlong-manager/manager-client-tools/src/main/java/org/apache/inlong/manager/client/cli/util/StatusAdapter.java
index f0631b13a..d8f86b6de 100644
--- 
a/inlong-manager/manager-client-tools/src/main/java/org/apache/inlong/manager/client/cli/pojo/GroupInfo.java
+++ 
b/inlong-manager/manager-client-tools/src/main/java/org/apache/inlong/manager/client/cli/util/StatusAdapter.java
@@ -15,27 +15,25 @@
  * limitations under the License.
  */
 
-package org.apache.inlong.manager.client.cli.pojo;
+package org.apache.inlong.manager.client.cli.util;
 
-import lombok.Data;
+import com.google.gson.JsonDeserializationContext;
+import com.google.gson.JsonDeserializer;
+import com.google.gson.JsonElement;
+import com.google.gson.JsonParseException;
 import org.apache.inlong.manager.client.api.enums.SimpleGroupStatus;
 
-import java.util.Date;
+import java.lang.reflect.Type;
 
 /**
- * Group info, including inlong group id, inlong group name, etc.
+ * Status adapter.
  */
-@Data
-public class GroupInfo {
+public class StatusAdapter implements JsonDeserializer {
 
-    private Integer id;
-    private String inlongGroupId;
-    private String name;
-    private String status;
-    private Date modifyTime;
-
-    public void setStatus(String status) {
-        SimpleGroupStatus groupStatus = 
SimpleGroupStatus.parseStatusByCode(Integer.parseInt(status));
-        this.status = groupStatus.name() + " (" + status + ")";
+    @Override
+    public String deserialize(JsonElement json, Type typeOfT, 
JsonDeserializationContext context)
+            throws JsonParseException {
+        SimpleGroupStatus simpleGroupStatus = 
SimpleGroupStatus.parseStatusByCode(json.getAsInt());
+        return simpleGroupStatus + " (" + json.getAsInt() + ")";
     }
 }
diff --git 
a/inlong-manager/manager-client/src/main/java/org/apache/inlong/manager/client/api/enums/SimpleGroupStatus.java
 
b/inlong-manager/manager-client/src/main/java/org/apache/inlong/manager/client/api/enums/SimpleGroupStatus.java
index c3feed776..fa3ea039b 100644
--- 
a/inlong-manager/manager-client/src/main/java/org/apache/inlong/manager/client/api/enums/SimpleGroupStatus.java
+++ 
b/inlong-manager/manager-client/src/main/java/org/apache/inlong/manager/client/api/enums/SimpleGroupStatus.java
@@ -84,6 +84,7 @@ public enum SimpleGroupStatus {
         switch (groupStatus) {
             case CREATE:
                 statusList.add(GroupStatus.DRAFT.getCode());
+                statusList.add(GroupStatus.TO_BE_SUBMIT.getCode());
                 return statusList;
             case OPERATING:
                 statusList.add(GroupStatus.DELETING.getCode());

Reply via email to