Scroll to navigation

Mango::Protocol(3pm) User Contributed Perl Documentation Mango::Protocol(3pm)
 

NAME

Mango::Protocol - The MongoDB wire protocol

SYNOPSIS

  use Mango::Protocol;
  my $protocol = Mango::Protocol->new;
  my $bytes    = $protocol->insert(23, 'foo.bar', {}, {foo => 'bar'});

DESCRIPTION

Mango::Protocol is a minimalistic implementation of the MongoDB wire protocol.

METHODS

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

build_delete

  my $bytes = $protocol->build_delete($id, $name, $flags, $query);
Build message for "delete" operation.

build_get_more

  my $bytes = $protocol->build_get_more($id, $name, $return, $cursor);
Build message for "get_more" operation.

build_insert

  my $bytes = $protocol->build_insert($id, $name, $flags, @docs);
Build message for "insert" operation.

build_kill_cursors

  my $bytes = $protocol->build_kill_cursors($id, @ids);
Build message for "kill_cursors" operation.

build_query

  my $bytes = $protocol->build_query($id, $name, $flags, $skip, $return,
    $query, $fields);
Build message for "query" operation.

build_update

  my $bytes = $protocol->build_update($id, $name, $flags, $query, $update);
Build message for "update" operation.

command_error

  my $err = $protocol->command_error($reply);
Check reply for command error.

next_id

  my $id = $protocol->next_id(23);
Generate next id.

parse_reply

  my $reply = $protocol->parse_reply(\$str);
Extract and parse "reply" message.

query_failure

  my $err = $protocol->query_failure($reply);
Check reply for query failure.

SEE ALSO

Mango, Mojolicious::Guides, <http://mojolicio.us>.
2013-11-19 perl v5.18.1