for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace Sylius\ShopApiPlugin\Controller\Checkout;
use FOS\RestBundle\View\View;
use FOS\RestBundle\View\ViewHandlerInterface;
use League\Tactician\CommandBus;
use Sylius\ShopApiPlugin\Command\ChoosePaymentMethod;
use Sylius\ShopApiPlugin\Command\ChooseShippingMethod;
use Sylius\ShopApiPlugin\Command\CompleteOrder;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
final class CompleteOrderAction
{
/**
* @var ViewHandlerInterface
*/
private $viewHandler;
* @var CommandBus
private $bus;
* @param ViewHandlerInterface $viewHandler
* @param CommandBus $bus
public function __construct(ViewHandlerInterface $viewHandler, CommandBus $bus)
$this->viewHandler = $viewHandler;
$this->bus = $bus;
}
* @param Request $request
*
* @return Response
public function __invoke(Request $request)
$this->bus->handle(new CompleteOrder(
$request->attributes->get('token'),
$request->request->get('email'),
$request->request->get('notes')
));
return $this->viewHandler->handle(View::create(null, Response::HTTP_NO_CONTENT));