<?php

namespace Lc\SovBundle\Container\Site;

use App\Entity\Site\Site;
use Lc\SovBundle\Factory\Site\SiteFactory;
use Lc\SovBundle\Repository\Site\SiteRepositoryQuery;
use Lc\SovBundle\Repository\Site\SiteStore;

class SiteContainer
{
    protected SiteFactory $factory;
    protected SiteRepositoryQuery $repositoryQuery;
    protected SiteStore $store;

    public function __construct(
            SiteFactory $factory,
            SiteRepositoryQuery $repositoryQuery,
            SiteStore $store
    ) {
        $this->factory = $factory;
        $this->repositoryQuery = $repositoryQuery;
        $this->store = $store;
    }

    public static function getEntityFqcn()
    {
        return Site::class;
    }
    public function getFactory(): SiteFactory
    {
        return $this->factory;
    }

    public function getRepositoryQuery(): SiteRepositoryQuery
    {
        return $this->repositoryQuery;
    }

    public function getStore(): SiteStore
    {
        return $this->store;
    }
}
