Login | Register For Free | Help
Search for: (Advanced)

Mailing List Archive: Bricolage: devel

Bric objects

 

 

Bricolage devel RSS feed   Index | Next | Previous | View Threaded


lannings at who

Jan 16, 2009, 2:22 AM

Post #1 of 5 (4750 views)
Permalink
Bric objects

Here's an unsolicited explanation of how Bricolage objects work.
(I was shaving a yak last night. But not Moose?)

lib/Bric.pm is an interface class. The interface consists of
the following class methods (note: methods returning lists
return arefs in scalar context)

# construct an object
$obj = Bric->new($init)
# lookup an object by ID
$obj = Bric->lookup({ id => $id })
# (lookup calls a cache_lookup method)
# lookup objects by parameters
@objs = Bric->list($params);
# lookup object IDs by parameters
@ids = Bric->list_ids($params);
# get class introspection info
$meths = Bric->my_meths;

and of these instance methods:

# lookup group IDs
@grp_ids = $obj->get_grp_ids;
# add/remove object from cache (when getting/deleting obj from database)
$obj->cache_me();
$obj->uncache_me();
# add/remove object from "All" group (when inserting obj into database)
$obj->register_instance();
$obj->unregister_instance();
# save object to database
$obj->save();

In addition, an AUTOLOAD method generates get_*/set_* accessor methods
for all fields. The fields are specified through the register_fields
function of the class. register_fields is passed a hashref mapping
field names to these access constants:

FIELD_NONE (private)
FIELD_READ (get_ only)
FIELD_RDWR (get_ and set_)

Now we look at classes that implement the Bric.pm interface.
The following shows the inheritance hierarchy. According to
the interface, the lookup, list, and list_ids methods must be
implemented by subclasses of Bric.pm; the methods actually implemented
(some do not implement them all) are shown in square brackets,
with XXX marking missing methods.

