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.

59 lines
1.6KB

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