StringResolverAdapter.java
package fr.sii.ogham.template.thymeleaf.v3.adapter;
import org.thymeleaf.templateresolver.ITemplateResolver;
import org.thymeleaf.templateresolver.StringTemplateResolver;
import fr.sii.ogham.core.resource.resolver.DelegateResourceResolver;
import fr.sii.ogham.core.resource.resolver.ResourceResolver;
import fr.sii.ogham.template.thymeleaf.common.adapter.AbstractTemplateResolverOptionsAdapter;
import fr.sii.ogham.template.thymeleaf.common.adapter.TemplateResolverOptionsApplier;
/**
* Adapter that converts general
* {@link fr.sii.ogham.core.resource.resolver.StringResourceResolver} into
* Thymeleaf specific {@link StringTemplateResolver}.
*
* @author Aurélien Baudet
*
*/
public class StringResolverAdapter extends AbstractTemplateResolverOptionsAdapter {
public StringResolverAdapter(TemplateResolverOptionsApplier optionsSetter) {
super(optionsSetter);
}
@Override
public boolean supports(ResourceResolver resolver) {
ResourceResolver actualResolver = resolver instanceof DelegateResourceResolver ? ((DelegateResourceResolver) resolver).getActualResourceResolver() : resolver;
return actualResolver instanceof fr.sii.ogham.core.resource.resolver.StringResourceResolver;
}
@Override
public ITemplateResolver adapt(ResourceResolver resolver) {
StringTemplateResolver templateResolver = new StringTemplateResolver();
applyOptions(templateResolver);
return templateResolver;
}
}