You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

64 line
1.8KB

  1. <?php
  2. namespace Lc\CaracoleBundle\Container\Reduction;
  3. use App\Entity\Reduction\ReductionCatalog;
  4. use Lc\CaracoleBundle\Definition\Field\Reduction\ReductionCatalogFieldDefinition;
  5. use Lc\CaracoleBundle\Factory\Reduction\ReductionCatalogFactory;
  6. use Lc\CaracoleBundle\Repository\Reduction\ReductionCatalogRepositoryQuery;
  7. use Lc\CaracoleBundle\Repository\Reduction\ReductionCatalogStore;
  8. use Lc\CaracoleBundle\Solver\Reduction\ReductionCatalogSolver;
  9. class ReductionCatalogContainer
  10. {
  11. protected ReductionCatalogFactory $factory;
  12. protected ReductionCatalogRepositoryQuery $repositoryQuery;
  13. protected ReductionCatalogStore $store;
  14. protected ReductionCatalogFieldDefinition $fieldDefinition;
  15. public function __construct(
  16. ReductionCatalogFactory $factory,
  17. ReductionCatalogRepositoryQuery $repositoryQuery,
  18. ReductionCatalogStore $store,
  19. ReductionCatalogFieldDefinition $fieldDefinition
  20. ) {
  21. $this->factory = $factory;
  22. $this->repositoryQuery = $repositoryQuery;
  23. $this->store = $store;
  24. $this->fieldDefinition = $fieldDefinition;
  25. }
  26. public static function getEntityFqcn()
  27. {
  28. return ReductionCatalog::class;
  29. }
  30. public function getFactory(): ReductionCatalogFactory
  31. {
  32. return $this->factory;
  33. }
  34. public function getRepositoryQuery(): ReductionCatalogRepositoryQuery
  35. {
  36. return $this->repositoryQuery;
  37. }
  38. public function getStore(): ReductionCatalogStore
  39. {
  40. $this->store->resetContext();
  41. return $this->store;
  42. }
  43. public function getFieldDefinition(): ReductionCatalogFieldDefinition
  44. {
  45. return $this->fieldDefinition;
  46. }
  47. // public function getSolver(): ReductionCatalogSolver
  48. // {
  49. // return $this->solver;
  50. // }
  51. }