001: /*
002: * Licensed to the Apache Software Foundation (ASF) under one
003: * or more contributor license agreements. See the NOTICE file
004: * distributed with this work for additional information
005: * regarding copyright ownership. The ASF licenses this file
006: * to you under the Apache License, Version 2.0 (the
007: * "License"); you may not use this file except in compliance
008: * with the License. You may obtain a copy of the License at
009: *
010: * http://www.apache.org/licenses/LICENSE-2.0
011: *
012: * Unless required by applicable law or agreed to in writing,
013: * software distributed under the License is distributed on an
014: * * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
015: * KIND, either express or implied. See the License for the
016: * specific language governing permissions and limitations
017: * under the License.
018: */
019:
020: package org.apache.synapse.transport.mail;
021:
022: import org.apache.synapse.transport.UtilsTransportServer;
023: import org.apache.synapse.transport.mail.MailTransportListener;
024: import org.apache.synapse.transport.mail.MailTransportSender;
025: import org.apache.axis2.description.TransportOutDescription;
026: import org.apache.axis2.description.TransportInDescription;
027: import org.apache.axis2.description.Parameter;
028:
029: import java.util.List;
030: import java.util.ArrayList;
031:
032: public class UtilsMailServer extends UtilsTransportServer {
033:
034: public void start() throws Exception {
035:
036: TransportOutDescription trpOutDesc = new TransportOutDescription(
037: MailConstants.TRANSPORT_NAME);
038: // gmail
039: trpOutDesc.addParameter(new Parameter("mail.smtp.host",
040: "smtp.gmail.com"));
041: trpOutDesc.addParameter(new Parameter("mail.smtp.port", "587"));
042: trpOutDesc.addParameter(new Parameter(
043: "mail.smtp.starttls.enable", "true"));
044: trpOutDesc.addParameter(new Parameter("mail.smtp.user",
045: "synapse.test.1"));
046: trpOutDesc.addParameter(new Parameter("mail.smtp.from",
047: "synapse.test.1@gmail.com"));
048: trpOutDesc.addParameter(new Parameter("mail.smtp.password",
049: "mailpassword"));
050: trpOutDesc
051: .addParameter(new Parameter("mail.smtp.auth", "true"));
052:
053: trpOutDesc.setSender(new MailTransportSender());
054:
055: TransportInDescription trpInDesc = new TransportInDescription(
056: MailConstants.TRANSPORT_NAME);
057: trpInDesc.setReceiver(new MailTransportListener());
058: super .start(trpInDesc, trpOutDesc);
059:
060: // Service1 - polls synapse.test.6@gmail.com using POP3/SSL, and writes the response to
061: // synapse.test.1@gmail.com and deletes request on success. Polls every 5 secs
062: List parameters = new ArrayList();
063: //gmail
064: parameters.add(new Parameter("transport.mail.Address",
065: "synapse.test.6@gmail.com"));
066: // local james
067: parameters.add(new Parameter("transport.mail.Address",
068: "synapse.test.6@localhost"));
069: //parameters.add(new Parameter("transport.mail.ReplyAddress", "synapse.test.1@gmail.com"));
070: parameters
071: .add(new Parameter("transport.mail.Protocol", "pop3"));
072: //parameters.add(new Parameter("transport.mail.ContentType", "text/xml"));
073: parameters.add(new Parameter(
074: "transport.mail.ActionAfterProcess", "DELETE"));
075: parameters.add(new Parameter("transport.PollInterval", "5"));
076:
077: // gmail
078: parameters
079: .add(new Parameter("mail.pop3.host", "pop.gmail.com"));
080: parameters.add(new Parameter("mail.pop3.port", "995"));
081: parameters
082: .add(new Parameter("mail.pop3.user", "synapse.test.6"));
083: parameters.add(new Parameter("mail.pop3.password",
084: "mailpassword"));
085:
086: parameters.add(new Parameter("mail.pop3.socketFactory.class",
087: "javax.net.ssl.SSLSocketFactory"));
088: parameters.add(new Parameter(
089: "mail.pop3.socketFactory.fallback", "false"));
090: parameters.add(new Parameter("mail.pop3.socketFactory.port",
091: "995"));
092:
093: deployEchoService("Service1", parameters);
094:
095: // Service2 - polls synapse.test.7@gmail.com using IMAP/SSL, and writes the response to
096: // synapse.test.1@gmail.com and deletes request on success. Polls every 5 secs
097: parameters = new ArrayList();
098: parameters.add(new Parameter("transport.mail.Address",
099: "synapse.test.7@gmail.com"));
100: //parameters.add(new Parameter("transport.mail.ReplyAddress", "synapse.test.1@gmail.com"));
101: parameters
102: .add(new Parameter("transport.mail.Protocol", "imap"));
103: //parameters.add(new Parameter("transport.mail.ContentType", "text/xml"));
104: //parameters.add(new Parameter("transport.mail.ActionAfterProcess", "DELETE"));
105: parameters.add(new Parameter("transport.PollInterval", "5"));
106:
107: parameters
108: .add(new Parameter("mail.imap.host", "imap.gmail.com"));
109: parameters.add(new Parameter("mail.imap.port", "993"));
110: parameters
111: .add(new Parameter("mail.imap.user", "synapse.test.7"));
112: parameters.add(new Parameter("mail.imap.password",
113: "mailpassword"));
114:
115: parameters.add(new Parameter("mail.imap.socketFactory.class",
116: "javax.net.ssl.SSLSocketFactory"));
117: parameters.add(new Parameter(
118: "mail.imap.socketFactory.fallback", "false"));
119: parameters.add(new Parameter("mail.imap.socketFactory.port",
120: "993"));
121:
122: deployEchoService("Service2", parameters);
123: }
124:
125: }
|