File Coverage

lib/Spreadsheet/Reader/ExcelXML/WorkbookFileInterface.pm
Criterion Covered Total %
statement 9 9 100.0
branch n/a
condition n/a
subroutine 3 3 100.0
pod n/a
total 12 12 100.0


line stmt bran cond sub pod time code
1             package Spreadsheet::Reader::ExcelXML::WorkbookFileInterface;
2             our $AUTHORITY = 'cpan:JANDREW';
3 18     18   2554265 use version; our $VERSION = version->declare('v0.16.8');
  18         30  
  18         117  
4             ###LogSD warn "You uncovered internal logging statements for Spreadsheet::Reader::ExcelXML::WorkbookFileInterface-$VERSION";
5              
6 18     18   1679 use Moose::Role;
  18         30  
  18         132  
7             requires qw( get_file_type extract_file loaded_correctly );
8              
9             #########1 Dispatch Tables 3#########4#########5#########6#########7#########8#########9
10              
11              
12              
13             #########1 Public Attributes 3#########4#########5#########6#########7#########8#########9
14              
15              
16              
17             #########1 Public Methods 3#########4#########5#########6#########7#########8#########9
18              
19             ###LogSD sub get_class_space{ 'WorkbookFileInterface' }
20              
21             #########1 Private Attributes 3#########4#########5#########6#########7#########8#########9
22              
23              
24              
25             #########1 Phinish 3#########4#########5#########6#########7#########8#########9
26              
27 18     18   67267 no Moose::Role;
  18         29  
  18         76  
28             1;
29              
30             #########1 Documentation 3#########4#########5#########6#########7#########8#########9
31             __END__
32              
33             =head1 NAME
34              
35             Spreadsheet::Reader::ExcelXML::WorkbookFileInterface - XLSX and XML workbook file interface
36              
37             =head1 SYNOPSIS
38              
39             use MooseX::ShortCut::BuildInstance v1.8 qw( build_instance );
40             use Spreadsheet::Reader::ExcelXML::WorkbookFileInterface;
41             use Spreadsheet::Reader::ExcelXML::ZipReader;
42             my $test_file = 'TestBook.xlsx';
43             my $test_instance = build_instance(
44             package => 'ZipWorkbookFileInterface',
45             superclasses => ['Spreadsheet::Reader::ExcelXML::ZipReader'],
46             file => $test_file,
47             add_roles_in_sequence =>[
48             'Spreadsheet::Reader::ExcelXML::WorkbookFileInterface',
49             ],
50             );
51              
52             =head1 DESCRIPTION
53              
54             This documentation is written to explain ways to use this module when writing your own
55             excel parser. To use the general package for excel parsing out of the box please review
56             the documentation for L<Workbooks|Spreadsheet::Reader::ExcelXML>,
57             L<Worksheets|Spreadsheet::Reader::ExcelXML::Worksheet>, and
58             L<Cells|Spreadsheet::Reader::ExcelXML::Cell>
59              
60             This module (role) is provided as a way to standardize access to or L<interface
61             |http://www.cs.utah.edu/~germain/PPS/Topics/interfaces.html> with base workbook files
62             accross zip and flat xml types. It doesn't provide any functionality itself it just
63             provides requirements for any built classes so a consumer of this interface will be
64             able to use a consistent interface. The two most likely base classes for this interface
65             are;
66              
67             L<Spreadsheet::Reader::ExcelXML::ZipReader>
68              
69             L<Spreadsheet::Reader::ExcelXML::XMLReader>
70              
71             =head2 Required Methods
72              
73             These are the methods required by the role. A link to the Zip implementation of these
74             methods is provided. The XML versions are documented in the ~::XMLReader.
75              
76             L<Spreadsheet::Reader::ExcelXML::ZipReader/get_file_type>
77              
78             L<Spreadsheet::Reader::ExcelXML::ZipReader/loaded_correctly>
79              
80             L<Spreadsheet::Reader::ExcelXML::ZipReader/extract_file( $zip_sub_file )>
81              
82             =head1 SUPPORT
83              
84             =over
85              
86             L<github Spreadsheet::Reader::ExcelXML/issues
87             |https://github.com/jandrew/p5-spreadsheet-reader-excelxml/issues>
88              
89             =back
90              
91             =head1 TODO
92              
93             =over
94              
95             B<1.> Nothing currently
96              
97             =back
98              
99             =head1 AUTHOR
100              
101             =over
102              
103             =item Jed Lund
104              
105             =item jandrew@cpan.org
106              
107             =back
108              
109             =head1 COPYRIGHT
110              
111             This program is free software; you can redistribute
112             it and/or modify it under the same terms as Perl itself.
113              
114             The full text of the license can be found in the
115             LICENSE file included with this module.
116              
117             This software is copyrighted (c) 2016 by Jed Lund
118              
119             =head1 DEPENDENCIES
120              
121             =over
122              
123             L<Spreadsheet::Reader::ExcelXML> - the package
124              
125             =back
126              
127             =head1 SEE ALSO
128              
129             =over
130              
131             L<Spreadsheet::Read> - generic Spreadsheet reader
132              
133             L<Spreadsheet::ParseExcel> - Excel binary version 2003 and earlier (.xls files)
134              
135             L<Spreadsheet::XLSX> - Excel version 2007 and later
136              
137             L<Spreadsheet::ParseXLSX> - Excel version 2007 and later
138              
139             L<Log::Shiras|https://github.com/jandrew/Log-Shiras>
140              
141             =over
142              
143             All lines in this package that use Log::Shiras are commented out
144              
145             =back
146              
147             =back
148              
149             =cut
150              
151             #########1#########2 main pod documentation end 5#########6#########7#########8#########9