OSDN Git Service

separate manifest
[pettanr/pettanr.git] / lib / locmare / filer / body / file_body / file_item / caption.rb
1 require_dependency "locmare/filer/body/file_body/file_item/caption/base"
2 require_dependency "locmare/filer/body/file_body/file_item/caption/default"
3 require_dependency "locmare/filer/body/file_body/file_item/caption/template"
4 require_dependency "locmare/filer/body/file_body/file_item/caption/none"
5 module Locmare
6   module FilerModule
7     module BodyModule
8       module FileBodyModule
9         module FileItemModule
10           class CaptionItemColumnFactory
11             include CaptionItemColumnModule
12             @@types = {
13               'default' => Default, 'template' => Template, 'none' => None
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} > caption > default > face\n" unless type
18               my_class = @@types[type]
19               raise "undefined class for local view filers > #{file_item.item_name} > caption > default > face > #{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