Bric::Util::Grp::PartsUsermContributed Perl Bric::Util::Grp::Parts::Member(3p)



NAME
       Bric::Util::Grp::Parts::Member - A Class for associating Members of a
       Group with attribute with in the group

VERSION
       $LastChangedRevision$

DATE
       $LastChangedDate: 2004-11-09 04:32:57 +0100 (Tue, 09 Nov 2004) $

SYNOPSIS
         # Constructors.
         my $member = Bric::Util::Grp::Parts::Member->new( $initial_state );
         $member = Bric::Util::Grp::Parts::Member->lookup( { id => $id} );
         my ($member_list||@members) = Bric::Util::Grp::Parts::Member->list($params);
         my $member_href = Bric::Util::Grp::Parts::Member->href($params);

         # Class methods.
         ($ids || @ids ) = Bric::Util::Grp::Parts::Member->list_ids({grp => $grp })

         # Instances methods.
         my $id = $member->get_id;
         $member = $member->activate;
         $member = $member->deactivate;

         # Attribute methods.
         $member = $member->set_attrs( [name=> $name,subsys=> $subsys,val => $val}]);
         ($val_list||@vals) = $member->get_attrs([ {name=> $name,subsys=> $subsys}]);

         # Retrieve the underlying Bric object.
         $object = $member->get_object;

DESCRIPTION
       A Member is a container for an object and any properties that it may
       have with in the group it is associated with that it would not have by
       its self.

