protected function handleIncome($data) { $this->debug("PHPSusi handleIncome:\n" . $data); $evt = new Event(); $evt->fromString($data); if ($evt->getType() === "consumerEvent") { $topic = $evt->getTopic(); if (array_key_exists($topic, $this->consumer_callbacks)) { $consumer_callbacks = $this->consumer_callbacks[$topic]; foreach ($consumer_callbacks as $callback) { try { $callback["handler"]($evt); } catch (Exception $e) { print $e; } } } } if ($evt->getType() === "processorEvent") { $topic = $evt->getTopic(); if (array_key_exists($topic, $this->processor_callbacks)) { $processor_callbacks = $this->processor_callbacks[$topic]; foreach ($processor_callbacks as $callback) { try { $callback["handler"]($evt); } catch (Exception $e) { print $e; } } $this->ack($evt->getData()); } } if ($evt->getType() === "ack") { // ID as string $id = $evt->getStr_ID(); if (array_key_exists($id, $this->finish_handlers)) { $finish_handler = $this->finish_handlers[$id]; try { $finish_handler($evt); // delete callback from memory unset($this->finish_handlers[$id]); } catch (Exception $e) { print $e; } } } if ($evt->getType() === "status") { if ($evt->getError() == true) { $error_msg = $evt->getErrorMsg(); echo "server error:" . $error_msg . "\n"; } } }