Files
ProjectCapture/content-tools/src/main/java/dev/projectcapture/contenttools/ValidationReport.java
T

30 lines
772 B
Java

package dev.projectcapture.contenttools;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public final class ValidationReport {
private final List<ValidationIssue> issues = new ArrayList<>();
public void add(String code, String location, String message) {
issues.add(new ValidationIssue(code, location, message));
}
public void addAll(ValidationReport other) {
issues.addAll(other.issues);
}
public boolean isValid() {
return issues.isEmpty();
}
public List<ValidationIssue> issues() {
return Collections.unmodifiableList(issues);
}
public boolean containsCode(String code) {
return issues.stream().anyMatch(issue -> issue.code().equals(code));
}
}