com.atlassian.jira.service.util.handler
Interface MessageHandlerContext

All Known Implementing Classes:
DefaultMessageHandlerContext

@PublicApi
public interface MessageHandlerContext

Well-behaved MessageHandler implementations should use as much as possible this interface to create approprate entities. Depending on the mode the handler is run in the calls will be mutative for JIRA (in normal production run) or will create just dummy objects when run while testing message handler from administration screen.

Since:
v5.0

Method Summary
 ChangeItemBean createAttachment(File file, String filename, String contentType, com.atlassian.crowd.embedded.api.User author, Issue issue)
          Creates attachment (when run in real mode) or does nothing if run in dry run mode.
 Comment createComment(Issue issue, com.atlassian.crowd.embedded.api.User author, String body, boolean dispatchEvent)
          Creates a new issue comment in JIRA or a dummy comment in dry run mode
 Issue createIssue(com.atlassian.crowd.embedded.api.User reporter, Issue issue)
          Creates a new issue in JIRA or a dummy issue in dry run mode
 com.atlassian.crowd.embedded.api.User createUser(String username, String password, String email, String fullname, Integer userEventType)
          Creates user in JIRA or just dummy user if run in dry run mode
 MessageHandlerExecutionMonitor getMonitor()
           
 boolean isRealRun()
           
 

Method Detail

createUser

com.atlassian.crowd.embedded.api.User createUser(String username,
                                                 String password,
                                                 String email,
                                                 String fullname,
                                                 Integer userEventType)
                                                 throws PermissionException,
                                                        CreateException
Creates user in JIRA or just dummy user if run in dry run mode

Parameters:
username -
password -
email -
fullname -
userEventType -
Returns:
Throws:
PermissionException
CreateException

createComment

Comment createComment(Issue issue,
                      com.atlassian.crowd.embedded.api.User author,
                      String body,
                      boolean dispatchEvent)
Creates a new issue comment in JIRA or a dummy comment in dry run mode

Parameters:
issue -
author -
body -
dispatchEvent -
Returns:

createIssue

Issue createIssue(@Nullable
                  com.atlassian.crowd.embedded.api.User reporter,
                  Issue issue)
                  throws CreateException
Creates a new issue in JIRA or a dummy issue in dry run mode

Parameters:
reporter -
issue -
Returns:
Throws:
CreateException

createAttachment

ChangeItemBean createAttachment(File file,
                                String filename,
                                String contentType,
                                com.atlassian.crowd.embedded.api.User author,
                                Issue issue)
                                throws AttachmentException
Creates attachment (when run in real mode) or does nothing if run in dry run mode.

Parameters:
file -
filename -
contentType -
author -
issue -
Returns:
a bean which should be passed later (if run in real mode) to IssueUpdater.doUpdate(com.atlassian.jira.issue.util.IssueUpdateBean, boolean)
Throws:
AttachmentException

isRealRun

boolean isRealRun()
Returns:
true if the context works in production mode (when handlers are run from the service) or false if runs

getMonitor

MessageHandlerExecutionMonitor getMonitor()
Returns:
place where message handler should report its progress and problems with processing the message. Depending on the run mode it will be either logged in the log file (when real run) or showed to the user in UI (when run in test mode via configuring handler from UI)


Copyright © 2002-2014 Atlassian. All Rights Reserved.