activemq-cpp-3.9.5
ActiveMQProducer.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#ifndef _ACTIVEMQ_CORE_ACTIVEMQPRODUCER_H_
18#define _ACTIVEMQ_CORE_ACTIVEMQPRODUCER_H_
19
20#include <cms/MessageProducer.h>
21#include <cms/Message.h>
22#include <cms/Destination.h>
23#include <cms/DeliveryMode.h>
24
28
29namespace activemq {
30namespace core {
31
32 using decaf::lang::Pointer;
33
34 class ActiveMQSession;
35
36 class AMQCPP_API ActiveMQProducer : public cms::MessageProducer {
37 private:
38
40
41 private:
42
43 ActiveMQProducer(const ActiveMQProducer&);
44 ActiveMQProducer& operator=(const ActiveMQProducer&);
45
46 public:
47
56
58
59 public: // cms::MessageProducer methods.
60
61 virtual void close();
62
63 virtual void send(cms::Message* message);
64
65 virtual void send(cms::Message* message, cms::AsyncCallback* callback);
66
67 virtual void send(cms::Message* message, int deliveryMode, int priority, long long timeToLive);
68
69 virtual void send(cms::Message* message, int deliveryMode, int priority, long long timeToLive, cms::AsyncCallback* callback);
70
71 virtual void send(const cms::Destination* destination, cms::Message* message);
72
73 virtual void send(const cms::Destination* destination, cms::Message* message, cms::AsyncCallback* callback);
74
75 virtual void send(const cms::Destination* destination, cms::Message* message,
76 int deliveryMode, int priority, long long timeToLive);
77
78 virtual void send(const cms::Destination* destination, cms::Message* message,
79 int deliveryMode, int priority, long long timeToLive, cms::AsyncCallback* callback);
80
85 virtual void setDeliveryMode(int mode) {
86 this->kernel->setDeliveryMode(mode);
87 }
88
93 virtual int getDeliveryMode() const {
94 return this->kernel->getDeliveryMode();
95 }
96
101 virtual void setDisableMessageID(bool value) {
102 this->kernel->setDisableMessageID(value);
103 }
104
109 virtual bool getDisableMessageID() const {
110 return this->kernel->getDisableMessageID();
111 }
112
117 virtual void setDisableMessageTimeStamp(bool value) {
118 this->kernel->setDisableMessageTimeStamp(value);
119 }
120
125 virtual bool getDisableMessageTimeStamp() const {
126 return this->kernel->getDisableMessageTimeStamp();
127 }
128
133 virtual void setPriority(int priority) {
134 this->kernel->setPriority(priority);
135 }
136
141 virtual int getPriority() const {
142 return this->kernel->getPriority();
143 }
144
149 virtual void setTimeToLive(long long time) {
150 this->kernel->setTimeToLive(time);
151 }
152
157 virtual long long getTimeToLive() const {
158 return this->kernel->getTimeToLive();
159 }
160
165 virtual void setSendTimeout(long long time) {
166 this->kernel->setSendTimeout(time);
167 }
168
173 virtual long long getSendTimeout() const {
174 return this->kernel->getSendTimeout();
175 }
176
178 this->kernel->setMessageTransformer(transformer);
179 }
180
182 return this->kernel->getMessageTransformer();
183 }
184
185 public:
186
190 bool isClosed() const {
191 return this->kernel->isClosed();
192 }
193
199 return this->kernel->getProducerInfo();
200 }
201
207 return this->kernel->getProducerId();
208 }
209 };
210
211}}
212
213#endif /*_ACTIVEMQ_CORE_ACTIVEMQPRODUCER_H_*/
#define AMQCPP_API
Definition Config.h:30
virtual void send(cms::Message *message, int deliveryMode, int priority, long long timeToLive)
Sends the message to the default producer destination, but does not take ownership of the message,...
virtual void close()
Closes this object and deallocates the appropriate resources.
virtual void setDisableMessageTimeStamp(bool value)
Sets if Message Time Stamps are disabled for this Producer.
Definition ActiveMQProducer.h:117
virtual void send(const cms::Destination *destination, cms::Message *message, int deliveryMode, int priority, long long timeToLive, cms::AsyncCallback *callback)
Sends the message to the designated destination, but does not take ownership of the message,...
virtual long long getTimeToLive() const
Gets the Time to Live that this producer sends messages with.
Definition ActiveMQProducer.h:157
virtual void setTimeToLive(long long time)
Sets the Time to Live that this Producers sends messages with.
Definition ActiveMQProducer.h:149
virtual void setDisableMessageID(bool value)
Sets if Message Ids are disabled for this Producer.
Definition ActiveMQProducer.h:101
virtual void setPriority(int priority)
Sets the Priority that this Producers sends messages at.
Definition ActiveMQProducer.h:133
const Pointer< commands::ProducerId > & getProducerId() const
Retries this object ProducerId or NULL if closed.
Definition ActiveMQProducer.h:206
virtual cms::MessageTransformer * getMessageTransformer() const
Gets the currently configured MessageTransformer for this MessageProducer.
Definition ActiveMQProducer.h:181
bool isClosed() const
Definition ActiveMQProducer.h:190
virtual int getPriority() const
Gets the Priority level that this producer sends messages at.
Definition ActiveMQProducer.h:141
ActiveMQProducer(Pointer< activemq::core::kernels::ActiveMQProducerKernel > kernel)
Constructor, creates an instance of an ActiveMQProducer to wrap the provided ActiveMQProducerKernel.
virtual long long getSendTimeout() const
Gets the Send Timeout that this producer sends messages with.
Definition ActiveMQProducer.h:173
virtual void send(cms::Message *message)
Sends the message to the default producer destination, but does not take ownership of the message,...
virtual void setSendTimeout(long long time)
Sets the Send Timeout that this Producers sends messages with.
Definition ActiveMQProducer.h:165
virtual void send(cms::Message *message, cms::AsyncCallback *callback)
Sends the message to the default producer destination, but does not take ownership of the message,...
virtual void send(cms::Message *message, int deliveryMode, int priority, long long timeToLive, cms::AsyncCallback *callback)
Sends the message to the default producer destination, but does not take ownership of the message,...
virtual void send(const cms::Destination *destination, cms::Message *message, cms::AsyncCallback *callback)
Sends the message to the designated destination, but does not take ownership of the message,...
const Pointer< commands::ProducerInfo > & getProducerInfo() const
Retries this object ProducerInfo pointer.
Definition ActiveMQProducer.h:198
virtual void setDeliveryMode(int mode)
Sets the delivery mode for this Producer.
Definition ActiveMQProducer.h:85
virtual bool getDisableMessageID() const
Gets if Message Ids are disabled for this Producer.
Definition ActiveMQProducer.h:109
virtual bool getDisableMessageTimeStamp() const
Gets if Message Time Stamps are disabled for this Producer.
Definition ActiveMQProducer.h:125
virtual int getDeliveryMode() const
Gets the delivery mode for this Producer.
Definition ActiveMQProducer.h:93
virtual void send(const cms::Destination *destination, cms::Message *message)
Sends the message to the designated destination, but does not take ownership of the message,...
virtual void send(const cms::Destination *destination, cms::Message *message, int deliveryMode, int priority, long long timeToLive)
Sends the message to the designated destination, but does not take ownership of the message,...
virtual void setMessageTransformer(cms::MessageTransformer *transformer)
Set an MessageTransformer instance that is applied to all cms::Message objects before they are sent o...
Definition ActiveMQProducer.h:177
Definition ActiveMQSession.h:42
Asynchronous event interface for CMS asynchronous operations.
Definition AsyncCallback.h:37
A Destination object encapsulates a provider-specific address.
Definition Destination.h:39
Root of all messages.
Definition Message.h:88
A client uses a MessageProducer object to send messages to a Destination.
Definition MessageProducer.h:60
Provides an interface for clients to transform cms::Message objects inside the CMS MessageProducer an...
Definition MessageTransformer.h:37
Decaf's implementation of a Smart Pointer that is a template on a Type and is Thread Safe if the defa...
Definition Pointer.h:53
Definition ActiveMQTempDestination.h:29
Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.
Definition CachedConsumer.h:24