Bric.pm
- Bric::App::MediaFunc [XXX/XXX/XXX (maybe shouldn't subclass Bric.pm)]
- Bric::Biz::Asset [lookup/list/list_ids]
- Bric::Biz::Asset::Business
- Bric::Biz::Asset::Business::Media
- Bric::Biz::Asset::Business::Media::Audio
- Bric::Biz::Asset::Business::Media::Image
- Bric::Biz::Asset::Business::Media::Video
- Bric::Biz::Asset::Business::Story
- Bric::Biz::Asset::Template
- (Bric::Biz::Asset::Formatting)
- Bric::Biz::ATType [lookup/list/list_ids]
- Bric::Biz::Category [lookup/list/list_ids]
- Bric::Biz::Contact [lookup/list/list_ids]
- Bric::Biz::Element [XXX/list/list_ids]
- Bric::Biz::Element::Container [lookup/list/list_ids]
- (Bric::Biz::Asset::Business::Parts::Tile::Container)
- Bric::Biz::Element::Field [lookup/list/list_ids]
- (Bric::Biz::Asset::Business::Parts::Tile::Data)
- Bric::Biz::ElementType [lookup/list/list_ids]
- Bric::Biz::ElementType::Subelement
- (Bric::Biz::AssetType)
- (Bric::Biz::Asset::Business::Parts::Tile)
- Bric::Biz::ElementType::Parts::FieldType [lookup/list/list_ids]
- (Bric::Biz::AssetType::Parts::Data)
- Bric::Biz::Keyword [lookup/list/list_ids]
- Bric::Biz::Org [lookup/list/list_ids]
- Bric::Biz::Org::Person [lookup/list/list_ids]
- Bric::Biz::Org::Source [lookup/list/list_ids]
- Bric::Biz::Org::Parts::Addr [lookup/list/list_ids]
- Bric::Biz::OutputChannel [lookup/list/list_ids]
- Bric::Biz::OutputChannel::Element
- Bric::Biz::Person [lookup/list/list_ids]
- Bric::Biz::Person::User [lookup/list/list_ids]
- Bric::Biz::Site [lookup/list/list_ids]
- Bric::Biz::Workflow [lookup/list/list_ids]
- Bric::Biz::Workflow::Parts::Desk [lookup/list/list_ids]
- Bric::Dist::Action [lookup/list/list_ids]
- Bric::Dist::Action::Akamaize
- Bric::Dist::Action::DTDValidate
- Bric::Dist::Action::Email
- Bric::Dist::Action::HTMLClean
- Bric::Dist::Action::Mover
- Bric::Dist::ActionType [lookup/list/list_ids]
- Bric::Dist::Client [XXX/XXX/XXX (maybe shouldn't subclass Bric.pm)]
- Bric::Dist::Resource [lookup/list/list_ids]
- Bric::Dist::Server [lookup/list/list_ids]
- Bric::Dist::ServerType [lookup/list/list_ids]
- Bric::Util::Alert [lookup/list/list_ids]
- Bric::Util::Alerted [lookup/list/list_ids]
- Bric::Util::Alerted::Parts::Sent [XXX/XXX/XXX]
- Bric::Util::AlertType [lookup/list/list_ids]
- Bric::Util::AlertType::Parts::Rule [lookup/list/list_ids]
- Bric::Util::Attribute [lookup/list/XXX]
- Bric::Util::Attribute::Action
- Bric::Util::Attribute::Category
- Bric::Util::Attribute::ElementType
- Bric::Util::Attribute::FieldType
- Bric::Util::Attribute::Grp
- Bric::Util::Attribute::Member
- Bric::Util::Burner [XXX/XXX/XXX (maybe shouldn't subclass Bric.pm)]
- Bric::Util::Burner::Mason
- Bric::Util::Burner::PHP
- Bric::Util::Burner::Template
- Bric::Util::Burner::TemplateToolkit
- Bric::Util::Class [lookup/list/XXX]
- Bric::Util::Coll [lookup/list/list_ids]
- Bric::Util::Coll::Action
- Bric::Util::Coll::Addr
- Bric::Util::Coll::Addr::Person
- Bric::Util::Coll::Contact
- Bric::Util::Coll::Keyword
- Bric::Util::Coll::Member
- Bric::Util::Coll::OCElement
- Bric::Util::Coll::OCInclude
- Bric::Util::Coll::OutputChannel
- Bric::Util::Coll::Priv
- Bric::Util::Coll::Resource
- Bric::Util::Coll::Rule
- Bric::Util::Coll::Server
- Bric::Util::Coll::ServerType
- Bric::Util::Coll::Site
- Bric::Util::Coll::Subelement
- Bric::Util::Event [lookup/list/list_ids]
- Bric::Util::EventType [lookup/list/list_ids]
- Bric::Util::Grp [lookup/list/list_ids]
- Bric::Util::Grp::AlertType
- Bric::Util::Grp::Asset
- Bric::Util::Grp::AssetVersion
- Bric::Util::Grp::ATType
- Bric::Util::Grp::CategorySet
- Bric::Util::Grp::ContribType
- Bric::Util::Grp::Desk
- Bric::Util::Grp::Dest
- Bric::Util::Grp::Event
- Bric::Util::Grp::Grp
- Bric::Util::Grp::Job
- Bric::Util::Grp::Keyword
- Bric::Util::Grp::Org
- Bric::Util::Grp::OutputChannel
- Bric::Util::Grp::Media
- Bric::Util::Grp::MediaType
- Bric::Util::Grp::Person
- Bric::Util::Grp::Pref
- Bric::Util::Grp::Source
- Bric::Util::Grp::Site
- Bric::Util::Grp::Story
- Bric::Util::Grp::SubelementType
- Bric::Util::Grp::ElementType
- Bric::Util::Grp::Template
- Bric::Util::Grp::User
- Bric::Util::Grp::Workflow
- Bric::Util::Grp::Parts::Member [lookup/list/list_ids]
- Bric::Util::Grp::Parts::Member::Contrib [lookup/(inherits)/(inherits)]
- Bric::Util::Job [lookup/list/list_ids]
- Bric::Util::Job::Dist
- Bric::Util::Job::Pub
- Bric::Util::MediaType [lookup/list/list_ids]
- Bric::Util::Pref [lookup/list/list_ids]
- Bric::Util::Priv [lookup/list/list_ids]
- Bric::Util::Trans::FS [XXX/XXX/XXX (maybe shouldn't subclass Bric.pm)]
- Bric::Util::Trans::FTP [XXX/XXX/XXX (maybe shouldn't subclass Bric.pm)]
- Bric::Util::Trans::Jabber [XXX/XXX/XXX (maybe shouldn't subclass Bric.pm)]
- Bric::Util::Trans::Mail [XXX/XXX/XXX (maybe shouldn't subclass Bric.pm)]
- Bric::Util::Trans::SFTP [XXX/XXX/XXX (maybe shouldn't subclass Bric.pm)]
- Bric::Util::Trans::WebDAV [XXX/XXX/XXX (maybe shouldn't subclass Bric.pm)]
- Bric::Util::UserPref [lookup/list/XXX]

Probably the only "important" omissions are:
* no lookup: Bric::Biz::Element
* no list_ids: Bric::Util::Attribute, Bric::Util::Class, Bric::Util::UserPref


The following classes don't use the Bric interface:
Bric::*::Handler
Bric::App::Auth*, Apache*, Cache, Callback*, Event,
Session, Util
Bric::Config
Bric::SOAP*
Bric::Util::Auth*, Apache*, Cookie, CharTrans, DB*,
FTP::*, Fault*, Grp::AssetLanguage, Language*,
Priv::Parts::Const, Time


D-Beaudet at NGA

Jan 16, 2009, 6:51 AM

Post #2 of 5 (4473 views)
Permalink
RE: Bric objects [In reply to]

Thanks for your unsolicited (and helpful) idea.

> -----Original Message-----
> From: slanning [at] localhost
> [mailto:slanning [at] localhost] On Behalf Of Scott Lanning
> Sent: Friday, January 16, 2009 5:22 AM
> To: devel [at] lists
> Subject: Bric objects
>
> Here's an unsolicited explanation of how Bricolage objects work.
> (I was shaving a yak last night. But not Moose?)
>
> lib/Bric.pm is an interface class. The interface consists of
> the following class methods (note: methods returning lists
> return arefs in scalar context)
>
> # construct an object
> $obj = Bric->new($init)
> # lookup an object by ID
> $obj = Bric->lookup({ id => $id })
> # (lookup calls a cache_lookup method)
> # lookup objects by parameters
> @objs = Bric->list($params);
> # lookup object IDs by parameters
> @ids = Bric->list_ids($params);
> # get class introspection info
> $meths = Bric->my_meths;
>
> and of these instance methods:
>
> # lookup group IDs
> @grp_ids = $obj->get_grp_ids;
> # add/remove object from cache (when getting/deleting obj from
database)
> $obj->cache_me();
> $obj->uncache_me();
> # add/remove object from "All" group (when inserting obj into
database)
> $obj->register_instance();
> $obj->unregister_instance();
> # save object to database
> $obj->save();
>
> In addition, an AUTOLOAD method generates get_*/set_* accessor methods
> for all fields. The fields are specified through the register_fields
> function of the class. register_fields is passed a hashref mapping
> field names to these access constants:
>
> FIELD_NONE (private)
> FIELD_READ (get_ only)
> FIELD_RDWR (get_ and set_)
>
> Now we look at classes that implement the Bric.pm interface.
> The following shows the inheritance hierarchy. According to
> the interface, the lookup, list, and list_ids methods must be
> implemented by subclasses of Bric.pm; the methods actually implemented
> (some do not implement them all) are shown in square brackets,
> with XXX marking missing methods.
>
> Bric.pm
> - Bric::App::MediaFunc [XXX/XXX/XXX (maybe shouldn't subclass
Bric.pm)]
> - Bric::Biz::Asset [lookup/list/list_ids]
> - Bric::Biz::Asset::Business
> - Bric::Biz::Asset::Business::Media
> - Bric::Biz::Asset::Business::Media::Audio
> - Bric::Biz::Asset::Business::Media::Image
> - Bric::Biz::Asset::Business::Media::Video
> - Bric::Biz::Asset::Business::Story
> - Bric::Biz::Asset::Template
> - (Bric::Biz::Asset::Formatting)
> - Bric::Biz::ATType [lookup/list/list_ids]
> - Bric::Biz::Category [lookup/list/list_ids]
> - Bric::Biz::Contact [lookup/list/list_ids]
> - Bric::Biz::Element [XXX/list/list_ids]
> - Bric::Biz::Element::Container [lookup/list/list_ids]
> - (Bric::Biz::Asset::Business::Parts::Tile::Container)
> - Bric::Biz::Element::Field [lookup/list/list_ids]
> - (Bric::Biz::Asset::Business::Parts::Tile::Data)
> - Bric::Biz::ElementType [lookup/list/list_ids]
> - Bric::Biz::ElementType::Subelement
> - (Bric::Biz::AssetType)
> - (Bric::Biz::Asset::Business::Parts::Tile)
> - Bric::Biz::ElementType::Parts::FieldType [lookup/list/list_ids]
> - (Bric::Biz::AssetType::Parts::Data)
> - Bric::Biz::Keyword [lookup/list/list_ids]
> - Bric::Biz::Org [lookup/list/list_ids]
> - Bric::Biz::Org::Person [lookup/list/list_ids]
> - Bric::Biz::Org::Source [lookup/list/list_ids]
> - Bric::Biz::Org::Parts::Addr [lookup/list/list_ids]
> - Bric::Biz::OutputChannel [lookup/list/list_ids]
> - Bric::Biz::OutputChannel::Element
> - Bric::Biz::Person [lookup/list/list_ids]
> - Bric::Biz::Person::User [lookup/list/list_ids]
> - Bric::Biz::Site [lookup/list/list_ids]
> - Bric::Biz::Workflow [lookup/list/list_ids]
> - Bric::Biz::Workflow::Parts::Desk [lookup/list/list_ids]
> - Bric::Dist::Action [lookup/list/list_ids]
> - Bric::Dist::Action::Akamaize
> - Bric::Dist::Action::DTDValidate
> - Bric::Dist::Action::Email
> - Bric::Dist::Action::HTMLClean
> - Bric::Dist::Action::Mover
> - Bric::Dist::ActionType [lookup/list/list_ids]
> - Bric::Dist::Client [XXX/XXX/XXX (maybe shouldn't subclass Bric.pm)]
> - Bric::Dist::Resource [lookup/list/list_ids]
> - Bric::Dist::Server [lookup/list/list_ids]
> - Bric::Dist::ServerType [lookup/list/list_ids]
> - Bric::Util::Alert [lookup/list/list_ids]
> - Bric::Util::Alerted [lookup/list/list_ids]
> - Bric::Util::Alerted::Parts::Sent [XXX/XXX/XXX]
> - Bric::Util::AlertType [lookup/list/list_ids]
> - Bric::Util::AlertType::Parts::Rule [lookup/list/list_ids]
> - Bric::Util::Attribute [lookup/list/XXX]
> - Bric::Util::Attribute::Action
> - Bric::Util::Attribute::Category
> - Bric::Util::Attribute::ElementType
> - Bric::Util::Attribute::FieldType
> - Bric::Util::Attribute::Grp
> - Bric::Util::Attribute::Member
> - Bric::Util::Burner [XXX/XXX/XXX (maybe shouldn't subclass Bric.pm)]
> - Bric::Util::Burner::Mason
> - Bric::Util::Burner::PHP
> - Bric::Util::Burner::Template
> - Bric::Util::Burner::TemplateToolkit
> - Bric::Util::Class [lookup/list/XXX]
> - Bric::Util::Coll [lookup/list/list_ids]
> - Bric::Util::Coll::Action
> - Bric::Util::Coll::Addr
> - Bric::Util::Coll::Addr::Person
> - Bric::Util::Coll::Contact
> - Bric::Util::Coll::Keyword
> - Bric::Util::Coll::Member
> - Bric::Util::Coll::OCElement
> - Bric::Util::Coll::OCInclude
> - Bric::Util::Coll::OutputChannel
> - Bric::Util::Coll::Priv
> - Bric::Util::Coll::Resource
> - Bric::Util::Coll::Rule
> - Bric::Util::Coll::Server
> - Bric::Util::Coll::ServerType
> - Bric::Util::Coll::Site
> - Bric::Util::Coll::Subelement
> - Bric::Util::Event [lookup/list/list_ids]
> - Bric::Util::EventType [lookup/list/list_ids]
> - Bric::Util::Grp [lookup/list/list_ids]
> - Bric::Util::Grp::AlertType
> - Bric::Util::Grp::Asset
> - Bric::Util::Grp::AssetVersion
> - Bric::Util::Grp::ATType
> - Bric::Util::Grp::CategorySet
> - Bric::Util::Grp::ContribType
> - Bric::Util::Grp::Desk
> - Bric::Util::Grp::Dest
> - Bric::Util::Grp::Event
> - Bric::Util::Grp::Grp
> - Bric::Util::Grp::Job
> - Bric::Util::Grp::Keyword
> - Bric::Util::Grp::Org
> - Bric::Util::Grp::OutputChannel
> - Bric::Util::Grp::Media
> - Bric::Util::Grp::MediaType
> - Bric::Util::Grp::Person
> - Bric::Util::Grp::Pref
> - Bric::Util::Grp::Source
> - Bric::Util::Grp::Site
> - Bric::Util::Grp::Story
> - Bric::Util::Grp::SubelementType
> - Bric::Util::Grp::ElementType
> - Bric::Util::Grp::Template
> - Bric::Util::Grp::User
> - Bric::Util::Grp::Workflow
> - Bric::Util::Grp::Parts::Member [lookup/list/list_ids]
> - Bric::Util::Grp::Parts::Member::Contrib
> [lookup/(inherits)/(inherits)]
> - Bric::Util::Job [lookup/list/list_ids]
> - Bric::Util::Job::Dist
> - Bric::Util::Job::Pub
> - Bric::Util::MediaType [lookup/list/list_ids]
> - Bric::Util::Pref [lookup/list/list_ids]
> - Bric::Util::Priv [lookup/list/list_ids]
> - Bric::Util::Trans::FS [XXX/XXX/XXX (maybe shouldn't subclass
Bric.pm)]
> - Bric::Util::Trans::FTP [XXX/XXX/XXX (maybe shouldn't subclass
Bric.pm)]
> - Bric::Util::Trans::Jabber [XXX/XXX/XXX (maybe shouldn't subclass
> Bric.pm)]
> - Bric::Util::Trans::Mail [XXX/XXX/XXX (maybe shouldn't subclass
Bric.pm)]
> - Bric::Util::Trans::SFTP [XXX/XXX/XXX (maybe shouldn't subclass
Bric.pm)]
> - Bric::Util::Trans::WebDAV [XXX/XXX/XXX (maybe shouldn't subclass
> Bric.pm)]
> - Bric::Util::UserPref [lookup/list/XXX]
>
> Probably the only "important" omissions are:
> * no lookup: Bric::Biz::Element
> * no list_ids: Bric::Util::Attribute, Bric::Util::Class,
> Bric::Util::UserPref
>
>
> The following classes don't use the Bric interface:
> Bric::*::Handler
> Bric::App::Auth*, Apache*, Cache, Callback*, Event,
> Session, Util
> Bric::Config
> Bric::SOAP*
> Bric::Util::Auth*, Apache*, Cookie, CharTrans, DB*,
> FTP::*, Fault*, Grp::AssetLanguage, Language*,
> Priv::Parts::Const, Time


david at kineticode

Jan 16, 2009, 3:52 PM

Post #3 of 5 (4475 views)
Permalink
Re: Bric objects [In reply to]

On Jan 16, 2009, at 2:22 AM, Scott Lanning wrote:

> Here's an unsolicited explanation of how Bricolage objects work.
> (I was shaving a yak last night. But not Moose?)
>
> lib/Bric.pm is an interface class. The interface consists of
> the following class methods (note: methods returning lists
> return arefs in scalar context)
>
> # construct an object
> $obj = Bric->new($init)
> # lookup an object by ID
> $obj = Bric->lookup({ id => $id })
> # (lookup calls a cache_lookup method)
> # lookup objects by parameters
> @objs = Bric->list($params);
> # lookup object IDs by parameters
> @ids = Bric->list_ids($params);
> # get class introspection info
> $meths = Bric->my_meths;
>
> and of these instance methods:
>
> # lookup group IDs
> @grp_ids = $obj->get_grp_ids;
> # add/remove object from cache (when getting/deleting obj from
> database)
> $obj->cache_me();
> $obj->uncache_me();
> # add/remove object from "All" group (when inserting obj into
> database)
> $obj->register_instance();
> $obj->unregister_instance();
> # save object to database
> $obj->save();

Yeah, and some of these don't apply to classes that inherit from
Bric.pm. It's stupid, really.

> In addition, an AUTOLOAD method generates get_*/set_* accessor methods
> for all fields. The fields are specified through the register_fields
> function of the class. register_fields is passed a hashref mapping
> field names to these access constants:
>
> FIELD_NONE (private)
> FIELD_READ (get_ only)
> FIELD_RDWR (get_ and set_)

We should get rid of autoload, just have register_fields() create
accessors. Dunno why I never thought of that before.

> Now we look at classes that implement the Bric.pm interface.
> The following shows the inheritance hierarchy. According to
> the interface, the lookup, list, and list_ids methods must be
> implemented by subclasses of Bric.pm; the methods actually implemented
> (some do not implement them all) are shown in square brackets,
> with XXX marking missing methods.
>
> Bric.pm
> - Bric::App::MediaFunc [XXX/XXX/XXX (maybe shouldn't subclass
> Bric.pm)]

+1

> - Bric::Biz::Asset [lookup/list/list_ids]
> - Bric::Biz::Asset::Business
> - Bric::Biz::Asset::Business::Media
> - Bric::Biz::Asset::Business::Media::Audio
> - Bric::Biz::Asset::Business::Media::Image
> - Bric::Biz::Asset::Business::Media::Video
> - Bric::Biz::Asset::Business::Story
> - Bric::Biz::Asset::Template
> - (Bric::Biz::Asset::Formatting)
> - Bric::Biz::ATType [lookup/list/list_ids]
> - Bric::Biz::Category [lookup/list/list_ids]
> - Bric::Biz::Contact [lookup/list/list_ids]
> - Bric::Biz::Element [XXX/list/list_ids]
> - Bric::Biz::Element::Container [lookup/list/list_ids]
> - (Bric::Biz::Asset::Business::Parts::Tile::Container)
> - Bric::Biz::Element::Field [lookup/list/list_ids]
> - (Bric::Biz::Asset::Business::Parts::Tile::Data)
> - Bric::Biz::ElementType [lookup/list/list_ids]
> - Bric::Biz::ElementType::Subelement
> - (Bric::Biz::AssetType)
> - (Bric::Biz::Asset::Business::Parts::Tile)
> - Bric::Biz::ElementType::Parts::FieldType [lookup/list/list_ids]
> - (Bric::Biz::AssetType::Parts::Data)
> - Bric::Biz::Keyword [lookup/list/list_ids]
> - Bric::Biz::Org [lookup/list/list_ids]
> - Bric::Biz::Org::Person [lookup/list/list_ids]
> - Bric::Biz::Org::Source [lookup/list/list_ids]
> - Bric::Biz::Org::Parts::Addr [lookup/list/list_ids]
> - Bric::Biz::OutputChannel [lookup/list/list_ids]
> - Bric::Biz::OutputChannel::Element
> - Bric::Biz::Person [lookup/list/list_ids]
> - Bric::Biz::Person::User [lookup/list/list_ids]
> - Bric::Biz::Site [lookup/list/list_ids]
> - Bric::Biz::Workflow [lookup/list/list_ids]
> - Bric::Biz::Workflow::Parts::Desk [lookup/list/list_ids]
> - Bric::Dist::Action [lookup/list/list_ids]
> - Bric::Dist::Action::Akamaize
> - Bric::Dist::Action::DTDValidate
> - Bric::Dist::Action::Email
> - Bric::Dist::Action::HTMLClean
> - Bric::Dist::Action::Mover
> - Bric::Dist::ActionType [lookup/list/list_ids]
> - Bric::Dist::Client [XXX/XXX/XXX (maybe shouldn't subclass Bric.pm)]

+1

> - Bric::Dist::Resource [lookup/list/list_ids]
> - Bric::Dist::Server [lookup/list/list_ids]
> - Bric::Dist::ServerType [lookup/list/list_ids]
> - Bric::Util::Alert [lookup/list/list_ids]
> - Bric::Util::Alerted [lookup/list/list_ids]
> - Bric::Util::Alerted::Parts::Sent [XXX/XXX/XXX]
> - Bric::Util::AlertType [lookup/list/list_ids]
> - Bric::Util::AlertType::Parts::Rule [lookup/list/list_ids]
> - Bric::Util::Attribute [lookup/list/XXX]
> - Bric::Util::Attribute::Action
> - Bric::Util::Attribute::Category
> - Bric::Util::Attribute::ElementType
> - Bric::Util::Attribute::FieldType
> - Bric::Util::Attribute::Grp
> - Bric::Util::Attribute::Member
> - Bric::Util::Burner [XXX/XXX/XXX (maybe shouldn't subclass Bric.pm)]

+1

> - Bric::Util::Burner::Mason
> - Bric::Util::Burner::PHP
> - Bric::Util::Burner::Template
> - Bric::Util::Burner::TemplateToolkit
> - Bric::Util::Class [lookup/list/XXX]
> - Bric::Util::Coll [lookup/list/list_ids]
> - Bric::Util::Coll::Action
> - Bric::Util::Coll::Addr
> - Bric::Util::Coll::Addr::Person
> - Bric::Util::Coll::Contact
> - Bric::Util::Coll::Keyword
> - Bric::Util::Coll::Member
> - Bric::Util::Coll::OCElement
> - Bric::Util::Coll::OCInclude
> - Bric::Util::Coll::OutputChannel
> - Bric::Util::Coll::Priv
> - Bric::Util::Coll::Resource
> - Bric::Util::Coll::Rule
> - Bric::Util::Coll::Server
> - Bric::Util::Coll::ServerType
> - Bric::Util::Coll::Site
> - Bric::Util::Coll::Subelement
> - Bric::Util::Event [lookup/list/list_ids]
> - Bric::Util::EventType [lookup/list/list_ids]
> - Bric::Util::Grp [lookup/list/list_ids]
> - Bric::Util::Grp::AlertType
> - Bric::Util::Grp::Asset
> - Bric::Util::Grp::AssetVersion
> - Bric::Util::Grp::ATType
> - Bric::Util::Grp::CategorySet
> - Bric::Util::Grp::ContribType
> - Bric::Util::Grp::Desk
> - Bric::Util::Grp::Dest
> - Bric::Util::Grp::Event
> - Bric::Util::Grp::Grp
> - Bric::Util::Grp::Job
> - Bric::Util::Grp::Keyword
> - Bric::Util::Grp::Org
> - Bric::Util::Grp::OutputChannel
> - Bric::Util::Grp::Media
> - Bric::Util::Grp::MediaType
> - Bric::Util::Grp::Person
> - Bric::Util::Grp::Pref
> - Bric::Util::Grp::Source
> - Bric::Util::Grp::Site
> - Bric::Util::Grp::Story
> - Bric::Util::Grp::SubelementType
> - Bric::Util::Grp::ElementType
> - Bric::Util::Grp::Template
> - Bric::Util::Grp::User
> - Bric::Util::Grp::Workflow
> - Bric::Util::Grp::Parts::Member [lookup/list/list_ids]
> - Bric::Util::Grp::Parts::Member::Contrib [lookup/(inherits)/
> (inherits)]
> - Bric::Util::Job [lookup/list/list_ids]
> - Bric::Util::Job::Dist
> - Bric::Util::Job::Pub
> - Bric::Util::MediaType [lookup/list/list_ids]
> - Bric::Util::Pref [lookup/list/list_ids]
> - Bric::Util::Priv [lookup/list/list_ids]
> - Bric::Util::Trans::FS [XXX/XXX/XXX (maybe shouldn't subclass
> Bric.pm)]
> - Bric::Util::Trans::FTP [XXX/XXX/XXX (maybe shouldn't subclass
> Bric.pm)]
> - Bric::Util::Trans::Jabber [XXX/XXX/XXX (maybe shouldn't subclass
> Bric.pm)]
> - Bric::Util::Trans::Mail [XXX/XXX/XXX (maybe shouldn't subclass
> Bric.pm)]
> - Bric::Util::Trans::SFTP [XXX/XXX/XXX (maybe shouldn't subclass
> Bric.pm)]
> - Bric::Util::Trans::WebDAV [XXX/XXX/XXX (maybe shouldn't subclass
> Bric.pm)]

+6

> - Bric::Util::UserPref [lookup/list/XXX]
>
> Probably the only "important" omissions are:
> * no lookup: Bric::Biz::Element
> * no list_ids: Bric::Util::Attribute, Bric::Util::Class,
> Bric::Util::UserPref

Is Attribute still used? I guess these methods were never needed.

> The following classes don't use the Bric interface:
> Bric::*::Handler
> Bric::App::Auth*, Apache*, Cache, Callback*, Event,
> Session, Util
> Bric::Config
> Bric::SOAP*
> Bric::Util::Auth*, Apache*, Cookie, CharTrans, DB*,
> FTP::*, Fault*, Grp::AssetLanguage, Language*,
> Priv::Parts::Const, Time

Thanks!

David


lannings at who

Jan 20, 2009, 3:50 AM

Post #4 of 5 (4444 views)
Permalink
Re: Bric objects [In reply to]

On Fri, 16 Jan 2009, David E. Wheeler wrote:
> We should get rid of autoload, just have register_fields() create accessors.

I was thinking that, too. Should we make a new branch now,
since trunk is frozen?

>> Probably the only "important" omissions are:
>> * no lookup: Bric::Biz::Element
>> * no list_ids: Bric::Util::Attribute, Bric::Util::Class,
>> Bric::Util::UserPref
>
> Is Attribute still used? I guess these methods were never needed.

It shows up many places when grepping,
but from inst/upgrade/1.9.1/delete_old_stuff.pl
it looks like those files might just need
to be `svn rm`ed.


david at kineticode

Jan 20, 2009, 8:26 AM

Post #5 of 5 (4439 views)
Permalink
Re: Bric objects [In reply to]

On Jan 20, 2009, at 3:50 AM, Scott Lanning wrote:

> On Fri, 16 Jan 2009, David E. Wheeler wrote:
>> We should get rid of autoload, just have register_fields() create
>> accessors.
>
> I was thinking that, too. Should we make a new branch now,
> since trunk is frozen?

Yes.

>>> Probably the only "important" omissions are:
>>> * no lookup: Bric::Biz::Element
>>> * no list_ids: Bric::Util::Attribute, Bric::Util::Class,
>>> Bric::Util::UserPref
>>
>> Is Attribute still used? I guess these methods were never needed.
>
> It shows up many places when grepping,
> but from inst/upgrade/1.9.1/delete_old_stuff.pl
> it looks like those files might just need
> to be `svn rm`ed.

That'd be nice…

David

Bricolage devel RSS feed   Index | Next | Previous | View Threaded
 
 


Interested in having your list archived? Contact Gossamer Threads
 
  Web Applications & Managed Hosting Powered by Gossamer Threads Inc.