Class IssueDataServiceImpl

java.lang.Object
com.atlassian.greenhopper.service.issue.IssueDataServiceImpl
All Implemented Interfaces:
IssueDataService

@Service public class IssueDataServiceImpl extends Object implements 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 Details

  • 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: IssueDataService
      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. 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:
      find in interface IssueDataService
      callback - : 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:
      findWithServiceOutcome in interface IssueDataService
    • 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:
      findWithServiceOutcome in interface IssueDataService
    • 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: IssueDataService
      Allows specifying an "and" lucene query in addition to a callback
      Specified by:
      find in interface IssueDataService
    • 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:
      findAndSortWithServiceOutcome in interface IssueDataService
    • 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: IssueDataService
      Executes a find, but overwrites security.
      Specified by:
      findOverrideSecurity in interface IssueDataService
    • findAndSortOverrideSecurity

      public <T extends IssueDataCallback> ServiceResult findAndSortOverrideSecurity(com.atlassian.jira.user.ApplicationUser user, com.atlassian.query.Query query, T callback)
      Specified by:
      findAndSortOverrideSecurity in interface IssueDataService
    • 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: IssueDataService
      Performs a search taking sorting into account
      Specified by:
      findAndSort in interface IssueDataService
    • count

      @Nonnull public ServiceOutcome<Long> count(com.atlassian.jira.user.ApplicationUser user, com.atlassian.query.Query query)
      Description copied from interface: IssueDataService
      Counts entities matching query.
      Specified by:
      count in interface IssueDataService
      Parameters:
      user - user
      query - query
      Returns:
      count entities matching query