From df33dff3ff52af562bfe5594516abd1092c42a09 Mon Sep 17 00:00:00 2001 From: handy Date: Wed, 6 Sep 2023 11:32:53 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BD=BF=E7=94=A8lambda=20=E7=AE=80=E5=8C=96?= =?UTF-8?q?=E4=B8=80=E4=BA=9B=E6=96=B9=E6=B3=95=E5=86=99=E6=B3=95=20?= =?UTF-8?q?=E7=A7=BB=E9=99=A4=E4=B8=80=E4=BA=9B=E5=AF=BC=E8=87=B4idea?= =?UTF-8?q?=E6=8F=90=E9=86=92=E7=9A=84=E5=A4=9A=E4=BD=99<>?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/com/cym/config/InitConfig.java | 4 +- .../java/com/cym/config/VersionConfig.java | 2 +- .../controller/adminPage/AdminController.java | 2 +- .../controller/adminPage/CertController.java | 28 +++++--- .../controller/adminPage/ConfController.java | 10 +-- .../controller/adminPage/LoginController.java | 2 +- .../controller/adminPage/RootController.java | 24 +++---- .../adminPage/ServerController.java | 67 ++++++++++--------- .../java/com/cym/service/RemoteService.java | 2 +- .../java/com/cym/service/ServerService.java | 6 +- .../cym/sqlhelper/utils/ConditionWrapper.java | 6 +- .../sqlhelper/utils/ImportOrExportUtil.java | 4 +- .../java/com/cym/utils/BLogFileTailer.java | 24 +++---- src/main/java/com/cym/utils/NetWorkUtil.java | 6 +- src/main/java/com/cym/utils/PwdCheckUtil.java | 16 ++--- src/main/java/com/cym/utils/TelnetUtils.java | 8 +-- 16 files changed, 99 insertions(+), 112 deletions(-) diff --git a/src/main/java/com/cym/config/InitConfig.java b/src/main/java/com/cym/config/InitConfig.java index f8a2a781..f0f4a0e2 100644 --- a/src/main/java/com/cym/config/InitConfig.java +++ b/src/main/java/com/cym/config/InitConfig.java @@ -76,7 +76,7 @@ public class InitConfig { // 初始化base值 Long count = sqlHelper.findAllCount(Basic.class); if (count == 0) { - List basics = new ArrayList(); + List basics = new ArrayList<>(); basics.add(new Basic("worker_processes", "auto", 1l)); basics.add(new Basic("events", "{\r\n worker_connections 1024;\r\n accept_mutex on;\r\n}", 2l)); sqlHelper.insertAll(basics); @@ -85,7 +85,7 @@ public class InitConfig { // 初始化http值 count = sqlHelper.findAllCount(Http.class); if (count == 0) { - List https = new ArrayList(); + List https = new ArrayList<>(); https.add(new Http("include", "mime.types", 0l)); https.add(new Http("default_type", "application/octet-stream", 1l)); sqlHelper.insertAll(https); diff --git a/src/main/java/com/cym/config/VersionConfig.java b/src/main/java/com/cym/config/VersionConfig.java index cc7174cb..14fff485 100644 --- a/src/main/java/com/cym/config/VersionConfig.java +++ b/src/main/java/com/cym/config/VersionConfig.java @@ -76,7 +76,7 @@ public class VersionConfig { if (SystemTool.isWindows() && basePath.startsWith("/")) { basePath = basePath.substring(1); } - if (basePath.indexOf("/target/") != -1) { + if (basePath.contains("/target/")) { basePath = basePath.substring(0, basePath.indexOf("/target/")); } Model model = reader.read(new FileReader(new File(basePath, "pom.xml"))); diff --git a/src/main/java/com/cym/controller/adminPage/AdminController.java b/src/main/java/com/cym/controller/adminPage/AdminController.java index 38b90480..d01ec0aa 100644 --- a/src/main/java/com/cym/controller/adminPage/AdminController.java +++ b/src/main/java/com/cym/controller/adminPage/AdminController.java @@ -163,7 +163,7 @@ public class AdminController extends BaseController { h = 300; } try { - Hashtable hints = new Hashtable(); + Hashtable hints = new Hashtable<>(); hints.put(EncodeHintType.CHARACTER_SET, "utf-8"); hints.put(EncodeHintType.MARGIN, 0); diff --git a/src/main/java/com/cym/controller/adminPage/CertController.java b/src/main/java/com/cym/controller/adminPage/CertController.java index dd6d650d..aa7ec71d 100644 --- a/src/main/java/com/cym/controller/adminPage/CertController.java +++ b/src/main/java/com/cym/controller/adminPage/CertController.java @@ -190,17 +190,23 @@ public class CertController extends BaseController { if (cert.getType() == 0) { // DNS API申请 String dnsType = ""; - if (cert.getDnsType().equals("ali")) { - dnsType = "dns_ali"; - } else if (cert.getDnsType().equals("dp")) { - dnsType = "dns_dp"; - } else if (cert.getDnsType().equals("cf")) { - dnsType = "dns_cf"; - } else if (cert.getDnsType().equals("gd")) { - dnsType = "dns_gd"; - } else if (cert.getDnsType().equals("hw")) { - dnsType = "dns_huaweicloud"; - } + switch (cert.getDnsType()) { + case "ali": + dnsType = "dns_ali"; + break; + case "dp": + dnsType = "dns_dp"; + break; + case "cf": + dnsType = "dns_cf"; + break; + case "gd": + dnsType = "dns_gd"; + break; + case "hw": + dnsType = "dns_huaweicloud"; + break; + } cmd = homeConfig.acmeSh + " --issue --dns " + dnsType + domain + keylength + " --server letsencrypt"; } else if (cert.getType() == 2) { // DNS TXT申请 diff --git a/src/main/java/com/cym/controller/adminPage/ConfController.java b/src/main/java/com/cym/controller/adminPage/ConfController.java index 980a8cc6..b00d8589 100644 --- a/src/main/java/com/cym/controller/adminPage/ConfController.java +++ b/src/main/java/com/cym/controller/adminPage/ConfController.java @@ -106,10 +106,7 @@ public class ConfController extends BaseController { String nginxContent = Base64.decodeStr(jsonObject.getStr("nginxContent")); List subContent = jsonObject.getJSONArray("subContent").toList(String.class); - for (int i = 0; i < subContent.size(); i++) { - String content = Base64.decodeStr(subContent.get(i)); - subContent.set(i, content); - } + subContent.replaceAll(Base64::decodeStr); List subName = jsonObject.getJSONArray("subName").toList(String.class); if (nginxPath == null) { @@ -223,10 +220,7 @@ public class ConfController extends BaseController { String nginxContent = Base64.decodeStr(jsonObject.getStr("nginxContent"), CharsetUtil.CHARSET_UTF_8); List subContent = jsonObject.getJSONArray("subContent").toList(String.class); - for (int i = 0; i < subContent.size(); i++) { - String content = Base64.decodeStr(subContent.get(i), CharsetUtil.CHARSET_UTF_8); - subContent.set(i, content); - } + subContent.replaceAll(source -> Base64.decodeStr(source, CharsetUtil.CHARSET_UTF_8)); // 替换分解域名include路径中的目标conf.d为temp/conf.d String confDir = ToolUtils.handlePath(new File(nginxPath).getParent()) + "/conf.d/"; diff --git a/src/main/java/com/cym/controller/adminPage/LoginController.java b/src/main/java/com/cym/controller/adminPage/LoginController.java index c0b3a812..0f5bccdd 100644 --- a/src/main/java/com/cym/controller/adminPage/LoginController.java +++ b/src/main/java/com/cym/controller/adminPage/LoginController.java @@ -243,7 +243,7 @@ public class LoginController extends BaseController { settingService.remove("remoteCode"); // 立刻销毁验证码 - Map map = new HashMap(); + Map map = new HashMap<>(); map.put("creditKey", creditService.make(admin.getId())); map.put("system", SystemTool.getSystem()); return renderSuccess(map); diff --git a/src/main/java/com/cym/controller/adminPage/RootController.java b/src/main/java/com/cym/controller/adminPage/RootController.java index bf0a6ab7..760f56e4 100644 --- a/src/main/java/com/cym/controller/adminPage/RootController.java +++ b/src/main/java/com/cym/controller/adminPage/RootController.java @@ -27,7 +27,7 @@ public class RootController extends BaseController { id = "/"; } - List list = new ArrayList(); + List list = new ArrayList<>(); File[] fileList = null; if (SystemTool.isWindows() && id.equals("/")) { @@ -61,21 +61,17 @@ public class RootController extends BaseController { } // 按文件夹进行排序 - list.sort(new Comparator() { + list.sort((o1, o2) -> { - @Override - public int compare(TreeNode o1, TreeNode o2) { + if (o1.getIsParent().equals("true") && o2.getIsParent().equals("false")) { + return -1; + } + if (o1.getIsParent().equals("false") && o2.getIsParent().equals("true")) { + return 1; + } - if (o1.getIsParent().equals("true") && o2.getIsParent().equals("false")) { - return -1; - } - if (o1.getIsParent().equals("false") && o2.getIsParent().equals("true")) { - return 1; - } - - return o1.getName().compareToIgnoreCase(o2.getName()); - } - }); + return o1.getName().compareToIgnoreCase(o2.getName()); + }); return list; } diff --git a/src/main/java/com/cym/controller/adminPage/ServerController.java b/src/main/java/com/cym/controller/adminPage/ServerController.java index 16139699..a10f36c7 100644 --- a/src/main/java/com/cym/controller/adminPage/ServerController.java +++ b/src/main/java/com/cym/controller/adminPage/ServerController.java @@ -67,7 +67,7 @@ public class ServerController extends BaseController { public ModelAndView index(ModelAndView modelAndView, Page page, String keywords) { page = serverService.search(page, keywords); - List exts = new ArrayList(); + List exts = new ArrayList<>(); for (Server server : (List) page.getRecords()) { ServerExt serverExt = new ServerExt(); if (server.getEnable() == null) { @@ -119,7 +119,7 @@ public class ServerController extends BaseController { } private String buildLocationStr(String id) { - List str = new ArrayList(); + List str = new ArrayList<>(); List locations = serverService.getLocationByServerId(id); for (Location location : locations) { @@ -266,35 +266,40 @@ public class ServerController extends BaseController { @Mapping("preview") public JsonResult preview(String id, String type) { NgxBlock ngxBlock = null; - if (type.equals("server")) { - Server server = sqlHelper.findById(id, Server.class); - ngxBlock = confService.bulidBlockServer(server); - } else if (type.equals("upstream")) { - Upstream upstream = sqlHelper.findById(id, Upstream.class); - ngxBlock = confService.buildBlockUpstream(upstream); - } else if (type.equals("http")) { - List httpList = sqlHelper.findAll(new Sort("seq", Direction.ASC), Http.class); - ngxBlock = new NgxBlock(); - ngxBlock.addValue("http"); - for (Http http : httpList) { - if (http.getEnable() == null || !http.getEnable()) { - continue; - } - - NgxParam ngxParam = new NgxParam(); - ngxParam.addValue(http.getName().trim() + " " + http.getValue().trim()); - ngxBlock.addEntry(ngxParam); - } - } else if (type.equals("stream")) { - List streamList = sqlHelper.findAll(new Sort("seq", Direction.ASC), Stream.class); - ngxBlock = new NgxBlock(); - ngxBlock.addValue("stream"); - for (Stream stream : streamList) { - NgxParam ngxParam = new NgxParam(); - ngxParam.addValue(stream.getName() + " " + stream.getValue()); - ngxBlock.addEntry(ngxParam); - } - } + switch (type) { + case "server": + Server server = sqlHelper.findById(id, Server.class); + ngxBlock = confService.bulidBlockServer(server); + break; + case "upstream": + Upstream upstream = sqlHelper.findById(id, Upstream.class); + ngxBlock = confService.buildBlockUpstream(upstream); + break; + case "http": + List httpList = sqlHelper.findAll(new Sort("seq", Direction.ASC), Http.class); + ngxBlock = new NgxBlock(); + ngxBlock.addValue("http"); + for (Http http : httpList) { + if (http.getEnable() == null || !http.getEnable()) { + continue; + } + + NgxParam ngxParam = new NgxParam(); + ngxParam.addValue(http.getName().trim() + " " + http.getValue().trim()); + ngxBlock.addEntry(ngxParam); + } + break; + case "stream": + List streamList = sqlHelper.findAll(new Sort("seq", Direction.ASC), Stream.class); + ngxBlock = new NgxBlock(); + ngxBlock.addValue("stream"); + for (Stream stream : streamList) { + NgxParam ngxParam = new NgxParam(); + ngxParam.addValue(stream.getName() + " " + stream.getValue()); + ngxBlock.addEntry(ngxParam); + } + break; + } NgxConfig ngxConfig = new NgxConfig(); ngxConfig.addEntry(ngxBlock); diff --git a/src/main/java/com/cym/service/RemoteService.java b/src/main/java/com/cym/service/RemoteService.java index 9b43d258..9f30999b 100644 --- a/src/main/java/com/cym/service/RemoteService.java +++ b/src/main/java/com/cym/service/RemoteService.java @@ -30,7 +30,7 @@ public class RemoteService { AdminService adminService; public void getCreditKey(Remote remote, String code, String auth) { - Map paramMap = new HashMap(); + Map paramMap = new HashMap<>(); paramMap.put("name", Base64.encode(Base64.encode(remote.getName()))); paramMap.put("pass", Base64.encode(Base64.encode(remote.getPass()))); diff --git a/src/main/java/com/cym/service/ServerService.java b/src/main/java/com/cym/service/ServerService.java index 1cea84f6..81cc402e 100644 --- a/src/main/java/com/cym/service/ServerService.java +++ b/src/main/java/com/cym/service/ServerService.java @@ -77,7 +77,7 @@ public class ServerService { sqlHelper.insertOrUpdate(server); - List paramList = new ArrayList(); + List paramList = new ArrayList<>(); if (StrUtil.isNotEmpty(serverParamJson) && JSONUtil.isTypeJSON(serverParamJson)) { paramList = JSONUtil.toList(JSONUtil.parseArray(serverParamJson), Param.class); } @@ -103,7 +103,7 @@ public class ServerService { location.setDescr(findLocationDescr(locationOlds, location)); sqlHelper.insert(location); - paramList = new ArrayList(); + paramList = new ArrayList<>(); if (StrUtil.isNotEmpty(location.getLocationParamJson()) && JSONUtil.isJson(location.getLocationParamJson())) { paramList = JSONUtil.toList(JSONUtil.parseArray(location.getLocationParamJson()), Param.class); } @@ -144,7 +144,7 @@ public class ServerService { List locationIds = sqlHelper.findIdsByQuery(new ConditionAndWrapper().eq("serverId", server.getId()), Location.class); sqlHelper.deleteByQuery(new ConditionOrWrapper().eq("serverId", server.getId()).in("locationId", locationIds), Param.class); - List paramList = new ArrayList(); + List paramList = new ArrayList<>(); if (StrUtil.isNotEmpty(serverParamJson) && JSONUtil.isTypeJSON(serverParamJson)) { paramList = JSONUtil.toList(JSONUtil.parseArray(serverParamJson), Param.class); } diff --git a/src/main/java/com/cym/sqlhelper/utils/ConditionWrapper.java b/src/main/java/com/cym/sqlhelper/utils/ConditionWrapper.java index 0ec1316f..a3db148f 100644 --- a/src/main/java/com/cym/sqlhelper/utils/ConditionWrapper.java +++ b/src/main/java/com/cym/sqlhelper/utils/ConditionWrapper.java @@ -15,7 +15,7 @@ import cn.hutool.core.util.StrUtil; public abstract class ConditionWrapper { boolean andLink; - List list = new ArrayList(); + List list = new ArrayList<>(); /** * 将Wrapper转化为Condition @@ -27,7 +27,7 @@ public abstract class ConditionWrapper { public String build(List values) { String sql = ""; if (list.size() > 0) { - List blocks = new ArrayList(); + List blocks = new ArrayList<>(); for (Object object : list) { if (object instanceof Condition) { Condition condition = (Condition) object; @@ -81,7 +81,7 @@ public abstract class ConditionWrapper { } public String buildIn(Object value) { - List ask = new ArrayList(); + List ask = new ArrayList<>(); for (Object obj : (Collection) value) { ask.add("?"); } diff --git a/src/main/java/com/cym/sqlhelper/utils/ImportOrExportUtil.java b/src/main/java/com/cym/sqlhelper/utils/ImportOrExportUtil.java index 0b6188ec..af559ded 100644 --- a/src/main/java/com/cym/sqlhelper/utils/ImportOrExportUtil.java +++ b/src/main/java/com/cym/sqlhelper/utils/ImportOrExportUtil.java @@ -56,7 +56,7 @@ public class ImportOrExportUtil { break; } - List lines = new ArrayList(); + List lines = new ArrayList<>(); for (Object object : page.getRecords()) { lines.add(JSONUtil.toJsonStr(object)); } @@ -99,7 +99,7 @@ public class ImportOrExportUtil { sqlHelper.deleteByQuery(new ConditionAndWrapper(), clazz); reader = FileUtil.getReader(file, Charset.forName("UTF-8")); - List list = new ArrayList(); + List list = new ArrayList<>(); while (true) { String json = reader.readLine(); if (StrUtil.isEmpty(json)) { diff --git a/src/main/java/com/cym/utils/BLogFileTailer.java b/src/main/java/com/cym/utils/BLogFileTailer.java index 09b03452..369b01c7 100644 --- a/src/main/java/com/cym/utils/BLogFileTailer.java +++ b/src/main/java/com/cym/utils/BLogFileTailer.java @@ -22,12 +22,8 @@ public class BLogFileTailer { .builder()// .expiration(20, TimeUnit.SECONDS)// .expirationPolicy(ExpirationPolicy.ACCESSED)// - .expirationListener(new ExpirationListener() { - @Override - public void expired(String guid, Tailer tailer) { - tailer.stop(); - tailer = null; - } + .expirationListener((ExpirationListener) (guid, tailer) -> { + tailer.stop(); }).build();// public Map> lineMap = ExpiringMap// @@ -39,17 +35,13 @@ public class BLogFileTailer { public String run(String guid, String path) { if (tailerMap.get(guid) == null) { - Tailer tailer = new Tailer(new File(path), new LineHandler() { + Tailer tailer = new Tailer(new File(path), line -> { + if (lineMap.get(guid) == null) { + lineMap.put(guid, new Vector<>()); + } - @Override - public void handle(String line) { - if (lineMap.get(guid) == null) { - lineMap.put(guid, new Vector()); - } - - lineMap.get(guid).add("
" + line + "
"); - } - }, 50); + lineMap.get(guid).add("
" + line + "
"); + }, 50); tailer.start(true); tailerMap.put(guid, tailer); diff --git a/src/main/java/com/cym/utils/NetWorkUtil.java b/src/main/java/com/cym/utils/NetWorkUtil.java index fd18a638..3ecf736a 100644 --- a/src/main/java/com/cym/utils/NetWorkUtil.java +++ b/src/main/java/com/cym/utils/NetWorkUtil.java @@ -61,7 +61,7 @@ public class NetWorkUtil { logger.error(e.getMessage(), e); } } - Optional.ofNullable(pro).ifPresent(p -> p.destroy()); + Optional.ofNullable(pro).ifPresent(Process::destroy); } networkInfo.setTime(DateUtil.format(new Date(), "HH:mm:ss")); return networkInfo; @@ -83,9 +83,9 @@ public class NetWorkUtil { // TX packets 169848511 bytes 155937621328 (155.9 GB) while ((line = input.readLine()) != null) { - if (line.indexOf("RX packets") >= 0) { + if (line.contains("RX packets")) { rx += formatLong(line); - } else if (line.indexOf("TX packets") >= 0) { + } else if (line.contains("TX packets")) { tx += formatLong(line); } } diff --git a/src/main/java/com/cym/utils/PwdCheckUtil.java b/src/main/java/com/cym/utils/PwdCheckUtil.java index 3feab7f7..fb29ae4d 100644 --- a/src/main/java/com/cym/utils/PwdCheckUtil.java +++ b/src/main/java/com/cym/utils/PwdCheckUtil.java @@ -192,23 +192,23 @@ public class PwdCheckUtil { if (isLower) { //考虑 大写键盘匹配的情况 String UpperStr = KEYBOARD_HORIZONTAL_ARR[j].toUpperCase(); - if((configStr.indexOf(distinguishStr) != -1) || (UpperStr.indexOf(distinguishStr) != -1)) { + if((configStr.contains(distinguishStr)) || (UpperStr.contains(distinguishStr))) { flag = true; return flag; } //考虑逆序输入情况下 连续输入 String revUpperStr = new StringBuffer(UpperStr).reverse().toString(); - if((revOrderStr.indexOf(distinguishStr) != -1) || (revUpperStr.indexOf(distinguishStr) != -1)) { + if((revOrderStr.contains(distinguishStr)) || (revUpperStr.contains(distinguishStr))) { flag = true; return flag; } }else { - if(configStr.indexOf(str) != -1) { + if(configStr.contains(str)) { flag = true; return flag; } //考虑逆序输入情况下 连续输入 - if(revOrderStr.indexOf(str) != -1) { + if(revOrderStr.contains(str)) { flag = true; return flag; } @@ -252,23 +252,23 @@ public class PwdCheckUtil { if (isLower) { //考虑 大写键盘匹配的情况 String UpperStr = KEYBOARD_SLOPE_ARR[j].toUpperCase(); - if((configStr.indexOf(distinguishStr) != -1) || (UpperStr.indexOf(distinguishStr) != -1)) { + if((configStr.contains(distinguishStr)) || (UpperStr.contains(distinguishStr))) { flag = true; return flag; } //考虑逆序输入情况下 连续输入 String revUpperStr = new StringBuffer(UpperStr).reverse().toString(); - if((revOrderStr.indexOf(distinguishStr) != -1) || (revUpperStr.indexOf(distinguishStr) != -1)) { + if((revOrderStr.contains(distinguishStr)) || (revUpperStr.contains(distinguishStr))) { flag = true; return flag; } }else { - if(configStr.indexOf(str) != -1) { + if(configStr.contains(str)) { flag = true; return flag; } //考虑逆序输入情况下 连续输入 - if(revOrderStr.indexOf(str) != -1) { + if(revOrderStr.contains(str)) { flag = true; return flag; } diff --git a/src/main/java/com/cym/utils/TelnetUtils.java b/src/main/java/com/cym/utils/TelnetUtils.java index bcc9fd77..018a2f67 100644 --- a/src/main/java/com/cym/utils/TelnetUtils.java +++ b/src/main/java/com/cym/utils/TelnetUtils.java @@ -14,12 +14,6 @@ public class TelnetUtils { SocketAddress saAdd = new InetSocketAddress(host.trim(), port); sClient = new Socket(); sClient.connect(saAdd, 1000); // 设置超时 1s - } catch (UnknownHostException e) { - return false; - } catch (SocketTimeoutException e) { - return false; - } catch (IOException e) { - return false; } catch (Exception e) { return false; } finally { @@ -27,7 +21,7 @@ public class TelnetUtils { if (sClient != null) { sClient.close(); } - } catch (Exception e) { + } catch (Exception ignored) { } } return true; -- Gitee