INTERFACE
   Constructors
       $member = Bric::Util::Grp::Parts::Member->new( $initial_state )
           This will create a new member object with the defined initial state

           Supported Keys:

           object_class_id
           object_package
           grp
           active

           Throws: NONE.

           Side Effects: NONE.

           Notes: NONE.

       $member = Bric::Util::Grp::Parts::Member->lookup({ id => $id });
           Looks up a member object for a given ID.

           Throws: NONE.

           Side Effects: NONE.

           Notes: NONE.

       ($mbr_list||@mbrs) = Bric::Util::Grp::Parts::Member->list($params);
           This will return a list or list ref of blessed Member objects that
           are a member of said a group. The $params hash reference supports
           the following keys:

           grp A Bric::Util::Grp object, the members of which are to be
               returned.

           grp_package
               The package name of a Bric::Util::Grp subclass, the members of
               which are to be returned.

           object
               A Bric object for which a list of group memberships will be
               returned.

           object_package
               The package name of a Bric object for which a list of group
               memberships will be returned. Use in combination with the
               "object_id" parameter.

           object_id
               The ID of a Bric object for which a list of group memberships
               will be returned. Use in combination with the "object_package"
               parameter.

           Throws: NONE.

           Side Effects: NONE.

           Notes: NONE.

       my $memb_href = Bric::Util::Grp::Parts::Member->href($params);
           Returns an anonymous hash of group members. The hash values are
           Bric::Util::Grp::Parts::Member objects. Takes the same arguments as
           the "list()" method, although either the "grp" or "grp_package"
           parameter is required. If the group class method
           "get_object_class_id()" returns a value, then the hash keys will be
           the IDs of the objecs represented by the members.  Otherwise, the
           keys will be the IDs of the member objects themselves.

           Throws: NONE.

           Side Effects: NONE.

           Notes: NONE.

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

           Throws: NONE.

           Side Effects: NONE.

           Notes: NONE.

   Public Class Methods
       ($ids||@ids ) = Bric::Util::Grp::Parts::Member->list_ids($params);
           Return a list or anonymous array of Member object ids. The
           supported keys in the $params hash reference are the same as for
           the "list()" method.

           Throws: NONE.

           Side Effects: NONE.

           Notes: NONE.

       $meths = Bric::Util::Grp::Parts::Member->my_meths
       (@meths || $meths_aref) =
       Bric::Util::Grp::Parts::Member->my_meths(TRUE)
       my (@meths || $meths_aref) = Bric::Util::Grp->my_meths(0, TRUE)
           Returns an anonymous hash of introspection data for this object. If
           called with a true argument, it will return an ordered list or
           anonymous array of introspection data. If a second true argument is
           passed instead of a first, then a list or anonymous array of
           introspection data will be returned for properties that uniquely
           identify an object (excluding "id", which is assumed).

           Each hash key is the name of a property or attribute of the object.
           The value for a hash key is another anonymous hash containing the
           following keys:

           name
               The name of the property or attribute. Is the same as the hash
               key when an anonymous hash is returned.

           disp
               The display name of the property or attribute.

           get_meth
               A reference to the method that will retrieve the value of the
               property or attribute.

           get_args
               An anonymous array of arguments to pass to a call to get_meth
               in order to retrieve the value of the property or attribute.

           set_meth
               A reference to the method that will set the value of the
               property or attribute.

           set_args
               An anonymous array of arguments to pass to a call to set_meth
               in order to set the value of the property or attribute.

           type
               The type of value the property or attribute contains. There are
               only three types:

               short
               date
               blob
           len If the value is a 'short' value, this hash key contains the
               length of the field.

           search
               The property is searchable via the list() and list_ids()
               methods.

           req The property or attribute is required.

           props
               An anonymous hash of properties used to display the property or
               attribute.  Possible keys include:

               type
                   The display field type. Possible values are

                   text
                   textarea
                   password
                   hidden
                   radio
                   checkbox
                   select
               length
                   The Length, in letters, to display a text or password
                   field.

               maxlength
                   The maximum length of the property or value - usually
                   defined by the SQL DDL.

           rows
               The number of rows to format in a textarea field.

           cols
               The number of columns to format in a textarea field.

           vals
               An anonymous hash of key/value pairs reprsenting the values and
               display names to use in a select list.

           Throws: NONE.

           Side Effects: NONE.

           Notes: NONE.

       (@ids || $ids) =
       Bric::Util::Grp::Parts::Member->get_all_object_ids($grp_id)
           Returns a list of the object ids that this object is a member of

           Throws:

           NONE

           Side Effects:

           NONE

           Notes:

           NONE

   Public Instance Methods
       $package = $member->get_object_package();
           returns the package of the object that is the member

           Throws:

           NONE

           Side Effects:

           NONE

           Notes:

           NONE

       $object = $member->get_object()
           Return the object that this member reflects

           Notes:

           The object class isn't loaded by the group class, so when using the
           Bric API outside of Bricolage, you need to require the object class
           on the fly; for example:

             my @members = $grp->get_members();
             foreach my $m (@members) {
                 my $pkg = $m->get_object_package();
                 eval "require $pkg";
                 my $object = $m->get_object();
             }

           Throws: NONE

           Side Effects: NONE

       $member = $member->set_attr($param)
           Sets an individual attribute on this member

           Throws:

           NONE

           Side Effects:

           NONE

           Notes:

           NONE

       $member = $member->delete_attr();
           Deletes attributes from this member

           Throws:

           NONE

           Side Effects:

           NONE

           Notes:

           NONE

       $member = $member->set_attrs( [ $param] )
           Takes a list of attributes and sets them upon the member object.

           Throws:

           NONE

           Side Effects:

           Sets a value on the attribute object

           Notes:

           NONE

       (@subsys, $subsys) = $mbr->subsys_names()
           returns a list of the subsystems in use

           Throws:

           NONE

           Side Effects:

           NONE

           Notes:

           NONE

       $val = $mbr->get_attr({ name => $attr })
           Returns a single attribute for the member.

           Throws:

           NONE

           Side Effects:

           Returns value from the attribute object

           Notes:

           NONE

       ($attrs || @attrs) = $member->get_attrs( [ $param ])
           Returns the attributes defined for this member object.

           Throws:

           NONE

           Side Effects:

           Returns value from the attribute object

           Notes:

           NONE

       $member = $member->set_meta($param)
           Sets meta information on the attributes

           Throws:

           NONE

           Side Effects:

           NONE

           Notes:

           NONE

       $member = $member->delete_meta($param)
           Deletes meta information for this member

           Throws:

           NONE

           Side Effects:

           NONE

           Notes:

           NONE

       $meta = $member->get_meta($param)
           Returns the meta information

           Throws:

           NONE

           Side Effects:

           NONE

           Notes:

           NONE

       $all = $member->all_for_subsys( $subsys )
           Returns a hash ref of all

           Throws:

           NONE

           Side Effects:

           NONE

           Notes:

           NONE

       $attrs = $member->get_attr_hash( $param )
           returns a hash ref of the attrs

           Throws:

           NONE

           Side Effects:

           NONE

           Notes:

           NONE

       $id = $member->get_id()
           This will return the id for the object

           Throws:

           NONE

           Side Effects:

           NONE

           Notes:

           NONE

       $member = $member->activate()
           Activated a member object that has been deactivated

           Throws:

           NONE

           Side Effects:

           NONE

           Notes:

           NONE

       $member = $member->deactivate()
           Make this member object inactive

           Throws:

           NONE

           Side Effects:

           NONE

           Notes:

           NONE

       (undef || 1) $member->is_active()
           This will return undef if the member has been deactivated and one
           otherwise.

           Throws:

           NONE

           Side Effects:

           NONE

           Notes:

           NONE

       $member = $member->remove()
           This will delete the member from the database (as opposed to
           deactivating)

           Throws:

           NONE

           Side Effects:

           NONE

           Notes:

           NONE

       $member = $member->save()
           Saves changes to the data base

           Throws:

           o   The grp_id or grp property is required.

           Side Effects:

           NONE

           Notes:

           NONE

