Class ToParentBlockJoinSortField

java.lang.Object
org.apache.lucene.search.SortField
org.apache.lucene.search.join.ToParentBlockJoinSortField

public class ToParentBlockJoinSortField extends SortField
A special sort field that allows sorting parent docs based on nested / child level fields. Based on the sort order it either takes the document with the lowest or highest field value into account.
WARNING: This API is experimental and might change in incompatible ways in the next release.
  • Constructor Details

    • ToParentBlockJoinSortField

      public ToParentBlockJoinSortField(String field, SortField.Type type, boolean reverse, BitSetProducer parentFilter, BitSetProducer childFilter)
      Create ToParentBlockJoinSortField. The parent and child document ordering is based on the flag reverse. Missing values are treated as the default for the type.
      Parameters:
      field - The sort field on the nested / child level.
      type - The sort type on the nested / child level.
      reverse - Whether natural order should be reversed on both child and parent levels.
      parentFilter - Filter that identifies the parent documents.
      childFilter - Filter that defines which child documents participates in sorting.
    • ToParentBlockJoinSortField

      public ToParentBlockJoinSortField(String field, SortField.Type type, boolean reverseParents, boolean reverseChildren, BitSetProducer parentFilter, BitSetProducer childFilter)
      Create ToParentBlockJoinSortField. Missing values are treated as the default for the type.
      Parameters:
      field - The sort field on the nested / child level.
      type - The sort type on the nested / child level.
      reverseParents - Whether natural order should be reversed on the parent level.
      reverseChildren - Whether natural order should be reversed on the nested / child document level.
      parentFilter - Filter that identifies the parent documents.
      childFilter - Filter that defines which child documents participates in sorting.
    • ToParentBlockJoinSortField

      public ToParentBlockJoinSortField(String field, SortField.Type type, boolean reverse, Object parentMissingValue, Object childMissingValue, BitSetProducer parentFilter, BitSetProducer childFilter)
      Create ToParentBlockJoinSortField. The parent document ordering is based on child document ordering (reverse).
      Parameters:
      field - The sort field on the nested / child level.
      type - The sort type on the nested / child level.
      reverse - Whether natural order should be reversed on both child and parent levels.
      parentMissingValue - The missing value for parent documents that have no child documents. For Type.STRING use SortField.STRING_FIRST or SortField.STRING_LAST. For numeric types use the corresponding boxed type (e.g. Integer for Type.INT). Pass null for default behavior.
      childMissingValue - The missing value for child documents that lack the sort field. This value participates in the min/max selection among siblings. Type constraints are the same as for parentMissingValue. Pass null to skip children without a value.
      parentFilter - Filter that identifies the parent documents.
      childFilter - Filter that defines which child documents participates in sorting.
    • ToParentBlockJoinSortField

      public ToParentBlockJoinSortField(String field, SortField.Type type, boolean reverseParents, boolean reverseChildren, Object parentMissingValue, Object childMissingValue, BitSetProducer parentFilter, BitSetProducer childFilter)
      Create ToParentBlockJoinSortField.
      Parameters:
      field - The sort field on the nested / child level.
      type - The sort type on the nested / child level.
      reverseParents - Whether natural order should be reversed on the parent level.
      reverseChildren - Whether natural order should be reversed on the nested / child document level.
      parentMissingValue - The missing value for parent documents whose children do not have a value for the sort field. For Type.STRING use SortField.STRING_FIRST or SortField.STRING_LAST. For numeric types use the corresponding boxed type (e.g. Integer for Type.INT). Pass null for default behavior.
      childMissingValue - The missing value for child documents that lack the sort field. This value participates in the min/max selection among siblings. Type constraints are the same as for parentMissingValue. Pass null to skip children without a value.
      parentFilter - Filter that identifies the parent documents.
      childFilter - Filter that defines which child documents participates in sorting.
  • Method Details