private boolean checkInspectBaseStatus(StringBuilder msg, InspectBase inspectBase) { boolean flag = true; InspectStatus inspectStatus = inspectBase.checkStatus(); if (inspectStatus.isError()) { flag = false; msg.append(InspectUtil.formatStatusForWeb(inspectStatus)).append("\n"); } return flag; }
@RequestMapping(method = RequestMethod.GET) public ResponseEntity<String> opList(HttpServletRequest request) { String inspectKey = request.getParameter("key"); if (inspectMap == null || inspectMap.isEmpty()) { return new ResponseEntity<String>("no inspect", HttpStatus.OK); } boolean flag = true; StringBuilder msg = new StringBuilder(); try { if (StringUtil.isEmpty(inspectKey)) { // 无key,返回所有 for (Entry<String, InspectBase> entry : inspectMap.entrySet()) { InspectBase inspectBase = entry.getValue(); if (!checkInspectBaseStatus(msg, inspectBase)) { flag = false; } } } else { // 有key InspectBase inspect = inspectMap.get(inspectKey); if (null != inspect) { logger.info("start inspect base check {}", inspect.getInspectName()); flag = checkInspectBaseStatus(msg, inspect); logger.info("finish inspect base check {}", inspect.getInspectName()); } else { return new ResponseEntity<String>("unknown key", HttpStatus.OK); } } } catch (RuntimeException e) { logger.error("interal error", e); return new ResponseEntity<String>(e.getMessage(), HttpStatus.INTERNAL_SERVER_ERROR); } if (flag) { return new ResponseEntity<String>("OK", HttpStatus.OK); } else { logger.error("not ok, msg:{}", msg.toString()); return new ResponseEntity<String>(msg.toString(), HttpStatus.INTERNAL_SERVER_ERROR); } }