Class FindAndReplaceOperation<T>

    • Constructor Detail

      • FindAndReplaceOperation

        public FindAndReplaceOperation​(MongoNamespace namespace,
                                       WriteConcern writeConcern,
                                       boolean retryWrites,
                                       Decoder<T> decoder,
                                       BsonDocument replacement)
        Construct a new instance.
        Parameters:
        namespace - the database and collection namespace for the operation.
        writeConcern - the writeConcern for the operation
        retryWrites - if writes should be retried if they fail due to a network error.
        decoder - the decoder for the result documents.
        replacement - the document that will replace the found document.
        Since:
        3.6
    • Method Detail

      • getReplacement

        public BsonDocument getReplacement()
        Gets the document which will replace the document matching the query filter.
        Returns:
        the replacement document
      • getFilter

        public BsonDocument getFilter()
        Gets the query filter.
        Returns:
        the query filter
      • filter

        public FindAndReplaceOperation<T> filter​(BsonDocument filter)
        Sets the query filter to apply to the query.
        Parameters:
        filter - the query filter, which may be null.
        Returns:
        this
      • getProjection

        public BsonDocument getProjection()
        Gets a document describing the fields to return for all matching documents.
        Returns:
        the project document, which may be null
      • projection

        public FindAndReplaceOperation<T> projection​(BsonDocument projection)
        Sets a document describing the fields to return for all matching documents.
        Parameters:
        projection - the project document, which may be null.
        Returns:
        this
      • getMaxTime

        public long getMaxTime​(java.util.concurrent.TimeUnit timeUnit)
        Gets the maximum execution time on the server for this operation. The default is 0, which places no limit on the execution time.
        Parameters:
        timeUnit - the time unit to return the result in
        Returns:
        the maximum execution time in the given time unit
      • maxTime

        public FindAndReplaceOperation<T> maxTime​(long maxTime,
                                                  java.util.concurrent.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
      • getSort

        public BsonDocument getSort()
        Gets the sort criteria to apply to the query. The default is null, which means that the documents will be returned in an undefined order.
        Returns:
        a document describing the sort criteria
      • sort

        public FindAndReplaceOperation<T> sort​(BsonDocument sort)
        Sets the sort criteria to apply to the query.
        Parameters:
        sort - the sort criteria, which may be null.
        Returns:
        this
      • isReturnOriginal

        public boolean isReturnOriginal()
        When false, returns the replaced document rather than the original. The default is false.
        Returns:
        true if the original document should be returned
      • returnOriginal

        public FindAndReplaceOperation<T> returnOriginal​(boolean returnOriginal)
        Set to false to return the replaced document rather than the original.
        Parameters:
        returnOriginal - set to false to return the replaced document rather than the original
        Returns:
        this
      • isUpsert

        public boolean isUpsert()
        Returns true if a new document should be inserted if there are no matches to the query filter. The default is false.
        Returns:
        true if a new document should be inserted if there are no matches to the query filter
      • upsert

        public FindAndReplaceOperation<T> upsert​(boolean upsert)
        Set to true if a new document should be inserted if there are no matches to the query filter.
        Parameters:
        upsert - true if a new document should be inserted if there are no matches to the query filter
        Returns:
        this
      • getBypassDocumentValidation

        public java.lang.Boolean getBypassDocumentValidation()
        Gets the bypass document level validation flag
        Returns:
        the bypass document level validation flag
        Since:
        3.2
      • bypassDocumentValidation

        public FindAndReplaceOperation<T> bypassDocumentValidation​(java.lang.Boolean bypassDocumentValidation)
        Sets the bypass document level validation flag.

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

        .
        Parameters:
        bypassDocumentValidation - If true, allows the write to opt-out of document level validation.
        Returns:
        this
        Since:
        3.2
      • getCollation

        public Collation getCollation()
        Returns the collation options
        Returns:
        the collation options
        Since:
        3.4
      • collation

        public FindAndReplaceOperation<T> collation​(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