Provided by: libmango-perl_1.25-1_all bug

NAME

       Mango::Bulk - MongoDB bulk operations

SYNOPSIS

         use Mango::Bulk;

         my $bulk = Mango::Bulk->new(collection => $collection);
         $bulk->insert({foo => 'bar'})->insert({foo => 'baz'})->execute;

DESCRIPTION

       Mango::Bulk is a container for MongoDB bulk operations, all operations will be
       automatically grouped so they don't exceed "max_bson_size" in Mango.

ATTRIBUTES

       Mango::Bulk implements the following attributes.

   collection
         my $collection = $bulk->collection;
         $bulk          = $bulk->collection(Mango::Collection->new);

       Mango::Collection object this bulk operation belongs to.

   ordered
         my $bool = $bulk->ordered;
         $bulk    = $bulk->ordered($bool);

       Bulk operations are ordered, defaults to a true value.

METHODS

       Mango::Bulk inherits all methods from Mojo::Base and implements the following new ones.

   execute
         my $results = $bulk->execute;

       Execute bulk operations. You can also append a callback to perform operation non-blocking.

         $bulk->execute(sub {
           my ($bulk, $err, $results) = @_;
           ...
         });
         Mojo::IOLoop->start unless Mojo::IOLoop->is_running;

   find
         $bulk = $bulk->find({foo => 'bar'});

       Query for next update or remove operation.

   insert
         $bulk = $bulk->insert({foo => 'bar'});

       Insert document.

   remove
         $bulk = $bulk->remove;

       Remove multiple documents.

   remove_one
         $bulk = $bulk->remove_one;

       Remove one document.

   update
         $bulk = $bulk->update({foo => 'bar'});

       Update multiple documents.

   update_one
         $bulk = $bulk->update_one({foo => 'baz'});

       Update one document.

   upsert
         $bulk = $bulk->upsert;

       Next update operation will be an "upsert".

SEE ALSO

       Mango, Mojolicious::Guides, <http://mojolicio.us>.