diff --git a/eventmesh-dashboard-common/pom.xml b/eventmesh-dashboard-common/pom.xml
index d6c277c5..6c895104 100644
--- a/eventmesh-dashboard-common/pom.xml
+++ b/eventmesh-dashboard-common/pom.xml
@@ -19,6 +19,7 @@
+
org.springframework.boot
@@ -40,30 +41,6 @@
fastjson2
2.0.40
-
-
-
-
- io.lettuce
- lettuce-core
-
-
-
- com.alibaba.nacos
- nacos-client
- ${nacos.version}
-
-
-
- org.apache.rocketmq
- rocketmq-client
- ${rocketmq.version}
-
-
- org.apache.rocketmq
- rocketmq-tools
- ${rocketmq.version}
-
\ No newline at end of file
diff --git a/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/constant/StoreTypeConstant.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/constant/StoreTypeConstant.java
new file mode 100644
index 00000000..dfa3711c
--- /dev/null
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/constant/StoreTypeConstant.java
@@ -0,0 +1,29 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.eventmesh.dashboard.common.constant;
+
+public class StoreTypeConstant {
+ public static final String STORE_TYPE_TYPE_UNKNOWN = "unknown";
+ public static final String STORE_TYPE_STANDALONE = "standalone";
+ public static final String STORE_TYPE_REDIS = "redis";
+ public static final String STORE_TYPE_MYSQL = "mysql";
+ public static final String STORE_TYPE_ROCKETMQ = "rocketmq4";
+ public static final String STORE_TYPE_KAFKA = "kafka";
+ public static final String STORE_TYPE_PULSAR = "pulsar";
+ public static final String STORE_TYPE_RABBITMQ = "rabbitmq";
+}
diff --git a/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/constant/health/HealthCheckTypeConstant.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/constant/health/HealthCheckTypeConstant.java
index ff9c602a..5252899e 100644
--- a/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/constant/health/HealthCheckTypeConstant.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/constant/health/HealthCheckTypeConstant.java
@@ -17,6 +17,8 @@
package org.apache.eventmesh.dashboard.common.constant.health;
+import org.apache.eventmesh.dashboard.common.constant.StoreTypeConstant;
+
public class HealthCheckTypeConstant {
public static final String HEALTH_CHECK_TYPE_UNKNOWN = "unknown";
@@ -28,11 +30,9 @@ public class HealthCheckTypeConstant {
public static final String HEALTH_CHECK_TYPE_META = "meta";
public static final String HEALTH_CHECK_TYPE_TOPIC = "topic";
- public static final String HEALTH_CHECK_SUBTYPE_REDIS = "redis";
- public static final String HEALTH_CHECK_SUBTYPE_MYSQL = "mysql";
- public static final String HEALTH_CHECK_SUBTYPE_ROCKETMQ_BROKER = "rocketmq4-broker";
- public static final String HEALTH_CHECK_SUBTYPE_ROCKETMQ_NAMESERVER = "rocketmq4-nameserver";
- public static final String HEALTH_CHECK_SUBTYPE_ROCKETMQ_TOPIC = "rocketmq4-topic";
+ public static final String HEALTH_CHECK_SUBTYPE_REDIS = StoreTypeConstant.STORE_TYPE_REDIS;
+ public static final String HEALTH_CHECK_SUBTYPE_MYSQL = StoreTypeConstant.STORE_TYPE_MYSQL;
+ public static final String HEALTH_CHECK_SUBTYPE_ROCKETMQ = StoreTypeConstant.STORE_TYPE_ROCKETMQ;
public static final String HEALTH_CHECK_SUBTYPE_NACOS_CONFIG = "nacos-config";
public static final String HEALTH_CHECK_SUBTYPE_NACOS_REGISTRY = "nacos-registry";
diff --git a/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/enums/StoreType.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/enums/StoreType.java
index d5146b14..ed15a868 100644
--- a/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/enums/StoreType.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/enums/StoreType.java
@@ -17,21 +17,51 @@
package org.apache.eventmesh.dashboard.common.enums;
+import static org.apache.eventmesh.dashboard.common.constant.StoreTypeConstant.STORE_TYPE_KAFKA;
+import static org.apache.eventmesh.dashboard.common.constant.StoreTypeConstant.STORE_TYPE_PULSAR;
+import static org.apache.eventmesh.dashboard.common.constant.StoreTypeConstant.STORE_TYPE_RABBITMQ;
+import static org.apache.eventmesh.dashboard.common.constant.StoreTypeConstant.STORE_TYPE_REDIS;
+import static org.apache.eventmesh.dashboard.common.constant.StoreTypeConstant.STORE_TYPE_ROCKETMQ;
+import static org.apache.eventmesh.dashboard.common.constant.StoreTypeConstant.STORE_TYPE_STANDALONE;
+
import lombok.AllArgsConstructor;
import lombok.Getter;
@AllArgsConstructor
public enum StoreType {
- STANDALONE(0, "Standalone"),
- ROCKETMQ(1, "RocketMQ"),
- KAFKA(2, "Kafka"),
- PULSAR(3, "Pulsar"),
- RABBITMQ(4, "RabbitMQ"),
- REDIS(5, "Redis");
+ STANDALONE(0, STORE_TYPE_STANDALONE),
+ ROCKETMQ(1, STORE_TYPE_ROCKETMQ),
+ KAFKA(2, STORE_TYPE_KAFKA),
+ PULSAR(3, STORE_TYPE_PULSAR),
+ RABBITMQ(4, STORE_TYPE_RABBITMQ),
+ REDIS(5, STORE_TYPE_REDIS);
@Getter
private final Integer number;
@Getter
private final String name;
+
+ public static StoreType fromNumber(Integer number) {
+ for (StoreType storeType : StoreType.values()) {
+ if (storeType.getNumber().equals(number)) {
+ return storeType;
+ }
+ }
+ return null;
+ }
+
+ public static StoreType fromName(String name) {
+ for (StoreType storeType : StoreType.values()) {
+ if (storeType.getName().equalsIgnoreCase(name)) {
+ return storeType;
+ }
+ }
+ return null;
+ }
+
+ @Override
+ public String toString() {
+ return name;
+ }
}
diff --git a/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/enums/health/HealthCheckStatus.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/enums/health/HealthCheckStatus.java
index 17856f87..75423765 100644
--- a/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/enums/health/HealthCheckStatus.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/enums/health/HealthCheckStatus.java
@@ -26,7 +26,8 @@ public enum HealthCheckStatus {
FAILED(0, "failed"),
PASSED(1, "passed"),
CHECKING(2, "checking"),
- TIMEOUT(3, "timeout");
+ TIMEOUT(3, "timeout"),
+ NOT_CONNECTED(4, "not connected");
private final Integer number;
private final String name;
diff --git a/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/metadata/ClusterMetadata.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/metadata/ClusterMetadata.java
index 432f9fe0..c65e27a8 100644
--- a/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/metadata/ClusterMetadata.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/metadata/ClusterMetadata.java
@@ -44,6 +44,9 @@ public class ClusterMetadata extends MetadataConfig {
private Integer status;
+ /**
+ * @see StoreType
+ */
private StoreType storeType;
private String description;
diff --git a/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/metadata/RuntimeMetadata.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/metadata/RuntimeMetadata.java
index 5bdab8f3..e8d1432a 100644
--- a/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/metadata/RuntimeMetadata.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/metadata/RuntimeMetadata.java
@@ -17,9 +17,15 @@
package org.apache.eventmesh.dashboard.common.model.metadata;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
import lombok.Data;
+import lombok.NoArgsConstructor;
@Data
+@NoArgsConstructor
+@AllArgsConstructor
+@Builder
public class RuntimeMetadata extends MetadataConfig {
private String host;
diff --git a/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/acl/CreateAclRequest.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/acl/CreateAclRequest.java
index 2c2ae35c..08b80990 100644
--- a/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/acl/CreateAclRequest.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/acl/CreateAclRequest.java
@@ -18,5 +18,6 @@
package org.apache.eventmesh.dashboard.common.model.remoting.acl;
public class CreateAclRequest {
-
+ //acl is included in runtime config
+ private String runtimeAddress;
}
diff --git a/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/group/GetGroupsResponse.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/group/GetGroupsResponse.java
index 60968105..fbe90235 100644
--- a/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/group/GetGroupsResponse.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/group/GetGroupsResponse.java
@@ -22,5 +22,6 @@
import java.util.List;
public class GetGroupsResponse {
+
private List groupList;
}
diff --git a/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/offset/ResetOffsetRequest.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/offset/ResetOffsetRequest.java
index cf77017e..f33d8a75 100644
--- a/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/offset/ResetOffsetRequest.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/offset/ResetOffsetRequest.java
@@ -29,7 +29,7 @@ public class ResetOffsetRequest {
private String topic;
- private String bootStrapServers;
+ private String bootstrapServers;
private Integer partitionId;
diff --git a/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/runtime/GetRuntimeResponse.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/runtime/GetRuntimeResponse.java
index 27917ba9..783a78ab 100644
--- a/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/runtime/GetRuntimeResponse.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/runtime/GetRuntimeResponse.java
@@ -26,5 +26,5 @@
@Data
public class GetRuntimeResponse {
- private List runtimeMetadata;
+ private List runtimeMetadataList;
}
diff --git a/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/subscription/GetSubscriptionResponse.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/subscription/GetSubscriptionResponse.java
index 2c0a0660..853675f5 100644
--- a/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/subscription/GetSubscriptionResponse.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/subscription/GetSubscriptionResponse.java
@@ -18,12 +18,5 @@
package org.apache.eventmesh.dashboard.common.model.remoting.subscription;
public class GetSubscriptionResponse {
- // client name
- private String clientName;
- // group name
- private String group;
-
- // config content
- private String subscription;
}
diff --git a/eventmesh-dashboard-console/pom.xml b/eventmesh-dashboard-console/pom.xml
index 020bd9e0..016215da 100644
--- a/eventmesh-dashboard-console/pom.xml
+++ b/eventmesh-dashboard-console/pom.xml
@@ -19,12 +19,23 @@
+
+
+ org.springframework.boot
+ spring-boot-starter-web
+
+
org.apache.eventmesh.dashboard.common
eventmesh-dashboard-common
0.0.1-SNAPSHOT
+
+ org.apache.eventmesh.dashboard.core
+ eventmesh-dashboard-core
+ 0.0.1-SNAPSHOT
+
org.apache.eventmesh.dashboard.service
eventmesh-dashboard-service
@@ -79,29 +90,29 @@
runtime
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/annotation/HealthCheckType.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/annotation/HealthCheckType.java
index 7a23b902..0d3750ca 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/annotation/HealthCheckType.java
+++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/annotation/HealthCheckType.java
@@ -24,7 +24,7 @@
/**
* This annotation is used to mark the type of health check service implement.
- * @see org.apache.eventmesh.dashboard.console.enums.health.HealthCheckType
+ * @see org.apache.eventmesh.dashboard.common.enums.health.HealthCheckType
*/
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/check/impl/storage/rocketmq4/Rocketmq4BrokerCheck.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/check/impl/storage/rocketmq4/Rocketmq4BrokerCheck.java
index 7f8e56c7..b60a73ce 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/check/impl/storage/rocketmq4/Rocketmq4BrokerCheck.java
+++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/check/impl/storage/rocketmq4/Rocketmq4BrokerCheck.java
@@ -17,10 +17,6 @@
package org.apache.eventmesh.dashboard.console.function.health.check.impl.storage.rocketmq4;
-import static org.apache.eventmesh.dashboard.common.constant.health.HealthCheckTypeConstant.HEALTH_CHECK_SUBTYPE_ROCKETMQ_BROKER;
-import static org.apache.eventmesh.dashboard.common.constant.health.HealthCheckTypeConstant.HEALTH_CHECK_TYPE_STORAGE;
-
-import org.apache.eventmesh.dashboard.console.function.health.annotation.HealthCheckType;
import org.apache.eventmesh.dashboard.console.function.health.callback.HealthCheckCallback;
import org.apache.eventmesh.dashboard.console.function.health.check.AbstractHealthCheckService;
import org.apache.eventmesh.dashboard.console.function.health.check.config.HealthCheckObjectConfig;
@@ -36,7 +32,6 @@
import lombok.extern.slf4j.Slf4j;
@Slf4j
-@HealthCheckType(type = HEALTH_CHECK_TYPE_STORAGE, subType = HEALTH_CHECK_SUBTYPE_ROCKETMQ_BROKER)
public class Rocketmq4BrokerCheck extends AbstractHealthCheckService {
private RemotingClient remotingClient;
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/check/impl/storage/rocketmq4/Rocketmq4NameServerCheck.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/check/impl/storage/rocketmq4/Rocketmq4NameServerCheck.java
index e855ba18..7ba3667e 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/check/impl/storage/rocketmq4/Rocketmq4NameServerCheck.java
+++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/check/impl/storage/rocketmq4/Rocketmq4NameServerCheck.java
@@ -34,7 +34,7 @@
import lombok.extern.slf4j.Slf4j;
@Slf4j
-@HealthCheckType(type = HealthCheckTypeConstant.HEALTH_CHECK_TYPE_STORAGE, subType = HealthCheckTypeConstant.HEALTH_CHECK_SUBTYPE_ROCKETMQ_NAMESERVER)
+@HealthCheckType(type = HealthCheckTypeConstant.HEALTH_CHECK_TYPE_STORAGE, subType = HealthCheckTypeConstant.HEALTH_CHECK_SUBTYPE_ROCKETMQ)
public class Rocketmq4NameServerCheck extends AbstractHealthCheckService {
private RemotingClient remotingClient;
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/check/impl/storage/rocketmq4/Rocketmq4TopicCheck.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/check/impl/storage/rocketmq4/Rocketmq4TopicCheck.java
index 739ac445..6656589c 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/check/impl/storage/rocketmq4/Rocketmq4TopicCheck.java
+++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/check/impl/storage/rocketmq4/Rocketmq4TopicCheck.java
@@ -19,9 +19,7 @@
import static org.apache.rocketmq.client.producer.SendStatus.SEND_OK;
-import org.apache.eventmesh.dashboard.common.constant.health.HealthCheckTypeConstant;
import org.apache.eventmesh.dashboard.common.constant.health.HealthConstant;
-import org.apache.eventmesh.dashboard.console.function.health.annotation.HealthCheckType;
import org.apache.eventmesh.dashboard.console.function.health.callback.HealthCheckCallback;
import org.apache.eventmesh.dashboard.console.function.health.check.AbstractHealthCheckService;
import org.apache.eventmesh.dashboard.console.function.health.check.config.HealthCheckObjectConfig;
@@ -57,7 +55,6 @@
import lombok.extern.slf4j.Slf4j;
@Slf4j
-@HealthCheckType(type = HealthCheckTypeConstant.HEALTH_CHECK_TYPE_STORAGE, subType = HealthCheckTypeConstant.HEALTH_CHECK_SUBTYPE_ROCKETMQ_TOPIC)
public class Rocketmq4TopicCheck extends AbstractHealthCheckService {
private RemotingClient remotingClient;
diff --git a/eventmesh-dashboard-core/pom.xml b/eventmesh-dashboard-core/pom.xml
index 64d6dff9..ca133402 100644
--- a/eventmesh-dashboard-core/pom.xml
+++ b/eventmesh-dashboard-core/pom.xml
@@ -21,8 +21,8 @@
-->
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
4.0.0
org.apache.eventmesh.dashboard
@@ -52,11 +52,11 @@
0.0.1-SNAPSHOT
-
+
com.alibaba.nacos
nacos-client
- 2.2.4
+ ${nacos.version}
io.etcd
@@ -64,12 +64,49 @@
0.3.0
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ io.lettuce
+ lettuce-core
+
+
org.apache.rocketmq
rocketmq-client
- 4.9.7
+ 4.9.4
+
+
+ org.apache.rocketmq
+ rocketmq-tools
+ 4.9.4
+
+
+
+ org.apache.kafka
+ kafka-clients
+