Author: romanb
Date: 2008-09-12 11:55:06 +0100 (Fri, 12 Sep 2008)
New Revision: 4932

Added:
   trunk/lib/Doctrine/Common/
   trunk/lib/Doctrine/Common/EventManager.php
   trunk/lib/Doctrine/Common/EventSubscriber.php
   trunk/lib/Doctrine/Common/Events/
   trunk/lib/Doctrine/Common/Events/Event.php
Removed:
   trunk/lib/Doctrine/Event.php
   trunk/lib/Doctrine/EventManager.php
Modified:
   trunk/lib/Doctrine/Connection.php
   trunk/lib/Doctrine/ConnectionFactory.php
   trunk/lib/Doctrine/EntityManager.php
   trunk/tests/lib/Doctrine_OrmTestSuite.php
   trunk/tests/lib/mocks/Doctrine_EntityManagerMock.php
Log:
moved event stuff

Added: trunk/lib/Doctrine/Common/EventManager.php
===================================================================
--- trunk/lib/Doctrine/Common/EventManager.php                          (rev 0)
+++ trunk/lib/Doctrine/Common/EventManager.php  2008-09-12 10:55:06 UTC (rev 
4932)
@@ -0,0 +1,116 @@
+<?php
+/*
+ *  $Id$
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ * This software consists of voluntary contributions made by many individuals
+ * and is licensed under the LGPL. For more information, see
+ * <http://www.phpdoctrine.org>.
+ */
+
+#namespace Doctrine::Common;
+
+/**
+ * The EventManager is the central point of Doctrine's event listener system.
+ * Listeners are registered on the manager and events are dispatched through 
the
+ * manager.
+ * 
+ * @author Roman Borschel <[EMAIL PROTECTED]>
+ * @author Guilherme Blanco <[EMAIL PROTECTED]>
+ * @since 2.0
+ */
+class Doctrine_Common_EventManager
+{
+    /**
+     * Map of registered listeners.
+     * <event> => <listeners> 
+     *
+     * @var array
+     */
+    private $_listeners = array();
+
+    /**
+     * Dispatches an event to all registered listeners.
+     *
+     * @param string|Event $event  The name of the event or the event object.
+     * @return boolean
+     */
+    public function dispatchEvent($event)
+    {
+        $argIsCallback = is_string($event);
+        $callback = $argIsCallback ? $event : $event->getType();
+
+        if (isset($this->_listeners[$callback])) {
+            $event = $argIsCallback ? new Doctrine_Event($event) : $event;
+            foreach ($this->_listeners[$callback] as $listener) {
+                $listener->$callback($event);
+            }
+            return ! $event->getDefaultPrevented();
+        }
+        return true;
+    }
+
+    /**
+     * Gets the listeners of a specific event or all listeners.
+     *
+     * @param string $event  The name of the event.
+     * @return 
+     */
+    public function getListeners($event = null)
+    {
+        return $event ? $this->_listeners[$event] : $this->_listeners;
+    }
+
+    /**
+     * Checks whether an event has any registered listeners.
+     *
+     * @param string $event
+     * @return boolean
+     */
+    public function hasListeners($event)
+    {
+        return isset($this->_listeners[$event]);
+    }
+
+    /**
+     * Adds an event listener that listens on the specified events.
+     *
+     * @param string|array $events  The event(s) to listen on.
+     * @param object $listener  The listener object.
+     */
+    public function addEventListener($events, $listener)
+    {
+        // TODO: maybe check for duplicate registrations?
+        if ( ! is_array($events)) {
+            $events = array($events);
+        }
+
+        foreach ($events as $event) {
+            $this->_listeners[$event] = $listener;
+        }
+    }
+    
+    /**
+     * Adds an EventSubscriber. The subscriber is asked for all the events he 
is
+     * interested in and added as a listener for these events.
+     * 
+     * @param Doctrine::Common::Event::EventSubscriber $subscriber  The 
subscriber.
+     */
+    public function addEventSubscriber(Doctrine_Common_EventSubscriber 
$subscriber)
+    {
+        $this->addEventListener($subscriber->getSubscribedEvents(), 
$subscriber);
+    }
+}
+
+?>
\ No newline at end of file

