<?php

namespace Lc\SovBundle\Container\File;

use App\Entity\File\File;
use Lc\SovBundle\Factory\File\FileFactory;
use Lc\SovBundle\Model\File\FileInterface;
use Lc\SovBundle\Repository\File\FileRepositoryQuery;
use Lc\SovBundle\Repository\File\FileStore;

class FileContainer
{
    protected FileFactory $factory;
    protected FileRepositoryQuery $repositoryQuery;
    protected FileStore $store;

    public function __construct(
            FileFactory $factory,
            FileRepositoryQuery $repositoryQuery,
            FileStore $store
    ) {
        $this->factory = $factory;
        $this->repositoryQuery = $repositoryQuery;
        $this->store = $store;
    }

    public static function getEntityFqcn()
    {
        return File::class;
    }

    public function getFactory(): FileFactory
    {
        return $this->factory;
    }

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

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

}
