class Twb::Analysis::DataSources::DataSourcesEnumerator
Attributes
localEmit[RW]
Public Class Methods
new(**args)
click to toggle source
# File lib/twb/analysis/DataSources/datasourcesenumerator.rb, line 30 def initialize(**args) @args = args @recordDir = !@args.nil? && @args[:recordDir] == true @ttdocdir = @args[:ttdocdir] @csvAdd = args[:csvMode] == :add @csvMode = @csvAdd ? 'a' : 'w' init @funcdoc = {:class=>self.class, :blurb=>"Enumerate Workbooks' Data Sources", :description=>'Documents Data Sources, recoring their names.',} #-- docFileName = docFile('DataSources.csv') @sheetFieldsCSV = CSV.open( docFileName,@csvMode) unless @csvAdd if @recordDir @sheetFieldsCSV << ['Rec #','Workbook','Data Source','Data Source (tech)','Class','Extract?','# Connections','# Fields','Published?', '# Tables', '# Aliases', '# Groups', 'Workbook Dir'] else @sheetFieldsCSV << ['Rec #','Workbook','Data Source','Data Source (tech)','Class','Extract?','# Connections','# Fields','Published?', '# Tables', '# Aliases', '# Groups'] end end addDocFile @sheetFieldsCSV, docFileName, "Workbooks and the Data Sources they contain." #-- @dsCount = 0 @recNum = 0 end
Public Instance Methods
metrics()
click to toggle source
# File lib/twb/analysis/DataSources/datasourcesenumerator.rb, line 54 def metrics { '# of Data Sources' => @dsCount, } end
parseDataSources()
click to toggle source
# File lib/twb/analysis/DataSources/datasourcesenumerator.rb, line 68 def parseDataSources @dataSources = @twb.datasources @dataSources.each do |ds| @dsCount += 1 recordCSV [ @twbName, ds.uiname, ds.name, ds.dsclass, ds.isExtract, ds.connections.length, ds.allFields.length, ds.isPublished, ds.tables.length, ds.aliases.length, ds.groups.length ] # [@twbName, @modTime, sheet.name, filter.type, filter.inexclude, filter.dataSource.uiname, filter.uiname, nil, nil, nil, filter.inexMode, filter.includeNull, filter.kind] end end
processTWB(twb)
click to toggle source
# File lib/twb/analysis/DataSources/datasourcesenumerator.rb, line 60 def processTWB twb @twb = twb @twbName = @twb.name @twbDir = @twb.dir emit " -- #{@twbName}" parseDataSources end
Private Instance Methods
recordCSV(record)
click to toggle source
# File lib/twb/analysis/DataSources/datasourcesenumerator.rb, line 90 def recordCSV record numberedRec = [@recNum+=1] + record if @recordDir @sheetFieldsCSV << numberedRec.push(@twbDir) else @sheetFieldsCSV << numberedRec end end