/** * Filter the query by a related \keeko\core\model\LocalizationVariant object * * @param \keeko\core\model\LocalizationVariant|ObjectCollection $localizationVariant the related object to use as filter * @param string $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL * * @return ChildLanguageVariantQuery The current query, for fluid interface */ public function filterByLocalizationVariant($localizationVariant, $comparison = null) { if ($localizationVariant instanceof \keeko\core\model\LocalizationVariant) { return $this->addUsingAlias(LanguageVariantTableMap::COL_ID, $localizationVariant->getVariantId(), $comparison); } elseif ($localizationVariant instanceof ObjectCollection) { return $this->useLocalizationVariantQuery()->filterByPrimaryKeys($localizationVariant->getPrimaryKeys())->endUse(); } else { throw new PropelException('filterByLocalizationVariant() only accepts arguments of type \\keeko\\core\\model\\LocalizationVariant or Collection'); } }
/** * Adds an object to the instance pool. * * Propel keeps cached copies of objects in an instance pool when they are retrieved * from the database. In some cases you may need to explicitly add objects * to the cache in order to ensure that the same objects are always returned by find*() * and findPk*() calls. * * @param \keeko\core\model\LocalizationVariant $obj A \keeko\core\model\LocalizationVariant object. * @param string $key (optional) key to use for instance map (for performance boost if key was already calculated externally). */ public static function addInstanceToPool($obj, $key = null) { if (Propel::isInstancePoolingEnabled()) { if (null === $key) { $key = serialize(array((string) $obj->getLocalizationId(), (string) $obj->getVariantId())); } // if key === null self::$instances[$key] = $obj; } }
/** * Remove localization of this object * through the kk_localization_variant cross reference table. * * @param ChildLocalization $localization * @return ChildLanguageVariant The current object (for fluent API support) */ public function removeLocalization(ChildLocalization $localization) { if ($this->getLocalizations()->contains($localization)) { $localizationVariant = new ChildLocalizationVariant(); $localizationVariant->setLocalization($localization); if ($localization->isLanguageVariantsLoaded()) { //remove the back reference if available $localization->getLanguageVariants()->removeObject($this); } $localizationVariant->setLanguageVariant($this); $this->removeLocalizationVariant(clone $localizationVariant); $localizationVariant->clear(); $this->collLocalizations->remove($this->collLocalizations->search($localization)); if (null === $this->localizationsScheduledForDeletion) { $this->localizationsScheduledForDeletion = clone $this->collLocalizations; $this->localizationsScheduledForDeletion->clear(); } $this->localizationsScheduledForDeletion->push($localization); } return $this; }
/** * Exclude object from result * * @param ChildLocalizationVariant $localizationVariant Object to remove from the list of results * * @return $this|ChildLocalizationVariantQuery The current query, for fluid interface */ public function prune($localizationVariant = null) { if ($localizationVariant) { $this->addCond('pruneCond0', $this->getAliasedColName(LocalizationVariantTableMap::COL_LOCALIZATION_ID), $localizationVariant->getLocalizationId(), Criteria::NOT_EQUAL); $this->addCond('pruneCond1', $this->getAliasedColName(LocalizationVariantTableMap::COL_VARIANT_ID), $localizationVariant->getVariantId(), Criteria::NOT_EQUAL); $this->combine(array('pruneCond0', 'pruneCond1'), Criteria::LOGICAL_OR); } return $this; }