<?php namespace Lc\CaracoleBundle\Container\Reduction; use Lc\CaracoleBundle\Definition\Field\Reduction\ReductionCatalogFieldDefinition; use Lc\CaracoleBundle\Factory\Reduction\ReductionCatalogFactory; use Lc\CaracoleBundle\Repository\Reduction\ReductionCatalogRepositoryQuery; use Lc\CaracoleBundle\Repository\Reduction\ReductionCatalogStore; class ReductionCatalogContainer { protected ReductionCatalogFactory $factory; protected ReductionCatalogRepositoryQuery $repositoryQuery; protected ReductionCatalogStore $store; protected ReductionCatalogFieldDefinition $fieldDefinition; public function __construct( ReductionCatalogFactory $factory, ReductionCatalogRepositoryQuery $repositoryQuery, ReductionCatalogStore $store, ReductionCatalogFieldDefinition $fieldDefinition ) { $this->factory = $factory; $this->repositoryQuery = $repositoryQuery; $this->store = $store; $this->fieldDefinition = $fieldDefinition; } public function getFactory(): ReductionCatalogFactory { return $this->factory; } public function getRepositoryQuery(): ReductionCatalogRepositoryQuery { return $this->repositoryQuery; } public function getStore(): ReductionCatalogStore { $this->store->resetContext(); return $this->store; } public function getFieldDefinition(): ReductionCatalogFieldDefinition { return $this->fieldDefinition; } }