]> git.mxchange.org Git - quix0rs-gnu-social.git/blob - extlib/Stomp/Message/Map.php
Merge branch 'testing' into 0.9.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  */
28 class StompMessageMap extends StompMessage
29 {
30     public $map;
31     
32     /**
33      * Constructor
34      *
35      * @param StompFrame|string $msg
36      * @param array $headers
37      */
38     function __construct ($msg, $headers = null)
39     {
40         if ($msg instanceof StompFrame) {
41             $this->_init($msg->command, $msg->headers, $msg->body);
42             $this->map = json_decode($msg->body, true);
43         } else {
44             $this->_init("SEND", $headers, $msg);
45             if ($this->headers == null) {
46                 $this->headers = array();
47             }
48             $this->headers['transformation'] = 'jms-map-json';
49             $this->body = json_encode($msg);
50         }
51     }
52 }
53 ?>