NAME
Jifty::ClassLoader - Loads the application classes
DESCRIPTION
Jifty::ClassLoader
loads all of the application's model and action classes, generating classes on the fly for Collections of pre-existing models.
new
Returns a new ClassLoader object. Doing this installs a hook into @INC
that allows Jifty::ClassLoader to dynamically create needed classes if they do not exist already.
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 Jifty::Record is created.
- Application::Collection
-
An empty class that descends from Jifty::Collection is created.
- ApplicationClass::Notification.
-
An empty class that descends from Jifty::Notification.
- ApplicationClass::Dispatcher.
-
An empty class that descends from Jifty::Dispatcher.
- Application::Bootstrap
-
An empty class that descends from Jifty::Bootstrap.
- CurrentUserClass (generally Application::CurrentUser)
-
...where CurrentUserClass is defined by the
CurrentUserClass
from the configuration file. This defaults to an empty class which is a subclass of Jifty::CurrentUser. - Application::Model::AnythingCollection
-
If
Application::Model::Something
is a valid model class, then it creates a subclass of Jifty::Collection whoserecord_class
isApplication::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 Jifty::Action::Record::Create, Jifty::Action::Record::Update, or Jifty::Action::Record::Delete whose record_class isApplication::Model::Something
.
return_class CODE
A helper method; takes CODE as a string and returns an open filehandle containing that CODE.
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.