xmlutils 0.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.gitignore +6 -0
- data/Gemfile +4 -0
- data/LICENSE +22 -0
- data/README.md +77 -0
- data/bin/xmltogdl +88 -0
- data/docs/README.txt +20 -0
- data/lib/xmlutils/contextlistener.rb +432 -0
- data/lib/xmlutils/contextparser.rb +111 -0
- data/lib/xmlutils/dumplistener.rb +57 -0
- data/lib/xmlutils/gdlcontext.rb +305 -0
- data/lib/xmlutils/gdlcontextobjs.rb +286 -0
- data/lib/xmlutils/gdldoc.rb +547 -0
- data/lib/xmlutils/gdldocbuilder.rb +181 -0
- data/lib/xmlutils/gdllistener.rb +265 -0
- data/lib/xmlutils/gdltemplate.rb +488 -0
- data/lib/xmlutils/lineparser.rb +193 -0
- data/lib/xmlutils/listener.rb +459 -0
- data/lib/xmlutils/rulelistener.rb +414 -0
- data/lib/xmlutils/ruleparser.rb +112 -0
- data/lib/xmlutils/varlistener.rb +86 -0
- data/lib/xmlutils/version.rb +5 -0
- data/lib/xmlutils/xmlrulevisitor.rb +704 -0
- data/lib/xmlutils/xmltogdlcontroller.rb +93 -0
- data/lib/xmlutils/xmltogdltask.rb +23 -0
- data/lib/xmlutils/xmlvisitor.rb +690 -0
- data/lib/xmlutils.rb +40 -0
- data/rakefile.rb +34 -0
- data/unittests/2830.xml +1 -0
- data/unittests/chunks.rb +31 -0
- data/unittests/curDirTest.rb +2 -0
- data/unittests/data/2830-GENERATED.gdl +309 -0
- data/unittests/data/2830-GENERATED.xml +1 -0
- data/unittests/data/AUGuideline.xml +12 -0
- data/unittests/data/AUGuideline.xml.gdl +19190 -0
- data/unittests/data/BAKUP.DCTEST1.xml +1 -0
- data/unittests/data/DCTEST.xml +1 -0
- data/unittests/data/DCTEST1.xml +1 -0
- data/unittests/data/DCTEST1.xml.gdl +14890 -0
- data/unittests/data/DCTEST1.xml.rename.csv +180 -0
- data/unittests/data/DCTEST1wLookups.xml +174 -0
- data/unittests/data/DCTEST1wLookups.xml.gdl +127 -0
- data/unittests/data/GENERATED.gdl.xml +1 -0
- data/unittests/data/Message.xml +1 -0
- data/unittests/data/Message.xml.gdl +142 -0
- data/unittests/data/Pricing2ndGuideline.xml +1 -0
- data/unittests/data/Pricing2ndGuideline.xml.gdl +52670 -0
- data/unittests/data/Z-TEMP-Jeff.xml +1 -0
- data/unittests/data/Z-TEMP-Jeff.xml.gdl +288 -0
- data/unittests/tc_convert_xml_to_gdl.rb +23 -0
- data/unittests/ts_allTests.rb +2 -0
- data/xmlutils.gemspec +25 -0
- metadata +139 -0
@@ -0,0 +1,93 @@
|
|
1
|
+
##############################################################################
|
2
|
+
# File:: xmltogdlcontroller.rb
|
3
|
+
# Purpose:: Main Controller object for XmlToGdl utility
|
4
|
+
#
|
5
|
+
# Author:: Jeff McAffee 03/07/2010
|
6
|
+
# Copyright:: Copyright (c) 2010, kTech Systems LLC. All rights reserved.
|
7
|
+
# Website:: http://ktechsystems.com
|
8
|
+
##############################################################################
|
9
|
+
|
10
|
+
require 'ktcommon/ktpath'
|
11
|
+
require 'ktcommon/ktcmdline'
|
12
|
+
|
13
|
+
class XmlToGdlController
|
14
|
+
|
15
|
+
attr_accessor :verbose
|
16
|
+
attr_reader :srcPath
|
17
|
+
attr_reader :destPath
|
18
|
+
|
19
|
+
def initialize()
|
20
|
+
$LOG.debug "XmlToGdlController::initialize"
|
21
|
+
@verbose = false
|
22
|
+
@srcPath = ""
|
23
|
+
@destPath = ""
|
24
|
+
@includes = []
|
25
|
+
end
|
26
|
+
|
27
|
+
|
28
|
+
def doSomething()
|
29
|
+
$LOG.debug "XmlToGdlController::doSomething"
|
30
|
+
options = {}
|
31
|
+
options["verbose"] = @verbose
|
32
|
+
|
33
|
+
destFile = ""
|
34
|
+
destFile = File.basename(@destPath) unless File.directory?(@destPath)
|
35
|
+
if(!destFile.empty?)
|
36
|
+
options[:destfile] = destFile
|
37
|
+
end
|
38
|
+
destDir = @destPath # Extract the dir if it is a file path.
|
39
|
+
destDir = File.dirname(@destPath) unless File.directory?(@destPath)
|
40
|
+
if(destDir.length() < 1)
|
41
|
+
destDir = Dir.getwd() # Use working dir if nothing there.
|
42
|
+
end
|
43
|
+
options[:destdir] = destDir
|
44
|
+
|
45
|
+
options[:includes] = @includes
|
46
|
+
|
47
|
+
# Go to work.
|
48
|
+
docBuilder = GdlDocBuilder.new(options)
|
49
|
+
docBuilder.createDocument(@srcPath)
|
50
|
+
|
51
|
+
end
|
52
|
+
|
53
|
+
|
54
|
+
def setVerbose(arg)
|
55
|
+
$LOG.debug "XmlToGdlController::setVerbose( #{arg} )"
|
56
|
+
@verbose = arg
|
57
|
+
end
|
58
|
+
|
59
|
+
|
60
|
+
def setFilenames(arg)
|
61
|
+
$LOG.debug "XmlToGdlController::setFilenames( #{arg} )"
|
62
|
+
@srcPath = arg[0]
|
63
|
+
@destPath = arg[1]
|
64
|
+
|
65
|
+
@srcPath = File.rubypath(@srcPath)
|
66
|
+
@destPath = File.rubypath(@destPath)
|
67
|
+
end
|
68
|
+
|
69
|
+
|
70
|
+
def addInclude(arg)
|
71
|
+
$LOG.debug "XmlToGdlController::addInclude( #{arg} )"
|
72
|
+
arg = File.rubypath(arg)
|
73
|
+
if(!File.file?(arg))
|
74
|
+
arg = File.expand_path(arg)
|
75
|
+
if(!File.file?(arg))
|
76
|
+
$LOG.error "Unable to find include file: #{arg}"
|
77
|
+
puts "Missing file: #{arg}"
|
78
|
+
arg = nil
|
79
|
+
end
|
80
|
+
end
|
81
|
+
if(nil != arg)
|
82
|
+
@includes << arg
|
83
|
+
$LOG.info "Include file added: #{arg}"
|
84
|
+
end
|
85
|
+
end
|
86
|
+
|
87
|
+
|
88
|
+
def noCmdLineArg()
|
89
|
+
$LOG.debug "XmlToGdlController::noCmdLineArg"
|
90
|
+
#exit "Should never reach here."
|
91
|
+
end
|
92
|
+
end # class XmlToGdlController
|
93
|
+
|
@@ -0,0 +1,23 @@
|
|
1
|
+
##############################################################################
|
2
|
+
# File:: xmltogdltask.rb
|
3
|
+
# Purpose:: Rake Task for running the application
|
4
|
+
#
|
5
|
+
# Author:: Jeff McAffee 04/13/2010
|
6
|
+
# Copyright:: Copyright (c) 2010, kTech Systems LLC. All rights reserved.
|
7
|
+
# Website:: http://ktechsystems.com
|
8
|
+
##############################################################################
|
9
|
+
|
10
|
+
require 'xmlutils'
|
11
|
+
class XmlToGdlTask
|
12
|
+
|
13
|
+
def execute(srcPath, destPath, verbose=false)
|
14
|
+
filenames = [srcPath, destPath]
|
15
|
+
|
16
|
+
app = XmlToGdlController.new
|
17
|
+
app.setFilenames(filenames)
|
18
|
+
app.setVerbose(verbose)
|
19
|
+
app.doSomething()
|
20
|
+
end
|
21
|
+
end # class XmlToGdlTask
|
22
|
+
|
23
|
+
|