public abstract class AbstractRegion extends Object implements Region
Modifier and Type | Field and Description |
---|---|
protected boolean |
autoCreateDestinations |
protected RegionBroker |
broker |
protected Map<ConsumerId,Object> |
consumerChangeMutexMap |
protected DestinationFactory |
destinationFactory |
protected DestinationMap |
destinationMap |
protected Map<ActiveMQDestination,Destination> |
destinations |
protected ReentrantReadWriteLock |
destinationsLock |
protected DestinationStatistics |
destinationStatistics |
protected boolean |
started |
protected Map<ConsumerId,Subscription> |
subscriptions |
protected TaskRunnerFactory |
taskRunnerFactory |
protected SystemUsage |
usageManager |
Constructor and Description |
---|
AbstractRegion(RegionBroker broker,
DestinationStatistics destinationStatistics,
SystemUsage memoryManager,
TaskRunnerFactory taskRunnerFactory,
DestinationFactory destinationFactory) |
Modifier and Type | Method and Description |
---|---|
void |
acknowledge(ConsumerBrokerExchange consumerExchange,
MessageAck ack)
Used to acknowledge the receipt of a message by a client.
|
Subscription |
addConsumer(ConnectionContext context,
ConsumerInfo info)
Adds a consumer.
|
Destination |
addDestination(ConnectionContext context,
ActiveMQDestination destination,
boolean createIfTemporary)
Used to create a destination.
|
void |
addProducer(ConnectionContext context,
ProducerInfo info)
Adds a Producer.
|
protected List<Subscription> |
addSubscriptionsForDestination(ConnectionContext context,
Destination dest) |
protected Destination |
createDestination(ConnectionContext context,
ActiveMQDestination destination) |
protected abstract Subscription |
createSubscription(ConnectionContext context,
ConsumerInfo info) |
protected void |
destroySubscription(Subscription sub) |
protected void |
dispose(ConnectionContext context,
Destination dest) |
void |
gc() |
Map<ActiveMQDestination,Destination> |
getDestinationMap()
Returns a reference to the concurrent hash map that holds known destinations, do not modify
|
Set<Destination> |
getDestinations(ActiveMQDestination destination)
Provide an exact or wildcard lookup of destinations in the region
|
Set |
getDurableDestinations()
Get all the Destinations that are in storage
|
protected Set<ActiveMQDestination> |
getInactiveDestinations() |
Map<ConsumerId,Subscription> |
getSubscriptions() |
boolean |
isAutoCreateDestinations() |
protected Destination |
lookup(ConnectionContext context,
ActiveMQDestination destination,
boolean createTemporary) |
Response |
messagePull(ConnectionContext context,
MessagePull pull)
Allows a consumer to pull a message from a queue
|
void |
processConsumerControl(ConsumerBrokerExchange consumerExchange,
ConsumerControl control) |
void |
processDispatchNotification(MessageDispatchNotification messageDispatchNotification)
Process a notification of a dispatch - used by a Slave Broker
|
protected void |
processDispatchNotificationViaDestination(MessageDispatchNotification messageDispatchNotification) |
void |
removeConsumer(ConnectionContext context,
ConsumerInfo info)
Removes a consumer.
|
void |
removeDestination(ConnectionContext context,
ActiveMQDestination destination,
long timeout)
Used to destroy a destination.
|
void |
removeProducer(ConnectionContext context,
ProducerInfo info)
Removes a Producer.
|
void |
removeSubscription(ConnectionContext context,
RemoveSubscriptionInfo info)
Deletes a durable subscription.
|
void |
send(ProducerBrokerExchange producerExchange,
Message messageSend)
Send a message to the broker to using the specified destination.
|
void |
setAutoCreateDestinations(boolean autoCreateDestinations) |
void |
start() |
void |
stop() |
protected final Map<ActiveMQDestination,Destination> destinations
protected final DestinationMap destinationMap
protected final Map<ConsumerId,Subscription> subscriptions
protected final SystemUsage usageManager
protected final DestinationFactory destinationFactory
protected final DestinationStatistics destinationStatistics
protected final RegionBroker broker
protected boolean autoCreateDestinations
protected final TaskRunnerFactory taskRunnerFactory
protected final ReentrantReadWriteLock destinationsLock
protected final Map<ConsumerId,Object> consumerChangeMutexMap
protected boolean started
public AbstractRegion(RegionBroker broker, DestinationStatistics destinationStatistics, SystemUsage memoryManager, TaskRunnerFactory taskRunnerFactory, DestinationFactory destinationFactory)
public Destination addDestination(ConnectionContext context, ActiveMQDestination destination, boolean createIfTemporary) throws Exception
Region
addDestination
in interface Region
destination
- the destination to create.Exception
- TODOpublic Map<ConsumerId,Subscription> getSubscriptions()
protected List<Subscription> addSubscriptionsForDestination(ConnectionContext context, Destination dest) throws Exception
Exception
public void removeDestination(ConnectionContext context, ActiveMQDestination destination, long timeout) throws Exception
Region
removeDestination
in interface Region
context
- the environment the operation is being executed under.destination
- what is being removed from the broker.timeout
- the max amount of time to wait for the destination to quiesceException
- TODOpublic Set<Destination> getDestinations(ActiveMQDestination destination)
getDestinations
in interface Region
public Map<ActiveMQDestination,Destination> getDestinationMap()
Region
getDestinationMap
in interface Region
public Subscription addConsumer(ConnectionContext context, ConsumerInfo info) throws Exception
Region
addConsumer
in interface Region
context
- the environment the operation is being executed under.Exception
- TODOpublic Set getDurableDestinations()
protected Set<ActiveMQDestination> getInactiveDestinations()
public void removeConsumer(ConnectionContext context, ConsumerInfo info) throws Exception
Region
removeConsumer
in interface Region
context
- the environment the operation is being executed under.Exception
- TODOprotected void destroySubscription(Subscription sub)
public void removeSubscription(ConnectionContext context, RemoveSubscriptionInfo info) throws Exception
Region
removeSubscription
in interface Region
context
- the environment the operation is being executed under.info
- TODOException
- TODOpublic void send(ProducerBrokerExchange producerExchange, Message messageSend) throws Exception
Region
public void acknowledge(ConsumerBrokerExchange consumerExchange, MessageAck ack) throws Exception
Region
acknowledge
in interface Region
consumerExchange
- the environment the operation is being executed under.Exception
- TODOpublic Response messagePull(ConnectionContext context, MessagePull pull) throws Exception
Region
messagePull
in interface Region
Exception
protected Destination lookup(ConnectionContext context, ActiveMQDestination destination, boolean createTemporary) throws Exception
Exception
public void processDispatchNotification(MessageDispatchNotification messageDispatchNotification) throws Exception
Region
processDispatchNotification
in interface Region
Exception
- TODOprotected void processDispatchNotificationViaDestination(MessageDispatchNotification messageDispatchNotification) throws Exception
Exception
protected abstract Subscription createSubscription(ConnectionContext context, ConsumerInfo info) throws Exception
Exception
protected Destination createDestination(ConnectionContext context, ActiveMQDestination destination) throws Exception
Exception
public boolean isAutoCreateDestinations()
public void setAutoCreateDestinations(boolean autoCreateDestinations)
public void addProducer(ConnectionContext context, ProducerInfo info) throws Exception
Region
addProducer
in interface Region
context
- the environment the operation is being executed under.Exception
- TODOpublic void removeProducer(ConnectionContext context, ProducerInfo info) throws Exception
removeProducer
in interface Region
context
- the environment the operation is being executed under.Exception
- TODOprotected void dispose(ConnectionContext context, Destination dest) throws Exception
Exception
public void processConsumerControl(ConsumerBrokerExchange consumerExchange, ConsumerControl control)
processConsumerControl
in interface Region
Copyright © 2005–2015. All rights reserved.