3 class ControllerManager
5 def initialize action_name, item_name, operators, list, conf, manifest
6 @action_name = action_name
15 @items ||= @list.items
19 @filer ||= @manifest.filer_managers[@item_name].open(@item_name, @items, @operators, @list.paginate)
25 def initialize action_name, item_name, conf, manifest
26 @action_name = action_name
27 @item_name = item_name
35 attr :controller_manifest, :item_name, :manifest, :controller_conf,
37 @@types = {'list' => ActionList, 'show' => ActionShow}
38 def initialize controller_manifest
39 @controller_manifest = controller_manifest
40 @item_name = @controller_manifest.item_name
41 @manifest = @controller_manifest.manifest
42 @controller_conf = @controller_manifest.conf
44 @controller_manifest.actions.each {|action_name, conf|
46 @actions[action_name] = @@types[type]
50 def open action_name, params, operators
51 name = if @controller_conf['item_name']
52 @controller_conf['item_name']
56 list_name = @controller_manifest.list_name action_name
57 @list = @manifest.list_managers[name].open(list_name, params[:page], params[:page_size], operators)
58 @actions[action_name].new action_name, name, operators, @list, @controller_conf, @manifest