twb 4.5.9 → 4.6.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/twb.rb +1 -1
- data/lib/twb/analysis/workbooksummaryanalyzer.rb +4 -2
- data/lib/twb/listXMLNodePathsAndAttributes.rb +31 -0
- data/lib/twb/workbook.rb +6 -4
- metadata +2 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e049f4ada5ac7d92e8c34a843e3593a632b2c009854fa09f3c085567e7904289
|
4
|
+
data.tar.gz: 423d1b5cd090535b6a60409e468df0ffd7fd28583660a5ff86c9ce9101dcfb1a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a814663aa667f6af9e62bff76c3bedf7497eb248e8883e1cbfa09a2631f8cf51a3714929c98f852f5c328f66d9a022c8f0df28c767e39e90ce860cd311cb99a3
|
7
|
+
data.tar.gz: 6bcd9e6d20bab6ca85dfc6d954c99d711dc4475784068c8d7598a4f718a2fc446d90d277c03924b122a402fddd06b594efb93ec827668694bdfd3aeb865d9c84
|
data/lib/twb.rb
CHANGED
@@ -37,7 +37,7 @@ module Analysis
|
|
37
37
|
docFileName = docFile('WorkbookSummary.csv')
|
38
38
|
@csvFile = CSV.open(docFileName,@csvMode)
|
39
39
|
unless @csvAdd
|
40
|
-
csvHeader = ['Rec #', 'Workbook','Type','Version','Build','Modified','# Data Sources','# Dashboards','# Worksheets']
|
40
|
+
csvHeader = ['Rec #', 'Workbook','Type','Version','Build','Platform','Modified','# Data Sources','# Dashboards','# Worksheets']
|
41
41
|
if @recordDir
|
42
42
|
csvHeader.push('Workbook Directory')
|
43
43
|
end
|
@@ -67,7 +67,9 @@ module Analysis
|
|
67
67
|
recordCSV [ @twb.name,
|
68
68
|
@twb.type,
|
69
69
|
@twb.version,
|
70
|
-
@twb.build,
|
70
|
+
@twb.build,
|
71
|
+
@twb.platform,
|
72
|
+
# @twb.base,
|
71
73
|
@twb.modtime,
|
72
74
|
@twb.datasources.length,
|
73
75
|
@twb.dashboards.length,
|
@@ -0,0 +1,31 @@
|
|
1
|
+
require 'nokogiri'
|
2
|
+
require 'csv'
|
3
|
+
|
4
|
+
$twbCount = 0
|
5
|
+
def processTwb twbName
|
6
|
+
puts "\t - #{twbName}"
|
7
|
+
twb = Twb::Workbook.new twbName
|
8
|
+
nokodoc = twb.node #Nokogiri::XML(open('dataSources.xml'))
|
9
|
+
# $nodePaths = SortedSet.new
|
10
|
+
|
11
|
+
$csvFile = CSV.open('xmlNodesAndAttributes.csv','w')
|
12
|
+
$csvFile << ['Workbook', 'Workbook Directory', 'Node Name', 'Node Path', 'Attr Name', 'Attr Value']
|
13
|
+
nodes = nokodoc.xpath('//.')
|
14
|
+
nodes.each do |n|
|
15
|
+
nodeName = n.name
|
16
|
+
nodePath = n.path.gsub(/\[[0-9]+\]/,'')
|
17
|
+
attrs = n.attributes
|
18
|
+
attrs.each do |attrName,attrValue|
|
19
|
+
$csvFile << [twbName, twbDir, nodeName, nodePath, attrName, attrValue]
|
20
|
+
end
|
21
|
+
if attrs.empty?
|
22
|
+
$csvFile << [ twbName, twbDir, nodeName, nodePath, nil, nil ]
|
23
|
+
end
|
24
|
+
# $nodePaths << n.path.gsub(/\[[0-9]+\]/,'').gsub('/content/workbook/','')
|
25
|
+
end
|
26
|
+
$twbCount += 1
|
27
|
+
end
|
28
|
+
|
29
|
+
path = if ARGV.empty? then ['**/*.twb','**/*.twbx'] else argto_a(ARGV[0]) end
|
30
|
+
puts "\n Processing Workbooks matching: '#{path}'\n "
|
31
|
+
Dir.glob(path) { |twb| processTwb twb }
|
data/lib/twb/workbook.rb
CHANGED
@@ -24,9 +24,9 @@ module Twb
|
|
24
24
|
#
|
25
25
|
class Workbook < TabClass
|
26
26
|
|
27
|
-
attr_reader :workbooknode,
|
28
|
-
attr_reader :name,
|
29
|
-
attr_reader :
|
27
|
+
attr_reader :workbooknode, :node, :ndoc
|
28
|
+
attr_reader :name, :dir, :type, :modtime
|
29
|
+
attr_reader :version, :build, :platform, :base
|
30
30
|
#--
|
31
31
|
attr_reader :datasources, :datasource
|
32
32
|
attr_reader :datasourceNames, :datasourceUINames, :dataSourceNamesMap
|
@@ -34,7 +34,7 @@ module Twb
|
|
34
34
|
#--
|
35
35
|
attr_reader :dashboards, :storyboards, :worksheets
|
36
36
|
attr_reader :parameters, :actions
|
37
|
-
attr_reader :valid
|
37
|
+
attr_reader :valid
|
38
38
|
|
39
39
|
##
|
40
40
|
# Creates a Workbook from its file name.
|
@@ -183,6 +183,8 @@ module Twb
|
|
183
183
|
@node = @ndoc.at_xpath('//workbook')
|
184
184
|
@workbooknode = @node
|
185
185
|
@version = @node.nil? ? nil : @node["version"]
|
186
|
+
@platform = @node.nil? ? nil : @node["source-platform"].nil? ? nil : @node["source-platform"].capitalize
|
187
|
+
@base = @node.nil? ? nil : @node["base"]
|
186
188
|
loaddatasources
|
187
189
|
loadWorksheets
|
188
190
|
loadDashboards
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: twb
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.
|
4
|
+
version: 4.6.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Chris Gerrard
|
@@ -102,6 +102,7 @@ files:
|
|
102
102
|
- lib/twb/hashtohtml.rb
|
103
103
|
- lib/twb/htmllistcollapsible.rb
|
104
104
|
- lib/twb/identifyfields.rb
|
105
|
+
- lib/twb/listXMLNodePathsAndAttributes.rb
|
105
106
|
- lib/twb/localfield.rb
|
106
107
|
- lib/twb/mappedfield.rb
|
107
108
|
- lib/twb/metadatafield.rb
|