Просмотр исходного кода

'增加在线编辑配置文件'

o2wwx 5 лет назад
Родитель
Сommit
ce431731b8

+ 39 - 0
o2server/configSample/manifest.cfg

@@ -0,0 +1,39 @@
+{"node_127.0.0.1.json":"节点配置",
+ "appStyle.json":"应用样式配置",
+ "centerServer.json":"中心服务配置",
+ "clientInit.json":"客户端初始化配置",
+ "collect.json":"连接到云平台配置",
+ "communicate.json":"消息配置",
+ "components.json":"组件配置",
+ "dingding.json":"钉钉配置",
+ "dumpRestoreData.json":"导出导入数据配置",
+ "dumpRestoreStorage.json":"导出导入文件配置",
+ "exmail.json":"邮件配置",
+ "externalDataSources.json":"数据库配置",
+ "externalDataSources_db2.json":"db2数据库配置",
+ "externalDataSources_dm.json":"达梦数据库配置",
+ "externalDataSources_informix.json":"informix数据库配置",
+ "externalDataSources_kingbase.json":"金仓数据库配置",
+ "externalDataSources_mysql.json":"mysql数据库配置",
+ "externalDataSources_oracle.json":"oracle数据库配置",
+ "externalDataSources_postgresql.json":"postgresql数据库配置",
+ "externalDataSources_sqlserver.json":"sqlserver数据库配置",
+ "externalStorageSources.json":"文件存储配置",
+ "jpushConfig.json":"极光推送配置",
+ "logLevel.json":"日志配置",
+ "meeting.json":"openMeeting配置",
+ "messages.json":"消息发送配置",
+ "messageSendRule.js":"消息发送规则",
+ "mq.json":"消息队列配置",
+ "person.json":"个人信息配置",
+ "portal.json":"门户配置",
+ "processPlatform.json":"流程平台配置",
+ "pushConfig.json":"极光推送配置",
+ "qiyeweixin.json":"微信配置",
+ "query.json":"定时任务配置",
+ "token.json":"sso配置",
+ "vfs.json":"附件上传配置",
+ "welink.json":"华为WeLink配置",
+ "workTime.json":"工作时间配置",
+ "zhengwuDingding.json":"政务钉钉配置"
+}

+ 13 - 0
o2server/x_program_center/src/main/java/com/x/program/center/jaxrs/EditConfigJaxrsFilter.java

@@ -0,0 +1,13 @@
+package com.x.program.center.jaxrs;
+
+import javax.servlet.annotation.WebFilter;
+
+import com.x.base.core.project.jaxrs.CipherManagerJaxrsFilter;
+
+@WebFilter(urlPatterns = "/jaxrs/editconfig/*", asyncSupported = true)
+public class EditConfigJaxrsFilter extends CipherManagerJaxrsFilter {
+
+	
+	
+	
+}

+ 26 - 34
o2server/x_program_center/src/main/java/com/x/program/center/jaxrs/edit/ActionList.java

@@ -1,28 +1,25 @@
 package com.x.program.center.jaxrs.edit;
 
-import java.io.ByteArrayInputStream;
 import java.io.DataInputStream;
 import java.io.DataOutputStream;
 import java.io.File;
-import java.io.FileInputStream;
-import java.io.InputStream;
+import java.io.FileFilter;
 import java.net.Socket;
 import java.text.SimpleDateFormat;
 import java.util.Date;
 import java.util.HashMap;
 import java.util.Map;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
 
 import javax.servlet.http.HttpServletRequest;
 
 import org.apache.commons.io.FileUtils;
+import org.apache.commons.io.filefilter.WildcardFileFilter;
+import org.apache.commons.lang3.StringUtils;
 
-import com.google.gson.Gson;
-import com.google.gson.JsonElement;
+import com.google.gson.JsonObject;
+import com.google.gson.JsonParser;
 import com.x.base.core.project.annotation.FieldDescribe;
 import com.x.base.core.project.config.Config;
-import com.x.base.core.project.config.Nodes;
 import com.x.base.core.project.gson.GsonPropertyObject;
 import com.x.base.core.project.gson.XGsonBuilder;
 import com.x.base.core.project.http.ActionResult;
