com.atlassian.jira.rpc.soap.service
Class IssueServiceImpl

java.lang.Object
  extended by com.atlassian.jira.rpc.soap.service.IssueServiceImpl
All Implemented Interfaces:
IssueService

public class IssueServiceImpl
extends Object
implements IssueService


Field Summary
static String GENERIC_CONTENT_TYPE
           
 
Constructor Summary
IssueServiceImpl(com.atlassian.jira.security.PermissionManager permissionManager, com.atlassian.jira.project.ProjectManager projectManager, com.atlassian.jira.issue.IssueManager issueManager, com.atlassian.jira.issue.AttachmentManager attachmentManager, com.atlassian.jira.issue.CustomFieldManager customFieldManager, com.atlassian.jira.action.issue.IssueDeleteInterface issueDelete, com.atlassian.jira.web.action.issue.IssueCreationHelperBean issueCreationHelperBean, com.atlassian.jira.web.util.OutlookDateManager outlookDateManager, com.atlassian.jira.issue.IssueUtilsBean issueUtilsBean, com.atlassian.jira.security.JiraAuthenticationContext authenticationContext, SoapUtilsBean soapUtilsBean, com.atlassian.jira.config.ConstantsManager constantsManager, com.atlassian.core.util.LocaleUtils localeUtils, com.atlassian.jira.config.properties.ApplicationProperties applicationProperties, com.atlassian.jira.issue.IssueFactory issueFactory, com.atlassian.jira.bc.issue.comment.CommentService commentService, com.atlassian.jira.bc.projectroles.ProjectRoleService projectRoleService, com.atlassian.jira.issue.util.IssueUpdater issueUpdater, com.atlassian.jira.bc.issue.attachment.AttachmentService attachmentService, com.atlassian.jira.bc.issue.worklog.WorklogService worklogService, com.atlassian.jira.util.JiraDurationUtils jiraDurationUtils)
           
 
Method Summary
 boolean addAttachmentsToIssue(User user, String issueKey, String[] fileNames, byte[][] attachments)
           
 void addComment(User user, String issueKey, RemoteComment remoteComment)
           
 RemoteWorklog addWorklogAndAutoAdjustRemainingEstimate(User user, String issueKey, RemoteWorklog remoteWorklog)
           
 RemoteWorklog addWorklogAndRetainRemainingEstimate(User user, String issueKey, RemoteWorklog remoteWorklog)
           
 RemoteWorklog addWorklogWithNewRemainingEstimate(User user, String issueKey, RemoteWorklog remoteWorklog, String newRemainingEstimate)
          A wrapper to call through to the WorklogService to validate and create a new worklog entry
 RemoteIssue createIssue(User user, RemoteIssue rIssue)
           
 void deleteIssue(User user, String issueKey)
           
 void deleteWorklogAndAutoAdjustRemainingEstimate(User user, String remoteWorklogId)
           
 void deleteWorklogAndRetainRemainingEstimate(User user, String remoteWorklogId)
           
 void deleteWorklogWithNewRemainingEstimate(User user, String remoteWorklogId, String newRemainingEstimate)
           
 RemoteComment editComment(User user, RemoteComment remoteComment)
           
 RemoteAttachment[] getAttachmentsFromIssue(User user, String issueKey)
           
 RemoteNamedObject[] getAvailableActions(User user, String issueKey)
           
 RemoteComment getComment(User user, Long commentId)
           
 RemoteComment[] getComments(User user, String issueKey)
           
 RemoteField[] getFieldsForAction(User user, String issueKey, String actionIdString)
           
 RemoteField[] getFieldsForEdit(User user, String issueKey)
           
 RemoteIssue getIssue(User user, String issueKey)
           
 RemoteIssue getIssueById(User user, String issueId)
           
 RemoteWorklog[] getWorklogs(User user, String issueKey)
           
 boolean hasPermissionToCreateWorklog(User user, String issueKey)
           
 boolean hasPermissionToDeleteWorklog(User user, String worklogId)
           
 boolean hasPermissionToEditComment(User user, RemoteComment remoteComment)
           
 boolean hasPermissionToUpdateWorklog(User user, String worklogId)
           
 RemoteIssue progressWorkflowAction(User user, String issueKey, String actionIdString, RemoteFieldValue[] actionParams)
           
 RemoteIssue updateIssue(User user, String issueKey, Map actionParams)
           
 RemoteIssue updateIssue(User user, String issueKey, RemoteFieldValue[] actionParams)
           
 void updateWorklogAndAutoAdjustRemainingEstimate(User user, RemoteWorklog remoteWorklog)
           
 void updateWorklogAndRetainRemainingEstimate(User user, RemoteWorklog remoteWorklog)
           
 void updateWorklogWithNewRemainingEstimate(User user, RemoteWorklog remoteWorklog, String newRemainingEstimate)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

