File Coverage

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