autowp/autowp

View on GitHub
module/Application/src/Controller/Api/GalleryControllerFactory.php

Summary

Maintainability
A
0 mins
Test Coverage
F
0%
<?php

declare(strict_types=1);

namespace Application\Controller\Api;

use Application\ItemNameFormatter;
use Application\Model\Item;
use Application\Model\Picture;
use Application\Model\PictureItem;
use Application\PictureNameFormatter;
use Autowp\Comments\CommentsService;
use Autowp\Image\Storage;
use interop\container\containerinterface;
use Laminas\ServiceManager\Factory\FactoryInterface;

class GalleryControllerFactory implements FactoryInterface
{
    /**
     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
     * @param string                $requestedName
     * @param ?array<string, mixed> $options
     */
    public function __invoke(containerinterface $container, $requestedName, ?array $options = null): GalleryController
    {
        return new GalleryController(
            $container->get(Picture::class),
            $container->get(PictureItem::class),
            $container->get(Item::class),
            $container->get(CommentsService::class),
            $container->get(PictureNameFormatter::class),
            $container->get(ItemNameFormatter::class),
            $container->get(Storage::class)
        );
    }
}