public static void outputMessages(Map<String, ImportMessageBean> messageMap) { for (ImportMessageBean message : messageMap.values()) { ArrayList<String> msgList = message.getMessageList(); boolean doneWithMessage = false; for (int k = 0; k < msgList.size() && !doneWithMessage; ++k) { String msgToShow = (String) msgList.get(k); if (k == message.getMaxNumToDisplay() - 1) { int numberNotShown = message.getMessageList().size() - message.getMaxNumToDisplay(); msgToShow = msgToShow + " [ " + numberNotShown + " SIMILAR ERRORS NOT SHOWN ]"; doneWithMessage = true; } switch (message.getSeverity()) { case Error: MessageHandler.sendErrorMessage(msgToShow); break; case Warn: MessageHandler.sendWarnMessage(msgToShow); break; default: MessageHandler.sendInfoMessage(msgToShow); break; } } } }
public static void addMessage( Map<String, ImportMessageBean> messageMap, String messageId, String message) { ImportMessageBean messageBean = messageMap.get(messageId); if (messageBean == null) { for (ImportMessageBean current : messageMap.values()) { if (current.pattern != null && current.pattern.matcher(message).find()) { LOG.fine("Pattern matched: " + current.getMessageId()); messageBean = current; } } if (messageBean == null) // just use the message itself as the id for a new one to ensure it doesn't get stomped on // later. messageMap.put( message, messageBean = new ImportMessageBean(message, message, Integer.MAX_VALUE, Severity.Error)); } messageBean.messageList.add(message); }