Package com.atlassian.jira.issue.fields
Class NavigableFieldImpl
java.lang.Object
com.atlassian.jira.issue.fields.AbstractField
com.atlassian.jira.issue.fields.NavigableFieldImpl
- All Implemented Interfaces:
Field,NavigableField,Comparable
- Direct Known Subclasses:
AbstractDurationSystemField,AbstractProgressBarSystemField,CreatedSystemField,CreatorSystemField,KeySystemField,LastViewedSystemField,ResolutionDateSystemField,StatusSystemField,SubTaskSystemField,ThumbnailSystemField,UpdatedSystemField,VotesSystemField,WatchesSystemField,WorkRatioSystemField
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final ApplicationPropertiesprotected final VelocityTemplatingEngineFields inherited from class com.atlassian.jira.issue.fields.AbstractField
authenticationContextFields inherited from interface com.atlassian.jira.issue.fields.NavigableField
ORDER_ASCENDING, ORDER_DESCENDING, TEMPLATE_DIRECTORY_PATH -
Constructor Summary
ConstructorsConstructorDescriptionNavigableFieldImpl(String id, String nameKey, String columnHeadingKey, VelocityTemplatingEngine templatingEngine, ApplicationProperties applicationProperties, JiraAuthenticationContext authenticationContext) NavigableFieldImpl(String id, String nameKey, String columnHeadingKey, String defaultSortOrder, VelocityTemplatingEngine templatingEngine, ApplicationProperties applicationProperties, JiraAuthenticationContext authenticationContext) -
Method Summary
Modifier and TypeMethodDescriptionprotected ApplicationPropertiesThe order in which to sort the field when it is sorted for the first time.getFieldSorts(FieldSort.Order order) Returns a list ofFieldSortobjects that can be used to sort this field.Returns the id of the field to check for visibility.Get the field sorts to use when the "com.atlassian.jira.search.api" feature is enabled.org.apache.lucene.search.FieldComparatorSourceA default implementation that returns aMappedSortComparatorfromNavigableField.getSorter().List<org.apache.lucene.search.SortField>getSortFields(boolean sortOrder) Deprecated, for removal: This API element is subject to removal in a future version.getVelocityParams(FieldLayoutItem fieldLayoutItem, I18nHelper i18nHelper, Map<String, Object> displayParams, Issue issue) prettyPrintChangeHistory(String changeHistory) prettyPrintChangeHistory(String changeHistory, I18nHelper i18nHelper) Used for email notification templates - allows changelog to be displayed in language of the recipient.protected StringrenderTemplate(String template, Map<String, Object> velocityParams) Methods inherited from class com.atlassian.jira.issue.fields.AbstractField
compareTo, equals, getAuthenticationContext, getId, getName, getNameKey, hashCodeMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface java.lang.Comparable
compareToMethods inherited from interface com.atlassian.jira.issue.fields.Field
getId, getName, getNameKeyMethods inherited from interface com.atlassian.jira.issue.fields.NavigableField
getColumnViewHtml, getSorter, getValueLoader, hasSortsDefined, prettyPrintChangeHistory
-
Field Details
-
templatingEngine
-
applicationProperties
-
-
Constructor Details
-
NavigableFieldImpl
public NavigableFieldImpl(String id, String nameKey, String columnHeadingKey, VelocityTemplatingEngine templatingEngine, ApplicationProperties applicationProperties, JiraAuthenticationContext authenticationContext) -
NavigableFieldImpl
public NavigableFieldImpl(String id, String nameKey, String columnHeadingKey, String defaultSortOrder, VelocityTemplatingEngine templatingEngine, ApplicationProperties applicationProperties, JiraAuthenticationContext authenticationContext)
-
-
Method Details
-
getColumnHeadingKey
- Specified by:
getColumnHeadingKeyin interfaceNavigableField
-
getColumnCssClass
- Specified by:
getColumnCssClassin interfaceNavigableField
-
getDefaultSortOrder
Description copied from interface:NavigableFieldThe order in which to sort the field when it is sorted for the first time.- Specified by:
getDefaultSortOrderin interfaceNavigableField- Returns:
- Either
NavigableField.ORDER_ASCENDINGorNavigableField.ORDER_DESCENDING
-
getSortComparatorSource
public org.apache.lucene.search.FieldComparatorSource getSortComparatorSource()A default implementation that returns aMappedSortComparatorfromNavigableField.getSorter().- Specified by:
getSortComparatorSourcein interfaceNavigableField- Returns:
- A SortComparatorSource that can be used to sort, or null if this field does not use custom sorting
-
getSortFields
@Deprecated(since="10.4", forRemoval=true) public List<org.apache.lucene.search.SortField> getSortFields(boolean sortOrder) Deprecated, for removal: This API element is subject to removal in a future version.Description copied from interface:NavigableFieldReturn a list of Lucene SortFields to be used for sorting search results.Using this method allows the field to specify the most performant way to perform a search. If a field can be sorted directly using the term in the index then this should just return a singleton list with the sort field.
return Collections.singletonList(new SortField(fieldName, sortOrder));
The default implementation builds this using the FieldComparatorSource returned by
NavigableField.getSortComparatorSource()If you implement this method there is no need to implement
NavigableField.getSortComparatorSource().- Specified by:
getSortFieldsin interfaceNavigableField- Returns:
- The name of the indexed term to be used for native Lucene sorting.
-
getFieldSorts
Description copied from interface:NavigableFieldReturns a list ofFieldSortobjects that can be used to sort this field. This replacesNavigableField.getSortFields(boolean).- Specified by:
getFieldSortsin interfaceNavigableField- Parameters:
order- the order in which to sort the field- Returns:
- a list of
FieldSortobjects that can be used to sort this field
-
getSearchApiFeatureFieldSorts
Get the field sorts to use when the "com.atlassian.jira.search.api" feature is enabled. -
renderTemplate
-
getVelocityParams
protected Map<String,Object> getVelocityParams(FieldLayoutItem fieldLayoutItem, I18nHelper i18nHelper, Map<String, Object> displayParams, Issue issue) -
getHiddenFieldId
Description copied from interface:NavigableFieldReturns the id of the field to check for visibility. For example, with original estimate field need to ensure that the timetracking field is not hidden. With most fields, this is the same as their id.- Specified by:
getHiddenFieldIdin interfaceNavigableField
-
getApplicationProperties
-
prettyPrintChangeHistory
- Specified by:
prettyPrintChangeHistoryin interfaceNavigableField
-
prettyPrintChangeHistory
Description copied from interface:NavigableFieldUsed for email notification templates - allows changelog to be displayed in language of the recipient.- Specified by:
prettyPrintChangeHistoryin interfaceNavigableField- Parameters:
changeHistory- - label- Returns:
- String change history formatted according to locale in i18nHelper
-