Class: Opencdd::Parcel::WorkbookReader::SpreadsheetSource
- Inherits:
-
Struct
- Object
- Struct
- Opencdd::Parcel::WorkbookReader::SpreadsheetSource
- Defined in:
- lib/opencdd/parcel/workbook_reader.rb
Instance Method Summary collapse
-
#initialize(path) ⇒ SpreadsheetSource
constructor
A new instance of SpreadsheetSource.
- #rows_for(name) ⇒ Object
- #sheet_names ⇒ Object
Constructor Details
#initialize(path) ⇒ SpreadsheetSource
Returns a new instance of SpreadsheetSource.
175 176 177 178 179 |
# File 'lib/opencdd/parcel/workbook_reader.rb', line 175 def initialize(path) require "spreadsheet" super(path) @book = Spreadsheet.open(path) end |
Instance Method Details
#rows_for(name) ⇒ Object
185 186 187 188 |
# File 'lib/opencdd/parcel/workbook_reader.rb', line 185 def rows_for(name) ws = @book.worksheets.find { |w| decode_name(w.name) == name } || @book.worksheet(0) ws.rows.map(&:to_a) end |
#sheet_names ⇒ Object
181 182 183 |
# File 'lib/opencdd/parcel/workbook_reader.rb', line 181 def sheet_names @sheet_names ||= @book.worksheets.map { |ws| decode_name(ws.name) } end |