Exemplo n.º 1
0
 public function testStaticSignalsFromOtherSource()
 {
     $norris = new Fire();
     ezcSignalCollection::setStaticConnectionsHolder($norris);
     $signals = new ezcSignalCollection();
     $signals->emit("chuck");
     $this->assertEquals(1, $norris->fired);
 }
<?php

require_once 'tutorial_autoload.php';
class customLazySignalConfiguration implements ezcBaseConfigurationInitializer
{
    public static function configureObject($signal)
    {
        $signal->connect('default', 'signal', 'customFunction');
    }
}
ezcBaseInit::setCallback('ezcInitSignalStaticConnections', 'customLazySignalConfiguration');
function customFunction()
{
    echo "Custom function called with:\n", var_export(func_get_args(), true);
}
$signals = new ezcSignalCollection();
$signals->emit('signal', 42);
<?php

require_once 'tutorial_autoload.php';
class HelloClass
{
    public function hello()
    {
        echo "Hello world\n";
    }
}
$signals = new ezcSignalCollection();
$signals->connect("sayHello", array(new HelloClass(), "hello"));
$signals->emit("sayHello");