#!/usr/bin/perl
use Data::Dumper;
use Mango;
use Mojolicious::Lite;
my $mango = Mango->new;
my $db = $mango->db('test');
get '/' => sub {
my $self = shift;
$self->render_later;
Mojo::IOLoop->delay(
sub {
Mojo::IOLoop->timer(1 => shift->begin);
},
sub {
$db->stats(shift->begin);
},
sub {
my ($delay, $err, $stats) = @_;
return $self->render(text => $err) if $err;
$self->render(text => Dumper $stats);
}
);
};
app->start;
Output:
$ morbo app.pl
[Tue Aug 27 10:38:37 2013] [info] Listening at "http://*:3000".
Server available at http://127.0.0.1:3000.
[Tue Aug 27 10:38:42 2013] [debug] Your secret passphrase needs to be changed!!!
[Tue Aug 27 10:38:42 2013] [debug] GET "/".
[Tue Aug 27 10:38:42 2013] [debug] Routing to a callback.
Timer a0c7e5ece3b89efbd336ea3a2b08a17c failed: Can't call method "protocol" on an undefined value at /home/and/perl5/perlbrew/perls/perl-5.16.3/lib/site_perl/5.16.3/Mango/Database.pm line 42.
[Tue Aug 27 10:38:57 2013] [debug] Inactivity timeout.
$ perl app.pl daemon
[Tue Aug 27 10:39:26 2013] [info] Listening at "http://*:3000".
Server available at http://127.0.0.1:3000.
[Tue Aug 27 10:39:28 2013] [debug] Your secret passphrase needs to be changed!!!
[Tue Aug 27 10:39:28 2013] [debug] GET "/".
[Tue Aug 27 10:39:28 2013] [debug] Routing to a callback.
[Tue Aug 27 10:39:29 2013] [debug] 200 OK (1.003680s, 0.996/s).