if (!orderedSpecificProcessorsByElementName.isEmpty()) {
logBuilder.line("[THYMELEAF] * Processors matching nodes by element name [precedence]:");
for (final Map.Entry<String,Set<ProcessorAndContext>> elementApplicabilityEntry : orderedSpecificProcessorsByElementName.entrySet()) {
final String elementName = elementApplicabilityEntry.getKey();
for (final ProcessorAndContext elementProcessorEntry : elementApplicabilityEntry.getValue()) {
final IProcessor elementProcessor = elementProcessorEntry.getProcessor();
final String precedence =
(elementProcessor instanceof AbstractProcessor? Integer.valueOf(((AbstractProcessor)elementProcessor).getPrecedence()).toString() : "-");
logBuilder.line("[THYMELEAF] * \"{}\" [{}]: {}", new Object[] {elementName, precedence, elementProcessor.getClass().getName()});
}
}
}
if (!orderedSpecificProcessorsByAttributeName.isEmpty()) {
logBuilder.line("[THYMELEAF] * Processors matching nodes by element attribute [precedence]:");
for (final Map.Entry<String,Set<ProcessorAndContext>> attrApplicabilityEntry : orderedSpecificProcessorsByAttributeName.entrySet()) {
final String attrName = attrApplicabilityEntry.getKey();
for (final ProcessorAndContext attrProcessorEntry : attrApplicabilityEntry.getValue()) {
final IProcessor attrProcessor = attrProcessorEntry.getProcessor();
final String precedence =
(attrProcessor instanceof AbstractProcessor? Integer.valueOf(((AbstractProcessor)attrProcessor).getPrecedence()).toString() : "-");
logBuilder.line("[THYMELEAF] * \"{}\" [{}]: {}", new Object[] {attrName, precedence, attrProcessor.getClass().getName()});
}
}
}
if (!nonSpecificProcessorsByNodeClass.isEmpty()) {
logBuilder.line("[THYMELEAF] * Processors with non-element-specific matching methods [precedence]:");
for (final Map.Entry<Class<? extends Node>,Set<ProcessorAndContext>> nonSpecificProcessorEntry : nonSpecificProcessorsByNodeClass.entrySet()) {
final Class<? extends Node> nodeClass = nonSpecificProcessorEntry.getKey();
for (final ProcessorAndContext processorEntry : nonSpecificProcessorEntry.getValue()) {
final IProcessor processor = processorEntry.getProcessor();
final String precedence =
(processor instanceof AbstractProcessor? Integer.valueOf(((AbstractProcessor)processor).getPrecedence()).toString() : "-");
logBuilder.line(
"[THYMELEAF] * [{}] [{}]: {}",
new Object[] {nodeClass.getSimpleName(), precedence, processor.getClass().getName()});
}
}
}
if (!executionAttributes.isEmpty()) {
logBuilder.line("[THYMELEAF] * Execution Attributes:");