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.

75 lines
1.9KB

  1. <?php
  2. namespace Lc\CaracoleBundle\Container\Merchant;
  3. use App\Entity\Merchant\Merchant;
  4. use Lc\CaracoleBundle\Builder\Merchant\MerchantBuilder;
  5. use Lc\CaracoleBundle\Factory\Merchant\MerchantFactory;
  6. use Lc\CaracoleBundle\Repository\Merchant\MerchantRepositoryQuery;
  7. use Lc\CaracoleBundle\Repository\Merchant\MerchantStore;
  8. use Lc\CaracoleBundle\Resolver\MerchantResolver;
  9. use Lc\CaracoleBundle\Solver\Merchant\MerchantSolver;
  10. use Lc\SovBundle\Solver\Setting\SettingSolver;
  11. class MerchantContainer
  12. {
  13. protected MerchantFactory $factory;
  14. protected MerchantSolver $solver;
  15. protected MerchantBuilder $builder;
  16. protected MerchantResolver $resolver;
  17. protected MerchantRepositoryQuery $repositoryQuery;
  18. protected MerchantStore $store;
  19. public function __construct(
  20. MerchantFactory $factory,
  21. MerchantSolver $solver,
  22. MerchantBuilder $builder,
  23. MerchantResolver $resolver,
  24. MerchantRepositoryQuery $repositoryQuery,
  25. MerchantStore $store
  26. ) {
  27. $this->factory = $factory;
  28. $this->solver = $solver;
  29. $this->builder = $builder;
  30. $this->resolver = $resolver;
  31. $this->repositoryQuery = $repositoryQuery;
  32. $this->store = $store;
  33. }
  34. public static function getEntityFqcn()
  35. {
  36. return Merchant::class;
  37. }
  38. public function getFactory(): MerchantFactory
  39. {
  40. return $this->factory;
  41. }
  42. public function getSolver(): MerchantSolver
  43. {
  44. return $this->solver;
  45. }
  46. public function getResolver(): MerchantResolver
  47. {
  48. return $this->resolver;
  49. }
  50. public function getRepositoryQuery(): MerchantRepositoryQuery
  51. {
  52. return $this->repositoryQuery;
  53. }
  54. public function getStore(): MerchantStore
  55. {
  56. return $this->store;
  57. }
  58. public function getBuilder(): MerchantBuilder
  59. {
  60. return $this->builder;
  61. }
  62. }