com.atlassian.jira.issue.statistics
Class DatePeriodStatisticsMapper

java.lang.Object
  extended by com.atlassian.jira.issue.statistics.AbstractDateStatisticsMapper
      extended by com.atlassian.jira.issue.statistics.DatePeriodStatisticsMapper
All Implemented Interfaces:
LuceneFieldSorter, StatisticsMapper

public class DatePeriodStatisticsMapper
extends AbstractDateStatisticsMapper

A StatsMapper that takes the document constant name (lucene) and a JFreeChart TimePeriod class, and rounds the dates to the appropriate time period

See Also:
TimePeriod

Field Summary
 
Fields inherited from class com.atlassian.jira.issue.statistics.AbstractDateStatisticsMapper
documentConstant
 
Constructor Summary
DatePeriodStatisticsMapper(java.lang.Class timePeriodClass, java.lang.String documentConstant)
           
 
Method Summary
 java.util.Comparator getComparator()
          A comparator that can be used to order objects returned by LuceneFieldSorter.getValueFromLuceneField(String).
 SearchRequest getSearchUrlSuffix(java.lang.Object value, SearchRequest searchRequest)
          Get a suffix for the issue navigator, which allows for filtering on this value.
 java.lang.Object getValueFromLuceneField(java.lang.String documentValue)
          Convert the lucene document field back to the object that you wish to use to display it.
 
Methods inherited from class com.atlassian.jira.issue.statistics.AbstractDateStatisticsMapper
getDocumentConstant, isFieldAlwaysPartOfAnIssue, isValidValue
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.atlassian.jira.issue.search.LuceneFieldSorter
equals, hashCode
 

Constructor Detail

DatePeriodStatisticsMapper

public DatePeriodStatisticsMapper(java.lang.Class timePeriodClass,
                                  java.lang.String documentConstant)
Method Detail

getSearchUrlSuffix

public SearchRequest getSearchUrlSuffix(java.lang.Object value,
                                        SearchRequest searchRequest)
Description copied from interface: StatisticsMapper
Get a suffix for the issue navigator, which allows for filtering on this value.

eg. a project field would return a SearchRequest object who's getQueryString method will produce pid=10240

Note that values returned from implementations should return values that are URLEncoded.

Specified by:
getSearchUrlSuffix in interface StatisticsMapper
Specified by:
getSearchUrlSuffix in class AbstractDateStatisticsMapper
Parameters:
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.
Returns:
a SearchRequest object that will generate the correct issue navigator url to search the correct statistics set, null otherwise.
See Also:
URLEncoder.encode(String)

getValueFromLuceneField

public java.lang.Object getValueFromLuceneField(java.lang.String documentValue)
Description copied from interface: LuceneFieldSorter
Convert the lucene document field back to the object that you wish to use to display it.

eg. '1000' -> Version 1.

This does the reverse of what IssueDocument does.

For custom fields, the return value will be passed to CustomFieldSearcherModuleDescriptor.getStatHtml(com.atlassian.jira.issue.fields.CustomField, Object, String)

Specified by:
getValueFromLuceneField in interface LuceneFieldSorter
Overrides:
getValueFromLuceneField in class AbstractDateStatisticsMapper
Parameters:
documentValue - The value of the field in the lucene index
Returns:
The value that will be passed to the display

getComparator

public java.util.Comparator getComparator()
Description copied from interface: LuceneFieldSorter
A comparator that can be used to order objects returned by LuceneFieldSorter.getValueFromLuceneField(String).

The Comparator must be reentrant as it could be used by Lucene from multiple threads at once.

Specified by:
getComparator in interface LuceneFieldSorter
Overrides:
getComparator in class AbstractDateStatisticsMapper


Copyright © 2002-2010 Atlassian. All Rights Reserved.