|
1
|
|
package fr.sii.ogham.template.freemarker.adapter; |
|
2
|
|
|
|
3
|
|
import java.net.URL; |
|
4
|
|
|
|
5
|
|
import fr.sii.ogham.core.resource.resolver.ClassPathResolver; |
|
6
|
|
import fr.sii.ogham.core.resource.resolver.DelegateResourceResolver; |
|
7
|
|
import fr.sii.ogham.core.resource.resolver.ResourceResolver; |
|
8
|
|
import freemarker.cache.ClassTemplateLoader; |
|
9
|
|
import freemarker.cache.TemplateLoader; |
|
10
|
|
|
|
11
|
|
/** |
|
12
|
|
* Adapter that converts general {@link ClassPathResolver} into FreeMarker |
|
13
|
|
* specific {@link ClassTemplateLoader}. |
|
14
|
|
* |
|
15
|
|
* @author Cyril Dejonghe |
|
16
|
|
* |
|
17
|
|
*/ |
|
18
|
|
public class ClassPathResolverAdapter extends AbstractFreeMarkerTemplateLoaderOptionsAdapter { |
|
19
|
|
private final ClassLoader classLoader; |
|
20
|
|
|
|
21
|
|
public ClassPathResolverAdapter(ClassLoader classLoader) { |
|
22
|
|
super(); |
|
23
|
|
this.classLoader = classLoader; |
|
24
|
|
} |
|
25
|
|
|
|
26
|
|
@Override |
|
27
|
|
public boolean supports(ResourceResolver resolver) { |
|
28
|
4
1. supports : negated conditional → KILLED
2. supports : negated conditional → KILLED
3. supports : negated conditional → KILLED
4. supports : negated conditional → KILLED
|
ResourceResolver actualResolver = resolver instanceof DelegateResourceResolver ? ((DelegateResourceResolver) resolver).getActualResourceResolver() : resolver; |
|
29
|
7
1. supports : replaced boolean return with true for fr/sii/ogham/template/freemarker/adapter/ClassPathResolverAdapter::supports → SURVIVED
2. supports : replaced boolean return with true for fr/sii/ogham/template/freemarker/adapter/ClassPathResolverAdapter::supports → TIMED_OUT
3. supports : replaced boolean return with false for fr/sii/ogham/template/freemarker/adapter/ClassPathResolverAdapter::supports → KILLED
4. supports : replaced boolean return with false for fr/sii/ogham/template/freemarker/adapter/ClassPathResolverAdapter::supports → KILLED
5. supports : replaced boolean return with false for fr/sii/ogham/template/freemarker/adapter/ClassPathResolverAdapter::supports → KILLED
6. supports : replaced boolean return with false for fr/sii/ogham/template/freemarker/adapter/ClassPathResolverAdapter::supports → KILLED
7. supports : replaced boolean return with true for fr/sii/ogham/template/freemarker/adapter/ClassPathResolverAdapter::supports → KILLED
|
return actualResolver instanceof ClassPathResolver; |
|
30
|
|
} |
|
31
|
|
|
|
32
|
|
@Override |
|
33
|
|
public TemplateLoader adapt(ResourceResolver resolver) { |
|
34
|
4
1. adapt : replaced return value with null for fr/sii/ogham/template/freemarker/adapter/ClassPathResolverAdapter::adapt → KILLED
2. adapt : replaced return value with null for fr/sii/ogham/template/freemarker/adapter/ClassPathResolverAdapter::adapt → KILLED
3. adapt : replaced return value with null for fr/sii/ogham/template/freemarker/adapter/ClassPathResolverAdapter::adapt → KILLED
4. adapt : replaced return value with null for fr/sii/ogham/template/freemarker/adapter/ClassPathResolverAdapter::adapt → KILLED
|
return new FixClassTemplateLoader(getClassLoader(), ""); |
|
35
|
|
} |
|
36
|
|
|
|
37
|
|
private ClassLoader getClassLoader() { |
|
38
|
4
1. getClassLoader : negated conditional → KILLED
2. getClassLoader : negated conditional → KILLED
3. getClassLoader : negated conditional → KILLED
4. getClassLoader : negated conditional → KILLED
|
if(classLoader!=null) { |
|
39
|
1
1. getClassLoader : replaced return value with null for fr/sii/ogham/template/freemarker/adapter/ClassPathResolverAdapter::getClassLoader → NO_COVERAGE
|
return classLoader; |
|
40
|
|
} |
|
41
|
4
1. getClassLoader : replaced return value with null for fr/sii/ogham/template/freemarker/adapter/ClassPathResolverAdapter::getClassLoader → KILLED
2. getClassLoader : replaced return value with null for fr/sii/ogham/template/freemarker/adapter/ClassPathResolverAdapter::getClassLoader → KILLED
3. getClassLoader : replaced return value with null for fr/sii/ogham/template/freemarker/adapter/ClassPathResolverAdapter::getClassLoader → KILLED
4. getClassLoader : replaced return value with null for fr/sii/ogham/template/freemarker/adapter/ClassPathResolverAdapter::getClassLoader → KILLED
|
return Thread.currentThread().getContextClassLoader(); |
|
42
|
|
} |
|
43
|
|
|
|
44
|
|
private static class FixClassTemplateLoader extends ClassTemplateLoader { |
|
45
|
|
public FixClassTemplateLoader(ClassLoader classLoader, String basePackagePath) { |
|
46
|
|
super(classLoader, basePackagePath); |
|
47
|
|
} |
|
48
|
|
|
|
49
|
|
@Override |
|
50
|
|
protected URL getURL(String name) { |
|
51
|
4
1. getURL : negated conditional → TIMED_OUT
2. getURL : negated conditional → KILLED
3. getURL : negated conditional → KILLED
4. getURL : negated conditional → KILLED
|
String path = name.startsWith("/") ? name.substring(1) : name; |
|
52
|
4
1. getURL : replaced return value with null for fr/sii/ogham/template/freemarker/adapter/ClassPathResolverAdapter$FixClassTemplateLoader::getURL → TIMED_OUT
2. getURL : replaced return value with null for fr/sii/ogham/template/freemarker/adapter/ClassPathResolverAdapter$FixClassTemplateLoader::getURL → KILLED
3. getURL : replaced return value with null for fr/sii/ogham/template/freemarker/adapter/ClassPathResolverAdapter$FixClassTemplateLoader::getURL → KILLED
4. getURL : replaced return value with null for fr/sii/ogham/template/freemarker/adapter/ClassPathResolverAdapter$FixClassTemplateLoader::getURL → KILLED
|
return super.getURL(path); |
|
53
|
|
} |
|
54
|
|
} |
|
55
|
|
|
|
56
|
|
} |
| | Mutations |
| 28 |
|
1.1 Location : supports Killed by : oghamall.it.configuration.EmptyBuilderTest.emailSenderManuallyRegisteredAndFreemarkerOnlyRegisteredButResourceResolutionNotConfiguredCantHandleTemplateContent(oghamall.it.configuration.EmptyBuilderTest) negated conditional → KILLED 2.2 Location : supports Killed by : oghamspringbootv2autoconfigure.it.StaticMethodAccessTest.emailUsingFreemarkerTemplateAndStaticMethodAccessDisabledShouldFail(oghamspringbootv2autoconfigure.it.StaticMethodAccessTest) negated conditional → KILLED 3.3 Location : supports Killed by : oghamfremarker.it.FreeMarkerParserTest.nested(oghamfremarker.it.FreeMarkerParserTest) negated conditional → KILLED 4.4 Location : supports Killed by : oghamspringbootv1autoconfigure.it.SpringBeanResolutionTest.smsUsingFreemarkerTemplateShouldResolveBeans(oghamspringbootv1autoconfigure.it.SpringBeanResolutionTest) negated conditional → KILLED
|
| 29 |
|
1.1 Location : supports Killed by : oghamfremarker.it.FreeMarkerParserTest.nested(oghamfremarker.it.FreeMarkerParserTest) replaced boolean return with false for fr/sii/ogham/template/freemarker/adapter/ClassPathResolverAdapter::supports → KILLED 2.2 Location : supports Killed by : oghamall.it.email.EmailMultiTemplateTest.withFreemarkerOneVariantWithParsingError(oghamall.it.email.EmailMultiTemplateTest) replaced boolean return with false for fr/sii/ogham/template/freemarker/adapter/ClassPathResolverAdapter::supports → KILLED 3.3 Location : supports Killed by : oghamspringbootv1autoconfigure.it.SpringBeanResolutionTest.smsUsingFreemarkerTemplateShouldResolveBeans(oghamspringbootv1autoconfigure.it.SpringBeanResolutionTest) replaced boolean return with false for fr/sii/ogham/template/freemarker/adapter/ClassPathResolverAdapter::supports → KILLED 4.4 Location : supports Killed by : oghamspringbootv2autoconfigure.it.StaticMethodAccessTest.emailUsingFreemarkerTemplateAndStaticMethodAccessDisabledShouldFail(oghamspringbootv2autoconfigure.it.StaticMethodAccessTest) replaced boolean return with false for fr/sii/ogham/template/freemarker/adapter/ClassPathResolverAdapter::supports → KILLED 5.5 Location : supports Killed by : none replaced boolean return with true for fr/sii/ogham/template/freemarker/adapter/ClassPathResolverAdapter::supports → TIMED_OUT 6.6 Location : supports Killed by : oghamall.it.configuration.EmptyBuilderTest.emailSenderManuallyRegisteredAndFreemarkerOnlyRegisteredButResourceResolutionNotConfiguredCantHandleTemplateContent(oghamall.it.configuration.EmptyBuilderTest) replaced boolean return with true for fr/sii/ogham/template/freemarker/adapter/ClassPathResolverAdapter::supports → KILLED 7.7 Location : supports Killed by : none replaced boolean return with true for fr/sii/ogham/template/freemarker/adapter/ClassPathResolverAdapter::supports → SURVIVED
|
| 34 |
|
1.1 Location : adapt Killed by : oghamspringbootv1autoconfigure.it.SpringBeanResolutionTest.smsUsingFreemarkerTemplateShouldResolveBeans(oghamspringbootv1autoconfigure.it.SpringBeanResolutionTest) replaced return value with null for fr/sii/ogham/template/freemarker/adapter/ClassPathResolverAdapter::adapt → KILLED 2.2 Location : adapt Killed by : oghamall.it.email.EmailMultiTemplateTest.withFreemarkerOneVariantWithParsingError(oghamall.it.email.EmailMultiTemplateTest) replaced return value with null for fr/sii/ogham/template/freemarker/adapter/ClassPathResolverAdapter::adapt → KILLED 3.3 Location : adapt Killed by : oghamfremarker.it.FreeMarkerParserTest.nested(oghamfremarker.it.FreeMarkerParserTest) replaced return value with null for fr/sii/ogham/template/freemarker/adapter/ClassPathResolverAdapter::adapt → KILLED 4.4 Location : adapt Killed by : oghamspringbootv2autoconfigure.it.StaticMethodAccessTest.emailUsingFreemarkerTemplateAndStaticMethodAccessDisabledShouldFail(oghamspringbootv2autoconfigure.it.StaticMethodAccessTest) replaced return value with null for fr/sii/ogham/template/freemarker/adapter/ClassPathResolverAdapter::adapt → KILLED
|
| 38 |
|
1.1 Location : getClassLoader Killed by : oghamspringbootv2autoconfigure.it.StaticMethodAccessTest.emailUsingFreemarkerTemplateAndStaticMethodAccessDisabledShouldFail(oghamspringbootv2autoconfigure.it.StaticMethodAccessTest) negated conditional → KILLED 2.2 Location : getClassLoader Killed by : oghamfremarker.it.FreeMarkerParserTest.nested(oghamfremarker.it.FreeMarkerParserTest) negated conditional → KILLED 3.3 Location : getClassLoader Killed by : oghamspringbootv1autoconfigure.it.SpringBeanResolutionTest.smsUsingFreemarkerTemplateShouldResolveBeans(oghamspringbootv1autoconfigure.it.SpringBeanResolutionTest) negated conditional → KILLED 4.4 Location : getClassLoader Killed by : oghamall.it.retry.AutoRetryTest.doNotResendEmailIfParsingFailed(oghamall.it.retry.AutoRetryTest) negated conditional → KILLED
|
| 39 |
|
1.1 Location : getClassLoader Killed by : none replaced return value with null for fr/sii/ogham/template/freemarker/adapter/ClassPathResolverAdapter::getClassLoader → NO_COVERAGE
|
| 41 |
|
1.1 Location : getClassLoader Killed by : oghamfremarker.it.FreeMarkerParserTest.nested(oghamfremarker.it.FreeMarkerParserTest) replaced return value with null for fr/sii/ogham/template/freemarker/adapter/ClassPathResolverAdapter::getClassLoader → KILLED 2.2 Location : getClassLoader Killed by : oghamspringbootv1autoconfigure.it.SpringBeanResolutionTest.smsUsingFreemarkerTemplateShouldResolveBeans(oghamspringbootv1autoconfigure.it.SpringBeanResolutionTest) replaced return value with null for fr/sii/ogham/template/freemarker/adapter/ClassPathResolverAdapter::getClassLoader → KILLED 3.3 Location : getClassLoader Killed by : oghamspringbootv2autoconfigure.it.StaticMethodAccessTest.emailUsingFreemarkerTemplateAndStaticMethodAccessDisabledShouldFail(oghamspringbootv2autoconfigure.it.StaticMethodAccessTest) replaced return value with null for fr/sii/ogham/template/freemarker/adapter/ClassPathResolverAdapter::getClassLoader → KILLED 4.4 Location : getClassLoader Killed by : oghamall.it.retry.AutoRetryTest.doNotResendEmailIfParsingFailed(oghamall.it.retry.AutoRetryTest) replaced return value with null for fr/sii/ogham/template/freemarker/adapter/ClassPathResolverAdapter::getClassLoader → KILLED
|
| 51 |
|
1.1 Location : getURL Killed by : oghamspringbootv1autoconfigure.it.SpringBeanResolutionTest.smsUsingFreemarkerTemplateShouldResolveBeans(oghamspringbootv1autoconfigure.it.SpringBeanResolutionTest) negated conditional → KILLED 2.2 Location : getURL Killed by : oghamfremarker.it.FreeMarkerParserTest.nested(oghamfremarker.it.FreeMarkerParserTest) negated conditional → KILLED 3.3 Location : getURL Killed by : none negated conditional → TIMED_OUT 4.4 Location : getURL Killed by : oghamall.it.retry.AutoRetryTest.doNotResendEmailIfParsingFailed(oghamall.it.retry.AutoRetryTest) negated conditional → KILLED
|
| 52 |
|
1.1 Location : getURL Killed by : oghamall.it.retry.AutoRetryTest.doNotResendEmailIfParsingFailed(oghamall.it.retry.AutoRetryTest) replaced return value with null for fr/sii/ogham/template/freemarker/adapter/ClassPathResolverAdapter$FixClassTemplateLoader::getURL → KILLED 2.2 Location : getURL Killed by : oghamspringbootv1autoconfigure.it.SpringBeanResolutionTest.smsUsingFreemarkerTemplateShouldResolveBeans(oghamspringbootv1autoconfigure.it.SpringBeanResolutionTest) replaced return value with null for fr/sii/ogham/template/freemarker/adapter/ClassPathResolverAdapter$FixClassTemplateLoader::getURL → KILLED 3.3 Location : getURL Killed by : none replaced return value with null for fr/sii/ogham/template/freemarker/adapter/ClassPathResolverAdapter$FixClassTemplateLoader::getURL → TIMED_OUT 4.4 Location : getURL Killed by : oghamfremarker.it.FreeMarkerParserTest.nested(oghamfremarker.it.FreeMarkerParserTest) replaced return value with null for fr/sii/ogham/template/freemarker/adapter/ClassPathResolverAdapter$FixClassTemplateLoader::getURL → KILLED
|