diff options
author | Federico Marani <federico.marani@ymail.com> | 2009-02-20 18:57:20 +0000 |
---|---|---|
committer | Federico Marani <federico.marani@ymail.com> | 2009-02-20 18:57:20 +0000 |
commit | 2ac684f53df3f76aacb4d1be79d7db64567f1964 (patch) | |
tree | ffb21b530b41590ae6c69346ce535f7e518a277d /extlib/Stomp/Message/Map.php | |
parent | 09bab904091316fe669619ec90a26a86fc1927d5 (diff) |
* implemented STOMP support for external message queueing systems
* (ticket-724)
* included PHP STOMP libraries (http://code.google.com/p/stompcli/)
Diffstat (limited to 'extlib/Stomp/Message/Map.php')
-rw-r--r-- | extlib/Stomp/Message/Map.php | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/extlib/Stomp/Message/Map.php b/extlib/Stomp/Message/Map.php new file mode 100644 index 000000000..288456a84 --- /dev/null +++ b/extlib/Stomp/Message/Map.php @@ -0,0 +1,55 @@ +<?php +/** + * + * Copyright 2005-2006 The Apache Software Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/* vim: set expandtab tabstop=3 shiftwidth=3: */ + +require_once 'Stomp/Message.php'; + +/** + * Message that contains a set of name-value pairs + * + * @package Stomp + * @author Dejan Bosanac <dejan@nighttale.net> + * @version $Revision: 23 $ + */ +class Stomp_Message_Map extends Stomp_Message +{ + public $map; + + /** + * Constructor + * + * @param Stomp_Frame|string $msg + * @param array $headers + */ + function __construct ($msg, $headers = null) + { + if ($msg instanceof Stomp_Frame) { + $this->_init($msg->command, $msg->headers, $msg->body); + $this->map = json_decode($msg->body); + } else { + $this->_init("SEND", $headers, $msg); + if ($this->headers == null) { + $this->headers = array(); + } + $this->headers['amq-msg-type'] = 'MapMessage'; + $this->body = json_encode($msg); + } + } +} +?>
\ No newline at end of file |