/*
 * Copyright 2008-present MongoDB, Inc.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *   http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package com.mongodb;

import java.util.List;

The result of a successful bulk write operation.
@mongodb.server.release2.6
@mongodb.driver.manualreference/command/delete/#delete-command-output Delete Result
@mongodb.driver.manualreference/command/update/#delete-command-output Delete Result
@mongodb.driver.manualreference/command/insert/#delete-command-output Delete Result
Since:2.12
/** * The result of a successful bulk write operation. * * @mongodb.server.release 2.6 * @mongodb.driver.manual reference/command/delete/#delete-command-output Delete Result * @mongodb.driver.manual reference/command/update/#delete-command-output Delete Result * @mongodb.driver.manual reference/command/insert/#delete-command-output Delete Result * @since 2.12 */
public abstract class BulkWriteResult {
Returns true if the write was acknowledged.
See Also:
Returns:true if the write was acknowledged
/** * Returns true if the write was acknowledged. * * @return true if the write was acknowledged * @see WriteConcern#UNACKNOWLEDGED */
public abstract boolean isAcknowledged();
Returns the number of documents inserted by the write operation.
Throws:
See Also:
Returns:the number of documents inserted by the write operation
/** * Returns the number of documents inserted by the write operation. * * @return the number of documents inserted by the write operation * @throws java.lang.UnsupportedOperationException if the write was unacknowledged. * @see WriteConcern#UNACKNOWLEDGED */
public abstract int getInsertedCount();
Returns the number of documents matched by updates or replacements in the write operation. This will include documents that matched the query but where the modification didn't result in any actual change to the document; for example, if you set the value of some field, and the field already has that value, that will still count as an update.
Throws:
See Also:
Returns:the number of documents matched by updates in the write operation
/** * Returns the number of documents matched by updates or replacements in the write operation. This will include documents that matched * the query but where the modification didn't result in any actual change to the document; for example, if you set the value of some * field, and the field already has that value, that will still count as an update. * * @return the number of documents matched by updates in the write operation * @throws java.lang.UnsupportedOperationException if the write was unacknowledged. * @see WriteConcern#UNACKNOWLEDGED */
public abstract int getMatchedCount();
Returns the number of documents removed by the write operation.
Throws:
See Also:
Returns:the number of documents removed by the write operation
/** * Returns the number of documents removed by the write operation. * * @return the number of documents removed by the write operation * @throws java.lang.UnsupportedOperationException if the write was unacknowledged. * @see WriteConcern#UNACKNOWLEDGED */
public abstract int getRemovedCount();
Returns true if the server was able to provide a count of modified documents.

This method now always returns true, as modified count is available since MongoDB 2.6.

Throws:
See Also:
Returns:true if modifiedCount is available
Deprecated:no longer needed since all supported server versions support modified count
/** * Returns true if the server was able to provide a count of modified documents. * * <p> * This method now always returns true, as modified count is available since MongoDB 2.6. * </p> * * @return true if modifiedCount is available * @throws java.lang.UnsupportedOperationException if the write was unacknowledged. * @see WriteConcern#UNACKNOWLEDGED * @see #getModifiedCount() * @deprecated no longer needed since all supported server versions support modified count */
@Deprecated public abstract boolean isModifiedCountAvailable();

Returns the number of documents modified by the write operation. This only applies to updates or replacements, and will only count documents that were actually changed; for example, if you set the value of some field , and the field already has that value, that will not count as a modification.

See Also:
Returns:the number of documents modified by the write operation
/** * <p>Returns the number of documents modified by the write operation. This only applies to updates or replacements, and will only * count documents that were actually changed; for example, if you set the value of some field , and the field already has that value, * that will not count as a modification.</p> * * @return the number of documents modified by the write operation * @see WriteConcern#UNACKNOWLEDGED */
public abstract int getModifiedCount();
Gets an unmodifiable list of upserted items, or the empty list if there were none.
Throws:
See Also:
Returns:a list of upserted items, or the empty list if there were none.
/** * Gets an unmodifiable list of upserted items, or the empty list if there were none. * * @return a list of upserted items, or the empty list if there were none. * @throws java.lang.UnsupportedOperationException if the write was unacknowledged. * @see WriteConcern#UNACKNOWLEDGED */
public abstract List<BulkWriteUpsert> getUpserts(); }