<?php namespace Lc\CaracoleBundle\Container\Address; use Lc\CaracoleBundle\Builder\Address\AddressBuilder; use Lc\CaracoleBundle\Factory\Address\AddressFactory; use Lc\CaracoleBundle\Repository\Address\AddressRepositoryQuery; use Lc\CaracoleBundle\Repository\Address\AddressStore; use Lc\CaracoleBundle\Solver\Address\AddressSolver; class AddressContainer { protected AddressFactory $factory; protected AddressSolver $solver; protected AddressRepositoryQuery $repositoryQuery; protected AddressStore $store; protected AddressBuilder $builder; public function __construct( AddressFactory $factory, AddressSolver $solver, AddressRepositoryQuery $repositoryQuery, AddressStore $store, AddressBuilder $builder ) { $this->factory = $factory; $this->solver = $solver; $this->repositoryQuery = $repositoryQuery; $this->store = $store; $this->builder = $builder; } public function getFactory(): AddressFactory { return $this->factory; } public function getSolver(): AddressSolver { return $this->solver; } public function getRepositoryQuery(): AddressRepositoryQuery { return $this->repositoryQuery; } public function getStore(): AddressStore { return $this->store; } public function getBuilder(): AddressBuilder { return $this->builder; } }