]> git.mxchange.org Git - quix0rs-gnu-social.git/blob - extlib/Stomp/Message/Map.php
Merge branch '0.7.x' into 0.8.x
[quix0rs-gnu-social.git] / extlib / Stomp / Message / Map.php
1 <?php
2 /**
3  *
4  * Copyright 2005-2006 The Apache Software Foundation
5  *
6  * Licensed under the Apache License, Version 2.0 (the "License");
7  * you may not use this file except in compliance with the License.
8  * You may obtain a copy of the License at
9  *
10  * http://www.apache.org/licenses/LICENSE-2.0
11  *
12  * Unless required by applicable law or agreed to in writing, software
13  * distributed under the License is distributed on an "AS IS" BASIS,
14  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15  * See the License for the specific language governing permissions and
16  * limitations under the License.
17  */
18
19 /* vim: set expandtab tabstop=3 shiftwidth=3: */
20
21 require_once 'Stomp/Message.php';
22
23 /**
24  * Message that contains a set of name-value pairs
25  *
26  * @package Stomp
27  * @author Dejan Bosanac <dejan@nighttale.net>
28  * @version $Revision: 23 $
29  */
30 class Stomp_Message_Map extends Stomp_Message
31 {
32     public $map;
33     
34     /**
35      * Constructor
36      *
37      * @param Stomp_Frame|string $msg
38      * @param array $headers
39      */
40     function __construct ($msg, $headers = null)
41     {
42         if ($msg instanceof Stomp_Frame) {
43             $this->_init($msg->command, $msg->headers, $msg->body);
44             $this->map = json_decode($msg->body);
45         } else {
46             $this->_init("SEND", $headers, $msg);
47             if ($this->headers == null) {
48                 $this->headers = array();
49             }
50             $this->headers['amq-msg-type'] = 'MapMessage';
51             $this->body = json_encode($msg);
52         }
53     }
54 }
55 ?>