NAME

App::Framework::Extension - Application Extension

SYNOPSIS

use App::Framework::Extension ;

DESCRIPTION

Provides the base object from which all Extensions must be derived. Is itself derived from App::Framework::Core and overrides whichever methods are necessary to modify the application behaviour.

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):

CONSTRUCTOR

new([%args])

Create a new Extension.

The %args are specified as they would be in the set method.

CLASS METHODS

init_class([%args])

Initialises the object class variables.

OBJECT METHODS

heap([$level])

Returns HEAP space for the calling module

extend_fn(%spec)

Hi-jack the specified application function. %spec is a HASH of:

	key = function name
	value = CODE ref to subroutine
 
call_extend_fn($fn, @args)

Calls the function with specified args. If not extended by the extension then just calls the default function.

NOTE: Application function is always called with:

	fn($app, \%options, @args)
 

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!