method
decode_tag_by_type
v1_8_6_287 -
Show latest stable
-
0 notes -
Class: SOAP::EncodingStyle::SOAPHandler
- 1_8_6_287 (0)
- 1_8_7_72 (0)
- 1_8_7_330 (0)
- 1_9_1_378
- 1_9_2_180
- 1_9_3_125
- 1_9_3_392
- 2_1_10
- 2_2_9
- 2_4_6
- 2_5_5
- 2_6_3
- What's this?
decode_tag_by_type(ns, elename, typestr, parent, arytypestr, extraattr)
private
Hide source
# File lib/soap/encodingstyle/soapHandler.rb, line 420 def decode_tag_by_type(ns, elename, typestr, parent, arytypestr, extraattr) if arytypestr type = typestr ? ns.parse(typestr) : ValueArrayName node = SOAPArray.decode(elename, type, ns.parse(arytypestr)) node.extraattr.update(extraattr) return node end type = nil if typestr type = ns.parse(typestr) elsif parent.is_a?(SOAPArray) type = parent.arytype else # Since it's in dynamic(without any type) encoding process, # assumes entity as its type itself. # <SOAP-ENC:Array ...> => type Array in SOAP-ENC. # <Country xmlns="foo"> => type Country in foo. type = elename end if (klass = TypeMap[type]) node = decode_basetype(klass, elename) node.extraattr.update(extraattr) return node end # Unknown type... Struct or String SOAPUnknown.new(self, elename, type, extraattr) end