activemq-cpp-3.8.2
ActiveMQTextMessage.h
Go to the documentation of this file.
1 /*
2  * Licensed to the Apache Software Foundation (ASF) under one or more
3  * contributor license agreements. See the NOTICE file distributed with
4  * this work for additional information regarding copyright ownership.
5  * The ASF licenses this file to You under the Apache License, Version 2.0
6  * (the "License"); you may not use this file except in compliance with
7  * the License. You may obtain a copy of the License at
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  */
17 
18 #ifndef _ACTIVEMQ_COMMANDS_ACTIVEMQTEXTMESSAGE_H_
19 #define _ACTIVEMQ_COMMANDS_ACTIVEMQTEXTMESSAGE_H_
20 
21 #include <activemq/util/Config.h>
23 #include <cms/TextMessage.h>
24 #include <vector>
25 #include <string>
26 #include <memory>
27 
28 namespace activemq{
29 namespace commands{
30 
32  public ActiveMQMessageTemplate<cms::TextMessage> {
33  public:
34 
35  const static unsigned char ID_ACTIVEMQTEXTMESSAGE = 28;
36 
37  mutable std::auto_ptr<std::string> text;
38 
39  private:
40 
42  ActiveMQTextMessage& operator= ( const ActiveMQTextMessage& );
43 
44  public:
45 
47  virtual ~ActiveMQTextMessage() throw();
48 
49  virtual unsigned char getDataStructureType() const;
50 
51  virtual ActiveMQTextMessage* cloneDataStructure() const;
52 
53  virtual void copyDataStructure( const DataStructure* src );
54 
55  virtual std::string toString() const;
56 
57  virtual bool equals( const DataStructure* value ) const;
58 
59  virtual void clearBody();
60 
61  virtual void beforeMarshal( wireformat::WireFormat* wireFormat );
62 
63  virtual unsigned int getSize() const;
64 
65  public: // CMS Message
66 
67  virtual cms::TextMessage* clone() const {
68  ActiveMQTextMessage* clone = this->cloneDataStructure();
69  clone->setReadOnlyBody(false);
70  clone->setReadOnlyProperties(false);
71  return dynamic_cast<cms::TextMessage*>(clone);
72  }
73 
74  public: // cms::TextMessage
75 
76  virtual std::string getText() const;
77 
78  virtual void setText( const char* msg );
79 
80  virtual void setText( const std::string& msg );
81 
82  };
83 
84 }}
85 
86 #endif /*_ACTIVEMQ_COMMANDS_ACTIVEMQTEXTMESSAGE_H_*/
#define AMQCPP_API
Definition: Config.h:30
Definition: ArrayPointer.h:432
Definition: DataStructure.h:27
std::auto_ptr< std::string > text
Definition: ActiveMQTextMessage.h:37
Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements...
Definition: DestinationResolver.h:23
void setReadOnlyBody(bool value)
Set the Read Only State of the Message Content.
Definition: Message.h:270
Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements...
Definition: CachedConsumer.h:24
#define const
Definition: zconf.h:198
Interface for a text message.
Definition: TextMessage.h:41
Definition: ActiveMQMessageTemplate.h:41
Definition: ActiveMQTextMessage.h:31
void setReadOnlyProperties(bool value)
Set the Read Only State of the Message Properties.
Definition: Message.h:254