activemq-cpp-3.9.5
ActiveMQQueue.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_ACTIVEMQQUEUE_H_
19 #define _ACTIVEMQ_COMMANDS_ACTIVEMQQUEUE_H_
20 
21 // Turn off warning message for ignored exception specification
22 #ifdef _MSC_VER
23 #pragma warning( disable : 4290 )
24 #endif
25 
26 #include <activemq/util/Config.h>
29 #include <decaf/lang/Exception.h>
30 #include <cms/Queue.h>
31 #include <vector>
32 #include <string>
33 #include <memory>
34 
35 namespace activemq {
36 namespace commands {
37 
39  public:
40 
41  const static unsigned char ID_ACTIVEMQQUEUE = 100;
42 
43  public:
44 
47  using ActiveMQDestination::operator<;
48  using ActiveMQDestination::operator==;
49 
50  private:
51 
53  ActiveMQQueue& operator=(const ActiveMQQueue&);
54 
55  public:
56 
57  ActiveMQQueue();
58 
59  ActiveMQQueue(const std::string& name);
60 
61  virtual ~ActiveMQQueue() throw ();
62 
63  virtual unsigned char getDataStructureType() const;
64 
65  virtual ActiveMQQueue* cloneDataStructure() const;
66 
67  virtual void copyDataStructure(const DataStructure* src);
68 
69  virtual std::string toString() const;
70 
71  virtual bool equals(const DataStructure* value) const;
72 
73  virtual const cms::Queue* getCMSDestination() const {
74  return this;
75  }
76 
77  public: // CMS Destination
78 
81  }
82 
83  virtual cms::Destination* clone() const {
84  return dynamic_cast<cms::Destination*>(this->cloneDataStructure());
85  }
86 
87  virtual void copy(const cms::Destination& source) {
88  this->copyDataStructure(dynamic_cast<const DataStructure*>(&source));
89  }
90 
91  virtual const cms::CMSProperties& getCMSProperties() const {
92  return this->getOptions();
93  }
94 
95  virtual bool equals(const cms::Destination& other) const;
96 
97  public: // CMS Queue
98 
99  virtual std::string getQueueName() const {
100  return this->getPhysicalName();
101  }
102 
103  };
104 
105 }}
106 
107 #endif /*_ACTIVEMQ_COMMANDS_ACTIVEMQQUEUE_H_*/
virtual int compareTo(const ActiveMQDestination &value) const
A Destination object encapsulates a provider-specific address.
Definition: Destination.h:39
#define AMQCPP_API
Definition: Config.h:30
virtual bool equals(const DataStructure *value) const
Compares the DataStructure passed in to this one, and returns if they are equivalent.
Definition: DataStructure.h:27
virtual void copy(const cms::Destination &source)
Copies the contents of the given Destination object to this one.
Definition: ActiveMQQueue.h:87
Interface for a Java-like properties object.
Definition: CMSProperties.h:34
DestinationType
Definition: Destination.h:42
Definition: ActiveMQQueue.h:38
virtual cms::Destination::DestinationType getDestinationType() const
Returns the Type of Destination that this object represents.
Definition: ActiveMQQueue.h:79
virtual const cms::CMSProperties & getCMSProperties() const
Retrieve any properties that might be part of the destination that was specified. ...
Definition: ActiveMQQueue.h:91
virtual cms::Destination * clone() const
Creates a new instance of this destination type that is a copy of this one, and returns it...
Definition: ActiveMQQueue.h:83
#define const
Definition: zconf.h:198
virtual std::string getQueueName() const
Gets the name of this queue.
Definition: ActiveMQQueue.h:99
Definition: Destination.h:44
Definition: ActiveMQDestination.h:38
An interface encapsulating a provider-specific queue name.
Definition: Queue.h:37