com.atlassian.confluence.mail.template
Class PreRenderedMailNotificationQueueItem.Builder

java.lang.Object
  extended by com.atlassian.confluence.mail.template.PreRenderedMailNotificationQueueItem.Builder
Enclosing class:
PreRenderedMailNotificationQueueItem

public static class PreRenderedMailNotificationQueueItem.Builder
extends java.lang.Object

A builder for PreRenderedMailNotificationQueueItems.

This builder unifies the different factory methods provided on the item's class.

Since:
5.2
See Also:
PreRenderedMailNotificationQueueItem.with(User, String, String)

Method Summary
 PreRenderedMailNotificationQueueItem.Builder andContext(java.util.Map<java.lang.String,java.lang.Object> context)
           
 PreRenderedMailNotificationQueueItem.Builder andContextEntry(java.lang.String key, java.lang.Object value)
          Add an entry to the context used for rendering the body.
 PreRenderedMailNotificationQueueItem.Builder andRelatedBodyPart(javax.activation.DataSource relatedBodyPart)
           
 PreRenderedMailNotificationQueueItem.Builder andRelatedBodyParts(java.lang.Iterable<javax.activation.DataSource> relatedBodyParts)
           
 PreRenderedMailNotificationQueueItem.Builder andReplyTo(java.lang.String replyToEmail)
           
 PreRenderedMailNotificationQueueItem.Builder andSender(com.atlassian.user.User sender)
           
 PreRenderedMailNotificationQueueItem.Builder andTemplateLocation(java.lang.String templateLocation)
          Set the location of the template specified as templateFileName in the constructor.
 PreRenderedMailNotificationQueueItem build()
          Constructs an instance of PreRenderedMailNotificationQueueItem.
 PreRenderedMailNotificationQueueItem render()
          Constructs an instance of PreRenderedMailNotificationQueueItem and renders the body.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

andTemplateLocation

public PreRenderedMailNotificationQueueItem.Builder andTemplateLocation(java.lang.String templateLocation)
Set the location of the template specified as templateFileName in the constructor.

For Velocity templates, e.g. any templateFileName ending with .vm, this has to be path relative to the webapp starting and ending with '/'. The templateLocation is concatenated with the templateFileName and then fed into VelocityUtils.getRenderedContent(String, Map).

For any other template, e.g. any templateFileName ending with .soy indicating that this is a Google Closure Template, the location has to be a complete key pointing to a web-resource declaring the template.
The plugin system defines a complete key as a unique identifier for a plugin module. It is composed of a plugin key and a module key separated by a colon.
E.g.

 <atlassian-plugin key="myPluginKey" plugins-version="2">
  <web-resource key="templates">
      <resource type="soy" name="content" location="templates/myTemplate.soy"/>
  </web-resource>
 </atlassian-plugin>
 
 
would mean that the complete key and thus the templateLocation for this file is myPluginKey:templates.

The builder will default to MailNotificationQueueItem.getDefaultTemplateLocation(User, String).


andSender

public PreRenderedMailNotificationQueueItem.Builder andSender(com.atlassian.user.User sender)
Parameters:
sender - the sender of this email

andReplyTo

public PreRenderedMailNotificationQueueItem.Builder andReplyTo(java.lang.String replyToEmail)
Parameters:
replyToEmail - the email address that will be used for replying to

andRelatedBodyPart

public PreRenderedMailNotificationQueueItem.Builder andRelatedBodyPart(javax.activation.DataSource relatedBodyPart)
Parameters:
relatedBodyPart - encapsulates a binary, e.g. an image, to be added to the email's related Multipart
See Also:
MultipartBuilder.makeMultipart(Collection)

andRelatedBodyParts

public PreRenderedMailNotificationQueueItem.Builder andRelatedBodyParts(java.lang.Iterable<javax.activation.DataSource> relatedBodyParts)
See Also:
andRelatedBodyPart(DataSource)

andContextEntry

public PreRenderedMailNotificationQueueItem.Builder andContextEntry(java.lang.String key,
                                                                    java.lang.Object value)
Add an entry to the context used for rendering the body.


andContext

public PreRenderedMailNotificationQueueItem.Builder andContext(java.util.Map<java.lang.String,java.lang.Object> context)
See Also:
andContextEntry(String, Object)

build

public PreRenderedMailNotificationQueueItem build()
Constructs an instance of PreRenderedMailNotificationQueueItem.

The context added to the builder will be attached to the item. You will need to call PreRenderedMailNotificationQueueItem.render() before attaching the task to a TaskManager.

See Also:
render()

render

public PreRenderedMailNotificationQueueItem render()
Constructs an instance of PreRenderedMailNotificationQueueItem and renders the body.

The context added to the builder will not be attached to the item. This means calling PreRenderedMailNotificationQueueItem.render() is not necessary and in fact erroneous.



Copyright © 2003-2013 Atlassian. All Rights Reserved.