Class: Sbuilder::DomainValue
- Includes:
- Utils::MyLogger
- Defined in:
- lib/sbuilder/domain_value.rb
Constant Summary collapse
- PROGNAME =
mixer
nil
Constants included from Utils::MyLogger
Instance Attribute Summary collapse
-
#values ⇒ Object
readonly
Returns the value of attribute values.
Attributes inherited from Domain
Instance Method Summary collapse
-
#addValue(value) ⇒ Object
—————————————————————— build.
-
#cardinality ⇒ Object
—————————————————————— cardinality overriden.
-
#domain_entry(i) ⇒ String
Value in location ‘i-1` ie.
-
#initialize(options = {}) ⇒ DomainValue
constructor
A new instance of DomainValue.
Methods included from Utils::MyLogger
Methods inherited from Domain
#domain_range, #domain_values, #includeNil, #nilValue, #numberOfElements, #render_entry, #render_values, #setExtension, #setName, #stringize, #tlaBaseType, #to_s
Constructor Details
#initialize(options = {}) ⇒ DomainValue
Returns a new instance of DomainValue.
14 15 16 17 18 19 20 21 |
# File 'lib/sbuilder/domain_value.rb', line 14 def initialize( = {} ) super( ) @logger = getLogger( PROGNAME, ) @logger.debug( "#{__method__} initialized" ) # default values one @values = [] end |
Instance Attribute Details
#values ⇒ Object (readonly)
Returns the value of attribute values.
6 7 8 |
# File 'lib/sbuilder/domain_value.rb', line 6 def values @values end |
Instance Method Details
#addValue(value) ⇒ Object
build
76 77 78 79 80 |
# File 'lib/sbuilder/domain_value.rb', line 76 def addValue( value ) @logger.debug( "#{__method__} #{name}: added value #{value}" ) @values << value self end |
#cardinality ⇒ Object
cardinality overriden
26 27 28 |
# File 'lib/sbuilder/domain_value.rb', line 26 def cardinality @values.size end |
#domain_entry(i) ⇒ String
Returns value in location ‘i-1` ie. indexing from 1,2,3,.. when i:integer value with the given name when i:string.
34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 |
# File 'lib/sbuilder/domain_value.rb', line 34 def domain_entry( i ) case i when Integer if i<1 || i>cardinality msg = " Error in domain index \#{i} \n\n Valid domain index: 1..\#{cardinality}\n EOS\n raise DomainException.new, msg\n end\n @values[i-1] \n when String\n ret = @values.select { |val| val == i }.first\n if ret.nil?\n raise DomainException.new <<-EOS\n Unknown domain entry '\#{i}'\n\n Known domain entries: \#{values.join(',')}\n EOS\n end\n ret\n else\n raise DomainException.new <<-EOS\n Unknown type \#{i.class} in 'domain_entry' \#{name}.\n\n Support only for Integer, String\n EOS\n end\nend\n" |