in src/main/java/org/apache/sling/scripting/thymeleaf/internal/SlingResourceTemplateResolver.java [119:140]
public TemplateResolution resolveTemplate(final IEngineConfiguration engineConfiguration, final String ownerTemplate, final String template, final Map<String, Object> templateResolutionAttributes) {
logger.debug("resolving template '{}'", template);
// per thread service resource resolver
final ResourceResolver resourceResolver = scriptingResourceResolverProvider.getRequestScopedResourceResolver();
final Resource resource = resourceResolver.getResource(template);
if (resource == null) {
logger.warn("resource for template '{}' is null, not resolving template", template);
return null;
}
final ITemplateResource templateResource = new SlingTemplateResource(resource);
final boolean templateResourceExistenceVerified = false;
final TemplateMode templateMode = templateModeProvider.provideTemplateMode(resource);
if (templateMode == null) {
logger.warn("template mode for template '{}' is null, not resolving template", template);
return null;
} else {
logger.debug("using template mode {} for template '{}'", templateMode, template);
final boolean useDecoupledLogic = templateMode.isMarkup() && configuration.useDecoupledLogic();
final ICacheEntryValidity validity = NonCacheableCacheEntryValidity.INSTANCE;
return new TemplateResolution(templateResource, templateResourceExistenceVerified, templateMode, useDecoupledLogic, validity);
}
}