public void addUnimplementedWarning(String name, Warning warning) { _warnings.computeIfAbsent(name, n -> new Warnings()).getUnimplementedWarnings().add(warning); }
@Override public String prettyPrint() { StringBuilder retString = new StringBuilder("Results of parsing vendor configurations\n"); for (String name : _warnings.keySet()) { retString.append("\n " + name + "[Parser warnings]\n"); for (Warning warning : _warnings.get(name).getRedFlagWarnings()) { retString.append(" RedFlag " + warning.getTag() + " : " + warning.getText() + "\n"); } for (Warning warning : _warnings.get(name).getUnimplementedWarnings()) { retString.append( " Unimplemented " + warning.getTag() + " : " + warning.getText() + "\n"); } for (Warning warning : _warnings.get(name).getPedanticWarnings()) { retString.append(" Pedantic " + warning.getTag() + " : " + warning.getText() + "\n"); } } for (String name : _errors.keySet()) { retString.append("\n " + name + "[Parser errors]\n"); for (String line : _errors.get(name).getLineMap()) { retString.append(" " + line + "\n"); } } for (String name : _parseTrees.keySet()) { retString.append("\n " + name + " [Parse trees]\n"); for (String sentence : _parseTrees.get(name).getSentences()) { retString.append(" ParseTreeSentence : " + sentence + "\n"); } } return retString.toString(); }
redFlagCount++; for (Warning warning : _warnings.get(name).getUnimplementedWarnings()) { sb.append(" Unimplemented " + warning.getTag() + " : " + warning.getText() + "\n"); unimplementedCount++;
private void mergeInitStepAnswer( InitInfoAnswerElement initInfoAnswerElement, InitStepAnswerElement initStepAnswerElement, boolean summary, boolean verboseError) { if (!summary) { if (verboseError) { SortedMap<String, List<BatfishStackTrace>> errors = initInfoAnswerElement.getErrors(); initStepAnswerElement .getErrors() .forEach( (hostname, initStepErrors) -> errors.computeIfAbsent(hostname, k -> new ArrayList<>()).add(initStepErrors)); } SortedMap<String, Warnings> warnings = initInfoAnswerElement.getWarnings(); initStepAnswerElement .getWarnings() .forEach( (hostname, initStepWarnings) -> { Warnings combined = warnings.computeIfAbsent(hostname, h -> buildWarnings(_settings)); combined.getParseWarnings().addAll(initStepWarnings.getParseWarnings()); combined.getPedanticWarnings().addAll(initStepWarnings.getPedanticWarnings()); combined.getRedFlagWarnings().addAll(initStepWarnings.getRedFlagWarnings()); combined .getUnimplementedWarnings() .addAll(initStepWarnings.getUnimplementedWarnings()); }); } }
sb.append(" RedFlag " + warning.getTag() + " : " + warning.getText() + "\n"); for (Warning warning : warnings.getUnimplementedWarnings()) { sb.append(" Unimplemented " + warning.getTag() + " : " + warning.getText() + "\n");
public static void logWarnings(BatfishLogger logger, Warnings warnings) { for (Warning warning : warnings.getRedFlagWarnings()) { logger.redflag(logWarningsHelper(warning)); } for (Warning warning : warnings.getUnimplementedWarnings()) { logger.unimplemented(logWarningsHelper(warning)); } for (Warning warning : warnings.getPedanticWarnings()) { logger.pedantic(logWarningsHelper(warning)); } }
@Override public TableAnswerElement answer() { ConvertConfigurationAnswerElement ccae = _batfish.loadConvertConfigurationAnswerElementOrReparse(); Map<String, Warnings> warnings = ccae.getWarnings(); Rows rows = new Rows(); warnings.forEach( (nodeName, nodeWarnings) -> { for (Warning w : nodeWarnings.getRedFlagWarnings()) { rows.add(getRow(nodeName, w)); } for (Warning w : nodeWarnings.getUnimplementedWarnings()) { rows.add(getRow(nodeName, w)); } }); TableAnswerElement answerElement = new TableAnswerElement(TABLE_METADATA); answerElement.postProcessAnswer(_question, rows.getData()); return answerElement; }