Declares an association between this object and a ChildSkill object.

@param  ChildSkill $v
@return $this|\gossi\trixionary\model\SkillPart The current object (for fluent API support)
@throws PropelException
540497
public function setSkillRelatedByPartId(ChildSkill $v = null)
    {
        if ($v === null) {
            $this->setPartId(NULL);
        } else {
            $this->setPartId($v->getId());
        }

        $this->aSkillRelatedByPartId = $v;

        // Add binding for other direction of this n:n relationship.
        // If this object has already been added to the ChildSkill object, it will not be re-added.
        if ($v !== null) {
            $v->addPart($this);
        }


        return $this;
    }
559947
public function setPartId($v)
    {
        if ($v !== null) {
            $v = (int) $v;
        }

        if ($this->part_id !== $v) {
            $this->part_id = $v;
            $this->modifiedColumns[SkillPartTableMap::COL_PART_ID] = true;
        }

        if ($this->aSkillRelatedByPartId !== null && $this->aSkillRelatedByPartId->getId() !== $v) {
            $this->aSkillRelatedByPartId = null;
        }

        return $this;
    }
189748
public function setSkillId($v)
    {
        if ($v !== null) {
            $v = (int) $v;
        }

        if ($this->skill_id !== $v) {
            $this->skill_id = $v;
            $this->modifiedColumns[SkillGroupTableMap::COL_SKILL_ID] = true;
        }

        if ($this->aSkill !== null && $this->aSkill->getId() !== $v) {
            $this->aSkill = null;
        }

        return $this;
    }
329657
public function removeSkillRelatedByDependencyId(ChildSkill $skillRelatedByDependencyId)
    {
        if ($this->getSkillsRelatedByDependencyId()->contains($skillRelatedByDependencyId)) { $skillDependency = new ChildSkillDependency();

            $skillDependency->setSkillRelatedByDependencyId($skillRelatedByDependencyId);
            if ($skillRelatedByDependencyId->isSkillRelatedByParentIdsLoaded()) {
                //remove the back reference if available
                $skillRelatedByDependencyId->getSkillRelatedByParentIds()->removeObject($this);
            }

            $skillDependency->setSkillRelatedByParentId($this);
            $this->removeParent(clone $skillDependency);
            $skillDependency->clear();

            $this->collSkillsRelatedByDependencyId->remove($this->collSkillsRelatedByDependencyId->search($skillRelatedByDependencyId));

            if (null === $this->skillsRelatedByDependencyIdScheduledForDeletion) {
                $this->skillsRelatedByDependencyIdScheduledForDeletion = clone $this->collSkillsRelatedByDependencyId;
                $this->skillsRelatedByDependencyIdScheduledForDeletion->clear();
            }

            $this->skillsRelatedByDependencyIdScheduledForDeletion->push($skillRelatedByDependencyId);
        }


        return $this;
    }
569737
public function setIndexEngineIndex(ChildIndexEngineIndex $v = null)
    {
        if ($v === null) {
            $this->setId(null);
        } else {
            $this->setId($v->getId());
        }

        $this->aIndexEngineIndex = $v;

        // Add binding for other direction of this n:n relationship.
        // If this object has already been added to the ChildIndexEngineIndex object, it will not be re-added.
        if ($v !== null) {
            $v->addIndexEngineIndexVersion($this);
        }

        return $this;
    }
1198656
public function setFeatureType(ChildFeatureType $v = null)
    {
        if ($v === null) {
            $this->setId(NULL);
        } else {
            $this->setId($v->getId());
        }

        $this->aFeatureType = $v;

        // Add binding for other direction of this n:n relationship.
        // If this object has already been added to the ChildFeatureType object, it will not be re-added.
        if ($v !== null) {
            $v->addFeatureTypeI18n($this);
        }


        return $this;
    }
1289417
public function setSkill(ChildSkill $v = null)
    {
        if ($v === null) {
            $this->setSkillId(NULL);
        } else {
            $this->setSkillId($v->getId());
        }

        $this->aSkill = $v;

        // Add binding for other direction of this n:n relationship.
        // If this object has already been added to the ChildSkill object, it will not be re-added.
        if ($v !== null) {
            $v->addSkillReference($this);
        }


        return $this;
    }
337372
public function setMap(ChildMap $v = null)
    {
        if ($v === null) {
            $this->setTrackuid(NULL);
        } else {
            $this->setTrackuid($v->getMapuid());
        }

        $this->aMap = $v;

        // Add binding for other direction of this n:n relationship.
        // If this object has already been added to the ChildMap object, it will not be re-added.
        if ($v !== null) {
            $v->addMxmap($this);
        }


        return $this;
    }
