File Coverage

blib/lib/Bio/MUST/Core/Taxonomy/MooseNCBI.pm
Criterion Covered Total %
statement 18 27 66.6
branch n/a
condition n/a
subroutine 6 8 75.0
pod 0 2 0.0
total 24 37 64.8


line stmt bran cond sub pod time code
1             package Bio::MUST::Core::Taxonomy::MooseNCBI;
2             # ABSTRACT: Wrapper class for serializing Bio::LITE::Taxonomy::NCBI object
3             $Bio::MUST::Core::Taxonomy::MooseNCBI::VERSION = '0.212650';
4 17     17   10875 use Moose;
  17         55  
  17         171  
5 17     17   135272 use namespace::autoclean;
  17         54  
  17         219  
6              
7 17     17   10226 use MooseX::NonMoose;
  17         19008  
  17         72  
8              
9 17     17   902294 use Bio::LITE::Taxonomy::NCBI 0.10; # for handling synonyms
  17         51944  
  17         733  
10             extends 'Bio::LITE::Taxonomy::NCBI';
11              
12 17     17   154 use Smart::Comments;
  17         46  
  17         213  
13              
14              
15             ## no critic (ProhibitBuiltinHomonyms)
16              
17             # provide pack and unpack methods for MooseX::Storage
18              
19 17     17   26213 use Storable;
  17         48  
  17         3633  
20              
21             sub pack {
22 0     0 0   my $self = shift;
23              
24             # convert potential GLOB attributes to (useless) plain strings
25             # this should not harm as Taxonomy has been already built
26 0           $self->{namesFile} = 'serialized data';
27 0           $self->{nodesFile} = 'serialized data';
28              
29             # pack data as would do MooseX::Storage
30             # Note: not sure that the way of determining the class is Moosy enough
31 0           my $pack = {
32             __CLASS__ => ref($self),
33             data => Storable::nfreeze($self)
34             };
35 0           return $pack;
36             }
37              
38             sub unpack {
39 0     0 0   my $class = shift;
40 0           my $pack = shift;
41              
42             # unpack data
43             # Note: blessing is with the invokant class not the packed class
44 0           my $object = bless Storable::thaw( $pack->{data} ), $class;
45 0           return $object;
46             }
47              
48             ## use critic
49              
50             __PACKAGE__->meta->make_immutable;
51             1;
52              
53             __END__
54              
55             =pod
56              
57             =head1 NAME
58              
59             Bio::MUST::Core::Taxonomy::MooseNCBI - Wrapper class for serializing Bio::LITE::Taxonomy::NCBI object
60              
61             =head1 VERSION
62              
63             version 0.212650
64              
65             =head1 SYNOPSIS
66              
67             # TODO
68              
69             =head1 DESCRIPTION
70              
71             # TODO
72              
73             =head1 AUTHOR
74              
75             Denis BAURAIN <denis.baurain@uliege.be>
76              
77             =head1 COPYRIGHT AND LICENSE
78              
79             This software is copyright (c) 2013 by University of Liege / Unit of Eukaryotic Phylogenomics / Denis BAURAIN.
80              
81             This is free software; you can redistribute it and/or modify it under
82             the same terms as the Perl 5 programming language system itself.
83              
84             =cut