com.atlassian.greenhopper.service.issue
Interface IssueService

All Known Implementing Classes:
IssueServiceImpl

public interface IssueService

TODO this is a bit of a kitchen sink, half of the methods are permission related and should be moved out, some are completely unrelated.


Field Summary
static java.lang.String SERVICE
           
 
Method Summary
 boolean canAssignIssue(com.atlassian.jira.issue.Issue issue, com.opensymphony.user.User user)
          Checks if an issue can be assigned to a user.
 boolean canComment(com.atlassian.jira.issue.Issue issue, com.opensymphony.user.User user)
          Checks if the user can comment on an issue.
 boolean canCreateSubTasks(com.atlassian.jira.issue.Issue issue, com.opensymphony.user.User user)
          Checks if subtasks can be created for an issue.
 boolean canDelete(com.atlassian.jira.issue.Issue issue, com.opensymphony.user.User user)
          Checks if an issue can be deleted.
 boolean canEditIssue(com.atlassian.jira.issue.Issue issue, com.opensymphony.user.User user)
          Checks if the issue can be edited.
 boolean canLogWork(com.atlassian.jira.issue.Issue issue, com.opensymphony.user.User user)
          Checks if the user can log work to an issue.
 com.atlassian.jira.issue.Issue createIssue(com.opensymphony.user.User user, CreateCardModel model, ErrorCollection errors)
           
 IssueModel createReadOnlyIssueModel(com.atlassian.jira.issue.Issue issue, BaseData baseData)
          Creates a read only XBoardIssue that shows the issue in summary mode only.
 java.util.Collection<com.atlassian.jira.bc.project.component.ProjectComponent> getComponents(XProject xproject)
          Gets components for all projects in a cross project
 int getDaysInStatus(com.atlassian.jira.issue.Issue issue, DaysAllocation daysAllocation)
          Gets the number of days the issue has been in it's current status
 java.util.Collection<com.atlassian.jira.issue.issuetype.IssueType> getIssueSubTypes(com.atlassian.jira.project.Project project)
          Gets issue sub-task types for all projects in a cross project
 java.util.Collection<com.atlassian.jira.issue.issuetype.IssueType> getIssueTypes(XProject xproject)
          Gets issue types for all projects in a cross project
 boolean isFlaggable(com.atlassian.jira.issue.Issue issue, com.opensymphony.user.User user, FlagField flagField)
          Checks if the issue can be flagged.
 boolean isPriorityShown(com.atlassian.jira.issue.Issue issue)
          Checks if the priority is visible on this issue.
 boolean isTimeTrackingOn()
          Checks if timeTracking is on.
 

Field Detail

SERVICE

static final java.lang.String SERVICE
See Also:
Constant Field Values
Method Detail

getIssueTypes

java.util.Collection<com.atlassian.jira.issue.issuetype.IssueType> getIssueTypes(XProject xproject)
Gets issue types for all projects in a cross project


getIssueSubTypes

java.util.Collection<com.atlassian.jira.issue.issuetype.IssueType> getIssueSubTypes(com.atlassian.jira.project.Project project)
Gets issue sub-task types for all projects in a cross project


getComponents

java.util.Collection<com.atlassian.jira.bc.project.component.ProjectComponent> getComponents(XProject xproject)
Gets components for all projects in a cross project


createIssue

com.atlassian.jira.issue.Issue createIssue(com.opensymphony.user.User user,
                                           CreateCardModel model,
                                           ErrorCollection errors)

getDaysInStatus

int getDaysInStatus(com.atlassian.jira.issue.Issue issue,
                    DaysAllocation daysAllocation)
Gets the number of days the issue has been in it's current status

Parameters:
daysAllocation - - Need to pass in daysallocation because doing it per issue is not ideal.

canCreateSubTasks

boolean canCreateSubTasks(com.atlassian.jira.issue.Issue issue,
                          com.opensymphony.user.User user)
Checks if subtasks can be created for an issue. Same logic as the getCanAddSubtasks() method in defaultBoardIssue


canEditIssue

boolean canEditIssue(com.atlassian.jira.issue.Issue issue,
                     com.opensymphony.user.User user)
Checks if the issue can be edited. Same logic as the getCanEdit() method in defaultBoardIssue


isPriorityShown

boolean isPriorityShown(com.atlassian.jira.issue.Issue issue)
Checks if the priority is visible on this issue. Same logic as isPriorityShown() in defaultBoardIssue


canAssignIssue

boolean canAssignIssue(com.atlassian.jira.issue.Issue issue,
                       com.opensymphony.user.User user)
Checks if an issue can be assigned to a user. Same logic as getCanAssign() in defaultBoardIssue


canComment

boolean canComment(com.atlassian.jira.issue.Issue issue,
                   com.opensymphony.user.User user)
Checks if the user can comment on an issue. Same logic as canComment() in defaultBoardIssue


canLogWork

boolean canLogWork(com.atlassian.jira.issue.Issue issue,
                   com.opensymphony.user.User user)
Checks if the user can log work to an issue. Same logic as getCanLogWork() in defaultBoardIssue


isTimeTrackingOn

boolean isTimeTrackingOn()
Checks if timeTracking is on. This is a JIRA wide property


isFlaggable

boolean isFlaggable(com.atlassian.jira.issue.Issue issue,
                    com.opensymphony.user.User user,
                    FlagField flagField)
Checks if the issue can be flagged. Same logic as isFlaggable() in defaultBoardIssue


canDelete

boolean canDelete(com.atlassian.jira.issue.Issue issue,
                  com.opensymphony.user.User user)
Checks if an issue can be deleted. Same logic as getCanDelete() in defaultBoardIssue


createReadOnlyIssueModel

IssueModel createReadOnlyIssueModel(com.atlassian.jira.issue.Issue issue,
                                    BaseData baseData)
Creates a read only XBoardIssue that shows the issue in summary mode only. This is primarily used for the moving sub-task dialog.



Copyright © 2007-2011 Atlassian. All Rights Reserved.