2020import java .util .concurrent .SynchronousQueue ;
2121import java .util .concurrent .ThreadPoolExecutor ;
2222import java .util .concurrent .TimeUnit ;
23- import javasabr .rlib .logger .api .Logger ;
24- import javasabr .rlib .logger .api .LoggerManager ;
2523import javasabr .rlib .mail .sender .MailSender ;
2624import javasabr .rlib .mail .sender .MailSenderConfig ;
2725import javasabr .rlib .mail .sender .exception .UncheckedMessagingException ;
2826import lombok .Builder ;
27+ import lombok .CustomLog ;
2928import lombok .Getter ;
3029
30+ @ CustomLog
3131public class JavaxMailSender implements MailSender {
3232
33- private static final Logger LOGGER = LoggerManager .getLogger (JavaxMailSender .class );
34-
3533 @ Getter
3634 @ Builder
3735 public static class JavaxMailSenderConfig {
38-
3936 private int executorMinThreads ;
4037 private int executorMaxThreads ;
4138 private int executorKeepAlive ;
42-
4339 private Executor executor ;
4440 }
4541
@@ -48,13 +44,12 @@ public static class JavaxMailSenderConfig {
4844 private final InternetAddress from ;
4945
5046 public JavaxMailSender (MailSenderConfig config ) {
51- this (config ,
52- JavaxMailSenderConfig
53- .builder ()
54- .executorKeepAlive (60 )
55- .executorMinThreads (1 )
56- .executorMaxThreads (2 )
57- .build ());
47+ this (config , JavaxMailSenderConfig
48+ .builder ()
49+ .executorKeepAlive (60 )
50+ .executorMinThreads (1 )
51+ .executorMaxThreads (2 )
52+ .build ());
5853 }
5954
6055 public JavaxMailSender (MailSenderConfig config , JavaxMailSenderConfig javaxConfig ) {
@@ -64,7 +59,7 @@ public JavaxMailSender(MailSenderConfig config, JavaxMailSenderConfig javaxConfi
6459 prop .put ("mail.smtp.host" , config .getHost ());
6560 prop .put ("mail.smtp.port" , String .valueOf (config .getPort ()));
6661
67- if (config .isEnableTtls ()) {
62+ if (config .isEnableTls ()) {
6863 prop .put ("mail.smtp.socketFactory.port" , String .valueOf (config .getPort ()));
6964 prop .put ("mail.smtp.socketFactory.class" , "javax.net.ssl.SSLSocketFactory" );
7065 prop .put ("mail.smtp.starttls.enable" , "true" );
@@ -82,18 +77,17 @@ protected PasswordAuthentication getPasswordAuthentication() {
8277 return new PasswordAuthentication (username , password );
8378 }
8479 });
85-
8680 try {
8781 this .from = new InternetAddress (config .getFrom ());
8882 } catch (AddressException e ) {
8983 throw new RuntimeException (e );
9084 }
9185
92- LOGGER .info ("Initialized javax mail sender with settings:" );
93- LOGGER .info ("User : " + username );
94- LOGGER .info ("From : " + config .getFrom ());
95- LOGGER .info ("Server : " + config .getHost () + ":" + config .getPort ());
96- LOGGER .info ("Using SSL : " + config . isEnableTtls () );
86+ log .info ("Initialized javax mail sender with settings:" );
87+ log .info (username , "User:[%s]" :: formatted );
88+ log .info (config .getFrom (), "From:[%s]" :: formatted );
89+ log .info (config .getHost (), config .getPort (), "Server:[%s:%d]" :: formatted );
90+ log .info (config . isEnableTls (), "Using SSL:[%s]" :: formatted );
9791
9892 if (javaxConfig .getExecutor () != null ) {
9993 this .executor = javaxConfig .getExecutor ();
@@ -111,24 +105,18 @@ protected PasswordAuthentication getPasswordAuthentication() {
111105
112106 @ Override
113107 public void send (String email , String subject , String content ) {
114-
115108 try {
116-
117- var message = new MimeMessage (session );
118- message .setFrom (from );
119- message .setRecipients (MimeMessage .RecipientType .TO , InternetAddress .parse (email ));
120- message .setSubject (subject , StandardCharsets .UTF_8 .name ());
121-
122109 var mimeBodyPart = new MimeBodyPart ();
123110 mimeBodyPart .setContent (content , "text/html; charset=UTF-8" );
124-
125111 var multipart = new MimeMultipart ();
126112 multipart .addBodyPart (mimeBodyPart );
127113
114+ var message = new MimeMessage (session );
115+ message .setFrom (from );
116+ message .setRecipients (MimeMessage .RecipientType .TO , InternetAddress .parse (email ));
117+ message .setSubject (subject , StandardCharsets .UTF_8 .name ());
128118 message .setContent (multipart );
129-
130119 Transport .send (message );
131-
132120 } catch (MessagingException e ) {
133121 throw new UncheckedMessagingException (e );
134122 }
0 commit comments