L'écouteur d'événement Symfony2 et l'accès au noyau, à la demande et à la réponse?

J'ai vraiment du mal à comprendre cela et maintenant, je vais juste à tourner en rond.

J'ai lu que beaucoup de ce manuel que possible, payé pour une vidéo tutoriel, parcouru Google et YouTube et juste ne pouvez pas obtenir ce travail.

Je suis simplement en train d'essayer de configurer un port d'écoute active avant chaque demande. Je peux le faire, mais mon problème est d'obtenir l'accès à diverses autres pièces dont j'ai besoin.

Ci-dessous est un exemple, mais je pense que le code réel va m'aider à comprendre cela maintenant.

Je vous serais reconnaissant si quelqu'un pouvait remplir les blancs. C'est juste un exemple, mais chaque partie m'expliquer ce que c'est j'ai besoin de savoir.

Dans la configuration.yml:

services:
    kernel.listener.request_listener:
        class: Acme\Bundle\NewBundle\EventListener\RequestListener
        tags:
            - { name: kernel.event_listener, event: kernel.request, method: onKernelRequest }
        arguments: [ '@service_container' ]

La classe:

namespace Acme\Bundle\NewBundle\EventListener;

use Symfony\Component\HttpKernel\Event\GetResponseEvent;
***do I need to 'use' any others here?***

class RequestListener
{

public function onKernelRequest($container) {

    //reference to these: http://api.symfony.com/2.1/Symfony/Component/HttpKernel/Event/KernelEvent.html
    $kernel =

    //reference to the Request object
    $request = $kernel->getRequest();

    //reference to the Response object
    $response =

    //options:
    // (1)   continue to run usual content
    // (2)   stop execution and output a message
    // (3)   set cookie and continue to run usual content
    switch( $request->query->get('option') ) {

        case 1:
            return
        case 2:

            $this->setResponse("hello, message here");

            break;
        case 3:
            //*** not sure if this is the way to do it ***
            $response->headers->setCookie(new Cookie("test", 1));
            break;

    }

}

}

source d'informationauteur user2143356 | 2013-03-18