You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tubemq.apache.org by yu...@apache.org on 2021/02/02 02:37:55 UTC
[incubator-tubemq] branch TUBEMQ-421 updated: [TUBEMQ-532] query
cluster info (#420)
This is an automated email from the ASF dual-hosted git repository.
yuanbo pushed a commit to branch TUBEMQ-421
in repository https://gitbox.apache.org/repos/asf/incubator-tubemq.git
The following commit(s) were added to refs/heads/TUBEMQ-421 by this push:
new 1bbb8c9 [TUBEMQ-532] query cluster info (#420)
1bbb8c9 is described below
commit 1bbb8c998aeb4ce28073b37b90baa69f5aac0ed0
Author: EMsnap <zp...@connect.ust.hk>
AuthorDate: Tue Feb 2 10:37:43 2021 +0800
[TUBEMQ-532] query cluster info (#420)
---
.../controller/cluster/ClusterController.java | 31 +++++++++++++++++-----
.../tubemq/manager/service/ClusterServiceImpl.java | 12 +++++++++
.../manager/service/interfaces/ClusterService.java | 15 +++++++++++
3 files changed, 51 insertions(+), 7 deletions(-)
diff --git a/tubemq-manager/src/main/java/org/apache/tubemq/manager/controller/cluster/ClusterController.java b/tubemq-manager/src/main/java/org/apache/tubemq/manager/controller/cluster/ClusterController.java
index a350913..5d1ea75 100644
--- a/tubemq-manager/src/main/java/org/apache/tubemq/manager/controller/cluster/ClusterController.java
+++ b/tubemq-manager/src/main/java/org/apache/tubemq/manager/controller/cluster/ClusterController.java
@@ -20,23 +20,19 @@ package org.apache.tubemq.manager.controller.cluster;
import static org.apache.tubemq.manager.service.MasterServiceImpl.TUBE_REQUEST_PATH;
import static org.apache.tubemq.manager.service.TubeMQHttpConst.ADD;
import static org.apache.tubemq.manager.service.TubeMQHttpConst.DELETE;
-import static org.apache.tubemq.manager.service.TubeMQHttpConst.REBALANCE_CONSUMER;
-import static org.apache.tubemq.manager.service.TubeMQHttpConst.REBALANCE_CONSUMER_GROUP;
import static org.apache.tubemq.manager.service.TubeMQHttpConst.SCHEMA;
import static org.apache.tubemq.manager.service.TubeMQHttpConst.SUCCESS_CODE;
import static org.apache.tubemq.manager.utils.ConvertUtils.covertMapToQueryString;
import com.google.gson.Gson;
+import java.util.List;
import java.util.Map;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.apache.tubemq.manager.controller.TubeMQResult;
import org.apache.tubemq.manager.controller.cluster.request.AddClusterReq;
import org.apache.tubemq.manager.controller.cluster.request.DeleteClusterReq;
-import org.apache.tubemq.manager.controller.topic.request.BatchAddGroupAuthReq;
-import org.apache.tubemq.manager.controller.topic.request.DeleteGroupReq;
-import org.apache.tubemq.manager.controller.topic.request.RebalanceConsumerReq;
-import org.apache.tubemq.manager.controller.topic.request.RebalanceGroupReq;
+import org.apache.tubemq.manager.entry.ClusterEntry;
import org.apache.tubemq.manager.entry.NodeEntry;
import org.apache.tubemq.manager.repository.NodeRepository;
import org.apache.tubemq.manager.service.interfaces.ClusterService;
@@ -101,7 +97,28 @@ public class ClusterController {
return new TubeMQResult();
}
-
+ /**
+ * query cluster info, if no clusterId is passed, return all clusters
+ * @param clusterId
+ * @return
+ */
+ @RequestMapping(value = "", method = RequestMethod.GET,
+ produces = MediaType.APPLICATION_JSON_VALUE)
+ public TubeMQResult queryCluster(@RequestParam(required = false) Integer clusterId) {
+ // return all clusters if no clusterId passed
+ TubeMQResult result = new TubeMQResult();
+ if (clusterId == null) {
+ List<ClusterEntry> allClusters = clusterService.getAllClusters();
+ result.setData(gson.toJson(allClusters));
+ return result;
+ }
+ ClusterEntry clusterEntry = clusterService.getOneCluster(clusterId);
+ if (clusterEntry == null) {
+ return TubeMQResult.getErrorResult("no such cluster with id " + clusterId);
+ }
+ result.setData(gson.toJson(clusterEntry));
+ return result;
+ }
/**
* delete a new cluster
diff --git a/tubemq-manager/src/main/java/org/apache/tubemq/manager/service/ClusterServiceImpl.java b/tubemq-manager/src/main/java/org/apache/tubemq/manager/service/ClusterServiceImpl.java
index 69c6341..67ef3fb 100644
--- a/tubemq-manager/src/main/java/org/apache/tubemq/manager/service/ClusterServiceImpl.java
+++ b/tubemq-manager/src/main/java/org/apache/tubemq/manager/service/ClusterServiceImpl.java
@@ -21,6 +21,7 @@ package org.apache.tubemq.manager.service;
import static org.apache.tubemq.manager.service.TubeMQHttpConst.DELETE_FAIL;
import java.util.Date;
+import java.util.List;
import javax.transaction.Transactional;
import lombok.extern.slf4j.Slf4j;
import org.apache.tubemq.manager.controller.cluster.request.AddClusterReq;
@@ -69,6 +70,17 @@ public class ClusterServiceImpl implements ClusterService {
}
}
+ @Override
+ public ClusterEntry getOneCluster(Integer clusterId) {
+ return clusterRepository
+ .findClusterEntryByClusterId(clusterId);
+ }
+
+ @Override
+ public List<ClusterEntry> getAllClusters() {
+ return clusterRepository.findAll();
+ }
+
private boolean addMasterNode(AddClusterReq req, ClusterEntry clusterEntry) {
if (clusterEntry == null) {
return false;
diff --git a/tubemq-manager/src/main/java/org/apache/tubemq/manager/service/interfaces/ClusterService.java b/tubemq-manager/src/main/java/org/apache/tubemq/manager/service/interfaces/ClusterService.java
index aa513ce..1aeb2b4 100644
--- a/tubemq-manager/src/main/java/org/apache/tubemq/manager/service/interfaces/ClusterService.java
+++ b/tubemq-manager/src/main/java/org/apache/tubemq/manager/service/interfaces/ClusterService.java
@@ -18,7 +18,9 @@
package org.apache.tubemq.manager.service.interfaces;
+import java.util.List;
import org.apache.tubemq.manager.controller.cluster.request.AddClusterReq;
+import org.apache.tubemq.manager.entry.ClusterEntry;
import org.springframework.stereotype.Component;
@Component
@@ -36,4 +38,17 @@ public interface ClusterService {
* @param clusterId
*/
void deleteCluster(Integer clusterId);
+
+ /**
+ * get one cluster
+ * @param clusterId
+ * @return
+ */
+ ClusterEntry getOneCluster(Integer clusterId);
+
+ /**
+ * get all clusters
+ * @return
+ */
+ List<ClusterEntry> getAllClusters();
}