use of nu.validator.servlet.imagereview.Image in project validator by validator.
the class MessageEmitterAdapter method emitImageReview.
private void emitImageReview(ImageReviewHandler imageReviewHandler) throws SAXException {
List<Image> noAltNoLink = new LinkedList<>();
List<Image> noAltLink = new LinkedList<>();
List<Image> emptyAlt = new LinkedList<>();
List<Image> hasAlt = new LinkedList<>();
for (Image image : imageCollector) {
String alt = image.getAlt();
if (alt == null) {
if (image.isLinked()) {
noAltLink.add(image);
} else {
noAltNoLink.add(image);
}
} else if ("".equals(alt)) {
emptyAlt.add(image);
} else {
hasAlt.add(image);
}
}
emitImageList(imageReviewHandler, noAltLink, NO_ALT_LINK_HEADING, NO_ALT_LINK_ADVICE, false);
emitImageList(imageReviewHandler, noAltNoLink, NO_ALT_NO_LINK_HEADING, NO_ALT_NO_LINK_ADVICE, false);
emitImageList(imageReviewHandler, emptyAlt, EMPTY_ALT, EMPTY_ALT_ADVICE, false);
emitImageList(imageReviewHandler, hasAlt, HAS_ALT, HAS_ALT_ADVICE, true);
}
use of nu.validator.servlet.imagereview.Image in project validator by validator.
the class MessageEmitterAdapter method emitImageList.
private void emitImageList(ImageReviewHandler imageReviewHandler, List<Image> list, char[] heading, DocumentFragment instruction, boolean hasAlt) throws SAXException {
if (!list.isEmpty()) {
imageReviewHandler.startImageGroup(heading, instruction, hasAlt);
for (Image image : list) {
String systemId = image.getSystemId();
int oneBasedLine = image.getLineNumber();
int oneBasedColumn = image.getColumnNumber();
Location rangeLast = sourceCode.newLocatorLocation(oneBasedLine, oneBasedColumn);
if (sourceCode.isWithinKnownSource(rangeLast)) {
Location rangeStart = sourceCode.rangeStartForRangeLast(rangeLast);
imageReviewHandler.image(image, hasAlt, systemId, rangeStart.getLine() + 1, rangeStart.getColumn() + 1, oneBasedLine, oneBasedColumn);
} else {
imageReviewHandler.image(image, hasAlt, systemId, -1, -1, -1, -1);
}
}
imageReviewHandler.endImageGroup();
}
}
Aggregations