Commit 73ed7dce by Nepxion

增加图形化灰度发布功能

parent 0b7ee6d1
...@@ -214,7 +214,7 @@ public class ServiceTopology extends AbstractTopology { ...@@ -214,7 +214,7 @@ public class ServiceTopology extends AbstractTopology {
try { try {
instanceMap = ServiceController.getInstanceMap(); instanceMap = ServiceController.getInstanceMap();
} catch (Exception e) { } catch (Exception e) {
JExceptionDialog.traceException(HandleManager.getFrame(this), "获取服务和实例列表失败", e); JExceptionDialog.traceException(HandleManager.getFrame(this), ConsoleLocale.getString("get_service_instances_failure"), e);
return; return;
} }
...@@ -261,7 +261,13 @@ public class ServiceTopology extends AbstractTopology { ...@@ -261,7 +261,13 @@ public class ServiceTopology extends AbstractTopology {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
public void execute(ActionEvent e) { public void execute(ActionEvent e) {
TGroup group = TElementManager.getSelectedGroup(dataBox);
TNode node = TElementManager.getSelectedNode(dataBox);
if (group == null && node == null) {
JBasicOptionPane.showMessageDialog(HandleManager.getFrame(ServiceTopology.this), ConsoleLocale.getString("select_a_group_or_node"), SwingLocale.getString("warning"), JBasicOptionPane.WARNING_MESSAGE);
return;
}
} }
}; };
...@@ -274,36 +280,38 @@ public class ServiceTopology extends AbstractTopology { ...@@ -274,36 +280,38 @@ public class ServiceTopology extends AbstractTopology {
public void execute(ActionEvent e) { public void execute(ActionEvent e) {
TGroup group = TElementManager.getSelectedGroup(dataBox); TGroup group = TElementManager.getSelectedGroup(dataBox);
if (group != null) { if (group == null) {
@SuppressWarnings("unchecked") JBasicOptionPane.showMessageDialog(HandleManager.getFrame(ServiceTopology.this), ConsoleLocale.getString("select_a_group"), SwingLocale.getString("warning"), JBasicOptionPane.WARNING_MESSAGE);
List<TNode> nodes = group.getChildren();
Iterator<TNode> iterator = nodes.iterator();
while (iterator.hasNext()) {
TNode node = iterator.next();
InstanceEntity instance = (InstanceEntity) node.getUserObject();
try {
List<String> versions = ServiceController.getVersions(instance);
List<String> rules = ServiceController.getRules(instance);
instance.setVersion(versions.get(0));
instance.setDynamicVersion(versions.get(1));
instance.setRule(rules.get(0));
instance.setDynamicRule(rules.get(1));
updateNode(node, instance);
} catch (Exception ex) {
JExceptionDialog.traceException(HandleManager.getFrame(ServiceTopology.this), "查询数据失败,可能该实例已下线", ex);
iterator.remove();
dataBox.removeElement(node);
}
}
updateGroup(group); return;
} else {
JBasicOptionPane.showMessageDialog(HandleManager.getFrame(ServiceTopology.this), "请选择一个服务集群", SwingLocale.getString("error"), JBasicOptionPane.ERROR_MESSAGE);
} }
@SuppressWarnings("unchecked")
List<TNode> nodes = group.getChildren();
Iterator<TNode> iterator = nodes.iterator();
while (iterator.hasNext()) {
TNode node = iterator.next();
InstanceEntity instance = (InstanceEntity) node.getUserObject();
try {
List<String> versions = ServiceController.getVersions(instance);
List<String> rules = ServiceController.getRules(instance);
instance.setVersion(versions.get(0));
instance.setDynamicVersion(versions.get(1));
instance.setRule(rules.get(0));
instance.setDynamicRule(rules.get(1));
updateNode(node, instance);
} catch (Exception ex) {
JExceptionDialog.traceException(HandleManager.getFrame(ServiceTopology.this), ConsoleLocale.getString("query_data_failure"), ex);
iterator.remove();
dataBox.removeElement(node);
}
}
updateGroup(group);
} }
}; };
...@@ -315,7 +323,12 @@ public class ServiceTopology extends AbstractTopology { ...@@ -315,7 +323,12 @@ public class ServiceTopology extends AbstractTopology {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
public void execute(ActionEvent e) { public void execute(ActionEvent e) {
TNode node = TElementManager.getSelectedNode(dataBox);
if (node == null) {
JBasicOptionPane.showMessageDialog(HandleManager.getFrame(ServiceTopology.this), ConsoleLocale.getString("select_a_node"), SwingLocale.getString("warning"), JBasicOptionPane.WARNING_MESSAGE);
return;
}
} }
}; };
...@@ -327,7 +340,12 @@ public class ServiceTopology extends AbstractTopology { ...@@ -327,7 +340,12 @@ public class ServiceTopology extends AbstractTopology {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
public void execute(ActionEvent e) { public void execute(ActionEvent e) {
TNode node = TElementManager.getSelectedNode(dataBox);
if (node == null) {
JBasicOptionPane.showMessageDialog(HandleManager.getFrame(ServiceTopology.this), ConsoleLocale.getString("select_a_node"), SwingLocale.getString("warning"), JBasicOptionPane.WARNING_MESSAGE);
return;
}
} }
}; };
......
...@@ -11,6 +11,13 @@ refresh_gray_state=刷新灰度状态 ...@@ -11,6 +11,13 @@ refresh_gray_state=刷新灰度状态
view_service_info=查看服务信息 view_service_info=查看服务信息
view_router_info=查看路由信息 view_router_info=查看路由信息
get_service_instances_failure=获取服务和实例列表失败
query_data_failure=查询数据失败,可能该实例已下线
select_a_group=请选择一个服务集群
select_a_node=请选择一个服务
select_a_group_or_node=请选择一个服务或者服务集群
group_layout=组布局 group_layout=组布局
node_layout=节点布局 node_layout=节点布局
start_x=起始点X坐标 start_x=起始点X坐标
......
...@@ -11,6 +11,13 @@ refresh_gray_state=\u5237\u65b0\u7070\u5ea6\u72b6\u6001 ...@@ -11,6 +11,13 @@ refresh_gray_state=\u5237\u65b0\u7070\u5ea6\u72b6\u6001
view_service_info=\u67e5\u770b\u670d\u52a1\u4fe1\u606f view_service_info=\u67e5\u770b\u670d\u52a1\u4fe1\u606f
view_router_info=\u67e5\u770b\u8def\u7531\u4fe1\u606f view_router_info=\u67e5\u770b\u8def\u7531\u4fe1\u606f
get_service_instances_failure=\u83b7\u53d6\u670d\u52a1\u548c\u5b9e\u4f8b\u5217\u8868\u5931\u8d25
query_data_failure=\u67e5\u8be2\u6570\u636e\u5931\u8d25\uff0c\u53ef\u80fd\u8be5\u5b9e\u4f8b\u5df2\u4e0b\u7ebf
select_a_group=\u8bf7\u9009\u62e9\u4e00\u4e2a\u670d\u52a1\u96c6\u7fa4
select_a_node=\u8bf7\u9009\u62e9\u4e00\u4e2a\u670d\u52a1
select_a_group_or_node=\u8bf7\u9009\u62e9\u4e00\u4e2a\u670d\u52a1\u6216\u8005\u670d\u52a1\u96c6\u7fa4
group_layout=\u7ec4\u5e03\u5c40 group_layout=\u7ec4\u5e03\u5c40
node_layout=\u8282\u70b9\u5e03\u5c40 node_layout=\u8282\u70b9\u5e03\u5c40
start_x=\u8d77\u59cb\u70b9X\u5750\u6807 start_x=\u8d77\u59cb\u70b9X\u5750\u6807
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment