X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=lib%2Fmanifest%2Fcontroller%2Faction%2Fbase.rb;h=0f80ff43a148660d95531d6f688201dc92fce840;hb=9599d60436ead2edc4d15ffc48d095c3b6cef817;hp=bec77dd95f8d0ed3201c17d0d2d725d44d2f5c93;hpb=560060866d96d7253a57f75055a583f2d9fb8d19;p=pettanr%2Fpettanr.git diff --git a/lib/manifest/controller/action/base.rb b/lib/manifest/controller/action/base.rb index bec77dd9..0f80ff43 100644 --- a/lib/manifest/controller/action/base.rb +++ b/lib/manifest/controller/action/base.rb @@ -1,36 +1,20 @@ module Manifest module ControllerModule module ActionModule - class Base - attr :controller, :action_name, :action_manifest, :type, - :item_name - def initialize controller, action_name, action_manifest - @controller = controller - @action_name = action_name - @action_manifest = action_manifest - self.set_default - self.init - end + class Base < ManifestBase::TypeNameArgs + attr :item_name def set_default - @action_manifest['args'] ||= {} - @action_manifest['args']['item_name'] ||= self.controller.item_name + super + @args ||= {} + @args['item_name'] ||= self.parent.item_name # not parent.name. follow singularized name end def init - @type = @action_manifest['type'] - @args = @action_manifest['args'] + super @item_name = @args['item_name'] end - def controller_name - @controller.controller_name - end - - def controller_manifest - @controller.controller_manifest - end - end end