GENERIC_CONTENT_TYPE

public static final String GENERIC_CONTENT_TYPE
See Also:
Constant Field Values
Constructor Detail

IssueServiceImpl

public IssueServiceImpl(com.atlassian.jira.security.PermissionManager permissionManager,
                        com.atlassian.jira.project.ProjectManager projectManager,
                        com.atlassian.jira.issue.IssueManager issueManager,
                        com.atlassian.jira.issue.AttachmentManager attachmentManager,
                        com.atlassian.jira.issue.CustomFieldManager customFieldManager,
                        com.atlassian.jira.action.issue.IssueDeleteInterface issueDelete,
                        com.atlassian.jira.web.action.issue.IssueCreationHelperBean issueCreationHelperBean,
                        com.atlassian.jira.web.util.OutlookDateManager outlookDateManager,
                        com.atlassian.jira.issue.IssueUtilsBean issueUtilsBean,
                        com.atlassian.jira.security.JiraAuthenticationContext authenticationContext,
                        SoapUtilsBean soapUtilsBean,
                        com.atlassian.jira.config.ConstantsManager constantsManager,
                        com.atlassian.core.util.LocaleUtils localeUtils,
                        com.atlassian.jira.config.properties.ApplicationProperties applicationProperties,
                        com.atlassian.jira.issue.IssueFactory issueFactory,
                        com.atlassian.jira.bc.issue.comment.CommentService commentService,
                        com.atlassian.jira.bc.projectroles.ProjectRoleService projectRoleService,
                        com.atlassian.jira.issue.util.IssueUpdater issueUpdater,
                        com.atlassian.jira.bc.issue.attachment.AttachmentService attachmentService,
                        com.atlassian.jira.bc.issue.worklog.WorklogService worklogService,
                        com.atlassian.jira.util.JiraDurationUtils jiraDurationUtils)
Method Detail

getIssue

public RemoteIssue getIssue(User user,
                            String issueKey)
                     throws RemoteException,
                            RemotePermissionException
Specified by:
getIssue in interface IssueService
Throws:
RemoteException
RemotePermissionException

createIssue

public RemoteIssue createIssue(User user,
                               RemoteIssue rIssue)
                        throws RemotePermissionException,
                               RemoteValidationException,
                               RemoteException
Specified by:
createIssue in interface IssueService
Throws:
RemotePermissionException
RemoteValidationException
RemoteException

updateIssue

public RemoteIssue updateIssue(User user,
                               String issueKey,
                               Map actionParams)
                        throws RemoteException
Specified by:
updateIssue in interface IssueService
Throws:
RemoteException

updateIssue

public RemoteIssue updateIssue(User user,
                               String issueKey,
                               RemoteFieldValue[] actionParams)
                        throws RemoteException
Specified by:
updateIssue in interface IssueService
Throws:
RemoteException

getFieldsForEdit

public RemoteField[] getFieldsForEdit(User user,
                                      String issueKey)
                               throws RemoteException
Specified by:
getFieldsForEdit in interface IssueService
Throws:
RemoteException

deleteIssue

public void deleteIssue(User user,
                        String issueKey)
                 throws RemoteException,
                        RemotePermissionException
Specified by:
deleteIssue in interface IssueService
Throws:
RemoteException
RemotePermissionException

getComments

public RemoteComment[] getComments(User user,
                                   String issueKey)
                            throws RemoteException,
                                   RemotePermissionException
