Class: GdlContext

Inherits:
Object
  • Object
show all
Defined in:
lib/xmlutils/gdlcontext.rb

Overview

class GdlContext

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeGdlContext

Returns a new instance of GdlContext.



29
30
31
32
33
34
35
36
37
# File 'lib/xmlutils/gdlcontext.rb', line 29

def initialize()
  @rules    = Hash.new
  @ppms     = Hash.new
  @dpms     = Hash.new
  @lookups  = Hash.new
  @rulesets = Hash.new
  @messages = Hash.new
  @guideline = nil
end

Instance Attribute Details

#dpmsObject

Returns the value of attribute dpms.



22
23
24
# File 'lib/xmlutils/gdlcontext.rb', line 22

def dpms
  @dpms
end

#guidelineObject

Returns the value of attribute guideline.



25
26
27
# File 'lib/xmlutils/gdlcontext.rb', line 25

def guideline
  @guideline
end

#lookupsObject

Returns the value of attribute lookups.



23
24
25
# File 'lib/xmlutils/gdlcontext.rb', line 23

def lookups
  @lookups
end

#messagesObject

Returns the value of attribute messages.



26
27
28
# File 'lib/xmlutils/gdlcontext.rb', line 26

def messages
  @messages
end

#optionsObject (readonly)

Returns the value of attribute options.



18
19
20
# File 'lib/xmlutils/gdlcontext.rb', line 18

def options
  @options
end

#ppmsObject

Returns the value of attribute ppms.



21
22
23
# File 'lib/xmlutils/gdlcontext.rb', line 21

def ppms
  @ppms
end

#rulesObject

Returns the value of attribute rules.



20
21
22
# File 'lib/xmlutils/gdlcontext.rb', line 20

def rules
  @rules
end

#rulesetsObject

Returns the value of attribute rulesets.



24
25
26
# File 'lib/xmlutils/gdlcontext.rb', line 24

def rulesets
  @rulesets
end

Instance Method Details

#createValidName(inname) ⇒ Object

————————————————————————————————————-# createValidName - Generate a valid GDL name

inname - name to convert

————————————————————————————————————#



49
50
51
52
53
54
55
# File 'lib/xmlutils/gdlcontext.rb', line 49

