You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@inlong.apache.org by he...@apache.org on 2022/08/09 09:52:10 UTC

[inlong] branch master updated: [INLONG-5424][Manager] Fix JSON serialization error for Authentication (#5426)

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/inlong.git


The following commit(s) were added to refs/heads/master by this push:
     new 5128d0c1b [INLONG-5424][Manager] Fix JSON serialization error for Authentication (#5426)
5128d0c1b is described below

commit 5128d0c1b7ff659a42083f803a04afb8ce70661f
Author: Xin Gong <ge...@gmail.com>
AuthorDate: Tue Aug 9 17:52:06 2022 +0800

    [INLONG-5424][Manager] Fix JSON serialization error for Authentication (#5426)
---
 .../org/apache/inlong/manager/client/api/inner/ClientFactoryTest.java | 2 ++
 .../java/org/apache/inlong/manager/common/auth/Authentication.java    | 2 ++
 .../org/apache/inlong/manager/common/auth/DefaultAuthentication.java  | 4 ++++
 .../org/apache/inlong/manager/common/auth/SecretAuthentication.java   | 4 ++++
 .../apache/inlong/manager/common/auth/SecretTokenAuthentication.java  | 2 ++
 .../org/apache/inlong/manager/common/auth/TokenAuthentication.java    | 2 ++
 .../main/java/org/apache/inlong/manager/common/util/JsonUtils.java    | 2 +-
 7 files changed, 17 insertions(+), 1 deletion(-)

diff --git a/inlong-manager/manager-client/src/test/java/org/apache/inlong/manager/client/api/inner/ClientFactoryTest.java b/inlong-manager/manager-client/src/test/java/org/apache/inlong/manager/client/api/inner/ClientFactoryTest.java
index 582aabc7c..59e200338 100644
--- a/inlong-manager/manager-client/src/test/java/org/apache/inlong/manager/client/api/inner/ClientFactoryTest.java
+++ b/inlong-manager/manager-client/src/test/java/org/apache/inlong/manager/client/api/inner/ClientFactoryTest.java
@@ -35,6 +35,7 @@ import org.apache.inlong.manager.client.api.inner.client.StreamSinkClient;
 import org.apache.inlong.manager.client.api.inner.client.StreamSourceClient;
 import org.apache.inlong.manager.client.api.util.ClientUtils;
 import org.apache.inlong.manager.common.auth.DefaultAuthentication;
+import org.apache.inlong.manager.common.auth.TokenAuthentication;
 import org.apache.inlong.manager.common.consts.DataNodeType;
 import org.apache.inlong.manager.common.consts.MQType;
 import org.apache.inlong.manager.common.consts.SinkType;
@@ -153,6 +154,7 @@ class ClientFactoryTest {
     @Test
     void testGetGroupInfo() {
         FlinkSortConf flinkSortConf = new FlinkSortConf();
+        flinkSortConf.setAuthentication(new TokenAuthentication());
         InlongPulsarInfo inlongGroupResponse = InlongPulsarInfo.builder()
                 .id(1)
                 .inlongGroupId("1")
diff --git a/inlong-manager/manager-common/src/main/java/org/apache/inlong/manager/common/auth/Authentication.java b/inlong-manager/manager-common/src/main/java/org/apache/inlong/manager/common/auth/Authentication.java
index 6231f91f1..047983f26 100644
--- a/inlong-manager/manager-common/src/main/java/org/apache/inlong/manager/common/auth/Authentication.java
+++ b/inlong-manager/manager-common/src/main/java/org/apache/inlong/manager/common/auth/Authentication.java
@@ -17,11 +17,13 @@
 
 package org.apache.inlong.manager.common.auth;
 
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
 import com.fasterxml.jackson.databind.ObjectMapper;
 
 import java.util.Locale;
 import java.util.Map;
 
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, visible = true, property = "type")
 public interface Authentication {
 
     ObjectMapper OBJECT_MAPPER = new ObjectMapper();
diff --git a/inlong-manager/manager-common/src/main/java/org/apache/inlong/manager/common/auth/DefaultAuthentication.java b/inlong-manager/manager-common/src/main/java/org/apache/inlong/manager/common/auth/DefaultAuthentication.java
index 4661356a9..3ef45a874 100644
--- a/inlong-manager/manager-common/src/main/java/org/apache/inlong/manager/common/auth/DefaultAuthentication.java
+++ b/inlong-manager/manager-common/src/main/java/org/apache/inlong/manager/common/auth/DefaultAuthentication.java
@@ -20,6 +20,7 @@ package org.apache.inlong.manager.common.auth;
 import com.fasterxml.jackson.databind.node.ObjectNode;
 import lombok.Getter;
 import lombok.NoArgsConstructor;
+import org.apache.inlong.manager.common.util.JsonTypeDefine;
 import org.apache.inlong.manager.common.util.Preconditions;
 
 import java.util.Map;
@@ -28,8 +29,11 @@ import java.util.Map;
  * Default authentication.
  */
 @NoArgsConstructor
+@JsonTypeDefine(value = DefaultAuthentication.DEFAULT)
 public class DefaultAuthentication implements Authentication {
 
+    public static final String DEFAULT = "default";
+
     public static final String USERNAME = "username";
     public static final String PASSWORD = "password";
 
diff --git a/inlong-manager/manager-common/src/main/java/org/apache/inlong/manager/common/auth/SecretAuthentication.java b/inlong-manager/manager-common/src/main/java/org/apache/inlong/manager/common/auth/SecretAuthentication.java
index 46dde8f8f..e8d69086c 100644
--- a/inlong-manager/manager-common/src/main/java/org/apache/inlong/manager/common/auth/SecretAuthentication.java
+++ b/inlong-manager/manager-common/src/main/java/org/apache/inlong/manager/common/auth/SecretAuthentication.java
@@ -20,6 +20,7 @@ package org.apache.inlong.manager.common.auth;
 import com.fasterxml.jackson.databind.node.ObjectNode;
 import lombok.Getter;
 import lombok.NoArgsConstructor;
+import org.apache.inlong.manager.common.util.JsonTypeDefine;
 import org.apache.inlong.manager.common.util.Preconditions;
 
 import java.util.Map;
@@ -28,8 +29,11 @@ import java.util.Map;
  * Secret authentication.
  */
 @NoArgsConstructor
+@JsonTypeDefine(value = SecretAuthentication.SECRET)
 public class SecretAuthentication implements Authentication {
 
+    public static final String SECRET = "secret";
+
     public static final String SECRET_ID = "secret_id";
 
     public static final String SECRET_KEY = "secret_key";
diff --git a/inlong-manager/manager-common/src/main/java/org/apache/inlong/manager/common/auth/SecretTokenAuthentication.java b/inlong-manager/manager-common/src/main/java/org/apache/inlong/manager/common/auth/SecretTokenAuthentication.java
index 5908629c1..31867493a 100644
--- a/inlong-manager/manager-common/src/main/java/org/apache/inlong/manager/common/auth/SecretTokenAuthentication.java
+++ b/inlong-manager/manager-common/src/main/java/org/apache/inlong/manager/common/auth/SecretTokenAuthentication.java
@@ -21,6 +21,7 @@ import com.fasterxml.jackson.databind.node.ObjectNode;
 import lombok.Getter;
 import lombok.NoArgsConstructor;
 import lombok.SneakyThrows;
+import org.apache.inlong.manager.common.util.JsonTypeDefine;
 
 import java.util.Map;
 
@@ -28,6 +29,7 @@ import java.util.Map;
  * Secret token authentication.
  */
 @NoArgsConstructor
+@JsonTypeDefine(value = SecretTokenAuthentication.SECRET_TOKEN)
 public class SecretTokenAuthentication extends SecretAuthentication {
 
     public static final String SECRET_TOKEN = "secret_token";
diff --git a/inlong-manager/manager-common/src/main/java/org/apache/inlong/manager/common/auth/TokenAuthentication.java b/inlong-manager/manager-common/src/main/java/org/apache/inlong/manager/common/auth/TokenAuthentication.java
index a5f23bb0f..efaab3fb2 100644
--- a/inlong-manager/manager-common/src/main/java/org/apache/inlong/manager/common/auth/TokenAuthentication.java
+++ b/inlong-manager/manager-common/src/main/java/org/apache/inlong/manager/common/auth/TokenAuthentication.java
@@ -20,6 +20,7 @@ package org.apache.inlong.manager.common.auth;
 import com.fasterxml.jackson.databind.node.ObjectNode;
 import lombok.Getter;
 import lombok.NoArgsConstructor;
+import org.apache.inlong.manager.common.util.JsonTypeDefine;
 import org.apache.inlong.manager.common.util.Preconditions;
 
 import java.util.Map;
@@ -28,6 +29,7 @@ import java.util.Map;
  * Token authentication.
  */
 @NoArgsConstructor
+@JsonTypeDefine(value = TokenAuthentication.TOKEN)
 public class TokenAuthentication implements Authentication {
 
     public static final String TOKEN = "token";
diff --git a/inlong-manager/manager-common/src/main/java/org/apache/inlong/manager/common/util/JsonUtils.java b/inlong-manager/manager-common/src/main/java/org/apache/inlong/manager/common/util/JsonUtils.java
index 42b9354a2..f53ac723d 100644
--- a/inlong-manager/manager-common/src/main/java/org/apache/inlong/manager/common/util/JsonUtils.java
+++ b/inlong-manager/manager-common/src/main/java/org/apache/inlong/manager/common/util/JsonUtils.java
@@ -46,7 +46,7 @@ import java.util.Set;
 @UtilityClass
 public class JsonUtils {
 
-    public static final String PROJECT_PACKAGE = "org.apache.inlong.manager.pojo";
+    public static final String PROJECT_PACKAGE = "org.apache.inlong.manager";
     public static final ObjectMapper OBJECT_MAPPER = new ObjectMapper();
 
     static {