OSDN Git Service

separate manifest
[pettanr/pettanr.git] / lib / locmare / filer / body / file_body / file_item / symbol.rb
1 require_dependency "locmare/filer/body/file_body/file_item/symbol/base"
2 require_dependency "locmare/filer/body/file_body/file_item/symbol/default"
3 require_dependency "locmare/filer/body/file_body/file_item/symbol/template"
4 module Locmare
5   module FilerModule
6     module BodyModule
7       module FileBodyModule
8         module FileItemModule
9           class SymbolItemColumnFactory
10             include SymbolItemColumnModule
11             @@types = {
12               'default' => Default, 'template' => Template
13             }
14             def self.factory file_item, my_manifest, item
15               type = my_manifest.type
16               raise "undefined type for local view filers > #{file_item.item_name} > symbol\n" unless type
17               my_class = @@types[type]
18               raise "undefined class for local view filers > #{file_item.item_name} > symbol > #{type}\n" unless my_class
19               my_class.new(file_item, my_manifest, item)
20             end
21             
22           end
23         end
24       end
25     end
26   end
27 end