Skip to content

Commit

Permalink
Merge pull request #2870 from levBagryansky/2714_log-warnings
Browse files Browse the repository at this point in the history
#2714: loggingOfErrors
  • Loading branch information
yegor256 committed Feb 13, 2024
2 parents e45d368 + 5751386 commit 1da912b
Showing 1 changed file with 33 additions and 0 deletions.
33 changes: 33 additions & 0 deletions eo-maven-plugin/src/main/java/org/eolang/maven/VerifyMojo.java
Expand Up @@ -24,6 +24,7 @@
package org.eolang.maven;

import com.jcabi.log.Logger;
import com.jcabi.xml.XML;
import com.yegor256.xsline.TrClasspath;
import com.yegor256.xsline.TrDefault;
import java.nio.file.Path;
Expand Down Expand Up @@ -105,6 +106,7 @@ void exec() {
*/
private Optimization optimization() {
Optimization opt = new OptTrain(
this::logErrors,
new TrClasspath<>(
new TrDefault<>(),
"/org/eolang/parser/fail-on-errors.xsl",
Expand All @@ -117,4 +119,35 @@ private Optimization optimization() {
return opt;
}

/**
* Log errors of xml.
* @param xml XMIR.
* @return XML.
*/
private XML logErrors(final XML xml) {
for (final XML error: xml.nodes("/program/errors/error")) {
final String message = Logger.format(
"%[file]s, line %s: %s",
xml.xpath("/program/@source").get(0),
error.xpath("@line").get(0),
error.xpath("text()").get(0)
);
final String severity = error.xpath("@severity").get(0);
switch (severity) {
case "warning":
Logger.warn(this, message);
break;
case "error":
case "critical":
Logger.error(this, message);
break;
default:
throw new IllegalArgumentException(
String.format("Incorrect severity: %s", severity)
);
}
}
return xml;
}

}

0 comments on commit 1da912b

Please sign in to comment.