<?php

namespace common\logic\Document\Quotation\Wrapper;

use common\logic\AbstractContainer;
use common\logic\Document\Document\Service\DocumentSolver;
use common\logic\Document\Quotation\Model\Quotation;
use common\logic\Document\Quotation\Repository\QuotationRepository;
use common\logic\Document\Quotation\Service\QuotationBuilder;

class QuotationContainer extends AbstractContainer
{
    public function getEntityFqcn(): string
    {
        return Quotation::class;
    }

    public function getServices(): array
    {
        return [
            DocumentSolver::class,
            QuotationRepository::class,
            QuotationBuilder::class,
        ];
    }

    public function getSolver(): DocumentSolver
    {
        return DocumentSolver::getInstance();
    }
    
    public function getRepository(): QuotationRepository
    {
        return QuotationRepository::getInstance();
    }

    public function getBuilder(): QuotationBuilder
    {
        return QuotationBuilder::getInstance();
    }
}