Class: SpreadsheetManager
- Inherits:
-
Object
- Object
- SpreadsheetManager
- Defined in:
- lib/spreadsheet_manager_refi.rb
Instance Method Summary collapse
- #get_metadata(ss_pn) ⇒ Object
-
#get_ss(ss_pn) ⇒ Object
ss_pn spreadsheet-pathname.
-
#initialize ⇒ SpreadsheetManager
constructor
-
each file will only be opened once for all requests that are made.
-
Constructor Details
#initialize ⇒ SpreadsheetManager
-
each file will only be opened once for all requests that are made
8 9 10 11 |
# File 'lib/spreadsheet_manager_refi.rb', line 8 def initialize @ss_s = {} # file_pn => spreadsheet = {} end |
Instance Method Details
#get_metadata(ss_pn) ⇒ Object
29 30 31 32 33 34 |
# File 'lib/spreadsheet_manager_refi.rb', line 29 def (ss_pn) if([ss_pn] == nil) [ss_pn] = {"ss_pn" => ss_pn}.merge( File.(ss_pn) ) end return [ss_pn] end |
#get_ss(ss_pn) ⇒ Object
ss_pn spreadsheet-pathname
13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
# File 'lib/spreadsheet_manager_refi.rb', line 13 def get_ss(ss_pn) if @ss_s[ss_pn] == nil # spreadsheet not opened yet $Log.indent $Log.tlog( {id: 'info1035', ss_pn: ss_pn } ) #myreq 'roo' file_extension = ss_pn.match(/.+\.(.+)$/)[1].to_s ss = case file_extension when 'xlsx' then Excelx.new(ss_pn) when 'xls' then Excel.new(ss_pn) when 'ods' then Openoffice.new(ss_pn) end @ss_s[ss_pn] = ss $Log.undent end return @ss_s[ss_pn] end |