Class OutgoingEmail

    • Method Detail

      • setFrom

        public void setFrom​(Account.Id id)
      • send

        public void send()
                  throws com.google.gerrit.exceptions.EmailException
        Format and enqueue the message for delivery.
        Throws:
        com.google.gerrit.exceptions.EmailException
      • format

        protected abstract void format()
                                throws com.google.gerrit.exceptions.EmailException
        Format the message body by calling appendText(String).
        Throws:
        com.google.gerrit.exceptions.EmailException
      • init

        protected void init()
                     throws com.google.gerrit.exceptions.EmailException
        Setup the message headers and envelope (TO, CC, BCC).
        Throws:
        com.google.gerrit.exceptions.EmailException - if an error occurred.
      • getFromLine

        protected String getFromLine()
      • getGerritHost

        public String getGerritHost()
      • getSettingsUrl

        public String getSettingsUrl()
      • setHeader

        protected void setHeader​(String name,
                                 String value)
        Set a header in the outgoing message.
      • removeHeader

        protected void removeHeader​(String name)
        Remove a header from the outgoing message.
      • setHeader

        protected void setHeader​(String name,
                                 Date date)
      • appendText

        protected void appendText​(String text)
        Append text to the outgoing email body.
      • appendHtml

        protected void appendHtml​(String html)
        Append html to the outgoing email body.
      • getNameFor

        protected String getNameFor​(Account.Id accountId)
        Lookup a human readable name for an account, usually the "full name".
      • getNameEmailFor

        protected String getNameEmailFor​(Account.Id accountId)
        Gets the human readable name and email for an account; if neither are available, returns the Anonymous Coward name.
        Parameters:
        accountId - user to fetch.
        Returns:
        name/email of account, or Anonymous Coward if unset.
      • getUserNameEmailFor

        protected String getUserNameEmailFor​(Account.Id accountId)
        Gets the human readable name and email for an account; if both are unavailable, returns the username. If no username is set, this function returns null.
        Parameters:
        accountId - user to fetch.
        Returns:
        name/email of account, username, or null if unset or the accountId is null.
      • shouldSendMessage

        protected boolean shouldSendMessage()
      • addByEmail

        protected void addByEmail​(RecipientType rt,
                                  Collection<Address> list,
                                  boolean override)
        Schedule this message for delivery to the listed address.
      • add

        protected void add​(RecipientType rt,
                           Account.Id to)
        Schedule delivery of this message to the given account.
      • add

        protected void add​(RecipientType rt,
                           Address addr)
        Schedule delivery of this message to the given account.
      • setupSoyContext

        protected void setupSoyContext()
      • textTemplate

        protected String textTemplate​(String name)
        Renders a soy template of kind="text".
      • soyHtmlTemplate

        protected String soyHtmlTemplate​(String name)
        Renders a soy template of kind="html".
      • removeUser

        protected void removeUser​(Account user)
      • useHtml

        protected final boolean useHtml()