Specified by:
getComments in interface IssueService
Throws:
RemoteException
RemotePermissionException

addComment

public void addComment(User user,
                       String issueKey,
                       RemoteComment remoteComment)
                throws RemoteException,
                       RemotePermissionException
Specified by:
addComment in interface IssueService
Throws:
RemoteException
RemotePermissionException

hasPermissionToEditComment

public boolean hasPermissionToEditComment(User user,
                                          RemoteComment remoteComment)
                                   throws RemoteException
Specified by:
hasPermissionToEditComment in interface IssueService
Throws:
RemoteException

editComment

public RemoteComment editComment(User user,
                                 RemoteComment remoteComment)
                          throws RemoteException
Specified by:
editComment in interface IssueService
Throws:
RemoteException

getComment

public RemoteComment getComment(User user,
                                Long commentId)
                         throws RemoteException
Specified by:
getComment in interface IssueService
Throws:
RemoteException

getAvailableActions

public RemoteNamedObject[] getAvailableActions(User user,
                                               String issueKey)
                                        throws RemoteException
Specified by:
getAvailableActions in interface IssueService
Throws:
RemoteException

getFieldsForAction

public RemoteField[] getFieldsForAction(User user,
                                        String issueKey,
                                        String actionIdString)
                                 throws RemoteException
Specified by:
getFieldsForAction in interface IssueService
Throws:
RemoteException

progressWorkflowAction

public RemoteIssue progressWorkflowAction(User user,
                                          String issueKey,
                                          String actionIdString,
                                          RemoteFieldValue[] actionParams)
                                   throws RemoteException
Specified by:
progressWorkflowAction in interface IssueService
Throws:
RemoteException

getIssueById

public RemoteIssue getIssueById(User user,
                                String issueId)
                         throws RemoteException,
                                RemotePermissionException
Specified by:
getIssueById in interface IssueService
Throws:
RemoteException
RemotePermissionException

addAttachmentsToIssue

public boolean addAttachmentsToIssue(User user,
                                     String issueKey,
                                     String[] fileNames,
                                     byte[][] attachments)
                              throws RemoteException
Specified by:
addAttachmentsToIssue in interface IssueService
Throws:
RemoteException

getAttachmentsFromIssue

public RemoteAttachment[] getAttachmentsFromIssue(User user,
                                                  String issueKey)
                                           throws RemoteException
Specified by:
getAttachmentsFromIssue in interface IssueService
Throws:
RemoteException

addWorklogWithNewRemainingEstimate

public RemoteWorklog addWorklogWithNewRemainingEstimate(User user,
                                                        String issueKey,
                                                        RemoteWorklog remoteWorklog,
                                                        String newRemainingEstimate)
                                                 throws RemoteException,
                                                        RemotePermissionException,
                                                        RemoteValidationException
A wrapper to call through to the WorklogService to validate and create a new worklog entry

Specified by:
addWorklogWithNewRemainingEstimate in interface IssueService
Parameters:
user - the user in play
issueKey - the key of the issue in play
remoteWorklog - the remote worklog data
newRemainingEstimate - a new remaning extimate
Returns:
Created worklog with the id set or null if no worklog was created.
Throws:
RemoteException - if anything goes wrong in general
RemotePermissionException - if the user does not have permission to adda worklog
RemoteValidationException - if the data does not pass validation

addWorklogAndAutoAdjustRemainingEstimate

public RemoteWorklog addWorklogAndAutoAdjustRemainingEstimate(User user,
                                                              String issueKey,
                                                              RemoteWorklog remoteWorklog)
                                                       throws RemoteException,
                                                              RemotePermissionException,
                                                              RemoteValidationException
Specified by:
addWorklogAndAutoAdjustRemainingEstimate in interface IssueService
Throws:
RemoteException
RemotePermissionException
RemoteValidationException

addWorklogAndRetainRemainingEstimate

public RemoteWorklog addWorklogAndRetainRemainingEstimate(User user,
                                                          String issueKey,
                                                          RemoteWorklog remoteWorklog)
                                                   throws RemoteException,
                                                          RemotePermissionException,
                                                          RemoteValidationException