PRIVATE
   Private Class Methods
       $results = _do_list($criteria);
           Executes the query for the list constructors

           Throws:

           NONE

           Side Effects:

           NONE

           Notes:

           NONE

   Private Instance Methods
       $class_id = $self->_get_class_id($package)
           Throws:

           NONE

           Side Effects:

           NONE

           Notes:

           NONE

       $table_name = $self->_get_map_table_name();
           Will return the proper mapping table name

           Throws:

           NONE

           Side Effects:

           NONE

           Notes:

           NONE

       $package = $self->_get_package($class_id)
           Returns the package name for a given class id

           Throws:

           NONE

           Side Effects:

           NONE

           Notes:

           NONE

       $group = $self->_get_group_obj()
           Returns the group that this is a member of

           Throws:

           NONE

           Side Effects:

           NONE

           Notes:

           NONE

       $self = $self->_subsys_names()
           Returns a list or listref of subsys names

           Throws:

           NONE

           Side Effects:

           NONE

           Notes:

           NONE

       $self = $self->_set_attr( $param)
           Will set an attribute on this member

           Throws:

           NONE

           Side Effects

           NONE

           Notes:

           NONE

       $attr = $self->_get_attr($param, $group)
           check for attributes on the member, will check the group and the
           group's parents if the flags are passed

           Throws:

           NONE

           Side Effects:

           NONE

           Notes:

           NONE

       $self = $self->_delete_meta()
           Deletes meta information from the attribute object or the cache

           Throws:

           NONE

           Side Effects:

           NONE

           Notes:

           NONE

       $self = $self->_delete_attr($param);
           Deletes attributes from the attribute object or its cache

           Throws:

           NONE

           Side Effects:

           NONE

           Notes:

           NONE

       $attr_hash = $self->_get_attr_hash( $param, $group)
           Returns a hash of the attributes that match the parameters. It will
           also return default values from the group if the $group argument is
           passed.

           Throws:

           NONE

           Side Effects:

           NONE

           Notes:

           NONE

       $self = $self->_set_meta($param)
           Sets meta information on the member attributes

           Throws:

           NONE

           Side Effects:

           NONE

           Notes:

           NONE

       $meta = $self->_get_meta($param, $group, $group_parents)
           Returns meta information for a given attribute.   Will check the
           group and the groups parents for defaults if the flags have been
           passed.

           Throws:

           NONE

           Side Effects:

           NONE

           Notes:

           NONE

       $attr_obj = $self->_get_attr_obj()
           Returns the correct attribute object for this member

           Throws:

           NONE

           Side Effects:

           NONE

           Notes:

           NONE

       $self = $self->_sync_attributes()
           Called by save this preforms all the updates for the attribute
           object

           Throws:

           NONE

           Side Effects:

           NONE

           Notes:

           NONE

       $self = $self->_do_delete
           Handles the sql to prefore a delete from the database

           Throws:

           NONE

           Side Effects:

           NONE

           Notes:

           NONE

       $self = $self->_do_update()
           Preforms an update to the database

           Throws:

           NONE

           Side Effects:

           NONE

           Side Effects:

           NONE

       $self = $self->_do_insert()
           Preforms the sql for an insert into the member tables

           Throws:

           NONE

           Side Effects:

           NONE

           Notes:

           NONE

NOTES
       NONE

AUTHOR
       michael soderstrom ( miraso@pacbell.net )

SEE ALSO
       Bric, Bric::Util::Grp, Bric::Util::Attribute



perl v5.12.2                      2004-11-08Bric::Util::Grp::Parts::Member(3p)
