You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@labs.apache.org by no...@apache.org on 2009/08/31 09:10:43 UTC
svn commit: r809480 - in /labs/hupa/server/src/main:
java/org/apache/hupa/server/ java/org/apache/hupa/server/handler/ resources/
Author: norman
Date: Mon Aug 31 07:10:42 2009
New Revision: 809480
URL: http://svn.apache.org/viewvc?rev=809480&view=rev
Log:
Add support for IMAPS and SMTPS (LABS-425)
Modified:
labs/hupa/server/src/main/java/org/apache/hupa/server/InMemoryIMAPStoreCache.java
labs/hupa/server/src/main/java/org/apache/hupa/server/handler/AbstractSendMessageHandler.java
labs/hupa/server/src/main/java/org/apache/hupa/server/handler/ForwardMessageHandler.java
labs/hupa/server/src/main/java/org/apache/hupa/server/handler/ReplyMessageHandler.java
labs/hupa/server/src/main/java/org/apache/hupa/server/handler/SendMessageHandler.java
labs/hupa/server/src/main/resources/config.properties
Modified: labs/hupa/server/src/main/java/org/apache/hupa/server/InMemoryIMAPStoreCache.java
URL: http://svn.apache.org/viewvc/labs/hupa/server/src/main/java/org/apache/hupa/server/InMemoryIMAPStoreCache.java?rev=809480&r1=809479&r2=809480&view=diff
==============================================================================
--- labs/hupa/server/src/main/java/org/apache/hupa/server/InMemoryIMAPStoreCache.java (original)
+++ labs/hupa/server/src/main/java/org/apache/hupa/server/InMemoryIMAPStoreCache.java Mon Aug 31 07:10:42 2009
@@ -44,14 +44,19 @@
private final Map<String,IMAPStore> pool = new HashMap<String ,IMAPStore>();
private String address;
private int port;
+ private boolean useSSL = false;
@Inject
- public InMemoryIMAPStoreCache(Log logger,@Named("IMAPServerAddress") String address, @Named("IMAPServerPort") int port, Provider<Session> sessionProvider) {
+ public InMemoryIMAPStoreCache(Log logger,@Named("IMAPServerAddress") String address, @Named("IMAPServerPort") int port, @Named("IMAPS") boolean useSSL,Provider<Session> sessionProvider) {
this.logger = logger;
this.address = address;
this.port = port;
+ this.useSSL = useSSL;
props.setProperty("mail.mime.decodetext.strict", "false");
+ if (useSSL) {
+ props.setProperty("mail.store.protocol", "imaps");
+ }
session = sessionProvider.get();
System.setProperty("mail.mime.decodetext.strict", "false");
}
@@ -72,7 +77,11 @@
IMAPStore store = pool.get(username);
if (store == null) {
logger.debug("No cached store found for user " +username);
- store = (IMAPStore) session.getStore("imap");
+ if (useSSL) {
+ store = (IMAPStore)session.getStore("imaps");
+ } else {
+ store = (IMAPStore) session.getStore("imap");
+ }
}
if (store.isConnected() == false) {
store.connect(address, port, username,password);
Modified: labs/hupa/server/src/main/java/org/apache/hupa/server/handler/AbstractSendMessageHandler.java
URL: http://svn.apache.org/viewvc/labs/hupa/server/src/main/java/org/apache/hupa/server/handler/AbstractSendMessageHandler.java?rev=809480&r1=809479&r2=809480&view=diff
==============================================================================
--- labs/hupa/server/src/main/java/org/apache/hupa/server/handler/AbstractSendMessageHandler.java (original)
+++ labs/hupa/server/src/main/java/org/apache/hupa/server/handler/AbstractSendMessageHandler.java Mon Aug 31 07:10:42 2009
@@ -72,14 +72,16 @@
private final boolean auth;
private final String address;
private final int port;
+ private boolean useSSL = false;
@Inject
- public AbstractSendMessageHandler(Log logger, FileItemRegistry registry,IMAPStoreCache store, Provider<HttpSession> provider,@Named("SMTPServerAddress") String address, @Named("SMTPServerPort") int port, @Named("SMTPAuth") boolean auth) {
+ public AbstractSendMessageHandler(Log logger, FileItemRegistry registry,IMAPStoreCache store, Provider<HttpSession> provider, @Named("SMTPServerAddress") String address, @Named("SMTPServerPort") int port, @Named("SMTPAuth") boolean auth, @Named("SMTPS") boolean useSSL) {
super(store,logger,provider);
this.registry = registry;
this.auth = auth;
this.address = address;
this.port = port;
+ this.useSSL = useSSL;
props.put("mail.smtp.auth", auth);
}
@@ -159,7 +161,13 @@
return multipart;
}
protected void sendMessage(User user, Session session, Message message) throws MessagingException {
- Transport transport = session.getTransport("smtp");
+ Transport transport;
+ if (useSSL) {
+ transport = session.getTransport("smtps");
+
+ } else {
+ transport = session.getTransport("smtp");
+ }
// check if smtp auth is needed
if (auth) {
logger.debug("Use auth for smtp connection");
Modified: labs/hupa/server/src/main/java/org/apache/hupa/server/handler/ForwardMessageHandler.java
URL: http://svn.apache.org/viewvc/labs/hupa/server/src/main/java/org/apache/hupa/server/handler/ForwardMessageHandler.java?rev=809480&r1=809479&r2=809480&view=diff
==============================================================================
--- labs/hupa/server/src/main/java/org/apache/hupa/server/handler/ForwardMessageHandler.java (original)
+++ labs/hupa/server/src/main/java/org/apache/hupa/server/handler/ForwardMessageHandler.java Mon Aug 31 07:10:42 2009
@@ -57,8 +57,8 @@
@Inject
public ForwardMessageHandler(Log logger, FileItemRegistry registry,
IMAPStoreCache store, Provider<HttpSession> provider,
- @Named("SMTPServerAddress") String address, @Named("SMTPServerPort") int port, @Named("SMTPAuth") boolean auth) {
- super(logger, registry, store, provider, address, port, auth);
+ @Named("SMTPServerAddress") String address, @Named("SMTPServerPort") int port, @Named("SMTPAuth") boolean auth, @Named("SMTPS") boolean useSSL) {
+ super(logger, registry, store, provider, address, port, auth, useSSL);
}
@Override
Modified: labs/hupa/server/src/main/java/org/apache/hupa/server/handler/ReplyMessageHandler.java
URL: http://svn.apache.org/viewvc/labs/hupa/server/src/main/java/org/apache/hupa/server/handler/ReplyMessageHandler.java?rev=809480&r1=809479&r2=809480&view=diff
==============================================================================
--- labs/hupa/server/src/main/java/org/apache/hupa/server/handler/ReplyMessageHandler.java (original)
+++ labs/hupa/server/src/main/java/org/apache/hupa/server/handler/ReplyMessageHandler.java Mon Aug 31 07:10:42 2009
@@ -51,8 +51,8 @@
@Inject
public ReplyMessageHandler(Log logger, FileItemRegistry registry,
IMAPStoreCache store, Provider<HttpSession> provider,
- @Named("SMTPServerAddress") String address, @Named("SMTPServerPort") int port, @Named("SMTPAuth") boolean auth) {
- super(logger, registry, store, provider, address, port, auth);
+ @Named("SMTPServerAddress") String address, @Named("SMTPServerPort") int port, @Named("SMTPAuth") boolean auth, @Named("SMTPS") boolean useSSL) {
+ super(logger, registry, store, provider, address, port, auth, useSSL);
}
/*
Modified: labs/hupa/server/src/main/java/org/apache/hupa/server/handler/SendMessageHandler.java
URL: http://svn.apache.org/viewvc/labs/hupa/server/src/main/java/org/apache/hupa/server/handler/SendMessageHandler.java?rev=809480&r1=809479&r2=809480&view=diff
==============================================================================
--- labs/hupa/server/src/main/java/org/apache/hupa/server/handler/SendMessageHandler.java (original)
+++ labs/hupa/server/src/main/java/org/apache/hupa/server/handler/SendMessageHandler.java Mon Aug 31 07:10:42 2009
@@ -46,8 +46,8 @@
@Inject
public SendMessageHandler(Log logger, FileItemRegistry registry,
- IMAPStoreCache store, Provider<HttpSession> provider,@Named("SMTPServerAddress") String address, @Named("SMTPServerPort") int port, @Named("SMTPAuth") boolean auth) {
- super(logger, registry, store, provider, address, port, auth);
+ IMAPStoreCache store, Provider<HttpSession> provider,@Named("SMTPServerAddress") String address, @Named("SMTPServerPort") int port, @Named("SMTPAuth") boolean auth, @Named("SMTPS") boolean useSSL) {
+ super(logger, registry, store, provider, address, port, auth,useSSL);
}
/*
Modified: labs/hupa/server/src/main/resources/config.properties
URL: http://svn.apache.org/viewvc/labs/hupa/server/src/main/resources/config.properties?rev=809480&r1=809479&r2=809480&view=diff
==============================================================================
--- labs/hupa/server/src/main/resources/config.properties (original)
+++ labs/hupa/server/src/main/resources/config.properties Mon Aug 31 07:10:42 2009
@@ -1,5 +1,15 @@
+# The IP or domainname of the IMAP server
IMAPServerAddress=192.168.0.254
+# The port of the IMAP server
IMAPServerPort=143
+# Use SSL/TLS to connect to the IMAP server
+IMAPS=false
+
+# The IP or domainname of the SMTP server
SMTPServerAddress=192.168.0.254
+# The port of the SMTP server
SMTPServerPort=25
-SMTPAuth=true
\ No newline at end of file
+# Use AUTH for SMTP
+SMTPAuth=true
+# Use SSL/TLS to connect to the SMTP server
+SMTPS=false
\ No newline at end of file
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@labs.apache.org
For additional commands, e-mail: commits-help@labs.apache.org