for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php defined('SYSPATH') or die('No direct access allowed.');
/**
* Kohana event observer. Uses the SPL observer pattern.
*
* $Id: Event_Observer.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_Observer implements SplObserver
{
// Calling object
protected $caller;
* Initializes a new observer and attaches the subject as the caller.
* @param object Event_Subject
* @return void
@return
Adding a @return annotation to a constructor is not recommended, since a constructor does not have a meaningful return value.
Please refer to the PHP core documentation on constructors.
public function __construct(SplSubject $caller)
// Update the caller
$this->update($caller);
}
* Updates the observer subject with a new caller.
* @chainable
* @return Event_Observer
public function update(SplSubject $caller)
if (! ($caller instanceof Event_Subject)) {
throw new Kohana_Exception('event.invalid_subject', get_class($caller), get_class($this));
$this->caller = $caller;
return $this;
* Detaches this observer from the subject.
public function remove()
// Detach this observer from the caller
$this->caller->detach($this);
* Notify the observer of a new message. This function must be defined in
* all observers and must take exactly one parameter of any type.
* @param mixed message string, object, or array
abstract public function notify($message);
} // End Event Observer
Adding a
@returnannotation to a constructor is not recommended, since a constructor does not have a meaningful return value.Please refer to the PHP core documentation on constructors.