1 package com.atlassian.mail.server.managers;
2
3 import alt.javax.mail.Session;
4 import alt.javax.mail.SessionImpl;
5 import com.atlassian.mail.MailException;
6 import com.atlassian.mail.server.MailServer;
7 import com.atlassian.mail.server.MailServerManager;
8 import com.atlassian.mail.server.PopMailServer;
9 import com.atlassian.mail.server.SMTPMailServer;
10
11 import javax.mail.Authenticator;
12 import java.util.List;
13 import java.util.Map;
14 import java.util.Properties;
15
16
17
18
19
20
21
22
23 public abstract class AbstractMailServerManager implements MailServerManager
24 {
25 public void init(Map params)
26 {
27
28 }
29
30 public abstract MailServer getMailServer(Long id) throws MailException;
31
32 public abstract MailServer getMailServer(String name) throws MailException;
33
34 public abstract List getServerNames() throws MailException;
35
36 public abstract List getSmtpMailServers() throws MailException;
37
38 public abstract List getPopMailServers() throws MailException;
39
40 public abstract Long create(MailServer mailServer) throws MailException;
41
42 public abstract void update(MailServer mailServer) throws MailException;
43
44 public abstract void delete(Long mailServerId) throws MailException;
45
46 public abstract SMTPMailServer getDefaultSMTPMailServer() throws MailException;
47
48 public abstract PopMailServer getDefaultPopMailServer() throws MailException;
49
50 public Session getSession(Properties props, Authenticator auth)
51 {
52 return new SessionImpl(javax.mail.Session.getInstance(props, auth));
53 }
54
55 }