OSDN Git Service

separate manifest
[pettanr/pettanr.git] / lib / locmare / filer / body / file_body / file_item / symbol / default / face.rb
1 require_dependency "locmare/filer/body/file_body/file_item/symbol/default/face/face"
2 module Locmare
3   module FilerModule
4     module BodyModule
5       module FileBodyModule
6         module FileItemModule
7           module SymbolItemColumnModule
8             module DefaultModule
9               class FaceFactory
10                 include FaceModule
11                 @@types = {
12                   'image' => ImageFace, 'picture' => PictureFace
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 > face\n" unless type
17                   my_class = @@types[type]
18                   raise "undefined class for local view filers > #{file_item.item_name} > symbol > face > #{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
28   end
29 end