OSDN Git Service

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