Added: trunk/lib/Doctrine/Common/EventSubscriber.php
===================================================================
--- trunk/lib/Doctrine/Common/EventSubscriber.php                               
(rev 0)
+++ trunk/lib/Doctrine/Common/EventSubscriber.php       2008-09-12 10:55:06 UTC 
(rev 4932)
@@ -0,0 +1,39 @@
+<?php
+/*
+ *  $Id: EventListener.php 4653 2008-07-10 17:17:58Z romanb $
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ * This software consists of voluntary contributions made by many individuals
+ * and is licensed under the LGPL. For more information, see
+ * <http://www.phpdoctrine.org>.
+ */
+
+#namespace Doctrine::Common;
+
+/**
+ * An EventSubscriber knows itself what events it is interested in.
+ * If an EventSubscriber is added to an EventManager, the manager invokes
+ * getSubscribedEvents() and registers the subscriber as a listener for all
+ * returned events.
+ *
+ * @author      Roman Borschel <[EMAIL PROTECTED]>
+ * @license     http://www.opensource.org/licenses/lgpl-license.php LGPL
+ * @link        www.phpdoctrine.org
+ * @since       2.0
+ * @version     $Revision: 4653 $
+ */
+interface Doctrine_Common_EventSubscriber
+{
+    public function getSubscribedEvents();
+}

Added: trunk/lib/Doctrine/Common/Events/Event.php
===================================================================
--- trunk/lib/Doctrine/Common/Events/Event.php                          (rev 0)
+++ trunk/lib/Doctrine/Common/Events/Event.php  2008-09-12 10:55:06 UTC (rev 
4932)
@@ -0,0 +1,78 @@
+<?php
+/*
+ *  $Id$
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ * This software consists of voluntary contributions made by many individuals
+ * and is licensed under the LGPL. For more information, see
+ * <http://www.phpdoctrine.org>.
+ */
+
+#namespace Doctrine::Common::Events;
+
+/**
+ * Doctrine_Event
+ *
+ * @author      Konsta Vesterinen <[EMAIL PROTECTED]>
+ * @license     http://www.opensource.org/licenses/lgpl-license.php LGPL
+ * @package     Doctrine
+ * @subpackage  Event
+ * @link        www.phpdoctrine.org
+ * @since       2.0
+ * @version     $Revision$
+ */
+class Doctrine_Common_Events_Event
+{
+    /* Event callback constants */
+    const preDelete = 'preDelete';
+    const postDelete = 'postDelete';
+    //...more
+
+
+    protected $_type;
+    protected $_target;
+    protected $_defaultPrevented;
+
+
+    public function __construct($type, $target = null)
+    {
+        $this->_type = $type;
+        $this->_target = $target;
+        $this->_defaultPrevented = false;
+    }
+
+
+    public function getType()
+    {
+        return $this->_type;
+    }
+
+
+    public function preventDefault()
+    {
+        $this->_defaultPrevented = true;
+    }
+
+
+    public function getDefaultPrevented()
+    {
+        return $this->_defaultPrevented;
+    }
+
+
+    public function getTarget()
+    {
+        return $this->_target;
+    }
+}  

Modified: trunk/lib/Doctrine/Connection.php
===================================================================
--- trunk/lib/Doctrine/Connection.php   2008-09-12 10:50:20 UTC (rev 4931)
+++ trunk/lib/Doctrine/Connection.php   2008-09-12 10:55:06 UTC (rev 4932)
@@ -175,7 +175,7 @@
             $this->_config = new Doctrine_Configuration();
         }
         if ( ! $eventManager) {
-            $this->_eventManager = new Doctrine_EventManager();
+            $this->_eventManager = new Doctrine_Common_EventManager();
         }
         
         // create platform

