File Coverage

blib/lib/Net/HTTP/Spore/Meta.pm
Criterion Covered Total %
statement 15 18 83.3
branch n/a
condition n/a
subroutine 4 5 80.0
pod 0 2 0.0
total 19 25 76.0


line stmt bran cond sub pod time code
1             package Net::HTTP::Spore::Meta;
2              
3             # ABSTRACT: Meta class for all SPORE object
4              
5 22     22   137 use Moose;
  22         49  
  22         168  
6 22     22   138257 use Moose::Exporter;
  22         55  
  22         107  
7 22     22   848 use Moose::Util::MetaRole;
  22         46  
  22         3638  
8              
9             our $VERSION = '0.14';
10              
11             Moose::Exporter->setup_import_methods(
12             with_meta => [qw/spore_method/],
13             also => [qw/Moose/]
14             );
15              
16             sub spore_method {
17 0     0 0 0 my $meta = shift;
18 0         0 my $name = shift;
19 0         0 $meta->add_spore_method($name, @_);
20             }
21              
22             sub init_meta {
23 22     22 0 1717 my ($class, %options) = @_;
24              
25 22         49 my $for = $options{for_class};
26 22         115 Moose->init_meta(%options);
27              
28 22         94992 my $meta = Moose::Util::MetaRole::apply_metaroles(
29             for => $for,
30             class_metaroles => {
31             class => ['Net::HTTP::Spore::Meta::Class'],
32             },
33             );
34              
35 22         53819 Moose::Util::MetaRole::apply_base_class_roles(
36             for => $for,
37             roles => [
38             qw/
39             Net::HTTP::Spore::Role::Debug
40             Net::HTTP::Spore::Role::Description
41             Net::HTTP::Spore::Role::UserAgent
42             Net::HTTP::Spore::Role::Request
43             Net::HTTP::Spore::Role::Middleware
44             /
45             ],
46             );
47              
48 22         182024 $meta;
49             };
50              
51             1;
52              
53             __END__
54              
55             =pod
56              
57             =encoding UTF-8
58              
59             =head1 NAME
60              
61             Net::HTTP::Spore::Meta - Meta class for all SPORE object
62              
63             =head1 VERSION
64              
65             version 0.08
66              
67             =head1 AUTHORS
68              
69             =over 4
70              
71             =item *
72              
73             Franck Cuny <franck.cuny@gmail.com>
74              
75             =item *
76              
77             Ash Berlin <ash@cpan.org>
78              
79             =item *
80              
81             Ahmad Fatoum <athreef@cpan.org>
82              
83             =back
84              
85             =head1 COPYRIGHT AND LICENSE
86              
87             This software is copyright (c) 2012 by Linkfluence.
88              
89             This is free software; you can redistribute it and/or modify it under
90             the same terms as the Perl 5 programming language system itself.
91              
92             =cut