Class JmxSMTPMailServer

  • All Implemented Interfaces:
    com.atlassian.mail.server.auth.AuthenticationContextAware, com.atlassian.mail.server.MailServer, com.atlassian.mail.server.SMTPMailServer, Serializable

    public class JmxSMTPMailServer
    extends com.atlassian.mail.server.impl.SMTPMailServerImpl
    Wraps the SMTPMailServerImpl to provide metrics for
    • The number of emails sent in total
    • The number of emails succesfully delivered
    • The time the last successful email was sent
    • Connectivity without sending a test email
    Also allows the from name of emails to be set.

    The actual registration is handled by an instance of MailServerEventListener.

    See Also:
    Serialized Form
    • Field Summary

      • Fields inherited from class com.atlassian.mail.server.AbstractMailServer

        isAuthenticating, log
      • Fields inherited from interface com.atlassian.mail.server.SMTPMailServer

        DEFAULT_SMTP_PORT
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      int getEmailsAttempted()  
      int getEmailsSent()  
      String getFromName()  
      Date getLastSuccessful()  
      void quietSend​(com.atlassian.mail.Email email)  
      void send​(com.atlassian.mail.Email email)  
      void setFromName​(String fromName)  
      • Methods inherited from class com.atlassian.mail.server.impl.SMTPMailServerImpl

        equals, getDefaultFrom, getJndiLocation, getJndiSession, getPrefix, getSession, getType, hashCode, isRemovePrecedence, isSessionServer, isTlsHostnameCheckRequired, propertyChanged, sendMimeMessage, sendWithMessageId, setDefaultFrom, setJndiLocation, setPrefix, setRemovePrecedence, setSessionServer, setTlsHostnameCheckRequired, toString
      • Methods inherited from class com.atlassian.mail.server.AbstractMailServer

        getAuthenticationContext, getAuthenticator, getConnectionTimeout, getDebug, getDebugStream, getDescription, getHostname, getId, getMailProtocol, getMoreDebugInfoAboutCreatedSession, getName, getPassword, getPort, getProperties, getSessionFromServerManager, getSessionFromServerManagerInternal, getSocksHost, getSocksPort, getTimeout, getUsername, isTlsRequired, loadSystemProperties, setAuthenticationContext, setConnectionTimeout, setDebug, setDebugStream, setDescription, setHostname, setId, setLogger, setMailProtocol, setName, setPassword, setPort, setProperties, setSocksHost, setSocksPort, setTimeout, setTlsRequired, setUsername, smartConnect
      • Methods inherited from interface com.atlassian.mail.server.MailServer

        getDescription, getHostname, getId, getMailProtocol, getName, getPassword, getPort, getProperties, getSocksHost, getSocksPort, getTimeout, getUsername, setDebugStream, setDescription, setHostname, setId, setLogger, setMailProtocol, setName, setPassword, setPort, setProperties, setSocksHost, setSocksPort, setTimeout, setUsername
      • Methods inherited from interface com.atlassian.mail.server.SMTPMailServer

        getDebug, getDebugStream, isTlsRequired, isTransportCachingEnabled, setDebug, setTlsRequired
    • Method Detail

      • quietSend

        public void quietSend​(com.atlassian.mail.Email email)
                       throws com.atlassian.mail.MailException
        Specified by:
        quietSend in interface com.atlassian.mail.server.SMTPMailServer
        Overrides:
        quietSend in class com.atlassian.mail.server.impl.SMTPMailServerImpl
        Throws:
        com.atlassian.mail.MailException
      • send

        public void send​(com.atlassian.mail.Email email)
                  throws com.atlassian.mail.MailException
        Specified by:
        send in interface com.atlassian.mail.server.SMTPMailServer
        Overrides:
        send in class com.atlassian.mail.server.impl.SMTPMailServerImpl
        Throws:
        com.atlassian.mail.MailException
      • getEmailsSent

        public int getEmailsSent()
      • getEmailsAttempted

        public int getEmailsAttempted()
      • getLastSuccessful

        public Date getLastSuccessful()
      • getFromName

        public String getFromName()
      • setFromName

        public void setFromName​(String fromName)