@@ -31,7 +28,6 @@ import com.x.base.core.project.logger.Logger;
 import com.x.base.core.project.logger.LoggerFactory;
 import com.x.base.core.project.tools.Crypto;
 import com.x.base.core.project.tools.DefaultCharset;
-import com.x.program.center.jaxrs.command.ActionCommand.Wo;
 
 public class ActionList extends BaseAction {
 	private static Logger logger = LoggerFactory.getLogger(ActionList.class);
@@ -43,9 +39,29 @@ public class ActionList extends BaseAction {
 		if(manifestFile.exists()) {
 			if(manifestFile.isFile()) {
 				String json = FileUtils.readFileToString(manifestFile, DefaultCharset.charset);
-				wo.setConfig(json);
+				
+				FileFilter fileFilter = new WildcardFileFilter("node_*.json");
+				File[] files = Config.dir_config().listFiles(fileFilter);
+				if (null != files && files.length > 0) {
+					String  strNode = "";
+					JsonParser parser = new JsonParser();
+					JsonObject jsonObj = parser.parse(json).getAsJsonObject();
+					jsonObj.remove("node_127.0.0.1.json");
+					
+					for (File o : files) {
+						String name = StringUtils.substringBetween(o.getName(), "node_", ".json");
+						jsonObj.addProperty(o.getName().toString(), name+ "应用节点配置" );
+					}
+					   wo.setConfig(jsonObj.toString());
+				} else {
+					   wo.setConfig(json);
+				}
+				
+				
 			}
 		}
+		
+		
 		SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
 		wo.setTime(df.format(new Date()));
 		wo.setStatus("success");
@@ -83,31 +99,7 @@ public class ActionList extends BaseAction {
 	}
    
 	public static class Wi  extends GsonPropertyObject{
-		@FieldDescribe("命令名称")
-		private String ctl;
-		@FieldDescribe("服务器地址(*代表多台应用服务器)")
-		private String nodeName;
-		@FieldDescribe("服务端口")
-		private String nodePort;
 		
-		public String getCtl() {
-			return ctl;
-		}
-		public void setCtl(String ctl) {
-			this.ctl = ctl;
-		}
-		public String getNodeName() {
-			return nodeName;
-		}
-		public void setNodeName(String nodeName) {
-			this.nodeName = nodeName;
-		}
-		public String getNodePort() {
-			return nodePort;
-		}
-		public void setNodePort(String nodePort) {
-			this.nodePort = nodePort;
-		}
 	}
 	
 	public static class Wo extends GsonPropertyObject {

+ 5 - 4
o2server/x_program_center/src/main/java/com/x/program/center/jaxrs/edit/ActionOpen.java

@@ -42,6 +42,7 @@ public class ActionOpen extends BaseAction {
 		Wi wi = this.convertToWrapIn(jsonElement, Wi.class);
 		Wo wo = new Wo();
 		String fileName = wi.getFileName();
+	
 		File file = new File(Config.base(),"config/"+fileName);
 		wo.setSample(false);
 		 
@@ -65,17 +66,17 @@ public class ActionOpen extends BaseAction {
 	}
 	
 	public static class Wi  extends GsonPropertyObject{
-		
+		/*
 		@FieldDescribe("服务器地址(*代表多台应用服务器)")
 		private String nodeName;
 		
 		@FieldDescribe("服务端口")
 		private String nodePort;
-		
+		*/
 		@FieldDescribe("文件名")
 		private String fileName;
 		
-
+        /*
 		public String getNodeName() {
 			return nodeName;
 		}
@@ -87,7 +88,7 @@ public class ActionOpen extends BaseAction {
 		}
 		public void setNodePort(String nodePort) {
 			this.nodePort = nodePort;
-		}
+		}*/
 		public String getFileName() {
 			return fileName;
 		}

+ 1 - 1
o2server/x_program_center/src/main/java/com/x/program/center/jaxrs/edit/EditConfigAction.java

@@ -44,7 +44,7 @@ public class EditConfigAction<Wo> extends StandardJaxrsAction{
 	}
 	
 	@JaxrsMethodDescribe(value = "打开config文件", action = ActionOpen.class)
-	@GET
+	@POST
 	@Path("open")
 	@Produces(HttpMediaType.APPLICATION_JSON_UTF_8)
 	@Consumes(MediaType.APPLICATION_JSON)