示例#1
0
 public function testMultipleReceivers()
 {
     $channel = new Wildfire_MessageTest__Wildfire_Channel_HttpHeader();
     $dispatcher = new Wildfire_Dispatcher();
     $dispatcher->setChannel($channel);
     $message = new Wildfire_Message();
     $message->setData('Hello World');
     $message->setMeta('{"line":10}');
     $message->setProtocol('http://registry.pinf.org/cadorn.org/wildfire/@meta/protocol/component/0.1.0');
     $message->setSender('http://pinf.org/cadorn.org/wildfire/packages/lib-php');
     $message->setReceiver('http://pinf.org/cadorn.org/fireconsole');
     $dispatcher->dispatch($message);
     $message->setReceiver('__TEST__');
     $dispatcher->dispatch($message);
     $channel->flush();
     $this->assertEquals(array('x-wf-protocol-1' => 'http://registry.pinf.org/cadorn.org/wildfire/@meta/protocol/component/0.1.0', 'x-wf-1-index' => '2', 'x-wf-1-1-receiver' => 'http://pinf.org/cadorn.org/fireconsole', 'x-wf-1-1-1-sender' => 'http://pinf.org/cadorn.org/wildfire/packages/lib-php', 'x-wf-1-1-1-1' => '23|{"line":10}|Hello World|', 'x-wf-1-2-receiver' => '__TEST__', 'x-wf-1-2-1-sender' => 'http://pinf.org/cadorn.org/wildfire/packages/lib-php', 'x-wf-1-2-1-2' => '23|{"line":10}|Hello World|'), $channel->getMessageParts());
 }
示例#2
0
 public function parse__enqueueMessage(&$messages, $index, $receiver, $sender, $value)
 {
     if (!$messages[$receiver]) {
         $messages[$receiver] = array();
     }
     preg_match_all('/^(.*?[^\\\\])?\\|(.*)$/', $value, $m);
     $message = new Wildfire_Message();
     $message->setReceiver($receiver);
     $message->setSender($sender);
     $message->setMeta($m[1][0] ? str_replace('|', '|', $m[1][0]) : null);
     $message->setData(str_replace('|', '|', $m[2][0]));
     $message->setProtocol('http://registry.pinf.org/cadorn.org/wildfire/@meta/protocol/component/0.1.0');
     $messages[$receiver][] = array($index, $message);
 }
示例#3
0
 private function _parse_enqueueMessage(&$messages, $index, $value)
 {
     $receiver = "*";
     if (!isset($messages[$receiver])) {
         $messages[$receiver] = array();
     }
     $message = new Wildfire_Message();
     $message->setReceiver($receiver);
     preg_match_all('/^(.*?[^\\\\])?\\|(.*)$/si', $value, $m);
     $message->setMeta($m[1][0] || null);
     $message->setData($m[2][0]);
     $messages[$receiver][] = array($index, $message);
 }