File Coverage

blib/lib/Ukigumo/Agent.pm
Criterion Covered Total %
statement 27 40 67.5
branch 0 8 0.0
condition n/a
subroutine 9 15 60.0
pod 3 6 50.0
total 39 69 56.5


line stmt bran cond sub pod time code
1             package Ukigumo::Agent;
2 11     11   2659961 use strict;
  11         28  
  11         434  
3 11     11   65 use warnings;
  11         22  
  11         319  
4 11     11   295 use 5.010001;
  11         52  
  11         388  
5 11     11   9477 use version; our $VERSION = version->declare("v0.1.7");
  11         25878  
  11         65  
6 11     11   1839 use parent qw(Amon2 Amon2::Web);
  11         284  
  11         95  
7 11     11   826167 use Carp ();
  11         31  
  11         1147  
8              
9             sub load_config {
10 0     0 1   my ($c, $file) = @_;
11              
12 0           my $config = do $file;
13 0 0         Carp::croak("$file: $@") if $@;
14 0 0         Carp::croak("$file: $!") unless defined $config;
15 0 0         unless ( ref($config) eq 'HASH' ) {
16 0           Carp::croak("$file does not return HashRef.");
17             }
18              
19 0           $config;
20             }
21              
22 11     11   6411 use Ukigumo::Agent::Dispatcher;
  11         29  
  11         391  
23 11     11   84 use Ukigumo::Logger;
  11         16  
  11         836  
24              
25             __PACKAGE__->load_plugins(qw(Web::JSON ShareDir));
26              
27             sub dispatch {
28 0     0 1   my ($c) = @_;
29 0           return Ukigumo::Agent::Dispatcher->dispatch($c);
30             }
31              
32             {
33 11     11   5803 use Ukigumo::Agent::View;
  11         29  
  11         1540  
34             my $view = Ukigumo::Agent::View->make_instance(__PACKAGE__);
35 0     0 1   sub create_view { $view }
36             }
37              
38             {
39             my $_manager;
40 0     0 0   sub register_manager { $_manager = $_[1] }
41 0 0   0 0   sub manager { $_manager || die "Missing manager" }
42             }
43              
44             {
45             my $_logger = Ukigumo::Logger->new;
46 0     0 0   sub logger { $_logger }
47             }
48              
49             1;
50             __END__