18#ifndef ACTIVEMQ_CORE_ACTIVEMQSESSIONEXECUTOR_
19#define ACTIVEMQ_CORE_ACTIVEMQSESSIONEXECUTOR_
35 using decaf::lang::Pointer;
36 using activemq::commands::MessageDispatch;
58 ActiveMQSessionExecutor(
const ActiveMQSessionExecutor&);
59 ActiveMQSessionExecutor& operator=(
const ActiveMQSessionExecutor&);
91 this->messageQueue->clear();
98 return !messageQueue->isClosed() && messageQueue->isRunning() && !messageQueue->isEmpty();
121 this->messageQueue->close();
128 return this->messageQueue->isRunning();
135 return messageQueue->isEmpty();
142 this->messageQueue->clear();
158 return messageQueue->removeAll();
#define AMQCPP_API
Definition Config.h:30
Definition ActiveMQConsumer.h:40
virtual void stop()
Stops dispatching.
std::vector< Pointer< MessageDispatch > > getUnconsumedMessages()
Definition ActiveMQSessionExecutor.h:157
virtual bool isEmpty()
Definition ActiveMQSessionExecutor.h:134
ActiveMQSessionExecutor(activemq::core::kernels::ActiveMQSessionKernel *session)
Creates an un-started executor for the given session.
virtual bool hasUncomsumedMessages() const
Definition ActiveMQSessionExecutor.h:97
virtual void close()
Terminates the dispatching thread.
Definition ActiveMQSessionExecutor.h:120
virtual void start()
Starts the dispatching.
virtual bool isRunning() const
Definition ActiveMQSessionExecutor.h:127
virtual bool iterate()
Iterates on the MessageDispatchChannel sending all pending messages to the Consumers they are destine...
virtual void clearMessagesInProgress()
Removes all messages in the Dispatch Channel so that non are delivered.
Definition ActiveMQSessionExecutor.h:90
virtual void wakeup()
wakeup this executer and dispatch any pending messages.
virtual void executeFirst(const Pointer< MessageDispatch > &data)
Executes the dispatch.
virtual void clear()
Removes all queued messages and destroys them.
Definition ActiveMQSessionExecutor.h:141
virtual ~ActiveMQSessionExecutor()
Calls stop() then clear().
virtual void execute(const Pointer< MessageDispatch > &data)
Executes the dispatch.
Definition ActiveMQSessionKernel.h:67
Represents a unit of work that requires one or more iterations to complete.
Definition Task.h:31
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 ActiveMQQueueBrowser.h:37
Definition ActiveMQTempDestination.h:29
Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.
Definition CachedConsumer.h:24