OghamJavaMailConfiguration.java

1
package fr.sii.ogham.spring.email;
2
3
import fr.sii.ogham.email.sender.impl.JavaMailSender;
4
import fr.sii.ogham.spring.email.condition.JakartaActivationDataHandlersAvailable;
5
import fr.sii.ogham.spring.email.condition.JakartaMailServiceProvidersAvailable;
6
import jakarta.activation.DataHandler;
7
import jakarta.activation.MimeType;
8
import jakarta.mail.Session;
9
import jakarta.mail.internet.MimeMessage;
10
import org.springframework.beans.factory.annotation.Autowired;
11
import org.springframework.boot.autoconfigure.AutoConfigureAfter;
12
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
13
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
14
import org.springframework.boot.autoconfigure.mail.MailProperties;
15
import org.springframework.boot.autoconfigure.mail.MailSenderAutoConfiguration;
16
import org.springframework.boot.context.properties.EnableConfigurationProperties;
17
import org.springframework.context.annotation.Bean;
18
import org.springframework.context.annotation.Conditional;
19
import org.springframework.context.annotation.Configuration;
20
21
@Configuration
22
@ConditionalOnClass({
23
		// need mail api
24
		MimeMessage.class,
25
		Session.class,
26
		// need activation api
27
		MimeType.class,
28
		DataHandler.class,
29
		// need ogham sender
30
		JavaMailSender.class,
31
})
32
// also need implementation but relies on ServiceLoader
33
// also check that it is consistent and that mail could be sent
34
@Conditional({
35
		JakartaMailServiceProvidersAvailable.class,
36
		JakartaActivationDataHandlersAvailable.class
37
})
38
@EnableConfigurationProperties(OghamJavaMailProperties.class)
39
@AutoConfigureAfter(MailSenderAutoConfiguration.class)
40
public class OghamJavaMailConfiguration {
41
42
	@Bean
43
	@ConditionalOnMissingBean(SpringMailConfigurer.class)
44
	public SpringMailConfigurer springMailConfigurer(
45
			@Autowired(required=false) OghamJavaMailProperties properties,
46
			@Autowired(required=false) MailProperties springProperties) {
47 1 1. springMailConfigurer : replaced return value with null for fr/sii/ogham/spring/email/OghamJavaMailConfiguration::springMailConfigurer → RUN_ERROR
		return new SpringMailConfigurer(properties, springProperties);
48
	}
49
}

Mutations

47

1.1
Location : springMailConfigurer
Killed by :
replaced return value with null for fr/sii/ogham/spring/email/OghamJavaMailConfiguration::springMailConfigurer → RUN_ERROR

Active mutators

Tests examined


Report generated by PIT 1.13.1