OSDN Git Service

separate manifest
[pettanr/pettanr.git] / lib / locmare / list_group.rb
1 require_dependency "locmare/list_group/list/base"
2 require_dependency "locmare/list_group/list/public"
3 require_dependency "locmare/list_group/list/private"
4 require_dependency "locmare/list_group/list/system_resource"
5 require_dependency "locmare/list_group/list/filter"
6 require_dependency "locmare/list_group/list/through_filter"
7 require_dependency "locmare/list_group/list/foreign_filter"
8 require_dependency "locmare/list_group/list/play"
9 module Locmare
10   class ListGroup
11     include ListGroupModule
12     
13     def self.types
14       {
15         'public' => PublicList, 'private' => PrivateList, 'system_resource' => SystemResourceList,
16         'filter' => FilterList, 'through_filter' => ThroughFilterList, 'foreign_filter' => ForeignFilterList, 
17         'play' => PlayList
18       }
19     end
20     
21     def self.list item_name, list_name
22       list_group_manifest = LocalManifest.manifest.list_groups[item_name]
23       list_manifest = list_group_manifest.lists[list_name]
24       self.types[list_manifest.type].new item_name, list_name
25     end
26     
27   end
28 end
29