Specified by:
addWorklogAndRetainRemainingEstimate in interface IssueService
Throws:
RemoteException
RemotePermissionException
RemoteValidationException

deleteWorklogAndAutoAdjustRemainingEstimate

public void deleteWorklogAndAutoAdjustRemainingEstimate(User user,
                                                        String remoteWorklogId)
                                                 throws RemoteException,
                                                        RemotePermissionException,
                                                        RemoteValidationException
Specified by:
deleteWorklogAndAutoAdjustRemainingEstimate in interface IssueService
Throws:
RemoteException
RemotePermissionException
RemoteValidationException

deleteWorklogAndRetainRemainingEstimate

public void deleteWorklogAndRetainRemainingEstimate(User user,
                                                    String remoteWorklogId)
                                             throws RemoteException,
                                                    RemotePermissionException,
                                                    RemoteValidationException
Specified by:
deleteWorklogAndRetainRemainingEstimate in interface IssueService
Throws:
RemoteException
RemotePermissionException
RemoteValidationException

deleteWorklogWithNewRemainingEstimate

public void deleteWorklogWithNewRemainingEstimate(User user,
                                                  String remoteWorklogId,
                                                  String newRemainingEstimate)
                                           throws RemoteException,
                                                  RemotePermissionException,
                                                  RemoteValidationException
Specified by:
deleteWorklogWithNewRemainingEstimate in interface IssueService
Throws:
RemoteException
RemotePermissionException
RemoteValidationException

updateWorklogAndAutoAdjustRemainingEstimate

public void updateWorklogAndAutoAdjustRemainingEstimate(User user,
                                                        RemoteWorklog remoteWorklog)
                                                 throws RemoteException,
                                                        RemotePermissionException,
                                                        RemoteValidationException
Specified by:
updateWorklogAndAutoAdjustRemainingEstimate in interface IssueService
Throws:
RemoteException
RemotePermissionException
RemoteValidationException

updateWorklogAndRetainRemainingEstimate

public void updateWorklogAndRetainRemainingEstimate(User user,
                                                    RemoteWorklog remoteWorklog)
                                             throws RemoteException,
                                                    RemotePermissionException,
                                                    RemoteValidationException
Specified by:
updateWorklogAndRetainRemainingEstimate in interface IssueService
Throws:
RemoteException
RemotePermissionException
RemoteValidationException

updateWorklogWithNewRemainingEstimate

public void updateWorklogWithNewRemainingEstimate(User user,
                                                  RemoteWorklog remoteWorklog,
                                                  String newRemainingEstimate)
                                           throws RemoteException,
                                                  RemotePermissionException,
                                                  RemoteValidationException
Specified by:
updateWorklogWithNewRemainingEstimate in interface IssueService
Throws:
RemoteException
RemotePermissionException
RemoteValidationException

getWorklogs

public RemoteWorklog[] getWorklogs(User user,
                                   String issueKey)
                            throws RemoteException,
                                   RemotePermissionException,
                                   RemoteValidationException
Specified by:
getWorklogs in interface IssueService
Throws:
RemoteException
RemotePermissionException
RemoteValidationException

hasPermissionToCreateWorklog

public boolean hasPermissionToCreateWorklog(User user,
                                            String issueKey)
                                     throws RemoteException,
                                            RemoteValidationException
Specified by:
hasPermissionToCreateWorklog in interface IssueService
Throws:
RemoteException
RemoteValidationException

hasPermissionToDeleteWorklog

public boolean hasPermissionToDeleteWorklog(User user,
                                            String worklogId)
                                     throws RemoteException,
                                            RemoteValidationException
Specified by:
hasPermissionToDeleteWorklog in interface IssueService
Throws:
RemoteException
RemoteValidationException

hasPermissionToUpdateWorklog

public boolean hasPermissionToUpdateWorklog(User user,
                                            String worklogId)
                                     throws RemoteException,
                                            RemoteValidationException
Specified by:
hasPermissionToUpdateWorklog in interface IssueService
Throws:
RemoteException
RemoteValidationException


Copyright © 2004-2008 Atlassian Software Systems Pty Ltd. All Rights Reserved.