/** * Method to do selects. * * @param Criteria $criteria The Criteria object used to build the SELECT statement. * @param PropelPDO $con * @return array Array of selected Objects * @throws PropelException Any exceptions caught during processing will be * rethrown wrapped into a PropelException. */ public static function doSelect(Criteria $criteria, PropelPDO $con = null) { $criteriaForSelect = MetadataProfileFieldPeer::prepareCriteriaForSelect($criteria); $queryDB = kQueryCache::QUERY_DB_UNDEFINED; $cacheKey = null; $cachedResult = kQueryCache::getCachedQueryResults($criteriaForSelect, kQueryCache::QUERY_TYPE_SELECT, 'MetadataProfileFieldPeer', $cacheKey, $queryDB); if ($cachedResult !== null) { $cacheKey = null; MetadataProfileFieldPeer::filterSelectResults($cachedResult, $criteriaForSelect); MetadataProfileFieldPeer::updateInstancePool($cachedResult); return $cachedResult; } $con = MetadataProfileFieldPeer::alternativeCon($con, $queryDB); $queryResult = MetadataProfileFieldPeer::populateObjects(BasePeer::doSelect($criteriaForSelect, $con)); if ($criteriaForSelect instanceof KalturaCriteria) { $criteriaForSelect->applyResultsSort($queryResult); } if ($cacheKey !== null) { kQueryCache::cacheQueryResults($cacheKey, $queryResult); $cacheKey = null; } MetadataProfileFieldPeer::filterSelectResults($queryResult, $criteria); MetadataProfileFieldPeer::addInstancesToPool($queryResult); return $queryResult; }