diff --git a/src/main/java/com/deem/zkui/controller/Export.java b/src/main/java/com/deem/zkui/controller/Export.java index 8564102..46ba08d 100644 --- a/src/main/java/com/deem/zkui/controller/Export.java +++ b/src/main/java/com/deem/zkui/controller/Export.java @@ -47,7 +47,6 @@ protected void doGet(HttpServletRequest request, HttpServletResponse response) t try { Properties globalProps = (Properties) this.getServletContext().getAttribute("globalProps"); String zkServer = globalProps.getProperty("zkServer"); - String[] zkServerLst = zkServer.split(","); String authRole = (String) request.getSession().getAttribute("authRole"); if (authRole == null) { @@ -56,7 +55,7 @@ protected void doGet(HttpServletRequest request, HttpServletResponse response) t String zkPath = request.getParameter("zkPath"); StringBuilder output = new StringBuilder(); output.append("#App Config Dashboard (ACD) dump created on :").append(new Date()).append("\n"); - Set leaves = ZooKeeperUtil.INSTANCE.exportTree(zkPath, ServletUtil.INSTANCE.getZookeeper(request, response, zkServerLst[0], globalProps), authRole); + Set leaves = ZooKeeperUtil.INSTANCE.exportTree(zkPath, ServletUtil.INSTANCE.getZookeeper(request, response, zkServer, globalProps), authRole); for (LeafBean leaf : leaves) { output.append(leaf.getPath()).append('=').append(leaf.getName()).append('=').append(ServletUtil.INSTANCE.externalizeNodeValue(leaf.getValue())).append('\n'); }// for all leaves diff --git a/src/main/java/com/deem/zkui/controller/Home.java b/src/main/java/com/deem/zkui/controller/Home.java index c02afb4..6c0cbb6 100644 --- a/src/main/java/com/deem/zkui/controller/Home.java +++ b/src/main/java/com/deem/zkui/controller/Home.java @@ -52,12 +52,11 @@ protected void doGet(HttpServletRequest request, HttpServletResponse response) t try { Properties globalProps = (Properties) this.getServletContext().getAttribute("globalProps"); String zkServer = globalProps.getProperty("zkServer"); - String[] zkServerLst = zkServer.split(","); Map templateParam = new HashMap<>(); String zkPath = request.getParameter("zkPath"); String navigate = request.getParameter("navigate"); - ZooKeeper zk = ServletUtil.INSTANCE.getZookeeper(request, response, zkServerLst[0], globalProps); + ZooKeeper zk = ServletUtil.INSTANCE.getZookeeper(request, response, zkServer, globalProps); List nodeLst; List leafLst; String currentPath, parentPath, displayPath; @@ -113,7 +112,6 @@ protected void doPost(HttpServletRequest request, HttpServletResponse response) Properties globalProps = (Properties) this.getServletContext().getAttribute("globalProps"); Dao dao = new Dao(globalProps); String zkServer = globalProps.getProperty("zkServer"); - String[] zkServerLst = zkServer.split(","); Map templateParam = new HashMap<>(); String action = request.getParameter("action"); @@ -133,7 +131,7 @@ protected void doPost(HttpServletRequest request, HttpServletResponse response) case "Save Node": if (!newNode.equals("") && !currentPath.equals("") && authRole.equals(ZooKeeperUtil.ROLE_ADMIN)) { //Save the new node. - ZooKeeperUtil.INSTANCE.createFolder(currentPath + newNode, "foo", "bar", ServletUtil.INSTANCE.getZookeeper(request, response, zkServerLst[0], globalProps)); + ZooKeeperUtil.INSTANCE.createFolder(currentPath + newNode, "foo", "bar", ServletUtil.INSTANCE.getZookeeper(request, response, zkServer, globalProps)); request.getSession().setAttribute("flashMsg", "Node created!"); dao.insertHistory((String) request.getSession().getAttribute("authName"), request.getRemoteAddr(), "Creating node: " + currentPath + newNode); } @@ -142,7 +140,7 @@ protected void doPost(HttpServletRequest request, HttpServletResponse response) case "Save Property": if (!newProperty.equals("") && !currentPath.equals("") && authRole.equals(ZooKeeperUtil.ROLE_ADMIN)) { //Save the new node. - ZooKeeperUtil.INSTANCE.createNode(currentPath, newProperty, newValue, ServletUtil.INSTANCE.getZookeeper(request, response, zkServerLst[0], globalProps)); + ZooKeeperUtil.INSTANCE.createNode(currentPath, newProperty, newValue, ServletUtil.INSTANCE.getZookeeper(request, response, zkServer, globalProps)); request.getSession().setAttribute("flashMsg", "Property Saved!"); if (ZooKeeperUtil.INSTANCE.checkIfPwdField(newProperty)) { newValue = ZooKeeperUtil.INSTANCE.SOPA_PIPA; @@ -154,7 +152,7 @@ protected void doPost(HttpServletRequest request, HttpServletResponse response) case "Update Property": if (!newProperty.equals("") && !currentPath.equals("") && authRole.equals(ZooKeeperUtil.ROLE_ADMIN)) { //Save the new node. - ZooKeeperUtil.INSTANCE.setPropertyValue(currentPath, newProperty, newValue, ServletUtil.INSTANCE.getZookeeper(request, response, zkServerLst[0], globalProps)); + ZooKeeperUtil.INSTANCE.setPropertyValue(currentPath, newProperty, newValue, ServletUtil.INSTANCE.getZookeeper(request, response, zkServer, globalProps)); request.getSession().setAttribute("flashMsg", "Property Updated!"); if (ZooKeeperUtil.INSTANCE.checkIfPwdField(newProperty)) { newValue = ZooKeeperUtil.INSTANCE.SOPA_PIPA; @@ -164,7 +162,7 @@ protected void doPost(HttpServletRequest request, HttpServletResponse response) response.sendRedirect("/home?zkPath=" + displayPath); break; case "Search": - Set searchResult = ZooKeeperUtil.INSTANCE.searchTree(searchStr, ServletUtil.INSTANCE.getZookeeper(request, response, zkServerLst[0], globalProps), authRole); + Set searchResult = ZooKeeperUtil.INSTANCE.searchTree(searchStr, ServletUtil.INSTANCE.getZookeeper(request, response, zkServer, globalProps), authRole); templateParam.put("searchResult", searchResult); ServletUtil.INSTANCE.renderHtml(request, response, templateParam, "search.ftl.html"); break; @@ -174,7 +172,7 @@ protected void doPost(HttpServletRequest request, HttpServletResponse response) if (propChkGroup != null) { for (String prop : propChkGroup) { List delPropLst = Arrays.asList(prop); - ZooKeeperUtil.INSTANCE.deleteLeaves(delPropLst, ServletUtil.INSTANCE.getZookeeper(request, response, zkServerLst[0], globalProps)); + ZooKeeperUtil.INSTANCE.deleteLeaves(delPropLst, ServletUtil.INSTANCE.getZookeeper(request, response, zkServer, globalProps)); request.getSession().setAttribute("flashMsg", "Delete Completed!"); dao.insertHistory((String) request.getSession().getAttribute("authName"), request.getRemoteAddr(), "Deleting Property: " + delPropLst.toString()); } @@ -182,7 +180,7 @@ protected void doPost(HttpServletRequest request, HttpServletResponse response) if (nodeChkGroup != null) { for (String node : nodeChkGroup) { List delNodeLst = Arrays.asList(node); - ZooKeeperUtil.INSTANCE.deleteFolders(delNodeLst, ServletUtil.INSTANCE.getZookeeper(request, response, zkServerLst[0], globalProps)); + ZooKeeperUtil.INSTANCE.deleteFolders(delNodeLst, ServletUtil.INSTANCE.getZookeeper(request, response, zkServer, globalProps)); request.getSession().setAttribute("flashMsg", "Delete Completed!"); dao.insertHistory((String) request.getSession().getAttribute("authName"), request.getRemoteAddr(), "Deleting Nodes: " + delNodeLst.toString()); } diff --git a/src/main/java/com/deem/zkui/controller/Import.java b/src/main/java/com/deem/zkui/controller/Import.java index e1e018c..2267b74 100644 --- a/src/main/java/com/deem/zkui/controller/Import.java +++ b/src/main/java/com/deem/zkui/controller/Import.java @@ -62,7 +62,6 @@ protected void doPost(HttpServletRequest request, HttpServletResponse response) Properties globalProps = (Properties) this.getServletContext().getAttribute("globalProps"); Dao dao = new Dao(globalProps); String zkServer = globalProps.getProperty("zkServer"); - String[] zkServerLst = zkServer.split(","); StringBuilder sbFile = new StringBuilder(); String scmOverwrite = "false"; @@ -136,7 +135,7 @@ protected void doPost(HttpServletRequest request, HttpServletResponse response) } br.close(); - ZooKeeperUtil.INSTANCE.importData(importFile, Boolean.valueOf(scmOverwrite), ServletUtil.INSTANCE.getZookeeper(request, response, zkServerLst[0], globalProps)); + ZooKeeperUtil.INSTANCE.importData(importFile, Boolean.valueOf(scmOverwrite), ServletUtil.INSTANCE.getZookeeper(request, response, zkServer, globalProps)); for (String line : importFile) { if (line.startsWith("-")) { dao.insertHistory((String) request.getSession().getAttribute("authName"), request.getRemoteAddr(), "File: " + uploadFileName + ", Deleting Entry: " + line); diff --git a/src/main/java/com/deem/zkui/controller/Logout.java b/src/main/java/com/deem/zkui/controller/Logout.java index ba4a536..e471180 100644 --- a/src/main/java/com/deem/zkui/controller/Logout.java +++ b/src/main/java/com/deem/zkui/controller/Logout.java @@ -42,8 +42,7 @@ protected void doGet(HttpServletRequest request, HttpServletResponse response) t logger.debug("Logout Action!"); Properties globalProps = (Properties) getServletContext().getAttribute("globalProps"); String zkServer = globalProps.getProperty("zkServer"); - String[] zkServerLst = zkServer.split(","); - ZooKeeper zk = ServletUtil.INSTANCE.getZookeeper(request, response, zkServerLst[0],globalProps); + ZooKeeper zk = ServletUtil.INSTANCE.getZookeeper(request, response, zkServer, globalProps); request.getSession().invalidate(); zk.close(); response.sendRedirect("/login"); diff --git a/src/main/java/com/deem/zkui/controller/RestAccess.java b/src/main/java/com/deem/zkui/controller/RestAccess.java index 3ad2def..2260965 100644 --- a/src/main/java/com/deem/zkui/controller/RestAccess.java +++ b/src/main/java/com/deem/zkui/controller/RestAccess.java @@ -49,7 +49,6 @@ protected void doGet(HttpServletRequest request, HttpServletResponse response) t try { Properties globalProps = (Properties) this.getServletContext().getAttribute("globalProps"); String zkServer = globalProps.getProperty("zkServer"); - String[] zkServerLst = zkServer.split(","); String accessRole = ZooKeeperUtil.ROLE_USER; if ((globalProps.getProperty("blockPwdOverRest") != null) && (Boolean.valueOf(globalProps.getProperty("blockPwdOverRest")) == Boolean.FALSE)) { accessRole = ZooKeeperUtil.ROLE_ADMIN; @@ -65,7 +64,7 @@ protected void doGet(HttpServletRequest request, HttpServletResponse response) t if (hostName == null) { hostName = ServletUtil.INSTANCE.getRemoteAddr(request); } - zk = ServletUtil.INSTANCE.getZookeeper(request, response, zkServerLst[0], globalProps); + zk = ServletUtil.INSTANCE.getZookeeper(request, response, zkServer, globalProps); //get the path of the hosts entry. LeafBean hostsNode = null; //If app name is mentioned then lookup path is appended with it. diff --git a/src/main/java/com/deem/zkui/utils/CmdUtil.java b/src/main/java/com/deem/zkui/utils/CmdUtil.java index 37b2f8f..e560e30 100644 --- a/src/main/java/com/deem/zkui/utils/CmdUtil.java +++ b/src/main/java/com/deem/zkui/utils/CmdUtil.java @@ -30,7 +30,7 @@ public enum CmdUtil { INSTANCE; private final static Logger logger = LoggerFactory.getLogger(CmdUtil.class); - public String executeCmd(String cmd, String zkServer, String zkPort) throws IOException { + public String executeCmd(String cmd, String zkServer, String zkPort) { StringBuilder sb; try (Socket s = new Socket(zkServer, Integer.parseInt(zkPort)); PrintWriter out = new PrintWriter(s.getOutputStream(), true); BufferedReader reader = new BufferedReader(new InputStreamReader(s.getInputStream()))) { out.println(cmd); @@ -41,6 +41,9 @@ public String executeCmd(String cmd, String zkServer, String zkPort) throws IOEx sb.append("
"); line = reader.readLine(); } + } catch (IOException e) { + logger.error("Error :{}" + e.getMessage()); + return e.getMessage(); } return sb.toString(); }