Nextras\Orm\Relationships\HasMany::createEntity PHP Метод

createEntity() защищенный Метод

protected createEntity ( Nextras\Orm\Entity\IEntity | mixed $entity, boolean $need = true ) : Nextras\Orm\Entity\IEntity
$entity Nextras\Orm\Entity\IEntity | mixed
$need boolean
Результат Nextras\Orm\Entity\IEntity
    protected function createEntity($entity, $need = true)
    {
        if ($entity instanceof IEntity) {
            if ($model = $entity->getModel(false)) {
                $repository = $model->getRepositoryForEntity($this->parent);
                $repository->attach($this->parent);
            } elseif ($model = $this->parent->getModel(false)) {
                $repository = $model->getRepositoryForEntity($entity);
                $repository->attach($entity);
            }
            return $entity;
        } else {
            $foundEntity = $this->getTargetRepository()->getById($entity);
            if (!$foundEntity && $need) {
                throw new InvalidStateException("Entity with primary value '{$entity}' was not found.");
            }
            return $foundEntity;
        }
    }