Bric - The Bricolage base class.
Release Version: 1.4.4
File (CVS) Version:
$Revision: 1.23.2.5 $
$Date: 2002/10/08 19:24:08 $
use base qw( Bric );
The Bric class is an abstract class should never be used directly. Instead new classes should be derived from it.
Call this constructor from all derived classes. This sets up some basic fields and methods.
Throws:
NONE
Side Effects
NONE
Notes:
NONE
This method is similar to the 'new' method except it is used only to retrieve a already existing object of this type from the database whereas 'new' creates a new, empty object. Since this operation is highly class dependent the code template for this function is the same as for the 'new' method.
Throws:
NONE
Side Effects
NONE
Notes:
On failure, this method returns zero (0) if no records were found and undef if there was a failure on the lookup itself.
This is an abstract method. All derived classes should override this method.
Throws:
"list method not implemented"
Thrown when no list method is available.
Side Effects
NONE
Notes:
This is an abstract method. All derived classes should override this method. This method returns a list of IDs rather than objects.
Throws:
"list_ids method not implemented"
"Other thingy"
Side Effects
NONE
Notes:
This is the default destructor method. Even if nothing is defined within it, it should still be here so that Perl wont waste time trying to find it in the AUTOLOAD section.
Throws:
NONE
Side Effects
NONE
Notes:
Uses confess rather than die to report errors.
Throws:
Its a 'thrower'.
Side Effects
Halts program execution
Notes:
Uses cluck rather than warn to output warnings.
Throws:
Its a 'thrower'.
Side Effects
Outputs a warning message
Notes:
This function is used by sub classes to register their field names and assign access levels to them.
Throws:
"Unable to register field names"
Side Effects
Defines a subroutine named ACCESS() in the caller's package.
Notes:
This is the AUTOLOAD handler. It translates all set and get operations into subroutines acting upon the fields in derived classes.
Throws:
Bad AUTOLOAD method format.
Cannot AUTOLOAD private methods.
No AUTOLOAD method.
Access denied: '$field' is not a valid field for package '$package'
Access denied: READ access for field '$field' required
Access denied: WRITE access for field '$field' required
Side Effects
Creates a custom subroutine reference in the calling packages namespace
Notes:
Get a list of grp IDs of groups this object belongs to.
Throws:
NONE
Side Effects:
NONE
Notes:
NONE
Add the current object to the appropriate group in the database. These are groups that contain every instance of a particular type of object.
Throws:
NONE
Side Effects:
NONE
Notes:
NONE
Add the current object to the appropriate group in the database. These are groups that contain every instance of a particular type of object.
Throws:
NONE
Side Effects:
NONE
Notes:
NONE
Save the current object to the database.
Throws:
NONE
Side Effects:
NONE
Notes:
NONE
Get and set the _dirty field
Throws: NONE.
Side Effects NONE.
Notes: NONE.
The internal function used to set field values. Can be called with either a hash reference of keys and their corresponding values, or as two array references, one containing all the keys, the other containing all the values
Throws:
Incorrect number of args to _set().
Error setting value in _set().
Side Effects NONE.
Notes: NONE.
The internal function used to get field values. It accepts a list of key values to retrieve from the object.
Throws:
Problems retrieving field 'foo'
Side Effects
NONE
Notes:
Error checking and exception throwing is only performed in QA_MODE for performance reasons.
The internal function used to get field values and return them as an arrayref. It accepts a list of key values to retrieve from the object.
Throws:
NONE
Side Effects
NONE
Notes:
"Garth Webb" <garth@perijove.com>
Sam Tregar <stregar@about-inc.com>
NONE
Hey! The above document had some coding errors, which are explained below:
You forgot a '=back' before '=head2'
'=item' outside of any '=over'
You forgot a '=back' before '=head2'
'=item' outside of any '=over'
You forgot a '=back' before '=head1'