995120
public function setStructureNode(ChildStructureNode $v = null)
    {
        if ($v === null) {
            $this->setId(NULL);
        } else {
            $this->setId($v->getId());
        }

        $this->aStructureNode = $v;

        // Add binding for other direction of this 1:1 relationship.
        if ($v !== null) {
            $v->setFunctionPhase($this);
        }


        return $this;
    }
340322
public function setMedia(ChildMedia $v = null)
    {
        if ($v === null) {
            $this->setMediaId(NULL);
        } else {
            $this->setMediaId($v->getId());
        }

        $this->aMedia = $v;

        // Add binding for other direction of this n:n relationship.
        // If this object has already been added to the ChildMedia object, it will not be re-added.
        if ($v !== null) {
            $v->addM2P($this);
        }


        return $this;
    }
479489
public function addFeaturedSkill(ChildSkill $l)
    {
        if ($this->collFeaturedSkills === null) {
            $this->initFeaturedSkills();
            $this->collFeaturedSkillsPartial = true;
        }

        if (!$this->collFeaturedSkills->contains($l)) {
            $this->doAddFeaturedSkill($l);
        }

        return $this;
    }
1240975
public function setPersonFunction(ChildPersonFunction $v = null)
    {
        if ($v === null) {
            $this->setId(NULL);
        } else {
            $this->setId($v->getId());
        }

        $this->aPersonFunction = $v;

        // Add binding for other direction of this n:n relationship.
        // If this object has already been added to the ChildPersonFunction object, it will not be re-added.
        if ($v !== null) {
            $v->addPersonFunctionI18n($this);
        }


        return $this;
    }
400815
public function setBrand(ChildBrand $v = null)
    {
        if ($v === null) {
            $this->setBrandId(NULL);
        } else {
            $this->setBrandId($v->getId());
        }

        $this->aBrand = $v;

        // Add binding for other direction of this n:n relationship.
        // If this object has already been added to the ChildBrand object, it will not be re-added.
        if ($v !== null) {
            $v->addDealerBrand($this);
        }


        return $this;
    }
556625
public function setDealerShedules(ChildDealerShedules $v = null)
    {
        if ($v === null) {
            $this->setId(NULL);
        } else {
            $this->setId($v->getId());
        }

        $this->aDealerShedules = $v;

        // Add binding for other direction of this n:n relationship.
        // If this object has already been added to the ChildDealerShedules object, it will not be re-added.
        if ($v !== null) {
            $v->addDealerShedulesVersion($this);
        }


        return $this;
    }
557759
public function removeSkillRelatedByParentId(ChildSkill $skillRelatedByParentId)
    {
        if ($this->getSkillsRelatedByParentId()->contains($skillRelatedByParentId)) { $skillDependency = new ChildSkillDependency();

            $skillDependency->setSkillRelatedByParentId($skillRelatedByParentId);
            if ($skillRelatedByParentId->isSkillRelatedByDependencyIdsLoaded()) {
                //remove the back reference if available
                $skillRelatedByParentId->getSkillRelatedByDependencyIds()->removeObject($this);
            }

            $skillDependency->setSkillRelatedByDependencyId($this);
            $this->removeChild(clone $skillDependency);
            $skillDependency->clear();

            $this->collSkillsRelatedByParentId->remove($this->collSkillsRelatedByParentId->search($skillRelatedByParentId));

            if (null === $this->skillsRelatedByParentIdScheduledForDeletion) {
                $this->skillsRelatedByParentIdScheduledForDeletion = clone $this->collSkillsRelatedByParentId;
                $this->skillsRelatedByParentIdScheduledForDeletion->clear();
            }

            $this->skillsRelatedByParentIdScheduledForDeletion->push($skillRelatedByParentId);
        }


        return $this;
    }
1371210
public function addPart(ChildSkillPart $l)
    {
        if ($this->collParts === null) {
            $this->initParts();
            $this->collPartsPartial = true;
        }

        if (!$this->collParts->contains($l)) {
            $this->doAddPart($l);
        }

        return $this;
    }
753367
public function setFeatureAv(ChildFeatureAv $v = null)
    {
        if ($v === null) {
            $this->setFeatureAvId(NULL);
        } else {
            $this->setFeatureAvId($v->getId());
        }

        $this->aFeatureAv = $v;

        // Add binding for other direction of this n:n relationship.
        // If this object has already been added to the ChildFeatureAv object, it will not be re-added.
        if ($v !== null) {
            $v->addFeatureTypeAvMeta($this);
        }


        return $this;
    }