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.search.issue.IssueDocumentSearchService issueDocumentSearchService, com.atlassian.jira.web.action.issue.IssueSearchLimits issueSearchLimits, com.atlassian.jira.search.issue.IssueQueryFactory issueQueryFactory) -
Method Summary
Modifier and TypeMethodDescriptioncount(com.atlassian.jira.user.ApplicationUser user, com.atlassian.query.Query query) Counts entities matching query.findIssueIds(com.atlassian.jira.user.ApplicationUser user, com.atlassian.query.Query query) Finds issue ids matching query.<K> ServiceOutcome<Map<K, Set<Long>>> findIssueIdsAndSplitBySubQueries(com.atlassian.jira.user.ApplicationUser user, com.atlassian.query.Query where, Map<K, com.atlassian.query.Query> subqueries) Finds issue ids matching query and splits them by subqueries, each subset is associated with a key from the subqueries map.getIssueCountPerStatus(com.atlassian.jira.user.ApplicationUser user, com.atlassian.query.Query query) Find the count of issues in a given status.
-
Field Details
-
LOG
-
ISSUE_COUNT_IN_STATUS_AGG
- See Also:
-
-
Constructor Details
-
IssueDataServiceImpl
public IssueDataServiceImpl(com.atlassian.jira.search.issue.IssueDocumentSearchService issueDocumentSearchService, com.atlassian.jira.web.action.issue.IssueSearchLimits issueSearchLimits, com.atlassian.jira.search.issue.IssueQueryFactory issueQueryFactory)
-
-
Method Details
-
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
-
findIssueIds
@Nonnull public ServiceOutcome<Set<Long>> findIssueIds(com.atlassian.jira.user.ApplicationUser user, com.atlassian.query.Query query) Description copied from interface:IssueDataServiceFinds issue ids matching query.- Specified by:
findIssueIdsin interfaceIssueDataService- Parameters:
user- user whose permissions are used to filter the issuesquery- query to find issues- Returns:
- issue ids
-
findIssueIdsAndSplitBySubQueries
@Nonnull public <K> ServiceOutcome<Map<K,Set<Long>>> findIssueIdsAndSplitBySubQueries(com.atlassian.jira.user.ApplicationUser user, com.atlassian.query.Query where, Map<K, com.atlassian.query.Query> subqueries) Description copied from interface:IssueDataServiceFinds issue ids matching query and splits them by subqueries, each subset is associated with a key from the subqueries map.- Specified by:
findIssueIdsAndSplitBySubQueriesin interfaceIssueDataService- Parameters:
user- user whose permissions are used to filter the issueswhere- query to find issuessubqueries- map of queries to split the issues by- Returns:
- issue ids split by keys associated with subqueries
-
getIssueCountPerStatus
@Nonnull public ServiceOutcome<Map<String,Long>> getIssueCountPerStatus(com.atlassian.jira.user.ApplicationUser user, com.atlassian.query.Query query) Description copied from interface:IssueDataServiceFind the count of issues in a given status.- Specified by:
getIssueCountPerStatusin interfaceIssueDataService- Parameters:
user- user performing the operationquery- query to find issues- Returns:
- a map where the key is the status ID and the value is the count of issues in a given status
-