Help-Site Computer Manuals
Software
Hardware
Programming
Networking
  Algorithms & Data Structures   Programming Languages   Revision Control
  Protocols
  Cameras   Computers   Displays   Keyboards & Mice   Motherboards   Networking   Printers & Scanners   Storage
  Windows   Linux & Unix   Mac

Jifty::Plugin::ClassLoader
Autogenerates application classes

Jifty::Plugin::ClassLoader - Autogenerates application classes


NAME

Jifty::Plugin::ClassLoader - Autogenerates application classes


DESCRIPTION

Jifty::Plugin::ClassLoader loads additional model and action classes on behalf of the application out of the configured plugin classes. Unlike, Jifty::ClassLoader, this class will only autogenerate classes if the plugin provides them. The plugin classes are checked before the base Jifty classes, so that a plugin can override the Jifty class, just as any existing application classes will be loaded first.

new

Returns a new ClassLoader object. Doing this installs a hook into @INC that allows the Jifty::Plugin::ClassLoader manpage to dynamically create needed classes if they do not exist already. This works because if use/require encounters a blessed reference in @INC, it will invoke the INC method with the name of the module it is searching for on the reference.

Takes two mandatory arguments, base, which should be the application's base path; and plugin which is the plugin classname.

INC

The hook that is called when a module has been require'd that cannot be found on disk. The following stub classes are auto-generated:

Application
An empty application base class is created that doen't provide any methods or inherit from anything.

Application::Record
An empty class that descends from the Jifty::Record manpage is created.

Application::Collection
An empty class that descends from the Jifty::Collection manpage is created.

Application::Notification
An empty class that descends from the Jifty::Notification manpage.

Application::Dispatcher
An empty class that descends from the Jifty::Dispatcher manpage.

Application::Bootstrap
An empty class that descends from the Jifty::Bootstrap manpage.

Application::Upgrade
An empty class that descends from the Jifty::Upgrade manpage.

Application::CurrentUser
An empty class that descends from the Jifty::CurrentUser manpage.

Application::Model::AnythingCollection
If Application::Model::Something is a valid model class, then it creates a subclass of the Jifty::Collection manpage whose record_class is Application::Model::Something.

Application::Action::(Create or Update or Delete)Anything
If Application::Model::Something is a valid model class, then it creates a subclass of the Jifty::Action::Record::Create manpage, the Jifty::Action::Record::Update manpage, or the Jifty::Action::Record::Delete manpage whose record_class is Application::Model::Something.

require

Loads all of the application's Actions and Models. It additionally require's all Collections and Create/Update actions for each Model base class -- which will auto-create them using the above code if they do not exist on disk.

DESTROY

When the ClassLoader gets garbage-collected, its entry in @INC needs to be removed.

Programminig
Wy
Wy
yW
Wy
Programming
Wy
Wy
Wy
Wy