SOAP::Mapping::Registry::Map (Class)

In: soap/mapping/registry.rb
Parent: Object

Public Class methods

[Source]

# File soap/mapping/registry.rb, line 121
    def initialize(registry)
      @map = []
      @registry = registry
    end

Public Instance methods

Give priority to latter entry.

[Source]

# File soap/mapping/registry.rb, line 157
    def add(obj_class, soap_class, factory, info)
      info ||= {}
      @map.unshift([obj_class, soap_class, factory, info])
    end

[Source]

# File soap/mapping/registry.rb, line 162
    def clear
      @map.clear
    end

[Source]

# File soap/mapping/registry.rb, line 175
    def find_mapped_obj_class(target_soap_class)
      @map.each do |obj_class, soap_class, factory, info|
        if soap_class == target_soap_class
          return obj_class
        end
      end
      nil
    end

[Source]

# File soap/mapping/registry.rb, line 166
    def find_mapped_soap_class(target_obj_class)
      @map.each do |obj_class, soap_class, factory, info|
        if obj_class == target_obj_class
          return soap_class
        end
      end
      nil
    end

Give priority to former entry.

[Source]

# File soap/mapping/registry.rb, line 149
    def init(init_map = [])
      clear
      init_map.reverse_each do |obj_class, soap_class, factory, info|
        add(obj_class, soap_class, factory, info)
      end
    end

[Source]

# File soap/mapping/registry.rb, line 126
    def obj2soap(klass, obj, type_qname = nil)
      @map.each do |obj_class, soap_class, factory, info|
        if klass == obj_class or
            (info[:derived_class] and klass <= obj_class)
          ret = factory.obj2soap(soap_class, obj, info, @registry)
          return ret if ret
        end
      end
      nil
    end

[Source]

# File soap/mapping/registry.rb, line 137
    def soap2obj(klass, node)
      @map.each do |obj_class, soap_class, factory, info|
        if klass == soap_class or
            (info[:derived_class] and klass <= soap_class)
          conv, obj = factory.soap2obj(obj_class, node, info, @registry)
          return true, obj if conv
        end
      end
      return false
    end

[Validate]