com.atlassian.jira.web.action.issue
Class ViewIssue
java.lang.Object
webwork.action.ActionSupport
com.atlassian.jira.action.JiraActionSupport
com.atlassian.jira.web.action.JiraWebActionSupport
com.atlassian.jira.web.action.ProjectActionSupport
com.atlassian.jira.web.action.IssueActionSupport
com.atlassian.jira.web.action.issue.AbstractIssueSelectAction
com.atlassian.jira.web.action.issue.AbstractViewIssue
com.atlassian.jira.web.action.issue.AbstractCommentableIssue
com.atlassian.jira.web.action.issue.AddComment
com.atlassian.jira.web.action.issue.ViewIssue
- All Implemented Interfaces:
- OperationContext, ErrorCollection, I18nHelper, IssueSummaryAware, java.io.Serializable, webwork.action.Action, webwork.action.CommandDriven, webwork.action.IllegalArgumentAware
public class ViewIssue
- extends AddComment
- implements OperationContext
- See Also:
- Serialized Form
Fields inherited from class webwork.action.ActionSupport |
command, errorMap, errorMessages |
Fields inherited from interface webwork.action.Action |
ERROR, INPUT, LOGIN, NONE, SUCCESS |
Constructor Summary |
ViewIssue(TrackbackManager trackbackManager,
ThumbnailManager thumbnailManager,
SubTaskManager subTaskManager,
IssueLinkManager issueLinkManager,
com.atlassian.plugin.PluginAccessor pluginAccessor,
FieldManager fieldManager,
FieldScreenRendererFactory fieldScreenRendererFactory,
FieldLayoutManager fieldLayoutManager,
RendererManager rendererManager,
CommentManager commentManager,
ProjectRoleManager projectRoleManager,
CommentService commentService,
AttachmentManager attachmentManager,
AttachmentService attachmentService,
AggregateTimeTrackingCalculatorFactory aggregateTimeTrackingCalculatorFactory,
PagerManager pagerManager,
com.atlassian.plugin.webresource.WebResourceManager webResourceManager,
SimpleLinkManager simpleLinkManager,
TimeTrackingGraphBeanFactory timeTrackingGraphBeanFactory,
AttachmentZipKit attachmentZipKit,
NonZipExpandableExtensions nonZipExpandableExtensions,
com.atlassian.plugin.web.WebInterfaceManager webInterfaceManager)
|
Method Summary |
boolean |
canCreateAttachments()
|
protected java.lang.String |
doExecute()
|
java.lang.String |
doMoveIssueLink()
|
protected void |
doValidation()
|
boolean |
enableStalkerBar()
|
java.lang.String |
getActionOrder()
|
java.util.Collection |
getActions()
|
java.util.Collection<org.ofbiz.core.entity.GenericValue> |
getAffectedVersions()
|
AggregateTimeTrackingBean |
getAggregateTimeTrackingBean()
Retrieve the AggregateTimeTrackingBean for the current issue |
TimeTrackingGraphBean |
getAggregateTimeTrackingGraphBean()
|
org.ofbiz.core.entity.GenericValue |
getAssignIn()
|
java.lang.String |
getAttachmentOrder()
|
java.lang.String |
getAttachmentSortBy()
|
java.lang.String |
getCommentBoxHTML()
|
CommentManager |
getCommentManager()
|
java.util.Collection<org.ofbiz.core.entity.GenericValue> |
getComponents()
|
java.lang.Long |
getCurrentSubTaskSequence()
|
java.lang.String |
getCustomFieldHtml(FieldLayoutItem fieldLayoutItem,
CustomField field,
Issue issue)
|
java.util.List<FieldScreenRenderLayoutItem> |
getDateLayoutItems()
|
java.lang.String |
getDefaultPage()
|
java.lang.String |
getEstimate()
|
protected FieldScreenRenderer |
getFieldScreenRenderer()
|
java.util.List<FieldScreenRenderTab> |
getFieldScreenRenderTabs()
|
VersionedAttachmentsList |
getFileAttachments()
|
java.util.Collection<org.ofbiz.core.entity.GenericValue> |
getFixVersions()
|
VersionedAttachmentsList |
getImageAttachments()
|
java.util.List<com.atlassian.plugin.web.model.WebPanel> |
getInfoWebPanels()
|
java.util.List<IssueTabPanelModuleDescriptor> |
getIssueTabPanels()
|
java.lang.String |
getIssuetype()
|
java.util.Collection<IssueViewModuleDescriptor> |
getIssueViews()
|
JiraWorkflow |
getJiraWorkflow()
|
IssueSummaryLayoutBean |
getLayoutBean()
Return a layout bean specifically tailored for view issue. |
int |
getMaximumNumberOfZipEntriesToShow()
|
NextPreviousPager |
getNextPreviousPager()
|
IssueOperationsBarUtil |
getOpsBarUtil()
|
java.lang.String |
getPage()
Determine which page of the ViewIssue we're on
Options are : comments - brief overview of the issue and all the comments (default) details - detailed view
of the issue |
java.lang.String |
getPeopleHtml()
|
java.lang.String |
getRenderedContent(java.lang.String fieldName,
java.lang.String value,
Issue issue)
|
java.lang.String |
getRenderedContentNoBreaks(java.lang.String fieldName,
java.lang.String value,
Issue issue)
|
java.lang.String |
getRenderedEnvironmentFieldValue()
Gets the HTML that shows the environment field. |
int |
getSelectedTab()
|
SearchSort |
getSorter()
|
SubTaskBean |
getSubTaskBean()
|
java.util.Collection |
getSubTaskIssueTypes()
|
SubTaskQuickCreationWebComponent |
getSubTaskQuickCreationWebComponent()
|
java.lang.Long |
getSubTaskSequence()
|
java.lang.String |
getSubTaskView()
|
java.lang.String |
getSummaryHtml()
|
java.util.Collection |
getThumbnails()
|
java.lang.String |
getTimeOriginalEstimate()
|
java.lang.String |
getTimeSpent()
|
TimeTrackingGraphBean |
getTimeTrackingGraphBean()
|
java.util.Collection<com.atlassian.trackback.Trackback> |
getTrackbacks()
|
java.lang.String |
getUrlForIssueView(IssueViewModuleDescriptor descriptor)
|
AttachmentZipKit.AttachmentZipEntries |
getZipEntries(Attachment attachment)
Returns a list of zip entries for the specified attachment. |
boolean |
getZipSupport()
|
boolean |
isActiveTabPanelSortable()
|
boolean |
isAllowedReorderSubTasks()
|
boolean |
isAttachable()
Determines whether the current user can attach files or delete one or more files to this issue |
boolean |
isLinkable()
|
boolean |
isShowIssueDetails(java.lang.Long projectId,
org.ofbiz.core.entity.GenericValue issue)
Determine if table displaying time tracking, attachments, environment, issue linking, trackbacks is required. |
boolean |
isSubTask()
Determines whether the issue is a sub task - i.e. |
protected boolean |
isTabPanelPluginVisible()
|
boolean |
isTimeTrackingShown()
|
boolean |
isToolkitAvailable()
|
java.lang.Boolean |
isViewIssue()
Return Boolean.TRUE if this is the ViewIssue page (so the UI can customise itself). |
boolean |
isWorkable()
Determines whether the current user can work on this issue |
boolean |
isWorkflowAllowsEdit()
|
java.lang.String |
renderWebPanel(com.atlassian.plugin.web.model.WebPanel webPanel)
|
void |
setActionOrder(java.lang.String actionOrder)
|
void |
setAttachmentOrder(java.lang.String attachmentOrder)
|
void |
setAttachmentSortBy(java.lang.String attachmentSortBy)
|
void |
setCurrentSubTaskSequence(java.lang.Long currentSubTaskSequence)
|
void |
setIssuetype(java.lang.String issuetypeId)
|
void |
setPage(java.lang.String page)
|
void |
setSubTaskSequence(java.lang.Long subTaskSequence)
|
void |
setSubTaskView(java.lang.String subTaskView)
|
boolean |
shouldExpandAsZip(Attachment attachment)
Determines whether the specified attachment should be expanded as a zip file. |
boolean |
showEdit()
|
boolean |
showLogin()
|
boolean |
showOpsBar()
|
Methods inherited from class com.atlassian.jira.web.action.issue.AbstractCommentableIssue |
createComment, doCommentValidation, getComment, getCommentLevel, getFieldScreenRendererLayoutItemForField, getFieldScreenRendererWithAllFields, getFieldValuesHolder, getGroupLevel, getGroupLevels, getIssueOperation, getOrderableField, getRoleLevels, setComment, setCommentLevel, setFieldValuesHolder, setGroupLevel |
Methods inherited from class com.atlassian.jira.web.action.issue.AbstractIssueSelectAction |
cameFromIssue, cameFromParent, getId, getIssue, getIssueObject, getIssueObjectNoSecurityCheck, getIssuePath, getKey, getParentIssueObject, getProject, getSecurityLevel, getSecurityLevel, getSecurityLevelName, getSubTaskManager, getSummaryIssue, getViewIssueKey, getViewUrl, isEditable, isEditable, isHasEditIssuePermission, isIssueExists, isIssueValid, isSubTaskCreatable, isWorkflowAllowsEdit, redirectToView, resetIssue, setId, setIssue, setKey, setViewIssueKey |
Methods inherited from class com.atlassian.jira.web.action.IssueActionSupport |
clearSelectedIssue, getAttachmentManager, getCurrentFailedLoginCount, getCurrentJQL, getCustomFieldManager, getDaysPerWeek, getEverLoggedIn, getHoursPerDay, getIssueManager, getLastFailedLogin, getLastLogin, getLoginCount, getPossibleVersions, getPossibleVersionsReleasedFirst, getPrettyDuration, getPreviousLogin, getSearchRequest, getSelectedIssueId, getSessionPagerFilterManager, getSessionSearchRequestManager, getSessionSearchRequestManagerFactory, getSessionSelectedIssueManager, getTotalFailedLoginCount, getUrlEncoded, getWorkflow, getWorkflowTransitionDescription, getWorkflowTransitionDisplayName, isCustomFieldHidden, isElevatedSecurityCheckRequired, isFieldHidden, isFieldHidden, isFieldHidden, isTimeTrackingEnabled, setCurrentIssue, setSearchRequest, setSelectedIssueId, updateSearchRequest |
Methods inherited from class com.atlassian.jira.web.action.JiraWebActionSupport |
addErrorCollection, addErrorMessageByKeyIfAbsent, addErrorMessageIfAbsent, forceRedirect, getApplicationProperties, getAssignableUsers, getAssignableUsers, getCachedGroups, getComponentManager, getConglomerateCookieValue, getConstantsManager, getDateFormat, getDateTimeFormat, getDescTranslation, getExternalLinkUtils, getField, getFlushedErrorMessages, getGlobalPermissionManager, getHint, getHintManager, getJiraServiceContext, getLanguage, getNameTranslation, getOutlookDate, getPermissionManager, getProjectManager, getPropertySet, getRandomHint, getRedirect, getRedirectChecker, getRemoteUser, getReturnUrl, getReturnUrlForCancelLink, getSearchSortDescriptions, getSelectedProject, getSelectedProjectObject, getServerId, getText, getTimeFormat, getUriValidator, getUserFullName, getUserProjectHistoryManager, getVersionManager, getWebworkStack, getWebworkStack, getXsrfToken, hasErrorMessage, hasErrorMessageByKey, htmlEncode, insertContextPath, isHasIssuePermission, isHasIssuePermission, isHasPermission, isHasPermission, isHasPermission, isHasProjectPermission, isHasProjectPermission, isInlineDialogMode, isSystemAdministrator, isUserExists, returnComplete, returnComplete, returnCompleteWithInlineRedirect, setConglomerateCookieValue, setInline, setReturnUrl, setSelectedProjectId |
Methods inherited from class com.atlassian.jira.action.JiraActionSupport |
addErrorMessages, addErrorMessages, addErrors, addIllegalArgumentException, execute, getActionName, getDefaultResourceBundle, getDelegator, getKeysForPrefix, getLocale, getResult, getText, getText, getText, getText, getText, getText, getText, getText, getText0, getUnescapedText, getUserPreferences, getWatcherManager, hasAnyErrors, isEnterprise, isIndexing, isProfessional, isProfessionalOrEnterprise, isStandard, removeKeyOrAddError |
Methods inherited from class webwork.action.ActionSupport |
addError, addErrorMessage, getCommandName, getErrorMessages, getErrors, getHasErrorMessages, getHasErrors, getPropertyEditorMessage, getTexts, getTexts, getTimezone, invalidInput, invokeCommand, isCommand, setCommand, setErrorMessages, setErrors, validate |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface webwork.action.CommandDriven |
getCommandName, setCommand |
ViewIssue
public ViewIssue(TrackbackManager trackbackManager,
ThumbnailManager thumbnailManager,
SubTaskManager subTaskManager,
IssueLinkManager issueLinkManager,
com.atlassian.plugin.PluginAccessor pluginAccessor,
FieldManager fieldManager,
FieldScreenRendererFactory fieldScreenRendererFactory,
FieldLayoutManager fieldLayoutManager,
RendererManager rendererManager,
CommentManager commentManager,
ProjectRoleManager projectRoleManager,
CommentService commentService,
AttachmentManager attachmentManager,
AttachmentService attachmentService,
AggregateTimeTrackingCalculatorFactory aggregateTimeTrackingCalculatorFactory,
PagerManager pagerManager,
com.atlassian.plugin.webresource.WebResourceManager webResourceManager,
SimpleLinkManager simpleLinkManager,
TimeTrackingGraphBeanFactory timeTrackingGraphBeanFactory,
AttachmentZipKit attachmentZipKit,
NonZipExpandableExtensions nonZipExpandableExtensions,
com.atlassian.plugin.web.WebInterfaceManager webInterfaceManager)
doValidation
protected void doValidation()
- Overrides:
doValidation
in class AddComment
doExecute
protected java.lang.String doExecute()
throws java.lang.Exception
- Overrides:
doExecute
in class AddComment
- Throws:
java.lang.Exception
getNextPreviousPager
public NextPreviousPager getNextPreviousPager()
getCommentManager
public CommentManager getCommentManager()
getComponents
public java.util.Collection<org.ofbiz.core.entity.GenericValue> getComponents()
throws java.lang.Exception
- Throws:
java.lang.Exception
getAffectedVersions
public java.util.Collection<org.ofbiz.core.entity.GenericValue> getAffectedVersions()
throws java.lang.Exception
- Throws:
java.lang.Exception
getFixVersions
public java.util.Collection<org.ofbiz.core.entity.GenericValue> getFixVersions()
throws java.lang.Exception
- Throws:
java.lang.Exception
isWorkable
public boolean isWorkable()
- Determines whether the current user can work on this issue
- Returns:
- true if the current user can work on this issue, false otherwise
isWorkflowAllowsEdit
public boolean isWorkflowAllowsEdit()
isAttachable
public boolean isAttachable()
- Determines whether the current user can attach files or delete one or more files to this issue
- Returns:
- true if the current user can attach files or delete one or more files on this issue, false otherwise
canCreateAttachments
public boolean canCreateAttachments()
isLinkable
public boolean isLinkable()
isViewIssue
public java.lang.Boolean isViewIssue()
- Return Boolean.TRUE if this is the ViewIssue page (so the UI can customise itself).
Any subclass should probably return FALSE.
- Returns:
Boolean.TRUE
getPage
public java.lang.String getPage()
- Determine which page of the ViewIssue we're on
Options are : comments - brief overview of the issue and all the comments (default) details - detailed view
of the issue
- Returns:
- get the issue tab panel that should be displayed.
getInfoWebPanels
public java.util.List<com.atlassian.plugin.web.model.WebPanel> getInfoWebPanels()
renderWebPanel
public java.lang.String renderWebPanel(com.atlassian.plugin.web.model.WebPanel webPanel)
isTabPanelPluginVisible
protected boolean isTabPanelPluginVisible()
setPage
public void setPage(java.lang.String page)
getActions
public java.util.Collection getActions()
throws java.lang.Exception
- Throws:
java.lang.Exception
getDefaultPage
public java.lang.String getDefaultPage()
- Returns:
- the default page (as specified by the
IssueTabPanelModuleDescriptor
) - See Also:
IssueTabPanelModuleDescriptor.isDefault()
isActiveTabPanelSortable
public boolean isActiveTabPanelSortable()
getIssueTabPanels
public java.util.List<IssueTabPanelModuleDescriptor> getIssueTabPanels()
getEstimate
public java.lang.String getEstimate()
throws java.lang.Exception
- Throws:
java.lang.Exception
getTimeOriginalEstimate
public java.lang.String getTimeOriginalEstimate()
throws java.lang.Exception
- Throws:
java.lang.Exception
getTimeSpent
public java.lang.String getTimeSpent()
throws java.lang.Exception
- Throws:
java.lang.Exception
getTrackbacks
public java.util.Collection<com.atlassian.trackback.Trackback> getTrackbacks()
throws org.ofbiz.core.entity.GenericEntityException
- Throws:
org.ofbiz.core.entity.GenericEntityException
getThumbnails
public java.util.Collection getThumbnails()
throws java.lang.Exception
- Throws:
java.lang.Exception
getFileAttachments
public VersionedAttachmentsList getFileAttachments()
throws java.lang.Exception
- Throws:
java.lang.Exception
getImageAttachments
public VersionedAttachmentsList getImageAttachments()
throws java.lang.Exception
- Throws:
java.lang.Exception
isToolkitAvailable
public boolean isToolkitAvailable()
getSubTaskBean
public SubTaskBean getSubTaskBean()
getSorter
public SearchSort getSorter()
doMoveIssueLink
public java.lang.String doMoveIssueLink()
throws java.lang.Exception
- Throws:
java.lang.Exception
isAllowedReorderSubTasks
public boolean isAllowedReorderSubTasks()
getSubTaskView
public java.lang.String getSubTaskView()
setSubTaskView
public void setSubTaskView(java.lang.String subTaskView)
getCurrentSubTaskSequence
public java.lang.Long getCurrentSubTaskSequence()
setCurrentSubTaskSequence
public void setCurrentSubTaskSequence(java.lang.Long currentSubTaskSequence)
getSubTaskSequence
public java.lang.Long getSubTaskSequence()
setSubTaskSequence
public void setSubTaskSequence(java.lang.Long subTaskSequence)
getSubTaskIssueTypes
public java.util.Collection getSubTaskIssueTypes()
getAssignIn
public org.ofbiz.core.entity.GenericValue getAssignIn()
getJiraWorkflow
public JiraWorkflow getJiraWorkflow()
throws WorkflowException
- Throws:
WorkflowException
setIssuetype
public void setIssuetype(java.lang.String issuetypeId)
getIssuetype
public java.lang.String getIssuetype()
isShowIssueDetails
public boolean isShowIssueDetails(java.lang.Long projectId,
org.ofbiz.core.entity.GenericValue issue)
throws java.lang.Exception
- Determine if table displaying time tracking, attachments, environment, issue linking, trackbacks is required.
- Parameters:
projectId
- project IDissue
- issue generic value
- Returns:
- true if time tracking, attachments, issue linking, trackbacks or environment is enabled
- Throws:
java.lang.Exception
- if cannot get attachments or link collection or trackbacks
isTimeTrackingShown
public boolean isTimeTrackingShown()
throws java.lang.Exception
- Throws:
java.lang.Exception
isSubTask
public boolean isSubTask()
- Description copied from class:
AbstractIssueSelectAction
- Determines whether the issue is a sub task - i.e. if it has any incoming sub-task issue links
- Overrides:
isSubTask
in class AbstractIssueSelectAction
- Returns:
- whether the issue is a sub task.
getAttachmentSortBy
public java.lang.String getAttachmentSortBy()
setAttachmentSortBy
public void setAttachmentSortBy(java.lang.String attachmentSortBy)
getAttachmentOrder
public java.lang.String getAttachmentOrder()
setAttachmentOrder
public void setAttachmentOrder(java.lang.String attachmentOrder)
getActionOrder
public java.lang.String getActionOrder()
setActionOrder
public void setActionOrder(java.lang.String actionOrder)
getFieldScreenRenderTabs
public java.util.List<FieldScreenRenderTab> getFieldScreenRenderTabs()
getDateLayoutItems
public java.util.List<FieldScreenRenderLayoutItem> getDateLayoutItems()
getFieldScreenRenderer
protected FieldScreenRenderer getFieldScreenRenderer()
getSubTaskQuickCreationWebComponent
public SubTaskQuickCreationWebComponent getSubTaskQuickCreationWebComponent()
getSelectedTab
public int getSelectedTab()
getCustomFieldHtml
public java.lang.String getCustomFieldHtml(FieldLayoutItem fieldLayoutItem,
CustomField field,
Issue issue)
getRenderedContent
public java.lang.String getRenderedContent(java.lang.String fieldName,
java.lang.String value,
Issue issue)
throws FieldLayoutStorageException
- Throws:
FieldLayoutStorageException
getRenderedContentNoBreaks
public java.lang.String getRenderedContentNoBreaks(java.lang.String fieldName,
java.lang.String value,
Issue issue)
throws FieldLayoutStorageException
- Throws:
FieldLayoutStorageException
getLayoutBean
public IssueSummaryLayoutBean getLayoutBean()
- Return a layout bean specifically tailored for view issue.
- Specified by:
getLayoutBean
in interface IssueSummaryAware
- Overrides:
getLayoutBean
in class AbstractIssueSelectAction
getRenderedEnvironmentFieldValue
public java.lang.String getRenderedEnvironmentFieldValue()
- Gets the HTML that shows the environment field. This includes divs and a javascript enabled hide/show toggle
button.
- Returns:
- the HTML that shows the environment field.
getTimeTrackingGraphBean
public TimeTrackingGraphBean getTimeTrackingGraphBean()
throws java.lang.Exception
- Throws:
java.lang.Exception
getAggregateTimeTrackingGraphBean
public TimeTrackingGraphBean getAggregateTimeTrackingGraphBean()
throws java.lang.Exception
- Throws:
java.lang.Exception
getAggregateTimeTrackingBean
public AggregateTimeTrackingBean getAggregateTimeTrackingBean()
- Retrieve the
AggregateTimeTrackingBean
for the current issue
- Returns:
- The AggregateTimeTrackingBean for this issue
enableStalkerBar
public boolean enableStalkerBar()
showOpsBar
public boolean showOpsBar()
showEdit
public boolean showEdit()
showLogin
public boolean showLogin()
getOpsBarUtil
public IssueOperationsBarUtil getOpsBarUtil()
getSummaryHtml
public java.lang.String getSummaryHtml()
getPeopleHtml
public java.lang.String getPeopleHtml()
getIssueViews
public java.util.Collection<IssueViewModuleDescriptor> getIssueViews()
getUrlForIssueView
public java.lang.String getUrlForIssueView(IssueViewModuleDescriptor descriptor)
getZipSupport
public boolean getZipSupport()
shouldExpandAsZip
public boolean shouldExpandAsZip(Attachment attachment)
- Determines whether the specified attachment should be expanded as a zip file. Files are expanded if zip support
is on, the file extension is not one of the extensions specified by
NonZipExpandableExtensions
and if the file represents a valid zip file.
- Parameters:
attachment
- The attachment in play.
- Returns:
- true if the the specified attachment should be expanded as a zip file; otherwise, false is returned.
getMaximumNumberOfZipEntriesToShow
public int getMaximumNumberOfZipEntriesToShow()
getZipEntries
public AttachmentZipKit.AttachmentZipEntries getZipEntries(Attachment attachment)
Returns a list of zip entries for the specified attachment. The number of entries returned is limited to the
value of MAX_ZIP_ENTRIES.
It is assumed that this attachment represents a valid zip file. In order to find this out, use
shouldExpandAsZip(com.atlassian.jira.issue.attachment.Attachment)
.
- Parameters:
attachment
- The attachment in play.
- Returns:
- A
List
of AttachmentZipKit.AttachmentZipEntry
for the specified attachment. Limited to APKeys.JIRA_ATTACHMENT_NUMBER_OF_ZIP_ENTRIES_TO_SHOW
.
getCommentBoxHTML
public java.lang.String getCommentBoxHTML()
Copyright © 2002-2011 Atlassian. All Rights Reserved.