Bric::Util::Coll::Member(3p)

NAME
Bric::Util::Coll::Member - Interface for managing collections of group members

VERSION
$LastChangedRevision$

DATE
$LastChangedDate: 2006-03-18 01:26:34 +0100 (Sat, 18 Mar 2006) $

SYNOPSIS
See Bric::Util::Coll.

DESCRIPTION
See Bric::Util::Coll.

INTERFACE

  Constructors

my $coll = Bric::Util::Coll::Member->new($params)
    Instanticates a new collection. See Bric::Util::Coll for a complete description.

  Destructors

$org->DESTROY
    Dummy method to prevent wasting time trying to AUTOLOAD DESTROY.

    Throws: NONE.

    Side Effects: NONE.

    Notes: NONE.

  Public Class Methods

Bric::Util::Coll->class_name()
    Returns the name of the class of objects this collection manages.

    Throws: NONE.

    Side Effects: NONE.

    Notes: NONE.

  Public Instance Methods

$self = $coll->del_mem_obj($obj, $mem)
    Deletes a member from the collection. This method should only be called internally by Bric::Util::Grp when it detects that the group object contains members that are only one particular class of object. That is, for groups that cannot contain different classes of objects. The collections are build by the Bric::Util::Grp::Parts::Member class' "href()" method, which uses the object IDs for the keys when only one type of object is managed, and the member ID otherwise. We have to add this special method in order to manage those situations in which only one type of object is managed, so that the member to be deleted from the collection is stored under the ID of its associated object, rather than its own ID. This allows "get_objs()" to do the right thing and exclude deleted objects, while at the same time allowing "save()" to get access to the actual member objects that need deleting.

    Throws:

    *   Bric::_get() - Problems retrieving fields.

    *   Incorrect number of args to Bric::_set().

    *   Bric::set() - Problems setting fields.

    *   Unable to connect to database.

    *   Unable to prepare SQL statement.

    *   Unable to select column into arrayref.

    *   Unable to execute SQL statement.

    *   Unable to bind to columns to statement handle.

    *   Unable to fetch row from statement handle.

    Side Effects: NONE.

    Notes: NONE.

$self = $coll->save
$self = $coll->save($server_type_id)
    Saves the changes made to all the objects in the collection. Pass in a Bric::Dist::ServerType object ID to make sure all the Bric::Biz::OutputChannel objects are properly associated with that server type.

    Throws:

    *   Bric::_get() - Problems retrieving fields.

    *   Unable to connect to database.

    *   Unable to prepare SQL statement.

    *   Unable to execute SQL statement.

    *   Unable to select row.

    *   Incorrect number of args to _set.

    *   Bric::_set() - Problems setting fields.

    Side Effects: NONE.

    Notes: NONE.

PRIVATE

  Private Class Methods
NONE.

  Private Instance Methods
NONE.

  Private Functions
NONE.

NOTES
NONE.

AUTHOR
David Wheeler <david@justatheory.com>

SEE ALSO
Bric, Bric::Util::Coll, Bric::Util::Grp, Bric::Util::Grp::Parts::Member