Sha256: 48234429c6f488a9ef8e3ace0956c0d446c32b7cbcf663155a1f53ab5bb2d4cd

Contents?: true

Size: 1.25 KB

Versions: 15

Compression:

Stored size: 1.25 KB

Contents

require 'spiderfw/model/mappers/hash_mapper'

module Spider; module Model
    
    # BaseModel having its data defined in the class.
    # The data must be an array of hashes, and will be handled by the Mappers::HashMapper.
    class InlineModel < BaseModel
        
        class <<self
            
            # Sets model data.
            def data=(val)
                @data = val
            end
            
            # Sets/gets model data.
            def data(val=nil)
                self.data = val if (val)
                d = @data
                if self.translate?
                    @data.each do |k, v|
                        d[k] = _(v)
                    end
                end
                d
            end
            
            def translate=(val)
                @translate = val
            end
            
            def translate?
                @translate
            end
            
            def mapper
                return Mappers::HashMapper.new(self, self.data)
            end
            
            def get_storage(url='default')
                self.data
            end
            
        end
        
        def mapper
            return self.class.mapper
        end
        
        
        
    end
    
    
end; end

Version data entries

15 entries across 15 versions & 1 rubygems

Version Path
spiderfw-0.6.8 lib/spiderfw/model/inline_model.rb
spiderfw-0.6.7 lib/spiderfw/model/inline_model.rb
spiderfw-0.6.6 lib/spiderfw/model/inline_model.rb
spiderfw-0.6.5 lib/spiderfw/model/inline_model.rb
spiderfw-0.6.4 lib/spiderfw/model/inline_model.rb
spiderfw-0.6.3 lib/spiderfw/model/inline_model.rb
spiderfw-0.6.2 lib/spiderfw/model/inline_model.rb
spiderfw-0.6.1 lib/spiderfw/model/inline_model.rb
spiderfw-0.6.0 lib/spiderfw/model/inline_model.rb
spiderfw-0.5.19 lib/spiderfw/model/inline_model.rb
spiderfw-0.5.18 lib/spiderfw/model/inline_model.rb
spiderfw-0.5.17 lib/spiderfw/model/inline_model.rb
spiderfw-0.5.16 lib/spiderfw/model/inline_model.rb
spiderfw-0.5.15 lib/spiderfw/model/inline_model.rb
spiderfw-0.5.14 lib/spiderfw/model/inline_model.rb