Author: david
Date: Mon May 16 11:18:21 2011
New Revision: 9102
Log:
Reduce memory required for imageflow. On return descendants with digital
objects, and use 'limit'.
Modified:
trunk/apps/qubit/modules/digitalobject/actions/imageflowComponent.class.php
Modified:
trunk/apps/qubit/modules/digitalobject/actions/imageflowComponent.class.php
==============================================================================
--- trunk/apps/qubit/modules/digitalobject/actions/imageflowComponent.class.php
Mon May 16 00:02:39 2011 (r9101)
+++ trunk/apps/qubit/modules/digitalobject/actions/imageflowComponent.class.php
Mon May 16 11:18:21 2011 (r9102)
@@ -38,25 +38,26 @@
}
// Add thumbs
- foreach ($this->resource->descendants as $item)
+ $criteria = new Criteria;
+ $criteria->addJoin(QubitInformationObject::ID,
QubitDigitalObject::INFORMATION_OBJECT_ID);
+ $criteria->add(QubitInformationObject::LFT, $this->resource->lft,
Criteria::GREATER_THAN);
+ $criteria->add(QubitInformationObject::RGT, $this->resource->rgt,
Criteria::LESS_THAN);
+ if (isset($this->limit))
{
- if (null !== $digitalObject = $item->getDigitalObject())
- {
- $thumbnail =
$digitalObject->getRepresentationByUsage(QubitTerm::THUMBNAIL_ID);
+ $criteria->setLimit($this->limit);
+ }
+
+ foreach (QubitDigitalObject::get($criteria) as $item)
+ {
+ $thumbnail = $item->getRepresentationByUsage(QubitTerm::THUMBNAIL_ID);
- if (!$thumbnail)
- {
- $thumbnail =
QubitDigitalObject::getGenericRepresentation($digitalObject->mimeType,
QubitTerm::THUMBNAIL_ID);
- $thumbnail->setParent($digitalObject);
- }
-
- $this->thumbnails[] = $thumbnail;
-
- if (isset($this->limit) && $this->limit <= count($this->thumbnails))
- {
- break;
- }
+ if (!$thumbnail)
+ {
+ $thumbnail =
QubitDigitalObject::getGenericRepresentation($digitalObject->mimeType,
QubitTerm::THUMBNAIL_ID);
+ $thumbnail->setParent($digitalObject);
}
+
+ $this->thumbnails[] = $thumbnail;
}
// Get total number of descendant digital objects
--
You received this message because you are subscribed to the Google Groups
"Qubit Toolkit Commits" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/qubit-commits?hl=en.