File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -21,13 +21,15 @@ class SeoPageFacade
2121 * @param \Shopsys\FrameworkBundle\Component\Router\FriendlyUrl\FriendlyUrlFacade $friendlyUrlFacade
2222 * @param \Shopsys\FrameworkBundle\Model\Seo\Page\SeoPageRepository $seoPageRepository
2323 * @param \Shopsys\FrameworkBundle\Component\Image\ImageFacade $imageFacade
24+ * @param \Shopsys\FrameworkBundle\Model\Seo\Page\SeoPageFactory $seoPageFactory
2425 */
2526 public function __construct (
2627 protected readonly Domain $ domain ,
2728 protected readonly EntityManagerInterface $ em ,
2829 protected readonly FriendlyUrlFacade $ friendlyUrlFacade ,
2930 protected readonly SeoPageRepository $ seoPageRepository ,
3031 protected readonly ImageFacade $ imageFacade ,
32+ protected readonly SeoPageFactory $ seoPageFactory ,
3133 ) {
3234 }
3335
@@ -37,7 +39,7 @@ public function __construct(
3739 */
3840 public function create (SeoPageData $ seoPageData ): SeoPage
3941 {
40- $ seoPage = new SeoPage ($ seoPageData );
42+ $ seoPage = $ this -> seoPageFactory -> create ($ seoPageData );
4143
4244 $ this ->em ->persist ($ seoPage );
4345 $ this ->em ->flush ();
Original file line number Diff line number Diff line change 1+ <?php
2+
3+ declare (strict_types=1 );
4+
5+ namespace Shopsys \FrameworkBundle \Model \Seo \Page ;
6+
7+ use Shopsys \FrameworkBundle \Component \EntityExtension \EntityNameResolver ;
8+
9+ class SeoPageFactory
10+ {
11+ /**
12+ * @param \Shopsys\FrameworkBundle\Component\EntityExtension\EntityNameResolver $entityNameResolver
13+ */
14+ public function __construct (
15+ protected readonly EntityNameResolver $ entityNameResolver ,
16+ ) {
17+ }
18+
19+ /**
20+ * @param \Shopsys\FrameworkBundle\Model\Seo\Page\SeoPageData $data
21+ * @return \Shopsys\FrameworkBundle\Model\Seo\Page\SeoPage
22+ */
23+ public function create (SeoPageData $ data ): SeoPage
24+ {
25+ $ classData = $ this ->entityNameResolver ->resolve (SeoPage::class);
26+
27+ return new $ classData ($ data );
28+ }
29+ }
You can’t perform that action at this time.
0 commit comments