Class RenameCollectionOperation

  • All Implemented Interfaces:
    AsyncWriteOperation<java.lang.Void>, WriteOperation<java.lang.Void>

    public class RenameCollectionOperation
    extends java.lang.Object
    implements AsyncWriteOperation<java.lang.Void>, WriteOperation<java.lang.Void>
    An operation that renames the given collection to the new name.

    If the new name is the same as an existing collection and dropTarget is true, this existing collection will be dropped. If dropTarget is false and the newCollectionName is the same as an existing collection, a MongoServerException will be thrown.

    Since:
    3.0
    • Method Detail

      • getWriteConcern

        public WriteConcern getWriteConcern()
        Gets the write concern.
        Returns:
        the write concern, which may be null
        Since:
        3.4
      • isDropTarget

        public boolean isDropTarget()
        Gets if mongod should drop the target of renameCollection prior to renaming the collection.
        Returns:
        true if mongod should drop the target of renameCollection prior to renaming the collection.
      • dropTarget

        public RenameCollectionOperation dropTarget​(boolean dropTarget)
        Sets if mongod should drop the target of renameCollection prior to renaming the collection.
        Parameters:
        dropTarget - true if mongod should drop the target of renameCollection prior to renaming the collection.
        Returns:
        this
      • execute

        public java.lang.Void execute​(WriteBinding binding)
        Rename the collection with oldCollectionName in database databaseName to the newCollectionName.
        Specified by:
        execute in interface WriteOperation<java.lang.Void>
        Parameters:
        binding - the binding
        Returns:
        a void result
        Throws:
        MongoServerException - if you provide a newCollectionName that is the name of an existing collection and dropTarget is false, or if the oldCollectionName is the name of a collection that doesn't exist
      • executeAsync

        public void executeAsync​(AsyncWriteBinding binding,
                                 SingleResultCallback<java.lang.Void> callback)
        Description copied from interface: AsyncWriteOperation
        General execute which can return anything of type T
        Specified by:
        executeAsync in interface AsyncWriteOperation<java.lang.Void>
        Parameters:
        binding - the binding to execute in the context of
        callback - the callback to be called when the operation has been executed