diff --git a/src/AppBundle/Manager/BaseManager.php b/src/AppBundle/Manager/BaseManager.php new file mode 100644 index 0000000..cfeb49c --- /dev/null +++ b/src/AppBundle/Manager/BaseManager.php @@ -0,0 +1,16 @@ +repository; + } +} diff --git a/src/AppBundle/Manager/LDraw/CategoryManager.php b/src/AppBundle/Manager/LDraw/CategoryManager.php new file mode 100644 index 0000000..7df6d71 --- /dev/null +++ b/src/AppBundle/Manager/LDraw/CategoryManager.php @@ -0,0 +1,42 @@ +repository = $repository; + } + + public function findAll() + { + return $this->repository->findAll(); + } + + /** + * Create new Category entity with $name or retrieve one. + * + * @param $name + * + * @return Category + */ + public function create($name) + { + if (($category = $this->repository->findByName($name)) == null) { + $category = new Category(); + $category->setName($name); + } + + return $category; + } +} diff --git a/src/AppBundle/Manager/LDraw/KeywordManager.php b/src/AppBundle/Manager/LDraw/KeywordManager.php new file mode 100644 index 0000000..a321708 --- /dev/null +++ b/src/AppBundle/Manager/LDraw/KeywordManager.php @@ -0,0 +1,37 @@ +repository = $repository; + } + + /** + * Create new Keyword entity with $name or retrieve one. + * + * @param $name + * + * @return Keyword + */ + public function create($name) + { + if (($keyword = $this->repository->findByName($name)) == null) { + $keyword = new Keyword(); + $keyword->setName($name); + } + + return $keyword; + } +} diff --git a/src/AppBundle/Manager/LDraw/ModelManager.php b/src/AppBundle/Manager/LDraw/ModelManager.php new file mode 100644 index 0000000..1d1e6cc --- /dev/null +++ b/src/AppBundle/Manager/LDraw/ModelManager.php @@ -0,0 +1,37 @@ +repository = $repository; + } + + /** + * Create new Model entity with $number or retrieve one. + * + * @param $number + * + * @return Model + */ + public function create($number) + { + if (($model = $this->repository->find($number)) == null) { + $model = new Model(); + $model->setNumber($number); + } + + return $model; + } +} diff --git a/src/AppBundle/Manager/LDraw/PartManager.php b/src/AppBundle/Manager/LDraw/PartManager.php new file mode 100644 index 0000000..a25e8ac --- /dev/null +++ b/src/AppBundle/Manager/LDraw/PartManager.php @@ -0,0 +1,38 @@ +repository = $repository; + } + + /** + * Create new Part entity with $number or retrieve one. + * + * @param $number + * + * @return Part + */ + public function create($number) + { + if (($part = $this->repository->find($number)) == null) { + $part = new Part(); + $part->setNumber($number); + } + + return $part; + } +} diff --git a/src/AppBundle/Manager/LDraw/Part_RelationManager.php b/src/AppBundle/Manager/LDraw/Part_RelationManager.php new file mode 100644 index 0000000..d6e9fbd --- /dev/null +++ b/src/AppBundle/Manager/LDraw/Part_RelationManager.php @@ -0,0 +1,41 @@ +repository = $repository; + } + + /** + * Create new Keyword entity with $name or retrieve one. + * + * @param $name + * + * @return Part_Relation + */ + public function create($parent, $child, $relationType) + { + if (($partRelation = $this->repository->findByForeignKeys($parent, $child, $relationType)) == null) { + $partRelation = new Part_Relation(); + $partRelation + ->setParent($parent) + ->setChild($child) + ->setCount(0) + ->setType($relationType); + } + + return $partRelation; + } +} diff --git a/src/AppBundle/Manager/LDraw/TypeManager.php b/src/AppBundle/Manager/LDraw/TypeManager.php new file mode 100644 index 0000000..e86e18f --- /dev/null +++ b/src/AppBundle/Manager/LDraw/TypeManager.php @@ -0,0 +1,37 @@ +repository = $repository; + } + + /** + * Create new Keyword entity with $name or retrieve one. + * + * @param $name + * + * @return Type + */ + public function create($name) + { + if (($type = $this->repository->findByName($name)) == null) { + $type = new Type(); + $type->setName($name); + } + + return $type; + } +}