puphpet/puphpet

View on GitHub
src/PuphpetBundle/Controller/VagrantfileAwsController.php

Summary

Maintainability
A
3 hrs
Test Coverage
<?php

namespace PuphpetBundle\Controller;

use PuphpetBundle\Controller;

use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Method;

use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;

class VagrantfileAwsController extends Controller
{
    /**
     * @param Request $request
     * @param array   $data
     * @return Response
     * @Route("/extension/vagrantfile-aws",
     *     name="puphpet.vagrantfile_aws.homepage")
     * @Method({"GET"})
     */
    public function indexAction(Request $request, array $data)
    {
        return $this->render('PuphpetBundle::vagrantfile-aws.html.twig', [
            'data' => $data,
        ]);
    }

    /**
     * @param Request $request
     * @return Response
     * @Route("/extension/vagrantfile-aws/machine",
     *     name="puphpet.vagrantfile_aws.machine")
     * @Method({"GET"})
     */
    public function machineAction(Request $request)
    {
        $data = $this->getExtensionData('vagrantfile-aws');

        return $this->render('PuphpetBundle:vagrantfile-aws:machine.html.twig', [
            'machine'        => $data['empty_machine'],
            'instance_types' => $data['instance_types'],
            'regions'        => $data['regions'],
        ]);
    }

    /**
     * @param Request $request
     * @return Response
     * @Route("/extension/vagrantfile-aws/synced-folder",
     *     name="puphpet.vagrantfile_aws.synced_folder")
     * @Method({"GET"})
     */
    public function syncedFolderAction(Request $request)
    {
        $data = $this->getExtensionData('vagrantfile-aws');

        return $this->render('PuphpetBundle:vagrantfile-aws:synced-folder.html.twig', [
            'synced_folder' => $data['empty_synced_folder'],
        ]);
    }
}