protected function _invokeListeners($type) { if (isset($this->_listeners[$type])) { lmbDelegate::invokeAll($this->_listeners[$type], array($this)); } if (isset(self::$_global_listeners[$type])) { lmbDelegate::invokeAll(self::$_global_listeners[$type], array($this)); } }
function testInvokeAll() { $s1 = new DelegateTestingStub(); $s2 = new DelegateTestingStub(); $s3 = new DelegateTestingStub(); $d1 = new lmbDelegate($s1, 'instanceMethod'); $d2 = new lmbDelegate($s2, 'instanceMethod'); $d3 = new lmbDelegate($s3, 'instanceMethod'); lmbDelegate::invokeAll(array($d1, $d2, $d3), array('bar')); $this->assertTrue($s1->instance_called); $this->assertEqual($s1->instance_arg, 'bar'); $this->assertTrue($s2->instance_called); $this->assertEqual($s2->instance_arg, 'bar'); $this->assertTrue($s3->instance_called); $this->assertEqual($s3->instance_arg, 'bar'); }