activemq-cpp-3.9.5
BaseDataStructure.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_BASEDATASTRUCTURE_H_
19#define _ACTIVEMQ_COMMANDS_BASEDATASTRUCTURE_H_
20
23
24#include <string>
25#include <sstream>
26
27namespace activemq{
28namespace wireformat{
29 class WireFormat;
30}
31namespace commands{
32
34 public:
35
36 virtual ~BaseDataStructure() {}
37
38 virtual bool isMarshalAware() const {
39 return false;
40 }
41
42 virtual void beforeMarshal( wireformat::WireFormat* wireFormat AMQCPP_UNUSED ) {}
43
44 virtual void afterMarshal( wireformat::WireFormat* wireFormat AMQCPP_UNUSED ) {}
45
46 virtual void beforeUnmarshal( wireformat::WireFormat* wireFormat AMQCPP_UNUSED ) {}
47
48 virtual void afterUnmarshal( wireformat::WireFormat* wireFormat AMQCPP_UNUSED ) {}
49
50 virtual void setMarshaledForm( wireformat::WireFormat* wireFormat AMQCPP_UNUSED,
51 const std::vector<char>& data AMQCPP_UNUSED ) {}
52
53 virtual std::vector<unsigned char> getMarshaledForm(
54 wireformat::WireFormat* wireFormat AMQCPP_UNUSED ) {
55
56 return std::vector<unsigned char>();
57 }
58
59 virtual void copyDataStructure( const DataStructure* src AMQCPP_UNUSED ) {
60 // Nothing to do here
61 }
62
63 virtual std::string toString() const {
64 return std::string( "No Data for Class BaseDataStructure\n" );
65 }
66
67 virtual bool equals( const DataStructure* value AMQCPP_UNUSED ) const {
68 return true;
69 }
70
71 };
72
73}}
74
75#endif /*_ACTIVEMQ_CONNECTOR_OPENWIRE_COMMANDS_BASEDATASTRUCTURE_H_*/
#define AMQCPP_API
Definition Config.h:30
Definition BaseDataStructure.h:33
virtual std::vector< unsigned char > getMarshaledForm(wireformat::WireFormat *wireFormat AMQCPP_UNUSED)
Definition BaseDataStructure.h:53
virtual void beforeUnmarshal(wireformat::WireFormat *wireFormat AMQCPP_UNUSED)
Definition BaseDataStructure.h:46
virtual void copyDataStructure(const DataStructure *src AMQCPP_UNUSED)
Definition BaseDataStructure.h:59
virtual ~BaseDataStructure()
Definition BaseDataStructure.h:36
virtual void setMarshaledForm(wireformat::WireFormat *wireFormat AMQCPP_UNUSED, const std::vector< char > &data AMQCPP_UNUSED)
Definition BaseDataStructure.h:50
virtual bool isMarshalAware() const
Determine if the class implementing this interface is really wanting to be told about marshaling.
Definition BaseDataStructure.h:38
virtual void beforeMarshal(wireformat::WireFormat *wireFormat AMQCPP_UNUSED)
Definition BaseDataStructure.h:42
virtual void afterUnmarshal(wireformat::WireFormat *wireFormat AMQCPP_UNUSED)
Definition BaseDataStructure.h:48
virtual void afterMarshal(wireformat::WireFormat *wireFormat AMQCPP_UNUSED)
Definition BaseDataStructure.h:44
virtual bool equals(const DataStructure *value AMQCPP_UNUSED) const
Definition BaseDataStructure.h:67
virtual std::string toString() const
Returns a string containing the information for this DataStructure such as its type and value of its ...
Definition BaseDataStructure.h:63
Definition DataStructure.h:27
Provides a mechanism to marshal commands into and out of packets or into and out of streams,...
Definition WireFormat.h:43
Definition ActiveMQBlobMessage.h:28
Definition BaseDataStructure.h:28
Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.
Definition CachedConsumer.h:24