public class GreenMail extends ConfiguredGreenMail
| Modifier and Type | Field and Description |
|---|---|
protected ServerSetup[] |
config |
protected org.slf4j.Logger |
log |
protected Managers |
managers |
protected Map<String,AbstractServer> |
services |
| Constructor and Description |
|---|
GreenMail()
Creates a SMTP, SMTPS, POP3, POP3S, IMAP, and IMAPS server binding onto non-default ports.
|
GreenMail(ServerSetup config)
Call this constructor if you want to run one of the email servers only
|
GreenMail(ServerSetup[] config)
Call this constructor if you want to run more than one of the email servers
|
| Modifier and Type | Method and Description |
|---|---|
protected Map<String,AbstractServer> |
createServices(ServerSetup[] config,
Managers mgr)
Create the required services according to the server setup
|
ImapServer |
getImap() |
ImapServer |
getImaps() |
Managers |
getManagers() |
Pop3Server |
getPop3() |
Pop3Server |
getPop3s() |
MimeMessage[] |
getReceivedMessages() |
MimeMessage[] |
getReceivedMessagesForDomain(String domain)
Gets all messages containing given domain.
|
SmtpServer |
getSmtp() |
SmtpServer |
getSmtps() |
UserManager |
getUserManager() |
boolean |
isRunning()
Checks if GreenMail is up and running.
|
void |
purgeEmailFromAllMailboxes()
Remove/purge all data from all mail stores (POP3/IMAP)
|
void |
reset()
Restart the GreenMail server.
|
void |
setQuotaSupported(boolean isEnabled)
Toggles the IMAP quota support.
|
GreenMailUser |
setUser(String login,
String password)
Sets the password for the account linked to email.
|
GreenMailUser |
setUser(String email,
String login,
String password)
Sets the password for the account linked to email.
|
void |
setUsers(Properties users)
Sets up accounts with password based on a properties map where the key is the email/login and the value the password
|
void |
start()
Start the GreenMail server
|
void |
stop()
Stop the GreenMail server.
|
boolean |
waitForIncomingEmail(int emailCount)
Does the same thing as
GreenMailOperations.waitForIncomingEmail(long, int) but with a default timeout of 5000ms |
boolean |
waitForIncomingEmail(long timeout,
int emailCount)
Use this method if you are sending email in a different thread from the one you're testing from.
|
GreenMail |
withConfiguration(GreenMailConfiguration config)
Configure GreenMail instance using the given configuration
|
doConfigureprotected final org.slf4j.Logger log
protected Managers managers
protected Map<String,AbstractServer> services
protected ServerSetup[] config
public GreenMail()
ServerSetupTestpublic GreenMail(ServerSetup config)
config - Server setup to usepublic GreenMail(ServerSetup[] config)
config - Server setup to usepublic void start()
GreenMailOperationspublic void stop()
GreenMailOperationspublic void reset()
GreenMailOperationsprotected Map<String,AbstractServer> createServices(ServerSetup[] config, Managers mgr)
config - Service configurationpublic SmtpServer getSmtp()
public ImapServer getImap()
public Pop3Server getPop3()
public SmtpServer getSmtps()
public ImapServer getImaps()
public Pop3Server getPop3s()
public Managers getManagers()
public UserManager getUserManager()
public boolean waitForIncomingEmail(long timeout,
int emailCount)
GreenMailOperationstimeout - maximum time in ms to wait for emailCount of messages to arrive before giving up and returning falseemailCount - waits for these many emails to arrive before returningpublic boolean waitForIncomingEmail(int emailCount)
GreenMailOperationsGreenMailOperations.waitForIncomingEmail(long, int) but with a default timeout of 5000msemailCount - waits for these many emails to arrive before returningpublic MimeMessage[] getReceivedMessages()
GreenMailUtil has a bunch of static helper methods to extract body text etc.public MimeMessage[] getReceivedMessagesForDomain(String domain)
GreenMailOperationsdomain - the domain, such as 'icegreen.com' or 'some.example.com'public GreenMailUser setUser(String login, String password)
GreenMailOperationslogin - Login for which the password should be set. This is assumed to be the same as the email address.password - New passwordpublic GreenMailUser setUser(String email, String login, String password)
GreenMailOperationsemail - Email address for which the password should be setlogin - Login name for login. This may be different to the email address. E.g. the email address could be
"info@localhost", the login could be "info".password - New passwordpublic void setQuotaSupported(boolean isEnabled)
GreenMailOperationsisEnabled - true, if quotas should be supported.public void setUsers(Properties users)
GreenMailOperationsusers - User/password mappublic GreenMail withConfiguration(GreenMailConfiguration config)
GreenMailOperationswithConfiguration in interface GreenMailOperationswithConfiguration in class ConfiguredGreenMailconfig - Configuration to usepublic void purgeEmailFromAllMailboxes()
throws FolderException
GreenMailOperationsFolderException - on errorpublic boolean isRunning()
GreenMailOperationsCopyright © 2006–2022 Icegreen Technologies. All rights reserved.