Interface AggregateIterable<TResult>

  • Type Parameters:
    TResult - The type of the result.
    All Superinterfaces:
    Iterable<TResult>, MongoIterable<TResult>

    public interface AggregateIterable<TResult>
    extends MongoIterable<TResult>
    Iterable for aggregate.
    Since:
    3.0
    MongoDB documentation
    Aggregation
    • Method Detail

      • toCollection

        void toCollection()
        Aggregates documents according to the specified aggregation pipeline, which must end with a $out or $merge stage.
        Throws:
        IllegalStateException - if the pipeline does not end with a $out or $merge stage
        Since:
        3.4
        MongoDB documentation
        $out stage
        $merge stage
      • allowDiskUse

        AggregateIterable<TResult> allowDiskUse​(@Nullable
                                                Boolean allowDiskUse)
        Enables writing to temporary files. A null value indicates that it's unspecified.
        Parameters:
        allowDiskUse - true if writing to temporary files is enabled
        Returns:
        this
        MongoDB documentation
        Aggregation
      • maxTime

        AggregateIterable<TResult> maxTime​(long maxTime,
                                           TimeUnit timeUnit)
        Sets the maximum execution time on the server for this operation.
        Parameters:
        maxTime - the max time
        timeUnit - the time unit, which may not be null
        Returns:
        this
        MongoDB documentation
        Max Time
      • maxAwaitTime

        AggregateIterable<TResult> maxAwaitTime​(long maxAwaitTime,
                                                TimeUnit timeUnit)
        The maximum amount of time for the server to wait on new documents to satisfy a $changeStream aggregation. A zero value will be ignored.
        Parameters:
        maxAwaitTime - the max await time
        timeUnit - the time unit to return the result in
        Returns:
        the maximum await execution time in the given time unit
        Since:
        3.6
        Since server release
        3.6
      • bypassDocumentValidation

        AggregateIterable<TResult> bypassDocumentValidation​(@Nullable
                                                            Boolean bypassDocumentValidation)
        Sets the bypass document level validation flag.

        Note: This only applies when an $out or $merge stage is specified

        .
        Parameters:
        bypassDocumentValidation - If true, allows the write to opt-out of document level validation.
        Returns:
        this
        Since:
        3.2
        MongoDB documentation
        Aggregation
        Since server release
        3.2
      • collation

        AggregateIterable<TResult> collation​(@Nullable
                                             Collation collation)
        Sets the collation options

        A null value represents the server default.

        Parameters:
        collation - the collation options to use
        Returns:
        this
        Since:
        3.4
        Since server release
        3.4
      • comment

        AggregateIterable<TResult> comment​(@Nullable
                                           String comment)
        Sets the comment to the aggregation. A null value means no comment is set.
        Parameters:
        comment - the comment
        Returns:
        this
        Since:
        3.6
        Since server release
        3.6
      • hint

        AggregateIterable<TResult> hint​(@Nullable
                                        Bson hint)
        Sets the hint for which index to use. A null value means no hint is set.
        Parameters:
        hint - the hint
        Returns:
        this
        Since:
        3.6
        Since server release
        3.6
      • hintString

        AggregateIterable<TResult> hintString​(@Nullable
                                              String hint)
        Sets the hint to apply.

        Note: If hint(Bson) is set that will be used instead of any hint string.

        Parameters:
        hint - the name of the index which should be used for the operation
        Returns:
        this
        Since:
        4.4
      • let

        AggregateIterable<TResult> let​(@Nullable
                                       Bson variables)
        Add top-level variables to the aggregation.

        For MongoDB 5.0+, the aggregate command accepts a let option. This option is a document consisting of zero or more fields representing variables that are accessible to the aggregation pipeline. The key is the name of the variable and the value is a constant in the aggregate expression language. Each parameter name is then usable to access the value of the corresponding expression with the "$$" syntax within aggregate expression contexts which may require the use of $expr or a pipeline.

        Parameters:
        variables - the variables
        Returns:
        this
        Since:
        4.3
        Since server release
        5.0
      • explain

        Document explain()
        Explain the execution plan for this operation with the server's default verbosity level
        Returns:
        the execution plan
        Since:
        4.2
        MongoDB documentation
        reference/command/explain/
        Since server release
        3.6
      • explain

        Document explain​(ExplainVerbosity verbosity)
        Explain the execution plan for this operation with the given verbosity level
        Parameters:
        verbosity - the verbosity of the explanation
        Returns:
        the execution plan
        Since:
        4.2
        MongoDB documentation
        reference/command/explain/
        Since server release
        3.6
      • explain

        <E> E explain​(Class<E> explainResultClass)
        Explain the execution plan for this operation with the server's default verbosity level
        Type Parameters:
        E - the type of the document class
        Parameters:
        explainResultClass - the document class to decode into
        Returns:
        the execution plan
        Since:
        4.2
        MongoDB documentation
        reference/command/explain/
        Since server release
        3.6
      • explain

        <E> E explain​(Class<E> explainResultClass,
                      ExplainVerbosity verbosity)
        Explain the execution plan for this operation with the given verbosity level
        Type Parameters:
        E - the type of the document class
        Parameters:
        explainResultClass - the document class to decode into
        verbosity - the verbosity of the explanation
        Returns:
        the execution plan
        Since:
        4.2
        MongoDB documentation
        reference/command/explain/
        Since server release
        3.6