Package org.springframework.mail.javamail

Examples of org.springframework.mail.javamail.MimeMessageHelper


                log.error("No application found for ApplicationVersion with ID: " + applicationVersionId);
            }

            int numSent = 0;
            final MimeMessage mimeMessage = this.mailSender.createMimeMessage();
            final MimeMessageHelper message = new MimeMessageHelper(mimeMessage, "UTF-8");
            try {
                message.setSubject("Knappsack: Application Visibility");

                Locale locale = LocaleContextHolder.getLocale();
                message.setFrom(fromAddress);

                Context ctx = new Context(locale);
                ctx.setVariable("applicationName", applicationVersion.getApplication().getName());
                ctx.setVariable("url", request.generateURL(String.format("/detail/%s", applicationVersion.getApplication().getId())));
                ctx.setVariable("applicationVersion", applicationVersion.getVersionName());
                applyBranding(application.getOwnedGroup().getOrganization(), ctx);

                List<User> users = userService.get(userIds);
                for (User user : users) {
                    ctx.setVariable("userName", user.getFullName());

                    final String htmlContent = this.templateEngine.process("email-applicationVersionBecameVisibleTH", ctx);
                    message.setText(htmlContent, true /* isHtml */);
                    message.setTo(user.getEmail());

                    if (sendMessage(mimeMessage)) {
                        numSent += 1;
                    }
                }
View Full Code Here


    public boolean sendBandwidthLimitNotification(Long organizationId, List<UserModel> users) {
        boolean emailsSent = false;
        WebRequest webRequest = WebRequest.getInstance();
        if (sendEmail) {
            final MimeMessage mimeMessage = this.mailSender.createMimeMessage();
            final MimeMessageHelper message = new MimeMessageHelper(mimeMessage, "UTF-8");
            try {
                Organization organization = organizationService.get(organizationId);
                if(organization == null) {
                    log.error("No organization found with ID: " + organizationId);
                    return true;
                }

                int numberOfEmails = 0;
                message.setSubject("Knappsack: Organization Bandwidth Limit Reached");

                Locale locale = LocaleContextHolder.getLocale();
                message.setFrom(fromAddress);

                if (users != null) {
                    String orgName = organization.getName();
                    String url = webRequest.generateURL("");
                    long bandwidthLimit = organization.getDomainConfiguration().getMegabyteBandwidthLimit();
                    for (UserModel user : users) {
                        Context ctx = new Context(locale);
                        ctx.setVariable("user", user);
                        ctx.setVariable("organizationName", orgName);
                        ctx.setVariable("url", url);
                        ctx.setVariable("bandwidthLimit", bandwidthLimit);

                        // Create the HTML body using Thymeleaf
                        final String htmlContent = this.templateEngine.process("email-bandwidthLimitTH", ctx);
                        message.setText(htmlContent, true /* isHtml */);
                        message.setTo(user.getEmail());

                        if (sendMessage(mimeMessage)) {
                            numberOfEmails += 1;
                        }
                    }
View Full Code Here

            return true;
        }

        if (sendEmail && applicationVersion.getApplication() != null && AppState.ERROR.equals(applicationVersion.getAppState()) && userIds != null) {
            final MimeMessage mimeMessage = this.mailSender.createMimeMessage();
            final MimeMessageHelper message = new MimeMessageHelper(mimeMessage, "UTF-8");
            try {
                int numberOfEmails = 0;
                message.setSubject("Knappsack: Application Version Error");

                Locale locale = LocaleContextHolder.getLocale();
                message.setFrom(fromAddress);

                Application parentApplication = applicationVersion.getApplication();
                if (parentApplication != null) {
                    String applicationName = parentApplication.getName();
                    String url = webRequest.generateURL(String.format("/manager/editVersion/%s/%s", parentApplication.getId(), applicationVersion.getId()));
                    List<User> users = userService.get(userIds);
                    for (User user : users) {
                        Context ctx = new Context(locale);
                        ctx.setVariable("user", user);
                        ctx.setVariable("url", url);
                        ctx.setVariable("applicationName", applicationName);
                        ctx.setVariable("applicationVersion", applicationVersion.getVersionName());
                        applyBranding(parentApplication.getOwnedGroup().getOrganization(), ctx);

                        // Create the HTML body using Thymeleaf
                        final String htmlContent = this.templateEngine.process("email-applicationVersionErrorTH", ctx);
                        message.setText(htmlContent, true /* isHtml */);
                        message.setTo(user.getEmail());

                        if (sendMessage(mimeMessage)) {
                            numberOfEmails += 1;
                        }
                    }
View Full Code Here

            if(application == null) {
                log.error("No application found for ApplicationVersion with ID: " + applicationVersionId);
            }

            final MimeMessage mimeMessage = this.mailSender.createMimeMessage();
            final MimeMessageHelper message = new MimeMessageHelper(mimeMessage, "UTF-8");
            try {
                int numberOfEmails = 0;
                if (resignSuccess) {
                    message.setSubject("Knappsack: Application Resign Complete");
                } else {
                    message.setSubject("Knappsack: Application Resign Error");
                }

                Locale locale = LocaleContextHolder.getLocale();
                message.setFrom(fromAddress);

                Application parentApplication = applicationVersion.getApplication();
                if (parentApplication != null) {
                    String applicationName = parentApplication.getName();
                    String url;
                    if (resignSuccess) {
                        url = webRequest.generateURL(String.format("/detail/%s", parentApplication.getId()));
                    } else {
                        url = webRequest.generateURL(String.format("/manager/editVersion/%s/%s", parentApplication.getId(), applicationVersion.getId()));
                    }

                    List<User> users = userService.get(userIds);
                    for (User user : users) {
                        Context ctx = new Context(locale);
                        ctx.setVariable("userName", user.getFullName());
                        ctx.setVariable("url", url);
                        ctx.setVariable("resignSuccess", resignSuccess);
                        ctx.setVariable("resignErrorType", (resignErrorType != null ? resignErrorType : ResignErrorType.GENERIC));
                        ctx.setVariable("applicationName", applicationName);
                        ctx.setVariable("applicationVersion", applicationVersion.getVersionName());
                        applyBranding(parentApplication.getOwnedGroup().getOrganization(), ctx);

                        // Create the HTML body using Thymeleaf
                        final String htmlContent = this.templateEngine.process("email-applicationVersionResignCompleteTH", ctx);
                        message.setText(htmlContent, true /* isHtml */);
                        message.setTo(user.getEmail());

                        if (sendMessage(mimeMessage)) {
                            numberOfEmails += 1;
                        }
                    }
View Full Code Here

                log.error("No Domain found for DomainRequest with ID: " + domainRequestId);
                return true;
            }

            final MimeMessage mimeMessage = this.mailSender.createMimeMessage();
            final MimeMessageHelper message = new MimeMessageHelper(mimeMessage, "UTF-8");

            try {
                int numberOfEmails = 0;
                message.setSubject("Knappsack: Domain Request");

                Locale locale = LocaleContextHolder.getLocale();
                message.setFrom(fromAddress);

                int emailCount = 0;

                Region region = domainRequest.getRegion();
                if (region != null && region.getEmails() != null && region.getEmails().size() > 0) {
                    emailCount = region.getEmails().size();
                    for (String email : region.getEmails()) {
                        Context ctx = new Context(locale);
                        ctx.setVariable("url", webRequest.generateURL("/manager/requestsPending/" + domainRequest.getDomain().getId()));
                        ctx.setVariable("domain", domainRequest.getDomain());
                        ctx.setVariable("requesterFirstName", domainRequest.getFirstName());
                        ctx.setVariable("requesterLastName", domainRequest.getLastName());
                        ctx.setVariable("requesterEmail", domainRequest.getEmailAddress());
                        ctx.setVariable("requesterAddress", domainRequest.getAddress());
                        ctx.setVariable("requesterCompanyName", domainRequest.getCompanyName());
                        ctx.setVariable("requesterPhone", domainRequest.getPhoneNumber());
                        ctx.setVariable("requesterDeviceType", domainRequest.getDeviceType());
                        ctx.setVariable("requesterRegion", domainRequest.getRegion());

                        List<Language> languages = new ArrayList<Language>();
                        languages.addAll(domainRequest.getLanguages());
                        Collections.sort(languages, new LanguageComparator());
                        ctx.setVariable("requesterLanguages", languages);
                        applyBranding(domainRequest.getDomain(), ctx);

                        // Create the HTML body using Thymeleaf
                        final String htmlContent = this.templateEngine.process("email-domainAccessRequestTH", ctx);
                        message.setText(htmlContent, true /* isHtml */);
                        message.setTo(email);

                        if (sendMessage(mimeMessage)) {
                            numberOfEmails += 1;
                        }
                    }
                } else {
                    List<User> users = domainService.getAllAdmins(domainRequest.getDomain(), true);
                    emailCount = (users == null ? 0 : users.size());

                    if (users != null) {
                        for (User user : users) {
                            Context ctx = new Context(locale);
                            ctx.setVariable("url", webRequest.generateURL("/manager/requestsPending/" + domainRequest.getDomain().getId()));
                            ctx.setVariable("domain", domainRequest.getDomain());
                            ctx.setVariable("requesterFirstName", domainRequest.getFirstName());
                            ctx.setVariable("requesterLastName", domainRequest.getLastName());
                            ctx.setVariable("requesterEmail", domainRequest.getEmailAddress());
                            ctx.setVariable("requesterAddress", domainRequest.getAddress());
                            ctx.setVariable("requesterCompanyName", domainRequest.getCompanyName());
                            ctx.setVariable("requesterPhone", domainRequest.getPhoneNumber());
                            ctx.setVariable("requesterDeviceType", domainRequest.getDeviceType());
                            ctx.setVariable("requesterRegion", domainRequest.getRegion());

                            List<Language> languages = new ArrayList<Language>();
                            languages.addAll(domainRequest.getLanguages());
                            Collections.sort(languages, new LanguageComparator());
                            ctx.setVariable("requesterLanguages", languages);

                            ctx.setVariable("user", user);

                            // Create the HTML body using Thymeleaf
                            final String htmlContent = this.templateEngine.process("email-domainAccessRequestTH", ctx);
                            message.setText(htmlContent, true /* isHtml */);
                            message.setTo(user.getEmail());

                            if (sendMessage(mimeMessage)) {
                                numberOfEmails += 1;
                            }
                        }
View Full Code Here

                    if (StringUtils.isNotBlank(smtpPassword)) {
                        sender.setPassword(smtpPassword);
                    }

                    MimeMessage message = sender.createMimeMessage();
                    MimeMessageHelper helper = new MimeMessageHelper(message, true);

                    helper.setTo(to);
                    helper.setFrom(task.getSender());
                    helper.setSubject(task.getSubject());
                    helper.setText(task.getTextBody(), task.getHtmlBody());

                    sender.send(message);

                    execution.setStatus(Status.SENT.name());
View Full Code Here

  private void buildBodyContent() throws MessagingException, IOException {

    boolean hasAttachments = (this.composeAttachments != null && this.composeAttachments.size() > 0);
    boolean multipart = hasAttachments || isHtmlMessage();

    MimeMessageHelper messageHelper = new MimeMessageHelper( this.message, multipart );

    if ( isHtmlMessage() ) {
      String plainText = MessageTextUtil.convertHtml2PlainText( this.messageTextHtml );
      messageHelper.setText( plainText, this.messageTextHtml );
    }
    else {
      messageHelper.setText( this.messageTextPlain, false );
    }

    if ( hasAttachments ) {
      for (DataSource attachment : this.composeAttachments) {

        messageHelper.addAttachment( attachment.getName(), attachment );
      }

    }

    if ( !isRead() ) {
View Full Code Here

  private void buildBodyContent() throws MessagingException, IOException {

    boolean hasAttachments = (this.composeAttachments != null && this.composeAttachments.size() > 0);
    boolean multipart = hasAttachments || isHtmlMessage();

    MimeMessageHelper messageHelper = new MimeMessageHelper( this.message, multipart );

    if ( isHtmlMessage() ) {
      String plainText = MessageTextUtil.convertHtml2PlainText( this.messageTextHtml );
      messageHelper.setText( plainText, this.messageTextHtml );
    }
    else {
      messageHelper.setText( this.messageTextPlain, false );
    }

    if ( hasAttachments ) {
      for (DataSource attachment : this.composeAttachments) {

        messageHelper.addAttachment( attachment.getName(), attachment );
      }

    }

    if ( !isRead() ) {
View Full Code Here

    public void sendNotification(URL resetUrl, ILocalAccountPerson account, Locale locale) {
        log.debug("Sending password reset instructions to user with url {}", resetUrl.toString());

        try {
            MimeMessage message = mailSender.createMimeMessage();
            MimeMessageHelper helper = new MimeMessageHelper(message, true);
            String email = (String)account.getAttributeValue(ILocalAccountPerson.ATTR_MAIL);
            String subject = messageSource.getMessage(subjectMessageKey, new Object[]{}, locale);
            String body = formatBody(resetUrl, account, locale);

            helper.addTo(email);
            helper.setText(body, true);
            helper.setSubject(subject);
            helper.setFrom(portalEmailAddress, messageSource.getMessage("portal.name", new Object[]{}, locale));

            log.debug("Sending message to {} from {} subject {}", email,
                    Arrays.toString(message.getFrom()), message.getSubject());
            this.mailSender.send(helper.getMimeMessage());

        } catch(Exception e) {
            log.error("Unable to send password reset email", e);
        }
    }
View Full Code Here

    public MimeMailMessage convertOutbound(Message message, MailEndpointConfiguration endpointConfiguration) {
        MailMessage mailMessage = getMailMessage(message, endpointConfiguration);

        try {
            MimeMessage mimeMessage = endpointConfiguration.getJavaMailSender().createMimeMessage();
            MimeMailMessage mimeMailMessage = new MimeMailMessage(new MimeMessageHelper(mimeMessage, mailMessage.getBody().hasAttachments(), mailMessage.getBody().getCharsetName()));

            convertOutbound(mimeMailMessage, new DefaultMessage(mailMessage, message.copyHeaders()), endpointConfiguration);

            return mimeMailMessage;
        } catch (MessagingException e) {
View Full Code Here

TOP

Related Classes of org.springframework.mail.javamail.MimeMessageHelper

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.