$container = new IONContainer($CONFIG); $reg_1_id = $susi->registerProcessor("test_controller", function (&$event) use($susi, $container) { if (isset($event["data"]["payload"])) { $event["data"]["payload"]["test1"] = "ok"; } }); $reg_2_id = $susi->registerProcessor("test_controller", function (&$event) use($susi, $container) { if (isset($event["data"]["payload"])) { $event["data"]["payload"]["test2"] = "ok"; } $susi->publish("lala", array("PUP" => "FROM P2"), function ($event) use($susi, $container) { echo "finished \n"; }); }); echo "unregister " . $reg_1_id . " "; echo $susi->unregisterProcessor($reg_1_id); echo $susi->unregisterProcessor($reg_2_id); // should fail //echo "unregister ".$reg_1_id. " "; //echo $susi->unregisterConsumer($reg_1_id); /* $susi->registerConsumer("php_controller", // callback function($event) use($susi,$container) { echo "PHP CONSUMER CALLBACK"; $data = $event["data"]; if(isset($data["payload"])) { $data["payload"]["consumer"] = "ok"; } } );
$c1 = $susi->registerConsumer("test_event", function (&$event) use($susi) { echo "consumer handler called "; $data = $event->getData(); // test event data if (isset($data["payload"]["test_payload"]) && $data["payload"]["test_payload"] == "ok1_ok2" && count($data["headers"]) == 3) { echo "OK \n"; } else { echo "FAILED \n"; } }); $GLOBALS['test_starter_id'] = $susi->registerProcessor("heartbeat::five", function (&$event) use($susi, $p1, $p2, $c1) { echo "Start Test \n"; // Publish Event $evt = new Event("test_event", array("number" => 1), array(array("header_info" => "en_en"))); $susi->publish($evt, function ($event) use($susi, $p1, $p2, $c1) { echo "Test Finished Callback called >>> "; print_r($event->getData()); // remove events $susi->unregisterProcessor($p1); $susi->unregisterProcessor($p2); $susi->unregisterConsumer($c1); // use this $susi->unregisterProcessor($GLOBALS['test_starter_id']); // or stop test with // exit(0); }); }); /* * start Susi */ $susi->run();