Class IssueDataServiceImpl
java.lang.Object
com.atlassian.greenhopper.service.issue.IssueDataServiceImpl
- All Implemented Interfaces:
IssueDataService
Abstraction for a common usage pattern of querying a handful of issue fields from Lucene. Besides being convenient, this serves the purpose of
keeping Lucene dependencies out of the code as much as possible.
- Author:
- ahennecke
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionIssueDataServiceImpl(com.atlassian.jira.issue.search.SearchProviderFactory searchProviderFactory, com.atlassian.jira.issue.search.SearchProvider searchProvider) -
Method Summary
Modifier and TypeMethodDescriptioncount(com.atlassian.jira.user.ApplicationUser user, com.atlassian.query.Query query) Counts entities matching query.<T extends IssueDataCallback>
ServiceResultfind(com.atlassian.jira.user.ApplicationUser user, com.atlassian.query.Query query, T callback) Execute the query, and for each issue in the result, extract the data as specified by the fields in the callback and send them over to the callback collector.<T extends IssueDataCallback>
ServiceResultfind(com.atlassian.jira.user.ApplicationUser user, com.atlassian.query.Query query, T callback, org.apache.lucene.search.Query andQuery) Allows specifying an "and" lucene query in addition to a callback<T extends IssueDataCallback>
ServiceResultfindAndSort(com.atlassian.jira.user.ApplicationUser user, com.atlassian.query.Query query, T callback) Performs a search taking sorting into account<T extends IssueDataCallback>
ServiceResultfindAndSortOverrideSecurity(com.atlassian.jira.user.ApplicationUser user, com.atlassian.query.Query query, T callback) <T extends IssueDataCallback>
ServiceResultfindAndSortWithServiceOutcome(com.atlassian.jira.user.ApplicationUser user, com.atlassian.query.Query query, T callback, com.atlassian.jira.web.bean.PagerFilter<?> pager) <T extends IssueDataCallback>
ServiceResultfindOverrideSecurity(com.atlassian.jira.user.ApplicationUser user, com.atlassian.query.Query query, T callback) Executes a find, but overwrites security.<T extends IssueDataCallback>
ServiceResultfindWithServiceOutcome(com.atlassian.jira.user.ApplicationUser user, com.atlassian.query.Query query, T callback)
-
Field Details
-
log
-
performanceLogger
-
-
Constructor Details
-
IssueDataServiceImpl
@Autowired public IssueDataServiceImpl(com.atlassian.jira.issue.search.SearchProviderFactory searchProviderFactory, com.atlassian.jira.issue.search.SearchProvider searchProvider)
-
-
Method Details
-
find
@Nonnull public <T extends IssueDataCallback> ServiceResult find(com.atlassian.jira.user.ApplicationUser user, com.atlassian.query.Query query, T callback) Description copied from interface:IssueDataServiceExecute the query, and for each issue in the result, extract the data as specified by the fields in the callback and send them over to the callback collector. For optimal memory usage, try streaming the data directly into the receiving data structure (like a REST template) instead of gathering it internally.- Specified by:
findin interfaceIssueDataServicecallback- : This collects the field values of the issues matching the query- Returns:
- any errors that happened during the search
-
findWithServiceOutcome
@Nonnull public <T extends IssueDataCallback> ServiceResult findWithServiceOutcome(com.atlassian.jira.user.ApplicationUser user, com.atlassian.query.Query query, T callback) - Specified by:
findWithServiceOutcomein interfaceIssueDataService
-
findWithServiceOutcome
@Nonnull public <T extends org.apache.lucene.search.Collector> ServiceResult findWithServiceOutcome(com.atlassian.jira.user.ApplicationUser user, com.atlassian.query.Query query, T collector) - Specified by:
findWithServiceOutcomein interfaceIssueDataService
-
find
@Nonnull public <T extends IssueDataCallback> ServiceResult find(com.atlassian.jira.user.ApplicationUser user, com.atlassian.query.Query query, T callback, org.apache.lucene.search.Query andQuery) Description copied from interface:IssueDataServiceAllows specifying an "and" lucene query in addition to a callback- Specified by:
findin interfaceIssueDataService
-
findAndSortWithServiceOutcome
@Nonnull public <T extends IssueDataCallback> ServiceResult findAndSortWithServiceOutcome(com.atlassian.jira.user.ApplicationUser user, com.atlassian.query.Query query, T callback, com.atlassian.jira.web.bean.PagerFilter<?> pager) - Specified by:
findAndSortWithServiceOutcomein interfaceIssueDataService
-
findOverrideSecurity
@Nonnull public <T extends IssueDataCallback> ServiceResult findOverrideSecurity(com.atlassian.jira.user.ApplicationUser user, com.atlassian.query.Query query, T callback) Description copied from interface:IssueDataServiceExecutes a find, but overwrites security.- Specified by:
findOverrideSecurityin interfaceIssueDataService
-
findAndSortOverrideSecurity
public <T extends IssueDataCallback> ServiceResult findAndSortOverrideSecurity(com.atlassian.jira.user.ApplicationUser user, com.atlassian.query.Query query, T callback) - Specified by:
findAndSortOverrideSecurityin interfaceIssueDataService
-
findAndSort
@Nonnull public <T extends IssueDataCallback> ServiceResult findAndSort(com.atlassian.jira.user.ApplicationUser user, com.atlassian.query.Query query, T callback) Description copied from interface:IssueDataServicePerforms a search taking sorting into account- Specified by:
findAndSortin interfaceIssueDataService
-
count
@Nonnull public ServiceOutcome<Long> count(com.atlassian.jira.user.ApplicationUser user, com.atlassian.query.Query query) Description copied from interface:IssueDataServiceCounts entities matching query.- Specified by:
countin interfaceIssueDataService- Parameters:
user- userquery- query- Returns:
- count entities matching query
-