# File lib/soap/mapping/factory.rb, line 20 20: def obj2soap(soap_class, obj, info, map) 21: raise NotImplementError.new 22: # return soap_obj 23: end
# File lib/soap/mapping/factory.rb, line 30 30: def setiv2obj(obj, node, map) 31: return if node.nil? 32: if obj.is_a?(Array) 33: setiv2ary(obj, node, map) 34: else 35: setiv2struct(obj, node, map) 36: end 37: end
# File lib/soap/mapping/factory.rb, line 39 39: def setiv2soap(node, obj, map) 40: if obj.class.class_variables.include?('@@schema_element') 41: setdefinediv2soap(node, obj, map) 42: else 43: # should we sort instance_variables? how? 44: obj.instance_variables.each do |var| 45: name = var.sub(/^@/, '') 46: elename = Mapping.name2elename(name) 47: node.add(elename, 48: Mapping._obj2soap(obj.instance_variable_get(var), map)) 49: end 50: end 51: end
# File lib/soap/mapping/factory.rb, line 91 91: def anonymous_class?(obj) 92: name = obj.class.name 93: name.nil? or name.empty? # 1.8 returns "" 94: end
# File lib/soap/mapping/factory.rb, line 55 55: def setdefinediv2soap(ele, obj, map) 56: definition = Mapping.schema_definition_classdef(obj.class) 57: definition.elements.each do |eledef| 58: child = Mapping.get_attribute(obj, eledef.varname) 59: # extract method 60: if child.nil? 61: value = SOAPNil.new 62: elsif child.is_a?(XSD::NSDBase) 63: value = child 64: else 65: klass = Mapping.class_from_name(eledef.type) 66: if klass && klass.include?(::SOAP::SOAPBasetype) 67: value = klass.new(child) 68: else 69: # should check klass matches an actual object? 70: value = Mapping._obj2soap(child, map) 71: end 72: end 73: ele.add(eledef.elename.name, value) 74: end 75: end
# File lib/soap/mapping/factory.rb, line 77 77: def setiv2ary(obj, node, map) 78: node.each do |name, value| 79: Array.instance_method(:<<).bind(obj).call(Mapping._soap2obj(value, map)) 80: end 81: end
# File lib/soap/mapping/factory.rb, line 83 83: def setiv2struct(obj, node, map) 84: vars = {} 85: node.each do |name, value| 86: vars[Mapping.elename2name(name)] = Mapping._soap2obj(value, map) 87: end 88: Mapping.set_attributes(obj, vars) 89: end
Disabled; run with --debug to generate this.
Generated with the Darkfish Rdoc Generator 1.1.6.