Class: WsdlMapper::Serializers::SerializerCore
- Inherits:
-
Object
- Object
- WsdlMapper::Serializers::SerializerCore
- Defined in:
- lib/wsdl_mapper/serializers/serializer_core.rb
Instance Method Summary (collapse)
- - (Object) complex(type_name, element_name, attributes)
- - (Object) get(name)
-
- (SerializerCore) initialize(resolver:, namespaces: WsdlMapper::Dom::Namespaces.new, default_namespace: nil)
constructor
A new instance of SerializerCore.
- - (Object) simple(type_name, element_name)
- - (Object) soap_enc
- - (Object) text_builtin(value, type_name)
- - (Object) to_doc
- - (Object) to_xml
- - (Object) value_builtin(element_name, value, type_name)
- - (Object) xsd
Constructor Details
- (SerializerCore) initialize(resolver:, namespaces: WsdlMapper::Dom::Namespaces.new, default_namespace: nil)
Returns a new instance of SerializerCore
11 12 13 14 15 16 17 18 19 20 21 |
# File 'lib/wsdl_mapper/serializers/serializer_core.rb', line 11 def initialize(resolver:, namespaces: WsdlMapper::Dom::Namespaces.new, default_namespace: nil) @doc = ::Nokogiri::XML::Document.new @doc.encoding = 'UTF-8' @x = ::Nokogiri::XML::Builder.with @doc @tm = ::WsdlMapper::TypeMapping::DEFAULT @resolver = resolver @namespaces = namespaces if default_namespace @namespaces.default = default_namespace end end |
Instance Method Details
- (Object) complex(type_name, element_name, attributes)
27 28 29 30 31 32 |
# File 'lib/wsdl_mapper/serializers/serializer_core.rb', line 27 def complex(type_name, element_name, attributes) # TODO: keep type_name parameter? @x.send (*element_name), eval_attributes(attributes) do |x| yield self end end |
- (Object) get(name)
23 24 25 |
# File 'lib/wsdl_mapper/serializers/serializer_core.rb', line 23 def get(name) @resolver.resolve name end |
- (Object) simple(type_name, element_name)
34 35 36 37 38 |
# File 'lib/wsdl_mapper/serializers/serializer_core.rb', line 34 def simple(type_name, element_name) @x.send (*element_name) do |x| yield self end end |
- (Object) soap_enc
61 62 63 |
# File 'lib/wsdl_mapper/serializers/serializer_core.rb', line 61 def soap_enc @soap_enc ||= ::WsdlMapper::Dom::SoapEncodingType::NAMESPACE end |
- (Object) text_builtin(value, type_name)
40 41 42 43 |
# File 'lib/wsdl_mapper/serializers/serializer_core.rb', line 40 def text_builtin(value, type_name) return if value.nil? @x.text builtin_to_xml(type_name, value) end |
- (Object) to_doc
54 55 56 57 58 59 |
# File 'lib/wsdl_mapper/serializers/serializer_core.rb', line 54 def to_doc @namespaces.each do |(prefix, url)| @doc.root.add_namespace prefix, url end @doc end |
- (Object) to_xml
50 51 52 |
# File 'lib/wsdl_mapper/serializers/serializer_core.rb', line 50 def to_xml to_doc.to_xml end |
- (Object) value_builtin(element_name, value, type_name)
45 46 47 48 |
# File 'lib/wsdl_mapper/serializers/serializer_core.rb', line 45 def value_builtin(element_name, value, type_name) return if value.nil? @x.send (*element_name), builtin_to_xml(type_name, value) end |
- (Object) xsd
65 66 67 |
# File 'lib/wsdl_mapper/serializers/serializer_core.rb', line 65 def xsd @xsd ||= ::WsdlMapper::Dom::BuiltinType::NAMESPACE end |