Class EmailService

java.lang.Object
org.pentaho.platform.plugin.services.email.EmailService
All Implemented Interfaces:
org.pentaho.platform.api.email.IEmailService

public class EmailService extends Object implements org.pentaho.platform.api.email.IEmailService
Manages the email connection information
Author:
David M. Kincade
  • Field Details

  • Constructor Details

    • EmailService

      public EmailService() throws IllegalArgumentException
      Constructs an instance of this class using the default settings location as defined by PentahoSystem
      Throws:
      IllegalArgumentException - Indicates that the default location for the email configuration file is invalid
    • EmailService

      public EmailService(File emailConfigFile) throws IllegalArgumentException
      Constructs an instance of this class using the specified file location as the source of the email configuration
      Parameters:
      emailConfigFile - the file reference to the email configuration
      Throws:
      IllegalArgumentException - indicates the argument is either null or references a location which is invalid (the parent folder of the specified file doesn't exist)
  • Method Details

    • setEmailConfig

      public void setEmailConfig(org.pentaho.platform.api.email.IEmailConfiguration emailConfiguration)
      Specified by:
      setEmailConfig in interface org.pentaho.platform.api.email.IEmailService
    • getEmailConfig

      public EmailConfiguration getEmailConfig()
      TODO document
      Specified by:
      getEmailConfig in interface org.pentaho.platform.api.email.IEmailService
      Returns:
    • sendEmailTest

      public String sendEmailTest(org.pentaho.platform.api.email.IEmailConfiguration emailConfig)
      Tests the provided email configuration by sending a test email. This will just indicate that the server configuration is correct and a test email was successfully sent. It does not test the destination address.
      Specified by:
      sendEmailTest in interface org.pentaho.platform.api.email.IEmailService
      Parameters:
      emailConfig - the email configuration to test
      Throws:
      Exception - indicates an error running the test (as in an invalid configuration)
    • sendEmail

      public void sendEmail(javax.mail.Session session, javax.mail.internet.MimeMessage msg) throws org.pentaho.platform.api.email.EmailServiceException
      Specified by:
      sendEmail in interface org.pentaho.platform.api.email.IEmailService
      Throws:
      org.pentaho.platform.api.email.EmailServiceException
    • setEmailConfigFile

      protected void setEmailConfigFile(File emailConfigFile) throws IllegalArgumentException
      Validates and sets the email configuration file to the specified value.
      Parameters:
      emailConfigFile - the email configuration file to use
      Throws:
      IllegalArgumentException - indicates that the provided value is invalid (the value is null or the parent folder does not exist)
    • isValid

      public boolean isValid()
      Specified by:
      isValid in interface org.pentaho.platform.api.email.IEmailService
    • isValid

      protected boolean isValid(EmailConfiguration c)
    • getOAuthToken

      protected org.pentaho.platform.api.email.IEmailAuthenticationResponse getOAuthToken(org.pentaho.platform.api.email.IEmailConfiguration emailConfig) throws IOException, org.apache.http.HttpException
      Throws:
      IOException
      org.apache.http.HttpException
    • sendMailGraphApi

      protected void sendMailGraphApi(org.pentaho.platform.api.email.IEmailConfiguration emailConfig, String accessToken, String message) throws org.apache.http.HttpException, IOException
      Throws:
      org.apache.http.HttpException
      IOException
    • sendMailGraphApi

      protected void sendMailGraphApi(String uri, String accessToken, String message) throws org.apache.http.HttpException, IOException
      Throws:
      org.apache.http.HttpException
      IOException