@ThreadSafe @PublicSpi public abstract class AbstractConstantStatisticsMapper extends Object implements StatisticsMapper<IssueConstant>
Modifier and Type | Field and Description |
---|---|
protected ConstantsManager |
constantsManager |
Modifier | Constructor and Description |
---|---|
protected |
AbstractConstantStatisticsMapper(ConstantsManager constantsManager) |
Modifier and Type | Method and Description |
---|---|
boolean |
equals(Object o)
As this object is used as a key in a cache, this method must be provided and respect all internal state.
|
Comparator<IssueConstant> |
getComparator()
A comparator that can be used to order objects returned by
LuceneFieldSorter.getValueFromLuceneField(String) . |
protected abstract String |
getConstantType() |
abstract String |
getDocumentConstant()
Get the constant that this field is indexed with.
|
protected abstract String |
getIssueFieldConstant() |
SearchRequest |
getSearchUrlSuffix(IssueConstant value,
SearchRequest searchRequest)
Get a suffix for the issue navigator, which allows for filtering on this value.
|
IssueConstant |
getValueFromLuceneField(String documentValue)
Convert the lucene document field back to the object that you wish to use to display it.
|
int |
hashCode()
As this object is used as a key in a cache, this method must be provided and respect all internal state.
|
boolean |
isFieldAlwaysPartOfAnIssue()
Check if the field is always part of an issues data.
|
boolean |
isValidValue(IssueConstant value)
Check whether this value is valid for this particular search.
|
protected final ConstantsManager constantsManager
protected AbstractConstantStatisticsMapper(ConstantsManager constantsManager)
public abstract String getDocumentConstant()
LuceneFieldSorter
getDocumentConstant
in interface LuceneFieldSorter<IssueConstant>
com.atlassian.jira.issue.index.IssueDocument
,
CustomFieldSearcher
protected abstract String getConstantType()
protected abstract String getIssueFieldConstant()
public Comparator<IssueConstant> getComparator()
LuceneFieldSorter
LuceneFieldSorter.getValueFromLuceneField(String)
.
The Comparator must be reentrant as it could be used by Lucene from multiple threads at once.getComparator
in interface LuceneFieldSorter<IssueConstant>
public boolean isValidValue(IssueConstant value)
StatisticsMapper
isValidValue
in interface StatisticsMapper<IssueConstant>
value
- This is the same value that will be returned from LuceneFieldSorter.getValueFromLuceneField(String)
public IssueConstant getValueFromLuceneField(String documentValue)
LuceneFieldSorter
eg. '1000' -> Version 1.
This does the reverse of what com.atlassian.jira.issue.index.IssueDocument
does.
For custom fields, the return value will be passed to
CustomFieldSearcherModuleDescriptor.getStatHtml(com.atlassian.jira.issue.fields.CustomField, Object, String)
getValueFromLuceneField
in interface LuceneFieldSorter<IssueConstant>
documentValue
- The value of the field in the lucene indexpublic SearchRequest getSearchUrlSuffix(IssueConstant value, SearchRequest searchRequest)
StatisticsMapper
pid=10240
Note that values returned from implementations should return values that are URLEncoded.getSearchUrlSuffix
in interface StatisticsMapper<IssueConstant>
value
- This is the same value that will be returned from LuceneFieldSorter.getValueFromLuceneField(String)
searchRequest
- is the search request that should be used as the base of the newly generated
SearchRequest object. If this parameter is null then the return type will also be null.URLEncoder.encode(String)
public boolean isFieldAlwaysPartOfAnIssue()
StatisticsMapper
isFieldAlwaysPartOfAnIssue
in interface StatisticsMapper<IssueConstant>
public boolean equals(Object o)
LuceneFieldSorter
equals
in interface LuceneFieldSorter<IssueConstant>
equals
in class Object
public int hashCode()
LuceneFieldSorter
hashCode
in interface LuceneFieldSorter<IssueConstant>
hashCode
in class Object
Copyright © 2002-2015 Atlassian. All Rights Reserved.