def encode_element(ns, obj, parent)
attrs = obj.extraattr
if obj.is_a?(SOAPBody)
@reftarget = obj
obj.encode(self, ns, attrs) do |child|
indent_backup, @indent = @indent, @indent + @indentstr
encode_data(ns.clone_ns, child, obj)
@indent = indent_backup
end
@reftarget = nil
else
if obj.is_a?(SOAPEnvelope)
Generator.assign_ns(attrs, ns, XSD::InstanceNamespace)
if @generate_explicit_type
Generator.assign_ns(attrs, ns, XSD::Namespace)
end
end
obj.encode(self, ns, attrs) do |child|
indent_backup, @indent = @indent, @indent + @indentstr
encode_data(ns.clone_ns, child, obj)
@indent = indent_backup
end
end
end