def create(opts = {})
      operation = { :create => name }.merge(options)
      operation.delete(:write)
      server = next_primary
      if (options[:collation] || options[Operation::COLLATION]) && !server.features.collation_enabled?
        raise Error::UnsupportedCollation.new
      end
      client.send(:with_session, opts) do |session|
        Operation::Create.new({
                                selector: operation,
                                db_name: database.name,
                                write_concern: write_concern,
                                session: session
                                }).execute(server)
      end
    end
def create(opts = {})
      operation = { :create => name }.merge(options)
      operation.delete(:write)
      server = next_primary
      if (options[:collation] || options[Operation::COLLATION]) && !server.features.collation_enabled?
        raise Error::UnsupportedCollation.new
      end
      client.send(:with_session, opts) do |session|
        Operation::Create.new({
                                selector: operation,
                                db_name: database.name,
                                write_concern: write_concern,
                                session: session
                                }).execute(server)
      end
    end
Force the collection to be created in the database.

 @example Force the collection to be created.
   collection.create

 @param [ Hash ] opts The options for the create operation.

 @option options [ Session ] :session The session to use for the operation.

 @return [ Result ] The result of the command.

 @since 2.0.0