def createValidName(inname)
  outname = inname.gsub(/[\s\/\\?*#+]/,'')        # Remove illegal chars (replace with underscore).

  outname.gsub!(/_+/,"_")                         # Replace consecutive uscores with single uscore.

  outname.gsub!(/\./,"-")                         # Replace period with dash.


  outname
end

#dumpDpmsObject

————————————————————————————————————-# dumpDpms - Dump all stored DPM variables

————————————————————————————————————#



128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
# File 'lib/xmlutils/gdlcontext.rb', line 128

def dumpDpms()
  79.times {print "="}
  puts
  puts "DPM DUMP".center(80)
  79.times {print "="}
  puts

  if(@dpms.length > 0)

    dpms = @dpms.sort
    dpms.each do |key, dpm|
      puts "#{dpm.name}\t(#{dpm.alias})" unless dpm.varType == "DSM"
    end

  else
    puts "No DPM variables to dump."
  end

  puts ""

  79.times {print "="}
  puts
  puts "DSM DUMP".center(80)
  79.times {print "="}
  puts

  if(@dpms.length > 0)
    dpms = @dpms.sort
    dpms.each do |key, dpm|
      puts "#{dpm.name}\t(#{dpm.alias})" if dpm.varType == "DSM"
    end

  else
    puts "No DSM variables to dump."
  end

  puts ""

end

#dumpLookupsObject

————————————————————————————————————-# dumpLookups - Dump all stored rulesets

————————————————————————————————————#



284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
# File 'lib/xmlutils/gdlcontext.rb', line 284

def dumpLookups()
  79.times {print "="}
  puts
  puts "LOOKUP DUMP".center(80)
  79.times {print "="}
  puts

  if(@lookups.length > 0)
    lookups = @lookups.sort
    lookups.each do |key, lookup|

      puts lookup.toGdlRef()

    end # lookups.each

  else
    puts "No lookups to dump."
  end # if


  puts ""
end

#dumpPpmsObject

————————————————————————————————————-# dumpPpms - Dump all PPM variables

————————————————————————————————————#



173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
# File 'lib/xmlutils/gdlcontext.rb', line 173

def dumpPpms()
  79.times {print "="}
  puts
  puts "PPM DUMP".center(80)
  79.times {print "="}
  puts

  if(@ppms.length > 0)
    ppms = @ppms.sort
    ppms.each do |key, ppm|
      puts "#{ppm.name}\t(#{ppm.alias})"
    end

  else
    puts "No PPM variables to dump."
  end

  puts ""

end

#dumpRule(als) ⇒ Object

————————————————————————————————————-# dumpRule - Dump one rule

————————————————————————————————————#



227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
# File 'lib/xmlutils/gdlcontext.rb', line 227

def dumpRule(als)
  79.times {print "="}
  puts
  puts "RULE: #{als}".center(80)
  79.times {print "="}
  puts

  rule = @rules[als]
  if (nil != rule)
    puts "#{rule.name}\t(#{rule.alias})"
    puts "#{rule.xml}"

  else
    puts "Cannot find matching rule."
  end

  puts ""
end

#dumpRulesObject

————————————————————————————————————-# dumpRules - Dump all stored rules

————————————————————————————————————#



199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
# File 'lib/xmlutils/gdlcontext.rb', line 199

def dumpRules()
  79.times {print "="}
  puts
  puts "RULE DUMP".center(80)
  79.times {print "="}
  puts

  if(@rules.length > 0)
    rules = @rules.sort
    rules.each do |key, rule|
      puts "#{rule.name}\t(#{rule.alias})"
      puts "#{rule.xml}"
      40.times {print "-"}
      puts
    end

  else
    puts "No rules to dump."
  end

  puts ""
end

#dumpRulesetsObject

————————————————————————————————————-# dumpRulesets - Dump all stored rulesets

————————————————————————————————————#



251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
# File 'lib/xmlutils/gdlcontext.rb', line 251

def dumpRulesets()
  79.times {print "="}
  puts
  puts "RULESET DUMP".center(80)
  79.times {print "="}
  puts

  if(@rulesets.length > 0)
    rulesets = @rulesets.sort
    rulesets.each do |key, ruleset|

      40.times {print "-"}
      puts
      puts "#{ruleset.name}\t(#{ruleset.alias}) : #{ruleset.type} : #{ruleset.execType}"
      ruleset.rules.each do |ruleAlias|
        puts "\t#{ruleAlias}"
      end # rules.each

      puts ""

    end # rulesets.each


  else
    puts "No rulesets to dump."
  end

  puts ""
end

#getLookupParamNames(lkName) ⇒ Object

————————————————————————————————————-# getLookupParamNames - generate a hash containing a lookup’s x and y parameter names (not alias’)

lkName - name of lookup to get values from.

returns Hash - xparam => xParam name, yparam => yParam name ————————————————————————————————————#



82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
# File 'lib/xmlutils/gdlcontext.rb', line 82

def getLookupParamNames(lkName)
  lkParams = Hash.new

  lkup = @lookups[lkName]

  #puts lkup.inspect


  x = nil
  y = nil

  if (isPpmVar(lkup.xParam))
    x = @ppms[lkup.xParam.alias]
  else
    x = @dpms[lkup.xParam.alias]
  end # if PPM


  #puts x.inspect


  if (isPpmVar(lkup.yParam))
    y = @ppms[lkup.yParam.alias]
  else
    y = @dpms[lkup.yParam.alias]
  end # if PPM


  #puts y.inspect


  if (nil == x)
    raise "Unable to find xParam (#{lkup.xParam.alias}) in lookup #{lkName}"
  end # if nil


  if (nil == y)
    raise "Unable to find yParam (#{lkup.yParam.alias}) in lookup #{lkName}"
  end # if nil


  lkParams["xparam"] = x.name
  lkParams["yparam"] = y.name

  return lkParams

end

#isPpmVar(var) ⇒ Object



57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
# File 'lib/xmlutils/gdlcontext.rb', line 57

def isPpmVar(var)
  isPpm = false

  case var.varType
    when 'app'
      isPpm = true

    when 'crd'
      isPpm = true

    when 'prd'
      isPpm = true

  end # case


  isPpm
end

#setOptions(options) ⇒ Object

initialize



39
40
41
# File 'lib/xmlutils/gdlcontext.rb', line 39

def setOptions(options)
  @options = options
end