17#ifndef _ACTIVEMQ_CORE_ACTIVEMQSESSION_H_
18#define _ACTIVEMQ_CORE_ACTIVEMQSESSION_H_
40 class ActiveMQConnection;
73 return this->kernel->isStarted();
89 const std::string& selector);
92 const std::string& selector,
96 const std::string& name,
97 const std::string& selector,
98 bool noLocal =
false);
129 return this->kernel->getAcknowledgeMode();
133 return this->kernel->isTransacted();
148 return this->kernel->getExceptionListener();
159 this->kernel->setMessageTransformer(transformer);
168 return this->kernel->getMessageTransformer();
177 return this->kernel->getSessionInfo();
186 return this->kernel->getSessionId();
193 return this->kernel->getConnection();
#define AMQCPP_API
Definition: Config.h:30
Definition: SessionId.h:51
Definition: SessionInfo.h:48
Concrete connection used for all connectors to the ActiveMQ broker.
Definition: ActiveMQConnection.h:62
Definition: ActiveMQSession.h:42
virtual cms::QueueBrowser * createBrowser(const cms::Queue *queue)
Creates a new QueueBrowser to peek at Messages on the given Queue.
Pointer< activemq::core::kernels::ActiveMQSessionKernel > kernel
Definition: ActiveMQSession.h:45
virtual void stop()
Starts asynchronous message delivery.
virtual void start()
Stops asynchronous message delivery.
virtual void setMessageTransformer(cms::MessageTransformer *transformer)
Set an MessageTransformer instance that is passed on to all MessageProducer and MessageConsumer objec...
Definition: ActiveMQSession.h:158
ActiveMQConnection * getConnection() const
Gets the ActiveMQConnection that is associated with this session.
Definition: ActiveMQSession.h:192
virtual cms::StreamMessage * createStreamMessage()
Creates a new StreamMessage.
virtual cms::TextMessage * createTextMessage()
Creates a new TextMessage.
virtual cms::BytesMessage * createBytesMessage(const unsigned char *bytes, int bytesSize)
Creates a BytesMessage and sets the payload to the passed value.
virtual cms::Session::AcknowledgeMode getAcknowledgeMode() const
Returns the acknowledgment mode of the session.
Definition: ActiveMQSession.h:128
virtual cms::MessageConsumer * createDurableConsumer(const cms::Topic *destination, const std::string &name, const std::string &selector, bool noLocal=false)
Creates a durable subscriber to the specified topic, using a Message selector.
virtual cms::MessageConsumer * createConsumer(const cms::Destination *destination)
Creates a MessageConsumer for the specified destination.
virtual cms::MessageTransformer * getMessageTransformer() const
Gets the currently configured MessageTransformer for this Session.
Definition: ActiveMQSession.h:167
virtual cms::TextMessage * createTextMessage(const std::string &text)
Creates a new TextMessage and set the text to the value given.
ActiveMQSession(Pointer< activemq::core::kernels::ActiveMQSessionKernel > kernel)
const commands::SessionId & getSessionId() const
Gets the Session Id object for this session, if the session is closed than this method throws an exce...
Definition: ActiveMQSession.h:185
virtual bool isTransacted() const
Gets if the Sessions is a Transacted Session.
Definition: ActiveMQSession.h:132
virtual cms::QueueBrowser * createBrowser(const cms::Queue *queue, const std::string &selector)
Creates a new QueueBrowser to peek at Messages on the given Queue.
const commands::SessionInfo & getSessionInfo() const
Gets the Session Information object for this session, if the session is closed than this method throw...
Definition: ActiveMQSession.h:176
virtual void rollback()
Rolls back all messages done in this transaction and releases any locks currently held.
virtual cms::MapMessage * createMapMessage()
Creates a new MapMessage.
virtual cms::TemporaryTopic * createTemporaryTopic()
Creates a TemporaryTopic object.
virtual ~ActiveMQSession()
virtual void unsubscribe(const std::string &name)
Unsubscribes a durable subscription that has been created by a client.
virtual void close()
Closes this session as well as any active child consumers or producers.
virtual cms::MessageConsumer * createConsumer(const cms::Destination *destination, const std::string &selector)
Creates a MessageConsumer for the specified destination, using a message selector.
virtual cms::TemporaryQueue * createTemporaryQueue()
Creates a TemporaryQueue object.
virtual cms::Topic * createTopic(const std::string &topicName)
Creates a topic identity given a Queue name.
cms::ExceptionListener * getExceptionListener()
This method gets any registered exception listener of this sessions connection and returns it.
Definition: ActiveMQSession.h:147
virtual void recover()
Stops message delivery in this session, and restarts message delivery with the oldest unacknowledged ...
virtual void commit()
Commits all messages done in this transaction and releases any locks currently held.
virtual cms::Message * createMessage()
Creates a new Message.
virtual cms::MessageProducer * createProducer(const cms::Destination *destination)
Creates a MessageProducer to send messages to the specified destination.
virtual cms::MessageConsumer * createConsumer(const cms::Destination *destination, const std::string &selector, bool noLocal)
Creates a MessageConsumer for the specified destination, using a message selector.
virtual cms::BytesMessage * createBytesMessage()
Creates a BytesMessage.
bool isStarted() const
Indicates whether or not the session is currently in the started state.
Definition: ActiveMQSession.h:72
virtual cms::Queue * createQueue(const std::string &queueName)
Creates a queue identity given a Queue name.
A BytesMessage object is used to send a message containing a stream of unsigned bytes.
Definition: BytesMessage.h:66
A Destination object encapsulates a provider-specific address.
Definition: Destination.h:39
If a CMS provider detects a serious problem, it notifies the client application through an ExceptionL...
Definition: ExceptionListener.h:37
A MapMessage object is used to send a set of name-value pairs.
Definition: MapMessage.h:71
A client uses a MessageConsumer to received messages from a destination.
Definition: MessageConsumer.h:63
Root of all messages.
Definition: Message.h:88
A client uses a MessageProducer object to send messages to a Destination.
Definition: MessageProducer.h:60
This class implements in interface for browsing the messages in a Queue without removing them.
Definition: QueueBrowser.h:53
An interface encapsulating a provider-specific queue name.
Definition: Queue.h:37
A Session object is a single-threaded context for producing and consuming messages.
Definition: Session.h:105
AcknowledgeMode
Definition: Session.h:108
Interface for a StreamMessage.
Definition: StreamMessage.h:61
Defines a Temporary Queue based Destination.
Definition: TemporaryQueue.h:39
Defines a Temporary Topic based Destination.
Definition: TemporaryTopic.h:39
Interface for a text message.
Definition: TextMessage.h:41
An interface encapsulating a provider-specific topic name.
Definition: Topic.h:36
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
A boolean value that may be updated atomically.
Definition: AtomicBoolean.h:34
Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.
Definition: CachedConsumer.h:24