Skip to content

Commit 9d3ed27

Browse files
committed
添加配置保存至文件中。
1 parent abbe457 commit 9d3ed27

3 files changed

Lines changed: 30 additions & 7 deletions

File tree

src/main/java/com/xwintop/xJavaFxTool/controller/epmsTools/gatewayConfTool/GatewayConfToolController.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -142,6 +142,8 @@ private void initService() {
142142
@FXML
143143
private void treeRefurbishAction(ActionEvent event) {
144144
gatewayConfToolService.reloadTaskConfigFile();
145+
taskConfigTabPane.getTabs().removeAll(taskConfigTabPane.getTabs());
146+
gatewayConfToolService.getTaskConfigTabMap().clear();
145147
}
146148

147149
@FXML

src/main/java/com/xwintop/xJavaFxTool/controller/epmsTools/gatewayConfTool/GatewayConfToolTaskViewController.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -258,7 +258,11 @@ private void initService() {
258258

259259
@FXML
260260
void saveTaskConfigAction(ActionEvent event) {
261-
gatewayConfToolTaskViewService.saveTaskConfigAction();
261+
try {
262+
gatewayConfToolTaskViewService.saveTaskConfigAction();
263+
} catch (Exception e) {
264+
e.printStackTrace();
265+
}
262266
}
263267

264268
public void setData(GatewayConfToolController gatewayConfToolController, TaskConfig taskConfig) {

src/main/java/com/xwintop/xJavaFxTool/services/epmsTools/gatewayConfTool/GatewayConfToolTaskViewService.java

Lines changed: 23 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -15,12 +15,13 @@
1515
import lombok.Setter;
1616
import lombok.extern.slf4j.Slf4j;
1717
import org.apache.commons.lang3.StringUtils;
18+
import org.yaml.snakeyaml.Yaml;
1819

20+
import java.io.File;
21+
import java.io.FileWriter;
1922
import java.io.IOException;
20-
import java.util.ArrayList;
21-
import java.util.HashMap;
22-
import java.util.List;
23-
import java.util.Map;
23+
import java.io.Writer;
24+
import java.util.*;
2425

2526
@Getter
2627
@Setter
@@ -81,17 +82,27 @@ public void handle(Event event) {
8182
serviceViewTabMap.put(tabName, tab);
8283
}
8384

84-
public void saveTaskConfigAction() {
85+
public void saveTaskConfigAction() throws Exception {
8586
TaskConfig taskConfig = gatewayConfToolTaskViewController.getTaskConfig();
87+
String fileName = gatewayConfToolTaskViewController.getFileName();
8688
String taskConfigName = gatewayConfToolTaskViewController.getNameTextField().getText();
8789
if (!taskConfig.getName().equals(taskConfigName)) {
8890
String oldTaskConfigName = taskConfig.getName();
8991
taskConfig.setName(taskConfigName);
9092
gatewayConfToolTaskViewController.setTabName(taskConfigName);
9193
gatewayConfToolController.getGatewayConfToolService().getTaskConfigTabMap().get(oldTaskConfigName).setText(taskConfigName);
92-
Map<String, TaskConfig> taskConfigMap = gatewayConfToolController.getGatewayConfToolService().getTaskConfigFileMap().get(gatewayConfToolTaskViewController.getFileName());
94+
Map<String, TaskConfig> taskConfigMap = gatewayConfToolController.getGatewayConfToolService().getTaskConfigFileMap().get(fileName);
9395
taskConfigMap.put(taskConfigName, taskConfigMap.get(oldTaskConfigName));
9496
taskConfigMap.remove(oldTaskConfigName);
97+
gatewayConfToolController.getConfigurationTreeView().getRoot().getChildren().forEach(stringTreeItem -> {
98+
if (fileName.equals(stringTreeItem.getValue())) {
99+
stringTreeItem.getChildren().forEach(stringTreeItem1 -> {
100+
if (oldTaskConfigName.equals(stringTreeItem1.getValue())) {
101+
stringTreeItem1.setValue(taskConfigName);
102+
}
103+
});
104+
}
105+
});
95106
}
96107
taskConfig.setIsEnable(gatewayConfToolTaskViewController.getIsEnableCheckBox().isSelected());
97108
String taskType = gatewayConfToolTaskViewController.getTaskTypeTextField().getText();
@@ -106,5 +117,11 @@ public void saveTaskConfigAction() {
106117
gatewayConfToolTaskViewController.getPropertiesTableData().forEach(map -> {
107118
taskConfig.getProperties().put(map.get("key"), map.get("value"));
108119
});
120+
if ("127.0.0.1".equals(gatewayConfToolController.getHostTextField().getText())) {
121+
File file = new File(gatewayConfToolController.getConfigurationPathTextField().getText(), fileName);
122+
Yaml yaml = new Yaml();
123+
Writer writer = new FileWriter(file);
124+
yaml.dump(Arrays.asList(taskConfig), writer);
125+
}
109126
}
110127
}

0 commit comments

Comments
 (0)