Class: SOAP::XSD::Restriction

Inherits:
Hash
  • Object
show all
Defined in:
lib/wsdl-reader/xsd/restriction.rb

Instance Method Summary collapse

Methods inherited from Hash

#keys_to_sym!, #kvTable

Constructor Details

#initialize(content) ⇒ Restriction

Returns a new instance of Restriction.



4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
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
64
65
66
67
68
69
# File 'lib/wsdl-reader/xsd/restriction.rb', line 4

def initialize( content )
  content.attributes.each { |name, value| 
    self[name.to_sym] = value
  }
  content.find_all{ |e| e.class == REXML::Element }.each { |restrictions|
    case restrictions.name
      when "annotation"
        ###############################################################################
        warn "xsd:annotation in xsd:restriction is not yet supported!"
        ###############################################################################
      when "fractionDigits"
        ###############################################################################
        warn "xsd:fractionDigits in xsd:restriction is not yet supported!"
        ###############################################################################
      when "enumeration"
        self[:enumeration] = SOAP::XSD::Enumeration.new unless self.has_key?( :enumeration )
        self[:enumeration] << restrictions.attributes['value']
      when "length"
        ###############################################################################
        warn "xsd:length in xsd:restriction is not yet supported!"
        ###############################################################################
      when "maxExclusive"
        ###############################################################################
        warn "xsd:maxExclusive in xsd:restriction is not yet supported!"
        ###############################################################################
      when "maxInclusive"
        ###############################################################################
        warn "xsd:maxInclusive in xsd:restriction is not yet supported!"
        ###############################################################################
      when "maxLength"
        ###############################################################################
        warn "xsd:maxLength in xsd:restriction is not yet supported!"
        ###############################################################################
      when "minExclusive"
        ###############################################################################
        warn "xsd:minExclusive in xsd:restriction is not yet supported!"
        ###############################################################################
      when "minInclusive"
        ###############################################################################
        warn "xsd:minInclusive in xsd:restriction is not yet supported!"
        ###############################################################################
      when "minLength"
        ###############################################################################
        warn "xsd:minLength in xsd:restriction is not yet supported!"
        ###############################################################################
      when "pattern"
        ###############################################################################
        warn "xsd:pattern in xsd:restriction is not yet supported!"
        ###############################################################################
      when "simpleType"
        ###############################################################################
        warn "xsd:simpleType in xsd:restriction is not yet supported!"
        ###############################################################################
      when "totalDigits"
        ###############################################################################
        warn "xsd:totalDigits in xsd:restriction is not yet supported!"
        ###############################################################################
      when "whiteSpace"
        ###############################################################################
        warn "xsd:whiteSpace in xsd:restriction is not yet supported!"
        ###############################################################################
      else
        warn "Ignoring `#{restrictions.name}' in xsd:restriction for xsd:simpleType `#{type.attributes['name']}'"
    end
  }
end

Instance Method Details

#responseToHash(xml, types) ⇒ Object



71
72
73
# File 'lib/wsdl-reader/xsd/restriction.rb', line 71

def responseToHash( xml, types )
  SOAP::XSD::Convert.to_ruby( self[:base].to_s, xml )
end