1 /***********************************************************************************************************************
2 *
3 * JavaMail Mock2 Provider - open source mock classes for mock up JavaMail
4 * =======================================================================
5 *
6 * Copyright (C) 2014 by Hendrik Saly (http://saly.de)
7 *
8 * Based on ideas from Kohsuke Kawaguchi's Mock-javamail (https://java.net/projects/mock-javamail)
9 *
10 ***********************************************************************************************************************
11 *
12 * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with
13 * the License. You may obtain a copy of the License at
14 *
15 * http://www.apache.org/licenses/LICENSE-2.0
16 *
17 * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on
18 * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the
19 * specific language governing permissions and limitations under the License.
20 *
21 ***********************************************************************************************************************
22 *
23 * $Id:$
24 *
25 **********************************************************************************************************************/
26 package de.saly.javamail.mock2;
27
28 import javax.mail.Provider;
29
30 public final class Providers {
31
32 public static Provider getIMAPProvider(final String protocol, final boolean secure, final boolean mock) {
33 if (mock) {
34 return new Provider(Provider.Type.STORE, protocol, secure ? "de.saly.javamail.mock2.IMAPSSLMockStore"
35 : "de.saly.javamail.mock2.IMAPMockStore", "JavaMail Mock2 provider", null);
36 }
37
38 return new Provider(Provider.Type.STORE, protocol, secure ? "com.sun.mail.imap.IMAPSSLStore" : "com.sun.mail.imap.IMAPStore",
39 "Oracle", null);
40
41 }
42
43 public static Provider getPOP3Provider(final String protocol, final boolean secure, final boolean mock) {
44 if (mock) {
45 return new Provider(Provider.Type.STORE, protocol, secure ? "de.saly.javamail.mock2.POP3SSLMockStore"
46 : "de.saly.javamail.mock2.POP3MockStore", "JavaMail Mock2 provider", null);
47 }
48
49 return new Provider(Provider.Type.STORE, protocol, secure ? "com.sun.mail.pop3.POP3SSLStore" : "com.sun.mail.pop3.POP3Store",
50 "Oracle", null);
51
52 }
53
54 public static Provider getSMTPProvider(final String protocol, final boolean secure, final boolean mock) {
55 if (mock) {
56 return new Provider(Provider.Type.TRANSPORT, protocol, "de.saly.javamail.mock2.MockTransport", "JavaMail Mock2 provider", null);
57 }
58
59 return new Provider(Provider.Type.TRANSPORT, protocol, secure ? "com.sun.mail.smtp.SMTPSSLTransport"
60 : "com.sun.mail.smtp.SMTPTransport", "Oracle", null);
61 }
62
63 private Providers() {
64 // empty
65 }
66
67 }