Re: gallery ordering issue

Chuck Hagenbuch <[email protected]>
Newsgroups gmane.comp.horde.ansel
Message-ID <[email protected]>
Quoting "Heath S. Hendrickson" <[email protected]>:

> 1) user requests Ansel page which in turn calls &getGalleryById($cid)
> [where $cid presumably = -1 for the top-level view]

We'll never be calling getGalleryById with a $cid of -1. -1 is the top of each
virtual tree in the DataTree system, yes, but getGalleryById is always called
for actual galleries, and we don't create a top-level gallery that holds all
the others for all users.

> 2) getGalleryById() calls _datatree->getObjectById()
> 3) _datatree->getObjectById() calls getName() in order to call getObject()
>     3a) getName() calls _loadById() if the object isn't already loaded
> in the nameMap
>     3b) _loadById() will attempt to load the indicated object and all of
> it's parents (if there are any)
>     3c) getName() returns the name associated with the $cid from 1).
> 4) getObject() then proceeds to call getId() in order to call
> getAttributes() or getData()
>     4a) getId() looks up the id from the _nameMap which was created in 3b)
> 5) getAttributes() or getData() actually do the SQL retrieval of the data...

This looks right.

> What's the difference between the $cid and the return of getId()?

Should be the same value.

> If they are the same value, then what is the purpose of calling getName()
> only to have to convert it back to an an id later via getId()... (the
> only reason that's apparent to me is to populate the nameMap and load
> the entire tree).

Right - and DataTree is designed around the tree and needs nameMap for some of
its internal operations.

Take a look at what I just committed; I'm not sure that it'll 
streamline things
much, but it's a start. The _loadById() call is still necessary so that we can
call getName() to instantiate the category with the right name, etc.

Ways to load less data at a time is a potentially productive path to go down;
let's see where this goes.

-chuck

--
"Regard my poor demoralized mule!" - Juan Valdez
-- 
ansel mailing list - Join the hunt: http://horde.org/bounties/#ansel
Frequently Asked Questions: http://horde.org/faq/
To unsubscribe, mail: [email protected]
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.