3535import java .util .Objects ;
3636
3737import static com .mongodb .assertions .Assertions .assertTrue ;
38+ import static com .mongodb .client .model .search .SearchOptions .searchOptions ;
3839import static com .mongodb .internal .Iterables .concat ;
3940import static java .util .Arrays .asList ;
4041import static org .bson .assertions .Assertions .notNull ;
@@ -671,7 +672,7 @@ public static <TExpression> Bson setWindowFields(@Nullable final TExpression par
671672 * @since 4.7
672673 */
673674 public static Bson search (final SearchOperator operator ) {
674- return search (operator , null );
675+ return search (operator , searchOptions () );
675676 }
676677
677678 /**
@@ -683,17 +684,16 @@ public static Bson search(final SearchOperator operator) {
683684 *
684685 * @param operator A search operator.
685686 * @param options Optional {@code $search} pipeline stage fields.
686- * Specifying {@code null} is equivalent to either specifying {@link SearchOptions#defaultSearchOptions()}
687- * or calling {@link #search(SearchOperator)}.
687+ * Specifying {@link SearchOptions#searchOptions()} is equivalent to calling {@link #search(SearchOperator)}.
688688 * @return The {@code $search} pipeline stage.
689689 *
690690 * @mongodb.atlas.manual atlas-search/query-syntax/#-search $search
691691 * @mongodb.atlas.manual atlas-search/operators-and-collectors/#operators Search operators
692692 * @mongodb.atlas.manual atlas-search/scoring/ Scoring
693693 * @since 4.7
694694 */
695- public static Bson search (final SearchOperator operator , @ Nullable final SearchOptions options ) {
696- return new SearchStage ("$search" , notNull ("operator" , operator ), options );
695+ public static Bson search (final SearchOperator operator , final SearchOptions options ) {
696+ return new SearchStage ("$search" , notNull ("operator" , operator ), notNull ( " options" , options ) );
697697 }
698698
699699 /**
@@ -710,7 +710,7 @@ public static Bson search(final SearchOperator operator, @Nullable final SearchO
710710 * @since 4.7
711711 */
712712 public static Bson search (final SearchCollector collector ) {
713- return search (collector , null );
713+ return search (collector , searchOptions () );
714714 }
715715
716716 /**
@@ -720,17 +720,16 @@ public static Bson search(final SearchCollector collector) {
720720 *
721721 * @param collector A search collector.
722722 * @param options Optional {@code $search} pipeline stage fields.
723- * Specifying {@code null} is equivalent to either specifying {@link SearchOptions#defaultSearchOptions()}
724- * or calling {@link #search(SearchCollector)}.
723+ * Specifying {@link SearchOptions#searchOptions()} is equivalent to calling {@link #search(SearchCollector)}.
725724 * @return The {@code $search} pipeline stage.
726725 *
727726 * @mongodb.atlas.manual atlas-search/query-syntax/#-search $search
728727 * @mongodb.atlas.manual atlas-search/operators-and-collectors/#collectors Search collectors
729728 * @mongodb.atlas.manual atlas-search/scoring/ Scoring
730729 * @since 4.7
731730 */
732- public static Bson search (final SearchCollector collector , @ Nullable final SearchOptions options ) {
733- return new SearchStage ("$search" , notNull ("collector" , collector ), options );
731+ public static Bson search (final SearchCollector collector , final SearchOptions options ) {
732+ return new SearchStage ("$search" , notNull ("collector" , collector ), notNull ( " options" , options ) );
734733 }
735734
736735 /**
@@ -747,7 +746,7 @@ public static Bson search(final SearchCollector collector, @Nullable final Searc
747746 * @since 4.7
748747 */
749748 public static Bson searchMeta (final SearchOperator operator ) {
750- return searchMeta (operator , null );
749+ return searchMeta (operator , searchOptions () );
751750 }
752751
753752 /**
@@ -758,16 +757,15 @@ public static Bson searchMeta(final SearchOperator operator) {
758757 *
759758 * @param operator A search operator.
760759 * @param options Optional {@code $search} pipeline stage fields.
761- * Specifying {@code null} is equivalent to either specifying {@link SearchOptions#defaultSearchOptions()}
762- * or calling {@link #searchMeta(SearchOperator)}.
760+ * Specifying {@link SearchOptions#searchOptions()} is equivalent to calling {@link #searchMeta(SearchOperator)}.
763761 * @return The {@code $searchMeta} pipeline stage.
764762 *
765763 * @mongodb.atlas.manual atlas-search/query-syntax/#-searchmeta $searchMeta
766764 * @mongodb.atlas.manual atlas-search/operators-and-collectors/#operators Search operators
767765 * @since 4.7
768766 */
769- public static Bson searchMeta (final SearchOperator operator , @ Nullable final SearchOptions options ) {
770- return new SearchStage ("$searchMeta" , notNull ("operator" , operator ), options );
767+ public static Bson searchMeta (final SearchOperator operator , final SearchOptions options ) {
768+ return new SearchStage ("$searchMeta" , notNull ("operator" , operator ), notNull ( " options" , options ) );
771769 }
772770
773771 /**
@@ -784,7 +782,7 @@ public static Bson searchMeta(final SearchOperator operator, @Nullable final Sea
784782 * @since 4.7
785783 */
786784 public static Bson searchMeta (final SearchCollector collector ) {
787- return searchMeta (collector , null );
785+ return searchMeta (collector , searchOptions () );
788786 }
789787
790788 /**
@@ -795,16 +793,15 @@ public static Bson searchMeta(final SearchCollector collector) {
795793 *
796794 * @param collector A search collector.
797795 * @param options Optional {@code $search} pipeline stage fields.
798- * Specifying {@code null} is equivalent to either specifying {@link SearchOptions#defaultSearchOptions()}
799- * or calling {@link #searchMeta(SearchCollector)}.
796+ * Specifying {@link SearchOptions#searchOptions()} is equivalent to calling {@link #searchMeta(SearchCollector)}.
800797 * @return The {@code $searchMeta} pipeline stage.
801798 *
802799 * @mongodb.atlas.manual atlas-search/query-syntax/#-searchmeta $searchMeta
803800 * @mongodb.atlas.manual atlas-search/operators-and-collectors/#collectors Search collectors
804801 * @since 4.7
805802 */
806- public static Bson searchMeta (final SearchCollector collector , @ Nullable final SearchOptions options ) {
807- return new SearchStage ("$searchMeta" , notNull ("collector" , collector ), options );
803+ public static Bson searchMeta (final SearchCollector collector , final SearchOptions options ) {
804+ return new SearchStage ("$searchMeta" , notNull ("collector" , collector ), notNull ( " options" , options ) );
808805 }
809806
810807 static void writeBucketOutput (final CodecRegistry codecRegistry , final BsonDocumentWriter writer ,
0 commit comments