summaryrefslogtreecommitdiff
path: root/system/libraries/Event_Subject.php
diff options
context:
space:
mode:
Diffstat (limited to 'system/libraries/Event_Subject.php')
-rw-r--r--system/libraries/Event_Subject.php67
1 files changed, 0 insertions, 67 deletions
diff --git a/system/libraries/Event_Subject.php b/system/libraries/Event_Subject.php
deleted file mode 100644
index d1ccc544..00000000
--- a/system/libraries/Event_Subject.php
+++ /dev/null
@@ -1,67 +0,0 @@
-<?php defined('SYSPATH') OR die('No direct access allowed.');
-/**
- * Kohana event subject. Uses the SPL observer pattern.
- *
- * $Id: Event_Subject.php 3769 2008-12-15 00:48:56Z zombor $
- *
- * @package Core
- * @author Kohana Team
- * @copyright (c) 2007-2008 Kohana Team
- * @license http://kohanaphp.com/license.html
- */
-abstract class Event_Subject implements SplSubject {
-
- // Attached subject listeners
- protected $listeners = array();
-
- /**
- * Attach an observer to the object.
- *
- * @chainable
- * @param object Event_Observer
- * @return object
- */
- public function attach(SplObserver $obj)
- {
- if ( ! ($obj instanceof Event_Observer))
- throw new Kohana_Exception('eventable.invalid_observer', get_class($obj), get_class($this));
-
- // Add a new listener
- $this->listeners[spl_object_hash($obj)] = $obj;
-
- return $this;
- }
-
- /**
- * Detach an observer from the object.
- *
- * @chainable
- * @param object Event_Observer
- * @return object
- */
- public function detach(SplObserver $obj)
- {
- // Remove the listener
- unset($this->listeners[spl_object_hash($obj)]);
-
- return $this;
- }
-
- /**
- * Notify all attached observers of a new message.
- *
- * @chainable
- * @param mixed message string, object, or array
- * @return object
- */
- public function notify($message)
- {
- foreach ($this->listeners as $obj)
- {
- $obj->notify($message);
- }
-
- return $this;
- }
-
-} // End Event Subject \ No newline at end of file