NAME
App::Framework::Feature - Application feature
SYNOPSIS
Features are accessed via the App::Framework object, for example:
use App::Framework '+Config' ;
App::Framework::Feature is to be derived from and cannot be accessed directly.
DESCRIPTION
Provides the base object from which all features must be derived.
DOCUMENTATION TO BE COMPLETED
FIELDS
The following fields should be defined either in the call to 'new()', as part of a 'set()' call, or called by their accessor method (which is the same name as the field):
- app - Parent application
-
Set by App::Framework as a reference to the application object. If this is not set, then the feature will skip any application-specific logic (allowing a feature to be used in the user part of an application as a stand alone object).
- registered - list of registered application functions
-
ARRAY ref to list of functions that this feature wants to register in the application. When a registered function is called by the framework, then the feature's method (of the same name) is also called.
Function name is of the form <name>_entry (called at the start of <name>) or <name>_exit (called at the end of <name>)
- name - feature name
-
Set to the feature name (by the App::Framework). This is the name used by the application to access the feature
CONSTRUCTOR
CLASS METHODS
- init_class([%args])
-
Initialises the object class variables.
- allowed_class_instance()
-
Returns 0 since this class can not have a class instance object
OBJECT DATA METHODS
OBJECT METHODS
- register_app()
-
Registers this feature with the parent application framework (if specified)
- access([%args])
-
Provides access to the feature. This default method is equivalent to:
$feature->set(%args); return $feature ;
Derived features may override this method to return object data, execute code etc.
DIAGNOSTICS
Setting the debug flag to level 1 prints out (to STDOUT) some debug messages, setting it to level 2 prints out more verbose messages.
AUTHOR
Steve Price <sdprice at cpan.org>
BUGS
None that I know of!