EventSubscriber Ordnerstruktur

Hallo Zusammen Gemäss dem Upgrade Guide http://wiki.shopware.de/Shopware-4.2-Up … ubscribers soll man anstelle der früher genutzten Methode $this->subscribeEvent(…) einen EventSubscriber erstellen und diesen registrieren: EventSubscriber: [code]<?php use Enlight\Event\SubscriberInterface;

class PriceSubscriber implements SubscriberInterface {
public static function getSubscribedEvents() {
return array(
‘Enlight_Controller_Front_PostDispatch’ => ‘onFrontPostDispatch’ ); } public function onFrontPostDispatch($args) { Shopware()->Debuglogger()->info(‘Enlight_Controller_Front_PostDispatch Event’); } } [/code] Boootstrap: public function install() { ... $eventManager = Shopware()-\>Events(); $subscriber = new PriceSubscriber(); $eventManager-\>addSubscriber($subscriber); Shopware()-\>Debuglogger()-\>info('Register Hook'); ... } Leider steht da nicht, wo man den EventSubscriber ablegen soll, damit er vom Autoloader gefunden wird. Sodass bei der Installation ein Fehler geworfen wird, weil er ihn nicht findet. Wo muss ich ihn ablegen, damit er gefunden wird?

Ich antworte mir mal selbst: Die klassische API funktioniert unter Shopware 4.2 noch, nur haben sich die Argumente geändert. Ein Eventsubscriber anzulegen ist nicht zwingend notwendig. Bootstrap: private function registerEventsAndHooks() { // Events $this-\>subscribeEvent('Event', 'eventDispatchMethod'); // Hooks $this-\>subscribeEvent('sArticles::sGetArticleById::after', 'onHookDispatch'); } Quelle: https://github.com/ShopwareAG/shopware- … criber.php (Kommentar der EventSubscriber Klasse) Ich wüsste allerdings trotzdem gerne, wo EventSubscriber abgelegt werden müssen.