Class DatabaseIssuesIterable

java.lang.Object
com.atlassian.jira.issue.util.DatabaseIssuesIterable
All Implemented Interfaces:
IssuesIterable, EnclosedIterable<Issue>, Sized

public class DatabaseIssuesIterable extends Object implements IssuesIterable
This EnclosedIterable is used to iterate over all issues in the database.

This implementation is superseded by the more flexible DatabaseIterable or PagedDatabaseIterable.

  • Constructor Details

    • DatabaseIssuesIterable

      public DatabaseIssuesIterable(OfBizDelegator delegator, IssueFactory issueFactory)
    • DatabaseIssuesIterable

      public DatabaseIssuesIterable(OfBizDelegator delegator, IssueFactory issueFactory, @Nullable org.ofbiz.core.entity.EntityCondition condition)
    • DatabaseIssuesIterable

      public DatabaseIssuesIterable(OfBizDelegator delegator, IssueFactory issueFactory, @Nullable org.ofbiz.core.entity.EntityCondition condition, @Nullable org.ofbiz.core.entity.EntityFindOptions findOptions)
    • DatabaseIssuesIterable

      public DatabaseIssuesIterable(OfBizDelegator delegator, IssueFactory issueFactory, @Nullable org.ofbiz.core.entity.EntityCondition condition, @Nullable List<String> orderBy, @Nullable org.ofbiz.core.entity.EntityFindOptions findOptions)
  • Method Details

    • foreach

      public void foreach(Consumer<Issue> sink)
      Description copied from interface: EnclosedIterable
      Apply the sink to all elements in the Collection.
      Specified by:
      foreach in interface EnclosedIterable<Issue>
    • size

      public int size()
      You cannot rely on this size after you have started iterating through the issues
      Specified by:
      size in interface EnclosedIterable<Issue>
      Specified by:
      size in interface Sized
      Returns:
      the likely size of the objects passed into the sink in EnclosedIterable.foreach(Consumer). Be careful depending on this size being exact, as in many cases its best efforts value or may be unstable due to concurrent changes.
    • isEmpty

      public boolean isEmpty()
      Specified by:
      isEmpty in interface EnclosedIterable<Issue>
      Specified by:
      isEmpty in interface Sized
      Returns:
      true if the there is no data behind it.
    • toString

      public String toString()
      Description copied from interface: IssuesIterable
      Return a user friendly message that identifies which issues this iterable holds. If there is a problem, this method is used to log what issues are affected.

      For example, if there is a problem locking the Lucene index this method is used to log which issues could not be reindexed.

      Hence, it is important to provide a useful implementation for this method.

      Specified by:
      toString in interface IssuesIterable
      Overrides:
      toString in class Object
    • spy

      protected void spy(Issue next)
      Allows for IssuesIterable implementations that spy on each iterated issue. Implementations of this method must not modify the issue state.
      Parameters:
      next - an Issue that is about to be iterated through