Du kan inte välja fler än 25 ämnen Ämnen måste starta med en bokstav eller siffra, kan innehålla bindestreck ('-') och vara max 35 tecken långa.

64 lines
1.7KB

  1. <?php
  2. namespace Lc\CaracoleBundle\Container\Order;
  3. use App\Entity\Order\OrderProduct;
  4. use Lc\CaracoleBundle\Builder\Order\OrderProductBuilder;
  5. use Lc\CaracoleBundle\Factory\Order\OrderProductFactory;
  6. use Lc\CaracoleBundle\Repository\Order\OrderProductRepositoryQuery;
  7. use Lc\CaracoleBundle\Repository\Order\OrderProductStore;
  8. use Lc\CaracoleBundle\Solver\Order\OrderProductSolver;
  9. class OrderProductContainer
  10. {
  11. protected OrderProductFactory $factory;
  12. protected OrderProductSolver $solver;
  13. protected OrderProductBuilder $builder;
  14. protected OrderProductRepositoryQuery $repositoryQuery;
  15. protected OrderProductStore $store;
  16. public function __construct(
  17. OrderProductFactory $factory,
  18. OrderProductSolver $solver,
  19. OrderProductBuilder $builder,
  20. OrderProductRepositoryQuery $repositoryQuery,
  21. OrderProductStore $store
  22. ) {
  23. $this->factory = $factory;
  24. $this->solver = $solver;
  25. $this->builder = $builder;
  26. $this->repositoryQuery = $repositoryQuery;
  27. $this->store = $store;
  28. }
  29. public static function getEntityFqcn()
  30. {
  31. return OrderProduct::class;
  32. }
  33. public function getFactory(): OrderProductFactory
  34. {
  35. return $this->factory;
  36. }
  37. public function getSolver(): OrderProductSolver
  38. {
  39. return $this->solver;
  40. }
  41. public function getBuilder(): OrderProductBuilder
  42. {
  43. return $this->builder;
  44. }
  45. public function getRepositoryQuery(): OrderProductRepositoryQuery
  46. {
  47. return $this->repositoryQuery;
  48. }
  49. public function getStore(): OrderProductStore
  50. {
  51. return $this->store;
  52. }
  53. }