Modified: trunk/lib/Doctrine/ConnectionFactory.php
===================================================================
--- trunk/lib/Doctrine/ConnectionFactory.php    2008-09-12 10:50:20 UTC (rev 
4931)
+++ trunk/lib/Doctrine/ConnectionFactory.php    2008-09-12 10:55:06 UTC (rev 
4932)
@@ -59,14 +59,14 @@
      * @return Connection
      */
     public function createConnection(array $params, Doctrine_Configuration 
$config = null,
-            Doctrine_EventManager $eventManager = null)
+            Doctrine_Common_EventManager $eventManager = null)
     {
         // create default config and event manager, if not set
         if ( ! $config) {
             $config = new Doctrine_Configuration();
         }
         if ( ! $eventManager) {
-            $eventManager = new Doctrine_EventManager();
+            $eventManager = new Doctrine_Common_EventManager();
         }
         
         // check for existing pdo object

Modified: trunk/lib/Doctrine/EntityManager.php
===================================================================
--- trunk/lib/Doctrine/EntityManager.php        2008-09-12 10:50:20 UTC (rev 
4931)
+++ trunk/lib/Doctrine/EntityManager.php        2008-09-12 10:55:06 UTC (rev 
4932)
@@ -149,7 +149,7 @@
      * @param string $name
      */
     protected function __construct(Doctrine_Connection $conn, $name, 
Doctrine_Configuration $config,
-            Doctrine_EventManager $eventManager)
+            Doctrine_Common_EventManager $eventManager)
     {
         $this->_conn = $conn;
         $this->_name = $name;

Deleted: trunk/lib/Doctrine/Event.php
===================================================================
--- trunk/lib/Doctrine/Event.php        2008-09-12 10:50:20 UTC (rev 4931)
+++ trunk/lib/Doctrine/Event.php        2008-09-12 10:55:06 UTC (rev 4932)
@@ -1,78 +0,0 @@
-<?php
-/*
- *  $Id$
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the LGPL. For more information, see
- * <http://www.phpdoctrine.org>.
- */
-
-#namespace Doctrine::ORM::Events;
-
-/**
- * Doctrine_Event
- *
- * @author      Konsta Vesterinen <[EMAIL PROTECTED]>
- * @license     http://www.opensource.org/licenses/lgpl-license.php LGPL
- * @package     Doctrine
- * @subpackage  Event
- * @link        www.phpdoctrine.org
- * @since       2.0
- * @version     $Revision$
- */
-class Doctrine_Event
-{
-    /* Event callback constants */
-    const preDelete = 'preDelete';
-    const postDelete = 'postDelete';
-    //...more
-
-
-    protected $_type;
-    protected $_target;
-    protected $_defaultPrevented;
-
-
-    public function __construct($type, $target = null)
-    {
-        $this->_type = $type;
-        $this->_target = $target;
-        $this->_defaultPrevented = false;
-    }
-
-
-    public function getType()
-    {
-        return $this->_type;
-    }
-
-
-    public function preventDefault()
-    {
-        $this->_defaultPrevented = true;
-    }
-
-
-    public function getDefaultPrevented()
-    {
-        return $this->_defaultPrevented;
-    }
-
-
-    public function getTarget()
-    {
-        return $this->_target;
-    }
-}  

Deleted: trunk/lib/Doctrine/EventManager.php
===================================================================
--- trunk/lib/Doctrine/EventManager.php 2008-09-12 10:50:20 UTC (rev 4931)
+++ trunk/lib/Doctrine/EventManager.php 2008-09-12 10:55:06 UTC (rev 4932)
@@ -1,116 +0,0 @@
-<?php
-/*
- *  $Id$
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the LGPL. For more information, see
- * <http://www.phpdoctrine.org>.
- */
-
-#namespace Doctrine::Common::Event;
-
-/**
- * The EventManager is the central point of Doctrine's event listener system.
- * Listeners are registered on the manager and events are dispatched through 
the
- * manager.
- * 
- * @author Roman Borschel <[EMAIL PROTECTED]>
- * @author Guilherme Blanco <[EMAIL PROTECTED]>
- * @since 2.0
- */
-class Doctrine_EventManager
-{
-    /**
-     * Map of registered listeners.
-     * <event> => <listeners> 
-     *
-     * @var array
-     */
-    private $_listeners = array();
-
-    /**
-     * Dispatches an event to all registered listeners.
-     *
-     * @param string|Event $event  The name of the event or the event object.
-     * @return boolean
-     */
-    public function dispatchEvent($event)
-    {
-        $argIsCallback = is_string($event);
-        $callback = $argIsCallback ? $event : $event->getType();
-
-        if (isset($this->_listeners[$callback])) {
-            $event = $argIsCallback ? new Doctrine_Event($event) : $event;
-            foreach ($this->_listeners[$callback] as $listener) {
-                $listener->$callback($event);
-            }
-            return ! $event->getDefaultPrevented();
-        }
-        return true;
-    }
-
-    /**
-     * Gets the listeners of a specific event or all listeners.
-     *
-     * @param string $event  The name of the event.
-     * @return 
-     */
-    public function getListeners($event = null)
-    {
-        return $event ? $this->_listeners[$event] : $this->_listeners;
-    }
-
-    /**
-     * Checks whether an event has any registered listeners.
-     *
-     * @param string $event
-     * @return boolean
-     */
-    public function hasListeners($event)
-    {
-        return isset($this->_listeners[$event]);
-    }
-
-    /**
-     * Adds an event listener that listens on the specified events.
-     *
-     * @param string|array $events  The event(s) to listen on.
-     * @param object $listener  The listener object.
-     */
-    public function addEventListener($events, $listener)
-    {
-        // TODO: maybe check for duplicate registrations?
-        if ( ! is_array($events)) {
-            $events = array($events);
-        }
-
-        foreach ($events as $event) {
-            $this->_listeners[$event] = $listener;
-        }
-    }
-    
-    /**
-     * Adds an EventSubscriber. The subscriber is asked for all the events he 
is
-     * interested in and added as a listener for these events.
-     * 
-     * @param Doctrine::Common::Event::EventSubscriber $subscriber  The 
subscriber.
-     */
-    public function addEventSubscriber(Doctrine_EventSubscriber $subscriber)
-    {
-        $this->addEventListener($subscriber->getSubscribedEvents(), 
$subscriber);
-    }
-}
-
-?>
\ No newline at end of file

Modified: trunk/tests/lib/Doctrine_OrmTestSuite.php
===================================================================
--- trunk/tests/lib/Doctrine_OrmTestSuite.php   2008-09-12 10:50:20 UTC (rev 
4931)
+++ trunk/tests/lib/Doctrine_OrmTestSuite.php   2008-09-12 10:55:06 UTC (rev 
4932)
@@ -11,7 +11,7 @@
     protected function setUp()
     {
         $config = new Doctrine_Configuration();
-        $eventManager = new Doctrine_EventManager();
+        $eventManager = new Doctrine_Common_EventManager();
         $connectionOptions = array(
             'driverClass' => 'Doctrine_ConnectionMock',
             'user' => 'john',

Modified: trunk/tests/lib/mocks/Doctrine_EntityManagerMock.php
===================================================================
--- trunk/tests/lib/mocks/Doctrine_EntityManagerMock.php        2008-09-12 
10:50:20 UTC (rev 4931)
+++ trunk/tests/lib/mocks/Doctrine_EntityManagerMock.php        2008-09-12 
10:55:06 UTC (rev 4932)
@@ -34,13 +34,13 @@
      * @return unknown
      */
     public static function create($conn, $name, Doctrine_Configuration $config 
= null,
-            Doctrine_EventManager $eventManager = null)
+            Doctrine_Common_EventManager $eventManager = null)
     {
         if (is_null($config)) {
             $config = new Doctrine_Configuration();
         }
         if (is_null($eventManager)) {
-            $eventManager = new Doctrine_EventManager();
+            $eventManager = new Doctrine_Common_EventManager();
         }
         
         return new Doctrine_EntityManagerMock($conn, $name, $config, 
$eventManager);   


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"doctrine-svn" group.
 To post to this group, send email to [email protected]
 To unsubscribe from this group, send email to [EMAIL PROTECTED]
 For more options, visit this group at 
http://groups.google.co.uk/group/doctrine-svn?hl=en-GB
-~----------~----~----~----~------~----~------~--~---

Reply via email to