Author: rmannibucau
Date: Mon Sep  3 09:18:18 2012
New Revision: 1380179

URL: http://svn.apache.org/viewvc?rev=1380179&view=rev
Log:
TOMEE-407 mail session factory

Modified:
    
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/core/MailSessionFactory.java

Modified: 
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/core/MailSessionFactory.java
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/core/MailSessionFactory.java?rev=1380179&r1=1380178&r2=1380179&view=diff
==============================================================================
--- 
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/core/MailSessionFactory.java
 (original)
+++ 
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/core/MailSessionFactory.java
 Mon Sep  3 09:18:18 2012
@@ -16,15 +16,36 @@
  */
 package org.apache.openejb.core;
 
+import javax.mail.Authenticator;
+import javax.mail.PasswordAuthentication;
 import javax.mail.Session;
-import java.util.Properties;
 import java.util.Map;
+import java.util.Properties;
 
 public class MailSessionFactory {
     private final Properties properties = new Properties();
 
     public Session create() {
-        return Session.getInstance(properties);
+        final String password = properties.getProperty("password");
+
+        Authenticator auth = null;
+        if (password != null) {
+            String user = properties.getProperty("mail.smtp.user");
+            if(user == null) {
+                user = properties.getProperty("mail.user");
+            }
+
+            if(user != null) {
+                final PasswordAuthentication pa = new 
PasswordAuthentication(user, password);
+                auth = new Authenticator() {
+                    protected PasswordAuthentication 
getPasswordAuthentication() {
+                        return pa;
+                    }
+                };
+            }
+        }
+
+        return Session.getInstance(properties, auth);
     }
 
     public Properties getProperties() {


Reply via email to